Scope review pipeline: jidoka for the left side of the board #161
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
ldraney/claude-custom#161
Loading…
Add table
Add a link
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?
Type
Feature
Lineage
standalone — discovered when Betty Sue forgot to invoke /review-ticket on forgejo_admin/dotfiles#1, exposing that the scoping pipeline has zero enforcement
Repo
forgejo_admin/claude-customUser Story
As the platform operator
I want the scoping pipeline (backlog→next_up) to have the same hook-enforced rigor as the execution pipeline (in_progress→done)
So that poorly scoped tickets never reach dev agents, preventing rework waste
Context
The execution pipeline has 4 hooks enforcing quality gates (label-on-branch, label-on-pr, label-on-verdict, remind-sprint-update). The scoping pipeline has zero. This creates three failure modes:
This is the TPS "second pillar" problem: we have jidoka for code (QA hooks) but not for scope (ticket review hooks). Toyota's system only worked because both pillars were enforced — JIT made problems visible, jidoka provided the mechanism to solve them immediately. Our scoping pipeline has no jidoka.
File Targets
Files to create:
~/.claude/hooks/check-board-advance.sh— hook blocking todo→next_up without passing reviewsop-ticket-scope-review— SOP documenting the review-fix-re-review cycleFiles to modify:
~/.claude/skills/review-ticket/SKILL.md— add fix-and-re-review loop logic (also updateskill-review-ticketagent workflow note in pal-e-docs)~/.claude/settings.jsonor~/.claude/settings.local.json— register the new hooktemplate-ticket— add Review Gate sectionsop-board-workflow— reference new SOP in related sectionFiles NOT to touch:
/review-prskill — code review is a separate concernAcceptance Criteria
update_board_itemwhen column changes todo→next_up without a passing review note for that itembulk_move_board_items— this tool can advance items todo→next_up and would bypass anupdate_board_item-only hooksync_boardoperations or automated board syncs (e.g.session-start-board-sync.sh) — only on explicit user-driven column advances/review-ticketskill handles the fix-and-re-review loop: NEEDS_REFINEMENT → fix body → re-review → loop until APPROVEDsop-ticket-scope-reviewexists, tagged sop,activetemplate-ticketdocuments the review gateTest Expectations
Constraints
check-board-item.shdoes NOT query pal-e-docs API — it only validates tool_input fields via jq. The new hook introduces a novel pattern if it needs runtime API calls.review-{item_id}-{date})mcp__forgejo__update_issuenow exists. If unavailable at dev time, curl fallback via Forgejo REST API.Resolved: curl-to-API approach. Ground truth from the database is more reliable than tool_input inspection. Accept the runtime dependency on pal-e-docs API availability.
Decomposition Recommendation
Review
review-364-2026-03-27flagged this as too large for a single agent pass (7 AC, 2 systems, ~15-20 min). Recommend splitting into 3 tickets via template-board:check-board-advance.sh, settings.json registration,bulk_movecoverage,sync_boardexclusion (AC 1-3, 8-9)/review-ticketSKILL.md loop logic,sop-ticket-scope-reviewnote, consolidated spec convention (AC 4-6)template-ticketreview gate section,sop-board-workflowcross-reference,skill-review-ticketnote update (AC 7)Do NOT advance to next_up until decomposed and arch decision resolved.
Checklist
Related
sop-board-workflow— column semantics this extendspr-review-loop— the code-side mirror of this scope-side gatetemplate-ticket— ticket structure this adds a gate toskill-review-ticket— skill note the /review-ticket skill readsforgejo_admin/dotfiles#1— the ticket that exposed the gapforgejo_admin/claude-custom#160— GroupMe ticket where fragmented spec problem was discoveredScope Review: NEEDS_REFINEMENT
Review note:
review-364-2026-03-27Well-scoped issue with complete template, full traceability, and verified file targets -- but too large for a single agent pass.
Issues found:
update_issueMCP tool exists yet.skill.mdshould beSKILL.md(uppercase). Also clarify that both the router (SKILL.md) and the agent workflow note (skill-review-ticket) need updates.update_board_itemmust not fire duringsync_boardoperations or it will block automated board syncs.Recommend decomposition via template-board.
Scope Review: NEEDS_REFINEMENT
Review note:
review-364-2026-03-27Well-scoped ticket with complete template, full traceability, and strong context. However, it exceeds the 5-minute rule and has several issues requiring refinement before dev dispatch.
Issues found:
skill.mdshould beSKILL.md(uppercase).bulk_move_board_itemscan bypass theupdate_board_itemhook to advance todo->next_up. Either hook both tools or document as known bypass.sync_boardandsession-start-board-sync.shcould trigger column changes -- hook must not fire during sync operations.update_issueMCP tool exists -- document curl fallback.Recommend decomposition via template-board before advancing to next_up.
Scope Review: READY
Review note:
review-364-2026-03-27-v2Re-review after refinement. All 7 recommendations from prior review addressed:
Scope is solid. Next step: create the 3 child tickets from the Decomposition Recommendation section, then dispatch.