b15ad07208
The execution core: cells iterate strategy x instrument x window in doc order (sequential — C1 keeps parallelism across sims); the sweep stage enumerates the axes odometer (BTreeMap order, last axis fastest) through the engine sweep over a ListSpace with lowest-index-deterministic fault capture; selection dispatches optimize / optimize_plateau / optimize_deflated (deflation nulls seeded from the campaign doc's seed); gates filter per-member via member_metric (metrics.r == None fails an R predicate, conservative); an empty survivor set truncates the cell's realization and the run continues (exit-0 semantics at the caller). The walk-forward stage rolls the declared cell window in ms (WfMode -> RollMode), IS-sweeps ONLY the survivor points per window, stamps manifest.selection on OOS winner reports, and appends a WalkForward family; realization = CampaignRunRecord over untouched family records. The loop's task-7 BLOCKED was review-exhaustion on the task-6 stub wording the plan itself prescribed (task 7 deletes that stub); a fresh post-loop quality review on the final diff returned one Minor — the campaign_id prefix slice could panic on a malformed id — fixed as a typed PipelineShape refusal + test (execute_refuses_malformed_campaign_id). Known and accepted: a cross-cell member fault leaves earlier cells' families as unreferenced records in the append-only store; nested window/member parallelism can oversubscribe cores on large campaigns. Gates: aura-campaign 29/0, workspace 961+/0, clippy -D warnings clean. refs #198