feat(aterm): add doctor, one command that answers why no window opened (#1257) #1273
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/devrel
role/eval
role/exec
role/frontend
role/gamedev
role/human
role/platform
role/qa
role/sysadmin
role/tpm
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!1273
Loading…
Reference in a new issue
No description provided.
Delete branch "aos/claude/mu55-doctor"
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 #1257. Tier 2 of the #1245 dispatch, unblocked by #1264 landing, so it is unix-only with one terminal and no per-platform branch.
What it looks like on a healthy host
--jsonemitsaterm.doctor.v1. Exit 1 when any check fails, 0 otherwise, so a warning never fails the run.Both corrections from the issue thread are taken
--terminal-bin, never a hardcoded name, so this stops needing an edit each time the terminal turns overaos, which owns them.aterm/launch_profiles.godoes not exist and this does not create one, which keeps the no-second-parser propertydocs/aterm.mdsellsThe line worth the command
nativeShadowAvailabledegrades to an unleased launch silently and correctly, and nothing surfaced that to a person outside--dry-run --json. It is a warning rather than a failure, because an unleased launch still works:Same shape for a missing
aos: warn, not fail, since aterm launches without it.Two checks the issue did not spell out
font_family, so the usual answer is the terminal's default and there is nothing to verify. When a host config does name one, doctor verifies it withfc-listand warns rather than passing when it cannot, since a silent pass is not a checkTest stub change worth reading
stubDepshad onerunstub serving bothaos _native-shadow --probeand, now, a terminal parsing its own config, so an unleased fixture also failed the config check. Split, and_launch-agentis answered from the fixture roster.Verification
just aterm-fmt,just aterm-lint,just aterm-testclean,pre-commit run --all-filescleandoctor_test.go: healthy host, unleased shadow named as a warning, missing terminal and missing agent-compose each failing with the right exit code, a missingaosdegrading rather than failing, a launch profile naming an unlaunchable seat failing with the seat quoted, the human default, and the role positional surviving the new subcommandagent-compose v2.54.0and kitty 0.48.2, output above, plus the failure and--jsonpathsOne thing this PR ran into and did not fix
docs/is at 40 of 40 files anddocs/aterm.mdis at 7,995 of 8,000 chars. This doctor gets one sentence there rather than the walkthrough a subsystem command earns, and fitting even that meant re-trimming prose added earlier in this batch. #1255, #1256, and #1258 each want a page there is no slot for. I measured the merge candidates and no two related docs fit inside one 8,000-char file, so this is a decision rather than a defect and I did not restructure the folder to route around it. Filed separately.