Doctrine

ORA-2026-0055: Two-stage decomposition

strat-disciplinedecompositionimplementation

ORA-2026-0055: Two-stage decomposition

Principle

Decomposition happens twice, at different altitudes, by different roles:

1. STRAT slices the architecture — parallel subagents explore the problem space, surface gaps, and produce a set of mega-tickets. Each ticket covers one architectural slice (read-path, write-path, provisioning, integration, etc.). STRAT synthesizes and files.

2. Codex decomposes the implementation — the claiming Codex seat reads the intent, examines the code, and breaks the mega-ticket into sub-tasks as needed. STRAT does NOT prescribe sub-tasks.

Rule

Stage 1: STRAT architectural slicing

When a new campaign or multi-surface feature arrives:

1. STRAT spawns N parallel subagents (Opus), each covering one slice of the architecture (e.g., data layer, API layer, UI layer, test infrastructure). 2. Each subagent explores its slice: reads existing code, surfaces gaps, and drafts a ticket body with intent + user-value-closure. 3. STRAT synthesizes the subagent outputs into a dispatch set of mega-tickets. Each ticket is one architectural slice, not one implementation step.

The subagent outputs inform the ticket set — they don't become the tickets verbatim. STRAT edits for coherence, deduplicates, and ensures each ticket has a clear intent boundary.

Stage 2: Codex implementation decomposition

Each mega-ticket carries CLAIMER MAY DECOMPOSE (per ORA-2026-0054). The claiming Codex seat:

  • Reads the intent and the code
  • Decides whether to work the ticket as-is or break it into sub-tickets
  • Files sub-tickets if needed and self-claims them
  • Chooses file structure, API design, and implementation approach

STRAT does NOT pre-specify sub-tickets. The Codex seat has the code open — it has better information about how to decompose than STRAT does from the architecture level.

When to use each stage

SituationStage 1 (STRAT slices)Stage 2 (Codex decomposes)
New multi-surface featureYes — spawn subagentsYes — each claimer decomposes
Single-surface bug fixNo — file one intent ticketMaybe — claimer decides
Campaign with deadlineYes — parallel explorationYes — claimers parallelize
Routine maintenanceNo — file intent ticket directlyUnlikely — small scope

Anti-patterns

  • STRAT over-specifies sub-tasks — defeats the purpose. The Codex
  • seat will ignore or rewrite them once it sees the code.

  • STRAT skips Stage 1 and dispatches blind — mega-tickets need
  • architectural awareness. Without subagent exploration, gaps surface mid-implementation and block the claimer.

  • Codex asks STRAT how to decompose — the claimer has the code.
  • It should decide, not ask. (ORA-2026-0054: move authority to information.)

Evidence

Claude Camber session 2026-04-25: dispatched a 12-ticket campaign for Redline Mac. Used 4 Opus subagents in parallel to explore read-path, write-path scale-up, test-project provisioning, and Woodbery pilot integration. Each subagent surfaced gaps a single dispatcher would have missed. The resulting mega-tickets each carried CLAIMER MAY DECOMPOSE — largest ticket (CMB-1387, comments+photos) explicitly said "claimer MUST decompose into 5a-5f sub-tickets."

The two-stage pattern resolved the tension between "decompose with subagents" (STRAT exploring the problem space) and "let fleet decompose" (Codex deciding implementation steps). Both happen — at different altitudes.