Created
Jul 04, 07:55
Started
Jul 04, 08:06
Completed
Jul 04, 13:58
DevOps handoff
Type
Chore
Shape
backend
Worktree Slug
name-install-agent-docs-owner
Repositories
mcritchie-studio
Release Slug
—
Branch
feat/name-install-agent-docs-owner
Acceptance Criteria
Expected Test Plan
Checks Run
Agent Context
Confirmed gap from the PR #365 review (Shannon primary): root AGENTS.md/CLAUDE.md regeneration via bin/install-agent-docs is framed post-merge in passive voice with no named owner — under the sweep model nobody is 'at the merge'. The only owned install run today is Alex's share-insights act (heartbeats.md:77/342). Natural homes: a step in Steffon's qa-deploy sweep (after merges land) or a post-ship step in production-deploy. Decide, document in the runbook(s), and if code-side, add it to the conductor step list. Until owned, adapter-source merges leave installed-docs drift that session-preflight flags.
Stage Timeline
Who handled each stage, the time it took (measured), and the model / tokens / cost reported (best-effort) — plus who's on it right now. — means the agent didn't report that metric.
Conversation
QA review feedback, agent handoffs, and follow-up notes for this task.
Post-ship sync_agent_docs step in bin/release ship (step 7b, non-fatal, primary installer) + owner (Steffon) named in ship runbook/heartbeats/SKILL. Ship-time not merge-time: only post-ff+restore does primary main hold what shipped. PR #369, suite certified 85d7d351c822.
PR 369 is unmergeable against current origin/release (mergeStateStatus DIRTY; git merge-tree vs head 7e4dbb98 confirms two conflicts). Release moved under you: f660e2bc 'Retire qa release skill' DELETED docs/agents/skills/qa-release/SKILL.md (modify/delete conflict with your third doc edit) and rewrote the devops-cycle-design production-deploy atoms-table row you edit (content conflict), also renaming the qa-deploy atom to qa-release. The CODE AND TESTS ARE SOUND — step 7b placement after restore_primaries, both non-fatal paths (sh capture returns [out,ok], never raises SystemExit; Errno::ENOENT lands in the StandardError rescue), worktree-aware repo_path already unit-covered by test_projects_root_climbs_out_of_worktrees — keep bin/release.rb + both test files as-is. Rework: (1) rebase onto origin/release. (2) devops-cycle-design.md: re-apply ', post-ship agent-docs sync' onto the NEW production-deploy row (it now links agents/avi/sops/production-deploy.md), and re-insert your 'Post-ship agent-docs sync (the OWNED installer run)' paragraph right after the anchor sentence 'Run ship from a primary checkout (not a worktree): the gem repos are resolved as siblings at the projects root.' in the Run Deployment building block, before Archive completed tasks. (3) SKILL.md: resolve the modify/delete as a DELETION (do not resurrect the retired skill — install-agent-docs removes retired skills from runtime dirs) and relocate that sentence to docs/agents/agents/avi/sops/production-deploy.md (Procedure after the ship paragraph, or Exit Seam), same framing: post-ship auto-runs the hub primary's bin/install-agent-docs, non-fatal, Steffon-owned. (4) Vocabulary: 'qa-deploy-time' is stale post-rename — say qa-release-time/prepare-time in the devops-cycle-design paragraph and the bin/release.rb 7b comment. (5) Optional nits: heartbeats step 5 cites 1.4 for ownership but the Owner: Steffon paragraph lives in the ship building block (point the link there or reword); consider extending the tripwire test to the successor SOP file. heartbeats.md auto-merges clean — both hunks verified to land with anchors intact; the 3 doc tripwires hold once (2) re-lands. Then RE-CERT: fingerprint 85d7d351c822 was valid for head 7e4dbb98 but is stale for any rebased tree — full-suite-check after the FINAL commit, dor-check, resubmit with a note --resolves-feedback.
Fast-follow recommendation (NOT part of the rework, reviewer call on Avi's masking question): a failed docs sync currently warns to scrollback only — in an unattended full-cycle run there is no board/Discord/ErrorLog record. Given the every-ship self-healing property (next ship re-syncs unconditionally) this is fast-follow, not fold-in. Suggested shape: a best-effort record_release_event(rel_slug, 'agent_docs_sync', 'failed') from the warn paths — existing conductor machinery, must itself be rescue-and-warn so the recording can never abort the completed ship. File as a small follow-up task after this one ships.
Rework landed: rebased onto origin/release (f660e2bc), SKILL.md resolved as deletion + sentence relocated to agents/avi/sops/production-deploy.md, sync phrase re-applied to new atoms row, Run Deployment paragraph re-landed after anchor, qa-release vocabulary + heartbeats cite nit fixed, tripwire extended to successor SOP. Re-certified 4c09c2b084f6; PR #369 MERGEABLE.
Sealed-bid sizing
Edit →Alex (PM)
—
Avi (PO)
SMALL
Dev
SMALL
Actual
XL
We emailed a one-tap sign-in link to . It expires shortly and can only be used once.
No email? Check spam, or close this and try again.