diff --git a/docs/pr-recovery-1219.md b/docs/pr-recovery-1219.md new file mode 100644 index 00000000..21d44ae1 --- /dev/null +++ b/docs/pr-recovery-1219.md @@ -0,0 +1,75 @@ +# PR Recovery Investigation — Issue #1219 + +**Audit source:** Issue #1210 + +Five PRs were closed without merge while their parent issues remained open and +marked p0-critical. This document records the investigation findings and the +path to resolution for each. + +--- + +## Root Cause + +Per Timmy's comment on #1219: all five PRs were closed due to **merge conflicts +during the mass-merge cleanup cycle** (a rebase storm), not due to code +quality problems or a changed approach. The code in each PR was correct; +the branches simply became stale. + +--- + +## Status Matrix + +| PR | Feature | Issue | PR Closed | Issue State | Resolution | +|----|---------|-------|-----------|-------------|------------| +| #1163 | Three-Strike Detector | #962 | Rebase storm | **Closed ✓** | v2 merged via PR #1232 | +| #1162 | Session Sovereignty Report | #957 | Rebase storm | **Open** | PR #1263 (v3 — rebased) | +| #1157 | Qwen3-8B/14B routing | #1065 | Rebase storm | **Closed ✓** | v2 merged via PR #1233 | +| #1156 | Agent Dreaming Mode | #1019 | Rebase storm | **Open** | PR #1264 (v3 — rebased) | +| #1145 | Qwen3-14B config | #1064 | Rebase storm | **Closed ✓** | Code present on main | + +--- + +## Detail: Already Resolved + +### PR #1163 → Issue #962 (Three-Strike Detector) + +- **Why closed:** merge conflict during rebase storm +- **Resolution:** `src/timmy/sovereignty/three_strike.py` and + `src/dashboard/routes/three_strike.py` are present on `main` (landed via + PR #1232). Issue #962 is closed. + +### PR #1157 → Issue #1065 (Qwen3-8B/14B dual-model routing) + +- **Why closed:** merge conflict during rebase storm +- **Resolution:** `src/infrastructure/router/classifier.py` and + `src/infrastructure/router/cascade.py` are present on `main` (landed via + PR #1233). Issue #1065 is closed. + +### PR #1145 → Issue #1064 (Qwen3-14B config) + +- **Why closed:** merge conflict during rebase storm +- **Resolution:** `Modelfile.timmy`, `Modelfile.qwen3-14b`, and the `config.py` + defaults (`ollama_model = "qwen3:14b"`) are present on `main`. Issue #1064 + is closed. + +--- + +## Detail: Requiring Action + +### PR #1162 → Issue #957 (Session Sovereignty Report Generator) + +- **Why closed:** merge conflict during rebase storm +- **Branch preserved:** `claude/issue-957-v2` (one feature commit) +- **Action taken:** Rebased onto current `main`, resolved conflict in + `src/timmy/sovereignty/__init__.py` (both three-strike and session-report + docstrings kept). All 458 unit tests pass. +- **New PR:** #1263 (`claude/issue-957-v3` → `main`) + +### PR #1156 → Issue #1019 (Agent Dreaming Mode) + +- **Why closed:** merge conflict during rebase storm +- **Branch preserved:** `claude/issue-1019-v2` (one feature commit) +- **Action taken:** Rebased onto current `main`, resolved conflict in + `src/dashboard/app.py` (both `three_strike_router` and `dreaming_router` + registered). All 435 unit tests pass. +- **New PR:** #1264 (`claude/issue-1019-v3` → `main`)