Assemble and close map #425: final cleanup sweep and verification #433
Labels
No labels
P0
P1
P2
P3
bug
create
delete
enhancement
filed-by/agent
filed-by/user
frozen
lint-rule
needs-info
needs-triage
next
plugin/cc-architect
plugin/os
plugin/os-adr
plugin/os-aidd-lint
plugin/os-backlog
plugin/os-context
plugin/os-doc-hygiene
plugin/os-sdlc
plugin/os-vault
project/cc-os
ready-for-agent
ready-for-human
recurring
review
update
waiting
wayfinder:grilling
wayfinder:map
wayfinder:map
wayfinder:research
wayfinder:task
wayfinder:task
wontfix
worklist/deviations
worklist/lint-rule
worklist/new-implement-build
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
jared/cc-os#433
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Parent
#425
Map: #425
What to build
The assembly/contract step for map #425, runnable only when #426–#432 are all closed: sweep for stale files and code left behind by the migration (brief-file rendering remnants, retired recovery/test-cluster leftovers, dead hooks-manifest entries), verify no orphaned references with ast-grep, run bin/refresh-plugins if any plugin source changed, then close #425 via os-backlog close with done/evidence/follow-ups.
Acceptance criteria
Blocked by
Origin
Resolution
Done: Assembly for map #425: stale-code sweep (pipeline-state-investigate caveat dropped + confirmed handoffs schema; superseded-status banners on docs/os-sdlc-rebuild dispatch-hook/runner/architecture captures; hooks.json verified no dead entries; legacy ticket pipeline explicitly judged KEEP — intake/resume still serve ticket-driven runs); live SubagentStop event schema verified against primary hooks docs and the hook's assumed handoff_content corrected to last_assistant_message; end-to-end dogfood of the round pipeline through the real hook scripts (round-open → SubagentStart → SubagentStop against a scratch project DB): dispatch stamped with both lifecycle timestamps, handoff row recorded with real message content, test+lint step_results exit 0, implementation completed — async-style completion advanced the pipeline, the core #425 behavior. Status-leaf history row added; map workbench file retired per its own contract. bin/refresh-plugins run.
Evidence: commits
1bb6700(sweep + field fix) andb9a0b99(records); full runner suite 276 runs/594 assertions 0 failures; ast-grep/grep sweeps empty for recovery classes, recover command, async_launched rejection; dogfood DB rows verified via Sequel; SubagentStop schema quoted from code.claude.com/docs/en/hooks.mdFollow-ups: two, verdicts attached: (1) dogfood used synthetic event piping through the real hook scripts because this harness session cannot register the new SubagentStart/Stop hooks mid-session — payload shape is doc-verified, but a fresh live session should observe the hooks firing naturally before heavy reliance (root-vs-symptom: harness lifecycle, not code; monitor in production IRL sessions, no ticket); (2) legacy ticket pipeline + tickets.state + the PostToolUse pipeline_agent? two-state-model gate remain by judged choice — retiring them is a future map if/when ticket-driven runs move to rounds (deliberate deferral, not orphaned work; captured in #430/#431 close comments, no ticket until the direction is decided)