refactor: retire agent-name.sh for the composed session name #1059
No reviewers
Labels
No labels
burndown-2026-06
burndown-2026-08
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/advocate
role/director
role/exec
role/frontend
role/gamedev
role/human
role/platform
role/qa
role/science
role/sysadmin
state
ambient
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!1059
Loading…
Reference in a new issue
No description provided.
Delete branch "aos/claude/uz86"
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?
Closes the naming half of
agent-compose#279: every surface that named an agent derived the name itself, and none of them could know the composed seat.What changed
acompose whoami(agent-compose, already landed) is now the only answer to what a session is called.docker/dev-base/session-name.shis the SessionStart banner that reads it.One file, not two. The retired script existed as a host copy and a container copy that
docs/dev-base-self-name.mdexplicitly required to stay "format-identical", with a named drift hazard. That section is gone because the hazard is: the host installer and the image now wire the same file.Silence rather than a guess. With no projection there is no composed name and the hook prints nothing. The old script always produced one, so a reader could never tell a real identity from a fabricated one.
The installer repoints, it does not skip. The old merge returned "no change" when it found an
agent-name.shhook. After a rename that would leave a deleted script registered on every already-converged host, soinstall-session-name.pyrewrites it.Two things carried along that are not naming
gitidentity→docker/dev-base/git-identity.sh. It backfills gituser.name/user.emailfrom theWARD_GIT_*seam and shared a file with naming only because both ran at SessionStart. Tests moved with it, unchanged in substance.statusline.d/20-container.sh. Worth a look: it was already not rendering. Both statusLine surfaces point at the provider composer, no provider emittedWARD_CONTAINER_NAME, and the two tests asserting it were green against the deadagent-name.sh statuslinemode. It is a row now rather than a suffix, since the composer's model is rows. Say the word if you would rather it stay gone.Verification
test_aosguard.pyerrors and theruamelcollection error are pre-existing in this environment - confirmed by re-running with these changes stashed.pre-commit run --all-filesclean.Ordering
ansible/roles/claude-hooksinvokes the installer by filename, so the matching infrastructure PR must land after this one or a converge run finds a missing script.