diff --git a/docs/superpowers/plans/2026-07-06-cyclone-api-routers-split.md b/docs/superpowers/plans/2026-07-06-cyclone-api-routers-split.md index 4545cd3..894c799 100644 --- a/docs/superpowers/plans/2026-07-06-cyclone-api-routers-split.md +++ b/docs/superpowers/plans/2026-07-06-cyclone-api-routers-split.md @@ -12,6 +12,15 @@ **Progress tracker:** `/tmp/refactor-cyclone.md` — append one line per task per the per-task cycle in §0.3. +**Status:** Merged into main on 2026-07-07 — merge commit `f005494 merge: SP36 api-routers-split into main` (15 SP36 commits beneath). Branch `sp36-api-routers-split` deleted (local + remote) post-merge. + +**Outcome vs plan:** +- `api.py`: 4,341 → 378 LOC (plan target ≤300; +78 due to 7 backward-compat shims — follow-up cleanup tracked) +- Routers: 18 under `api_routers/` + private `_shared.py` (plan called for 13 new + 2 modified + 3 unchanged = 18) +- Helpers promoted to `_shared.py`: 9 (1 from Task 11 early-promotion: `_actor_user_id`; 7 from Task 16: parse-related; plus PAYER_FACTORIES dicts). Plan called for 12 cross-router helpers; the plan's count assumed all helpers would graduate but per D4 the single-router helpers correctly stayed in their routers. +- Behavior change: 0. Test changes: 0 (D5 invariant). +- Shim cleanup follow-up: drop 3 test files' reliance on the 7 `cyclone.api.` alias-imports (`tests/test_payer_summary.py`, `tests/test_api_stream_live.py`, `tests/test_api_dedup.py`) to delete all 7 shims in one PR (target: api.py ≤300 LOC). + --- ## File structure diff --git a/docs/superpowers/specs/2026-07-06-cyclone-api-routers-split-design.md b/docs/superpowers/specs/2026-07-06-cyclone-api-routers-split-design.md index db0bcb7..61f5e28 100644 --- a/docs/superpowers/specs/2026-07-06-cyclone-api-routers-split-design.md +++ b/docs/superpowers/specs/2026-07-06-cyclone-api-routers-split-design.md @@ -1,8 +1,8 @@ # Sub-project 36 — API Routers Split: Design Spec **Date:** 2026-07-06 -**Status:** Draft, awaiting user sign-off -**Branch:** `sp36-api-routers-split` (off `main`, post-SP35 merge) +**Status:** Merged into main (`f005494 merge: SP36 api-routers-split into main` on 2026-07-07) +**Branch:** `sp36-api-routers-split` (merged + deleted) **Aesthetic direction:** No UI changes. Pure backend structural refactor — the public HTTP surface is byte-for-byte identical. ---