Pipeline визначається артефактами між етапами

Agent pipeline — це не просто ланцюжок ролей. Кожен етап має визначений вхід, мету, перевірюваний вихід, список невизначеностей і наступну дію. Артефакт зберігає контекст незалежно від автора, сесії чи перезапуску.

Етап не обовʼязково дорівнює окремому агенту: його може виконати людина, subagent або нова сесія.

АртефактРоль
evidence_map.mdФайли, факти, проблемні зони та open questions
plan.mdМета, кроки, обмеження й non-goals
changed_files.mdЗмінені файли та межі diff
test_output.mdКоманда, результат, помилки та важливий вивід
risk_list.mdРизики, важливість і потреба в ручній перевірці
parallel-session-log.mdСтатус, рішення та передача між сесіями
Приклад ланцюжка артефактів
TASK_SPEC.md
  → evidence_map.md
  → plan.md
  → diff + changed_files.md
  → test_output.md
  → risk_list.md
  → parallel-session-log.md

Якісний handoff відповідає на пʼять питань

  1. Навіщо виконувався етап?
  2. Які дані або файли були входом?
  3. Що саме отримано?
  4. Що залишилося невідомим?
  5. Яка дія очікується далі?

Приклад pipeline для помилки округлення

Дослідження знаходить повʼязані модулі й тести. План фіксує виправлення без зміни публічного API та додає regression test. Реалізація повертає diff і список файлів, тестування — команду та результат, review — ризики для округлення, промокодів і ПДВ. Людина приймає рішення на основі всього пакета.

Невдалий тест також є корисним результатом: він показує, яка гіпотеза не підтвердилася і куди повернутися.

Handoff contract

AGENT_HANDOFF_CONTRACT.md як шаблон
Role: tester
Input: plan.md, changed_files.md
Required output: test_output.md
Must include: commands, exit codes, failures, limits
Forbidden: production-code edits
Stop: after agreed test scope or blocking failure

Відновлення після збою

  • поверніться до останнього надійного артефакту;
  • не повторюйте весь pipeline без потреби;
  • перевірте, які припущення вже підтверджені;
  • передайте наступній ролі саме актуальний стан і open questions.
  • Для простої однофайлової зміни може вистачити короткої нотатки та diff.

Канонічне джерело уроку · JavaRush

Відкрити матеріал JavaRush