Context
friction→gold for a session-long, repeated planning failure (operator-surfaced 2026-06-27). v13.1 had no defined goals + no owned lanes, so the team chased scattered micro-tickets, parents never closed, and a peer reported "nothing left to do." Two symmetric failures recurred all session: (a) no planning → micro-ticket chase; (b) lead micro-manages → assigns peers to lanes (violates self-assignment + flat-peer agency). The root: we have no planning skill. /epic-create exists but only authors one epic; nothing scopes a GOAL into the set of LANES.
The Problem
The epic lifecycle has three skills — epic-create (author one epic), epic-review (pre-work), epic-resolution (closeout) — but no front-end: nothing converts a release/initiative GOAL into the coherent owned LANES that become those epics. So scoping is done ad-hoc — either skipped (→ scrap-ticket sprawl) or done as lead-assignment (→ micro-management). Both are wrong.
The Architectural Reality
- Epic lifecycle family:
.agents/skills/epic-create / epic-review / epic-resolution. Each operates on ONE already-identified epic.
- Missing: the goal → {lanes} scoping step that decides which epics/lanes a goal needs. This skill is that front-end; each lane it produces is authored via
epic-create.
- Ownership model: peers self-select lanes (flat-peer agency, AGENTS.md §swarm_topology_anchor); the planner defines goal+lanes but never assigns a peer (the lead-as-lane-assigner anti-pattern).
The Fix
A new goal-scoping skill (Progressive-Disclosure: thin SKILL.md router + references/goal-scoping-workflow.md payload). The process:
- Define the GOAL — one demonstrable bar.
- Scope into LANES — a few (≈2–6) coherent owned streams (by subsystem/daemon/pillar/capability), each a whole unit worth a dedicated owner — not slivers, not scrap-tickets, not a flat ticket list.
- Each lane → an epic via
/epic-create — the durable, context-wipe-proof ownership anchor.
- Ownership = self-select — peers claim lanes; the planner defines + facilitates, never assigns.
- Drive to the lane-GOAL (close-by-goal), decomposing reasonably (no micro-slivers).
Acceptance Criteria
Out of Scope
- The review + ticket-scoping right-sizing (#14263 — sibling process-reform).
- Re-authoring epic-create/review/resolution (this is the front-end that feeds them; they're untouched).
Avoided Traps
- "Extend /epic-create" — REJECTED: epic-create authors ONE epic; this scopes a goal into the SET of lanes (a distinct front-end function).
- "The planner assigns peers to lanes" — REJECTED: that's micro-management + violates self-assignment; peers self-select.
- "Scope the goal into a ticket list" — REJECTED: lanes (coherent owned streams), not scrap-tickets.
Related
- #14263 (sibling: review + ticket-scoping right-sizing). Both are the process-substrate reform.
- Builds on the epic-lifecycle skills + AGENTS.md §swarm_topology_anchor (flat-peer self-select).
Origin Session ID
3f32bbc7-1bfe-4f85-9232-c957de0d22f1
Authored by Vega (Claude Opus 4.8, Claude Code) as v13.1 lead/planner.
Context
friction→gold for a session-long, repeated planning failure (operator-surfaced 2026-06-27). v13.1 had no defined goals + no owned lanes, so the team chased scattered micro-tickets, parents never closed, and a peer reported "nothing left to do." Two symmetric failures recurred all session: (a) no planning → micro-ticket chase; (b) lead micro-manages → assigns peers to lanes (violates self-assignment + flat-peer agency). The root: we have no planning skill.
/epic-createexists but only authors one epic; nothing scopes a GOAL into the set of LANES.The Problem
The epic lifecycle has three skills —
epic-create(author one epic),epic-review(pre-work),epic-resolution(closeout) — but no front-end: nothing converts a release/initiative GOAL into the coherent owned LANES that become those epics. So scoping is done ad-hoc — either skipped (→ scrap-ticket sprawl) or done as lead-assignment (→ micro-management). Both are wrong.The Architectural Reality
.agents/skills/epic-create/epic-review/epic-resolution. Each operates on ONE already-identified epic.epic-create.The Fix
A new
goal-scopingskill (Progressive-Disclosure: thinSKILL.mdrouter +references/goal-scoping-workflow.mdpayload). The process:/epic-create— the durable, context-wipe-proof ownership anchor.Acceptance Criteria
goal-scopingskill scaffolded:SKILL.md(7–12 line router) +references/goal-scoping-workflow.mdpayload, per the authoring guide..agents/skills/skills.manifest.jsonupdated +.claude/skills/goal-scopingsymlink created.node ai/scripts/lint/lint-skill-manifest.mjs --base origin/devpasses.Out of Scope
Avoided Traps
Related
Origin Session ID
3f32bbc7-1bfe-4f85-9232-c957de0d22f1
Authored by Vega (Claude Opus 4.8, Claude Code) as v13.1 lead/planner.