Pin agent-compose 2.20.0 for the seat identity override #1052
No reviewers
Labels
No labels
burndown-2026-06
autonomy
async-consult
autonomy
epic
autonomy
headless
autonomy
live-collab
coherence-core
priority
P0
priority
P1
priority
P2
priority
P3
priority
P4
qa-fixture
role/ai
role/creator
role/design
role/director
role/engineer
role/exec
role/human
role/ops
role/qa
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
coilyco-flight-deck/agentic-os!1052
Loading…
Reference in a new issue
No description provided.
Delete branch "ops/pin-agent-compose-2.20.0"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
One line:
AGENT_COMPOSE_VERSION2.19.0 → 2.20.0 atdocker/dev-base/full/Dockerfile:69.closes #1051
Why now
2.20.0 adds an optional
identitynode to the compose request grammar:coilyco-gaming/sirens-echois waiting on it. Sirens Echo composesopsfor its operator doctrine and answers as Sirens Echo, so its prompt currently also introduces Olaf — a seat name from another context, in a lane whose own policy forbids describing itself at all. That fix cannot land in sirens-echo until this image ships a binary that parses the node; against 2.19.0 the build fails withunknown node "identity".Background in coilyco-flight-deck/agent-compose#280.
This is a week of work, not one feature
Worth knowing before merging. 2.19.0 shipped 2026-08-07 and nothing followed it, because agent-compose's release pipeline failed on every main push for a week — 33 consecutive runs. Root cause and fix in agent-compose#281:
scripts/test.shkept calling ascorecardsubcommand that #262 had deleted, along with a results directory it moved and an output document it removed.So the 2.19.0 → 2.20.0 range also carries the driver-plus-reviewer eval stack retirement, role adjacency in KDL, the evalkit wiring, and the person loader refactors. The diff is bigger than a routine pin bump and the rebuild deserves a look for that reason rather than for the identity node.
Risk
The
identitynode is additive and optional, and every existing compose request in the fleet omits it, so no bundle changes identity as a result of this bump. A request without the node composes exactly as before.The one behavioural change in the range worth watching: agent-compose#262 stopped feeding evaluation asset digests into bundle content digests, because editing an eval prompt was changing the digest of a bundle whose delivered content had not changed. Every bundle digest moves once as a result. That is a correction, but it will show up as churn on the first rebuild.
Verification
tests/test_dev_base_image.pypasses (10 tests — it asserts the pin sites exist and are well-formed), and pre-commit is clean on the changed file.I did not build the image. That happens in CI, and it is the step that would catch a bad asset URL or checksum, so treat the download path as verified by the build rather than by me. v2.20.0 does have all five platform binaries plus
SHA256SUMSattached, which is whatinstall-common.shfetches.🤖 Generated with Claude Code
Merge coilyco-gaming/sirens-echo#771 before this. Found while verifying the consumer side, and it inverts the ordering I gave when opening this.
2.20.0 changed the identity card's wording from
Agent-compose assigned the ...toAgent-compose assigned **you** the .... sirens-echo'sValidateSystemPromptanchors on the literal"Agent-compose assigned the", so every composing role fails against a 2.20.0 bundle:I found it by baking all eight roles locally against the real catalogue with 2.20.0, not by reading the diff. It fails the image build closed rather than shipping a broken agent, which is the right direction — but merging this first leaves sirens-echo unbuildable until #771 lands.
sirens-echo#771 fixes the anchor to match the stable half of the line, and also carries the seat rename this bump was for.
Worth checking beyond sirens-echo
That wording is upstream's to own, and I only verified one consumer. Any other repository anchoring on the old card text has the same latent break, and it would show up as a build failure after this merges rather than before.
Agent-compose assigned theis the string to grep for.I have not swept the fleet for it.