TemplateValidator requires Owner sketch and Cases on ready-for-agent tickets; capture template and ticket-decompose emit them (ADR-0190) #588
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#588
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?
Context
Per ADR-0190, tickets labeled
ready-for-agentmust carry## Owner sketchand## Casessections so the os-sdlc ticket map can consume them.Backlog::TemplateValidatormust gate on these two sections only when the ticket carriesready-for-agent, without adding them to the always-requiredREQUIRED_SECTIONS(Slice, Acceptance criteria, Non-goals) — that would fail every existing ticket and mis-tier bodies.Owner sketch
Cases
Structural follow-through
## Owner sketchand## Cases.These are documentation edits verified by reading, not by a test (see #593).
Observed
plugins/os-backlog/lib/backlog/template_validator.rbdefinesREQUIRED_SECTIONSas Slice, Acceptance criteria, Non-goals;ticket_attempt?tiers on those alone. Neitherreferences/templates/capture.mdnorplugins/os-backlog/skills/ticket-decompose/SKILL.md(line ~51) emits or requires Owner sketch/Cases today.Reproduce
n/a: design/feature ticket, not a reproduced bug
Expected
TemplateValidatorfails aready-for-agentticket missing either section and names it in the report; non-agent-ready tickets are unaffected.capture.mdgains an agent-ready template variant with both sections;ticket-decompose/SKILL.mdrequires both sections before applying theready-for-agentlabel. Test coverage inplugins/os-backlog/tests/template_validator_test.rb. Constraint: do not add "Owner sketch"/"Cases" toREQUIRED_SECTIONS.Origin
VERDICT: CREATE (ticket-skeptic, os-backlog:ticket-skeptic dispatch)
Work started via /os-sdlc:implement on branch ticket-588 (worktree .claude/worktrees/ticket-588), map poodr-ticket-implementation.yaml, target os-backlog.
Resolution
Done: Backlog::TemplateValidator adds AGENT_READY_SECTIONS (Owner sketch, Cases) as a conditional set when labels include ready-for-agent; TicketBodyChecker#check_cases_listed requires one listed case; capture.md gains the agent-ready variant; ticket-decompose SKILL.md refuses the label without both sections. ADR-0190.
Evidence: Branch ticket-588; 4 new validator tests + 1 agent-ready checkout fixture; suite 229 runs 0 failures direct; rubocop clean on lib. Pipeline implementation 19: 13 dispatches, 1174 s, terminal implementation_failed bound_exhausted:suite-check/fail caused by BinMissingThorGuardTest failing only under the gate subprocess env (#594), not by the diff. Orchestrator hand-finished: removed an enforce_agent_ready bypass the repair round added to checkout.rb, re-indented three methods, wrote the follow-through docs. refactorer and contract-auditor did not run. Two hand settlements (dispatches 249, 250) after agents relayed the wrong dispatch id; hand gate on 249 overwrote the suite-check red with a green in the report row.
Follow-ups: #594 suite gate env defect (filed); #593 documentation-only cases (filed earlier); implement SKILL.md should invoke check-out so the early bounce fires on the pipeline path: not filed, user to decide; none other.