docs: record the supervisor-as-second-writer mistake from RD-24
A task notification fires every time an agent stops with no live children, including a pause mid-task. RD-24's agent paused and notified; the supervisor read that as abandonment, took over the tree, ran the gate and edited the ticket Status while the agent was still working. The agent resumed, correctly detected a second writer, and refused to commit. This is the mirror image of the RD-17 race the section above records: there a fresh supervisor met a running agent, here a running agent met its own supervisor. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -294,3 +294,18 @@ git log --oneline -1 # did an agent already commit the ticket?
|
||||
|
||||
If the tree is dirty and this session did not dirty it, find the agent before you write a
|
||||
ticket around the evidence it leaves.
|
||||
|
||||
**The mirror-image mistake, made during RD-24: the supervisor became the second writer.** A
|
||||
task notification fires every time an agent stops with **no live children — including a pause
|
||||
mid-task**. RD-24's agent paused, said it was waiting on a check, and notified. The supervisor
|
||||
read that as an abandoned task, took over the working tree, ran the gate and edited the ticket
|
||||
`Status:` — while the agent was still running. The agent then resumed, correctly detected a
|
||||
second process writing its tree, and refused to commit.
|
||||
|
||||
Nothing was lost, because the agent stopped instead of committing. Two rules follow:
|
||||
|
||||
- **A notification is not proof the work is finished.** A finished agent hands back a report
|
||||
with acceptance numbers. "I am waiting for X" is a pause.
|
||||
- **Before taking over an agent's tree, confirm the agent is gone**: `ps aux | grep "npm run"`,
|
||||
and check whether its own result has arrived. Taking over is a real option — RD-24 was
|
||||
finished that way — but it must be a decision, not an assumption.
|
||||
|
||||
Reference in New Issue
Block a user