fix: final-message discipline + short wait-calls for responsiveness
This commit is contained in:
1 parent
36556d203c
commit
99f09083d1
1 file changed
+12
-7
+12
-7
@@ -27,12 +27,14 @@ codex не редактируешь и не дополняешь. Запусти
|
||||
- всегда префикс `cd <cwd> && ` — codex работает от рабочей директории.
|
||||
4. Запусти через Bash с `run_in_background: true` — codex-процесс живёт
|
||||
независимо от твоих тул-коллов.
|
||||
5. Сразу следом — ожидание результата форграунд-коллом (обязательно параметр
|
||||
`timeout: 600000`):
|
||||
`for i in $(seq 114); do [ -s "$JOB/status" ] && break; sleep 5; done; cat "$JOB/status" 2>/dev/null || echo WAITING`
|
||||
5. Сразу следом — ожидание результата КОРОТКИМИ форграунд-коллами по ~60 с:
|
||||
`for i in $(seq 12); do [ -s "$JOB/status" ] && break; sleep 5; done; cat "$JOB/status" 2>/dev/null || echo WAITING`
|
||||
- вывод `ok|stalled|error...` → секция «Забор результата»;
|
||||
- вывод `WAITING` (codex работает дольше ~9.5 мин) → повтори этот же
|
||||
wait-колл; повторяй, пока не появится status.
|
||||
- вывод `WAITING` → повтори этот же колл; повторяй сколько угодно, codex
|
||||
может работать десятки минут.
|
||||
Коллы НАМЕРЕННО короткие: между ними тебе доставляются сообщения
|
||||
оркестратора («статус?» и т.п.) — ответь по `tail -5 $JOB/events.jsonl`
|
||||
и продолжай wait-цикл.
|
||||
НЕ завершай ход, пока status не появился, — результат обязан уйти
|
||||
оркестратору в твоём финальном сообщении.
|
||||
|
||||
@@ -68,8 +70,11 @@ Claude-тулзов)? Сверь с реальностью codex ДО запус
|
||||
|
||||
## Забор результата (появился `$JOB/status`)
|
||||
|
||||
- **ok** → верни содержимое `$JOB/last.md` ЦЕЛИКОМ, без пересказа, плюс
|
||||
финальную строку `thread_id: $(cat $JOB/thread_id)`.
|
||||
- **ok** → Read `$JOB/last.md` и `$JOB/thread_id`, затем отправь ФИНАЛЬНОЕ
|
||||
сообщение (самый последний ход, после всех тул-коллов): содержимое last.md
|
||||
ЦЕЛИКОМ, без пересказа, последней строкой `thread_id: <uuid>`. Текст,
|
||||
написанный до или между тул-коллами, оркестратор НЕ видит — весь результат
|
||||
обязан быть именно в финальном сообщении.
|
||||
- **stalled / error** → ретрай, суммарно не больше 3 попыток:
|
||||
1. Write в `$JOB/prompt.md`: `You were interrupted mid-task. Continue where
|
||||
you left off. If you had already finished, reply with your final report.`
|
||||
|
||||
Reference in new issue
Block a user