Skip to content

Add story-driver skill — phased multi-ticket orchestration within a single Claude Code session #167

Description

@sebastientaggart

Problem to Fix

The current Code Cannon workflow asks for human input at several routine moments — handoffs between /start and /submit-for-review, clean review outcomes, informational review notes — even when no real decision is needed. Across a multi-ticket effort this adds up and discourages tackling work as a coherent story.

Why it Matters

We want to "automate a little more" without ever giving up human judgment on real decisions. Federal-project liability means the operator must remain in the loop for anything that touches quality, approach, or stability — but mechanical prompts dilute attention from the moments that actually need it.

General Approach

This ticket is now a story: a parent issue whose ordered sub-issues each tighten one piece of the loop. Land them in order so each later step builds on smoother primitives. The story driver itself is the last child — by the time we write it, the per-ticket loop is already smooth, so the driver shrinks to "walk sub-issues in order, stop at phase boundaries."

State across the story is derived from sub-issue status, not stored in comments or bodies. Comments remain purely informational so human or agent edits cannot corrupt driver state.

Hard Constraints (carried forward to all children)

  • All work runs inside a single interactive Claude Code session. No claude -p, no headless subprocesses, no daemons.
  • Default posture remains stop-and-ask. Auto-proceed only where explicitly justified per child ticket.
  • No change touching auth, payments, secrets, prod config, or destructive ops auto-proceeds — ever.

Complexity

Verification / QA effort: extensive
This is a story; verification happens per child. The parent is verified when all children are closed and a 4-ticket dry-run story completes phase 1 without inter-ticket prompting and stops cleanly at the phase boundary.

Acceptance Criteria

  • All child sub-issues are closed and merged.
  • A dry-run story with one phase of 3–4 tickets completes phase 1 without prompting between tickets when validation is clean, and stops at the phase boundary.
  • A mid-ticket follow-up surfaces as a linked GitHub ticket and the story continues without interruption.
  • No claude -p or external process is invoked at any point in the story driver or any updated child skill.

Metadata

Metadata

Labels

enhancementNew feature or request

Fields

No fields configured for Feature.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions