Close F28 and record F31, the reason every rotation failed
Runtime death is live-proven distinct from worker deployment: no renewal in the 20:45 window, expiry and requeue at 20:55:50. F31 explains run 4 and the F28 disposable task both dying at rotation. The handoff action is two agent-written lines joined by the code, held to one line's budget, and the error named a branch the answer cannot reach. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011xsXyr5J1RACo71YeKG3Pu
This commit is contained in:
@@ -1187,12 +1187,11 @@ failed send, which is the correct branch.
|
||||
|
||||
Not proven: the receipt itself, because F28 had already destroyed the pane.
|
||||
|
||||
## F28 proof and two defects it uncovered, 2026-08-28
|
||||
## F28 closed, and three defects it uncovered, 2026-08-28
|
||||
|
||||
The unit split is installed on workpc. F28's worker-restart direction is
|
||||
proven live. The runtime-death direction is in progress at the time of
|
||||
writing, and its result is appended below. Two new defects, F29 and F30, were found while setting the proof
|
||||
up. Neither was visible in tests.
|
||||
The unit split is installed on workpc and F28 is proven live in both
|
||||
directions. Three new defects, F29, F30 and F31, were found while setting
|
||||
the proof up. None was visible in tests.
|
||||
|
||||
### The tmux unit, as installed
|
||||
|
||||
@@ -1313,9 +1312,10 @@ F24 open correctness, dormant on current topology
|
||||
F25 fixed, live-proven
|
||||
F26 fixed, live-proven
|
||||
F27 fixed, live-proven
|
||||
F28 worker-restart direction live-proven; runtime-death direction pending
|
||||
F28 CLOSED, live-proven in both directions
|
||||
F29 fixed in efd0a5e, needs a coordinator rebuild
|
||||
F30 fixed in 2dc90bd, needs a worker rebuild
|
||||
F31 fixed in 6523002, needs a worker rebuild, BLOCKS every rotation
|
||||
```
|
||||
|
||||
### Deployment state
|
||||
@@ -1324,3 +1324,47 @@ Both fixes are committed and unbuilt. The running coordinator and worker are
|
||||
still `fbaaf79`. Run 5 should start from a deployment carrying `efd0a5e` and
|
||||
`2dc90bd`, or it will hit F30 again the first time a handoff artifact is
|
||||
rejected.
|
||||
|
||||
### F28 runtime-death direction, live
|
||||
|
||||
`systemctl stop orchestra-tmux` at 00:39, restarted at 00:39:37 as MainPID
|
||||
`3073848`. Every pane died with the old server.
|
||||
|
||||
```text
|
||||
20:45:07Z renewal window opens, no TaskLeaseRenewed appended F16 refused
|
||||
20:55:07Z lease deadline
|
||||
20:55:50Z state queued v8, lifecycle reclaimed, failure_class lease_expired
|
||||
```
|
||||
|
||||
Runtime death is now distinct from worker deployment. F16's missing-pane branch
|
||||
fires on real execution loss, which is what it was written for.
|
||||
|
||||
The same window reproduced F30 a second time, on the deployed `fbaaf79` worker
|
||||
that lacks `2dc90bd`: session still pinned, release transaction stuck at
|
||||
`prepared`, same rejected handoff artifact.
|
||||
|
||||
### F31: every rotation failed on a length check that named the wrong cause
|
||||
|
||||
Two different tasks, two different agents, one error:
|
||||
|
||||
```
|
||||
adapter: invalid handoff answer: invalid handoff authored field: prose smuggled into list
|
||||
```
|
||||
|
||||
`parseHandoffAnswer` builds `Action` by joining the agent's `NEXT` and `WHY`
|
||||
answers with `" — "`. `Validate` then held that join to `maxAuthoredLine`, 200
|
||||
characters. The prompt asks for a sentence each and names no budget, so two
|
||||
ordinary sentences do not fit.
|
||||
|
||||
The message named a branch the answer cannot reach. `parseHandoffAnswer` splits
|
||||
on newlines and trims every field, so no authored field ever contains `"\n#"`.
|
||||
Length was the only reachable cause, and the agent was never told what to
|
||||
shorten. It could not self-correct, so the same text failed on every retry.
|
||||
|
||||
This is why run 4 and the F28 disposable task both died at rotation, and why
|
||||
each left the stuck transaction behind that pinned the worker slot.
|
||||
|
||||
Fixed in `6523002`: `Action` carries the budget of both lines, the error names
|
||||
the actual length and limit, and the prompt states the limit.
|
||||
|
||||
F31 blocks run 5 outright. Run 5's chain is four rotations.
|
||||
|
||||
Reference in New Issue
Block a user