Review v3: Audit post-merge SOP for board-driven workflow

review-506-2026-03-27-v3 Review

review ready

Verdict: READY

Re-review (v3) after 5 fixes: added commands/update-docs.md, fixed AC contradiction, corrected constraints, added stale MCP tool AC, added Lineage+Repo headers.

Template Completeness

  • [x] Type — Task
  • [x] Lineage — Standalone, discovered during PR #226
  • [x] Repo — forgejo_admin/claude-custom
  • [x] Scope — comprehensive narrative of 7 specific issues + resolution note
  • [x] File Targets — 3 targets (bonus for Task type, not required)
  • [x] Acceptance Criteria — 10 items, all machine-verifiable
  • [x] Constraints — surgical edits, Forgejo read-only, code file via branch/PR
  • [x] Related — 7 related notes listed
  • [ ] Test Expectations — missing (acceptable for doc-only Task; verification = reading updated artifacts)
  • [ ] Checklist — missing (minor; standard PR opened / tests pass / no unrelated changes)
  • [ ] User Story — missing (acceptable for Task type per template-issue guidance)

Traceability

  • [x] story:pm-scope label — PM scoping and review pipeline
  • [x] arch:note-system label — note system component
  • [x] Forgejo issue — forgejo_admin/claude-custom#190, open
  • [x] Board item #506 — backlog column, labels match

File Targets

  • [x] sop-post-merge-docs (pal-e-docs note) — verified: the-traceability-chain section contains stale "Phase note → Plan note → Issues table/Roadmap" chain. Checklist steps 3-4 reference phase/plan notes. Step 5 references "Issues table" and "Roadmap table" which don't exist in current template-project-page (sections are: Vision, User Stories, Architecture, Board, Status, Milestones, Repos). Step 8 references "plan Epilogue."
  • [x] skill-update-docs (pal-e-docs note) — verified: Steps 1/3/4 reference phase/plan notes. Step 5 references "Issues table", "Roadmap table", "TODOs table" (all stale). Step 8 uses deprecated create_note(slug="todo-...", tags="todo,open"). MCP Tools table lists get_sprint_board and move_sprint_item (deprecated APIs removed in board migration).
  • [x] commands/update-docs.md (code file, 181 lines) — verified: Gather Context section asks for "Phase slug" and "Plan slug." Steps 3-4 are entirely plan/phase focused. Step 5 references "Issues table" (stale). Step 9 references "plan's Epilogue section." No validation column step exists. No MCP restart step exists.

Repo Placement

OK. Issue filed on claude-custom. Two targets are pal-e-docs notes (edited via MCP tools), one is a code file in claude-custom (edited via branch/PR). Constraints section correctly identifies this split: "commands/update-docs.md is a code file — changes go through normal branch/PR flow on claude-custom." All three artifacts are correctly scoped.

Dependencies

  • Board item #397 "Update 11 SOPs/conventions for kanban-over-plans" — done. Prerequisite satisfied.
  • Board item #487 "Update template-board, template-ticket, template-project-page" — done. Template-project-page is current, providing the target section names.
  • Board item #480 "Add 4 new NoteTypes + validation BoardColumn" — done. The validation column exists in the API.
  • No blockers in in_progress or next_up.

Acceptance Criteria

10 AC items. All are verifiable by an agent via reading/grepping the updated artifacts:
  • AC 1-8: Verifiable via get_section reads and grep for deprecated terms.
  • AC 9 (get_sprint_board / move_sprint_item replacement): Valid — these stale API references exist in the MCP Tools table of the skill-update-docs note (block at position 3+). They need to be replaced with list_board_items and update_board_item.
  • AC 10: Verifiable by reading the updated commands/update-docs.md file.
All criteria are machine-verifiable. No ambiguity.

Blast Radius

5 files in claude-custom contain "phase note/plan note" patterns:
  • commands/update-docs.md — IN SCOPE
  • skills/review-ticket/SKILL.md — OUT OF SCOPE (references "phase note" in context of routing, not post-merge flow)
  • agents/betty-sue.md — OUT OF SCOPE (general agent profile)
  • agents/qa.md — OUT OF SCOPE (different workflow)
  • skills/review-pr/SKILL.md — OUT OF SCOPE (PR review, not post-merge)
Blast radius correctly contained to the 3 file targets. Other files referencing plan/phase concepts are in different workflows — separate tickets if needed.

Decomposition

3 file targets, 2 systems (pal-e-docs notes + claude-custom code), 10 AC. Borderline on the 5-AC threshold, but:
  • The pal-e-docs edits are surgical get_section + update_block operations (constrained by Constraints section)
  • The code file edit is a single file rewrite
  • All 10 AC are tightly coupled — same "remove plan/phase, add board-driven flow" transformation
  • Estimated agent time: ~4 minutes (read 3 targets, apply known transformations, verify)
No decomposition needed. Single agent pass is appropriate.

Recommendation

No action needed. Ticket is ready for execution.
Minor observations (non-blocking):
  • [BODY] Consider adding ### Test Expectations: "Verify by grepping all three artifacts for deprecated terms: phase note, plan note, Roadmap table, TODOs table, Issues table, Epilogue, get_sprint_board, move_sprint_item, todo-..."
  • [BODY] Consider adding ### Checklist: standard PR opened / no unrelated changes items