Параллель — для независимого. А есть работа, где результат одного шага нужен следующему. Такие шаги нельзя запускать разом: второй субагент стартует раньше, чем первый что-то отдал, и работает по пустому или устаревшему состоянию. Получается гонка — кто успел, того и данные. Лекарство простое: зависимые шаги идут строго по очереди.
Как увидеть зависимость
Зависимость — это стрелка «сначала → потом». Спроси: может ли шаг B начаться, пока не готов результат A? Если нет — между ними зависимость, и порядок обязателен.
Разбор завала логов в интернет-магазине:
- собрать ошибки из логов в один список;
- сгруппировать их по причинам;
- написать отчёт по группам.
Группировать нечего, пока список не собран. Отчёт писать не о чем, пока нет групп. Это цепочка — каждый шаг кормит следующий.
Дирижёр держит порядок
Практика такая: запускаешь субагента на шаг A, дожидаешься его краткого итога, передаёшь этот итог субагенту на шаг B как вход. Итог — не весь контекст первого, а сжатый результат: список ошибок, путь к файлу, найденные имена. Этого хватает, чтобы следующий начал с нужной точки.
Гонка — это не «медленно», а «неверно». Субагент на шаге B, запущенный слишком рано, выдаст результат по неполным данным, и ты этого можешь не заметить. Порядок защищает от тихой ошибки.
Смешанный случай
Часто план — гибрид: что-то параллельно, что-то по очереди. Например, перевод документации: перевести три независимые главы можно разом (параллель), а собрать их в единый glossary и свести термины — только после того, как все три готовы (последовательный шаг). Разглядеть, где стрелка зависимости, а где её нет, — и есть работа дирижёра.