u1 argparse --reuse-from PREV_RUN_ID + post-merge fail-closed guard (rejects layout/zone_geometry/zone_section/image override axes by name; only --override-frame is preserved). u2 src/phase_z2_reuse_snapshot.py — JSON-only Step 6 snapshot with mdx_sha256 integrity key and {value, source_path, upstream_step} provenance per axis (pickle forbidden per Stage 2 guardrail). u3 _write_reuse_snapshot at the Step 6 boundary; soft-fails to stderr without aborting the seed run. u4 prev_run_dir RO copy of step00/01/02/05/06 + _reuse_snapshot.json into new run_dir, state rehydration, reuse marker, frame-override application on restored units, Step 7+ resume. u4b fail-closed for missing prev_run_dir / missing/corrupt/invalid snapshot / mdx_sha256 mismatch / accidental new==prev write, with value+path+upstream diagnostics per axis. u5 reuse_from Optional[str] threaded through run_phase_z2_mvp1 signature and CLI dispatch; default None preserves byte-identical pre-IMP-43 behavior. u6 Front /api/run optional reuseFromRunId forwarding (vite.config.ts + designAgentApi.ts + run_pipeline_reuse_from.test.ts). u7a fast CI equivalence (1 mdx × 1 layout × 2 frames); step13 whitelist = run_id/timestamps/prev_run_id only. u7b 3 layouts × 3 mdx × 32 frames sweep gated by pytest.mark.sweep (registered in pyproject.toml; default CI must use -m 'not sweep'). u8 scripts/measure_reuse_savings.py argv-driven A/B/C harness with frame pin self-discovery + seed-time exclusion; status board §8 TBD anchor (issue-body 50-70% / 10-20s→3-8s claim explicitly unverified, not mirrored). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>