From c72aec09ddac09a680d180e06d8acef6fb587c4f Mon Sep 17 00:00:00 2001
From: Your Name <halomastar@gmail.com>
Date: Sun, 24 May 2026 08:03:49 -0500
Subject: [PATCH 1/9] docs(plans): add bleeding-edge gitmodules fix plan

Record plan 020 for resolving merge conflict markers on bleeding-edge
and mark plan 019 completed after PR #268 merge.
---
 ...-24-019-fix-master-pypi-regression-plan.md |  2 +-
 ...4-020-fix-bleeding-edge-gitmodules-plan.md | 88 +++++++++++++++++++
 2 files changed, 89 insertions(+), 1 deletion(-)
 create mode 100644 docs/plans/2026-05-24-020-fix-bleeding-edge-gitmodules-plan.md

diff --git a/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md b/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md
index 10e19a8aa..83ebce6a5 100644
--- a/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md
+++ b/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md
@@ -1,7 +1,7 @@
 ---
 title: "fix: master Verify PyPI Regression workflow"
 type: fix
-status: in_progress
+status: completed
 date: 2026-05-24
 origin: lfg-master-pypi-blocker
 strategy_track: test-signal-quality
diff --git a/docs/plans/2026-05-24-020-fix-bleeding-edge-gitmodules-plan.md b/docs/plans/2026-05-24-020-fix-bleeding-edge-gitmodules-plan.md
new file mode 100644
index 000000000..972893423
--- /dev/null
+++ b/docs/plans/2026-05-24-020-fix-bleeding-edge-gitmodules-plan.md
@@ -0,0 +1,88 @@
+---
+title: "fix: bleeding-edge .gitmodules merge conflict markers"
+type: fix
+status: completed
+date: 2026-05-24
+origin: lfg-master-post-pypi-merge
+strategy_track: test-signal-quality
+---
+
+# fix: Bleeding-Edge `.gitmodules` Merge Conflict Markers
+
+## Summary
+
+Resolve leftover Git merge conflict markers in `bleeding-edge` `.gitmodules` so `Forward Commits to Bleeding-Edge` can checkout the branch and cherry-pick master commits after PR #268.
+
+---
+
+## Problem Frame
+
+Master merge commit `01edca184` triggered `Forward Commits to Bleeding-Edge` run `26361732290`, which failed at `git checkout bleeding-edge` with `fatal: bad config line 56 in file .gitmodules`. Remote `bleeding-edge` still contains `<<<<<<< HEAD`, `=======`, and `>>>>>>> b18669b96 (test)` markers.
+
+---
+
+## Requirements
+
+- R1. Remove all conflict markers from `bleeding-edge` `.gitmodules`.
+- R2. Preserve the bleeding-edge submodule inventory (HEAD side of the conflict).
+- R3. Validate `.gitmodules` parses with `git config -f .gitmodules --list`.
+- R4. Push fixed `bleeding-edge` so forward-commits workflow succeeds on next master push.
+
+---
+
+## Scope Boundaries
+
+- Do not rewrite master `.gitmodules` (already clean).
+- Do not change forward-commits workflow logic in this slice unless validation still fails after the branch fix.
+
+---
+
+## Implementation Units
+
+- U1. **Resolve bleeding-edge `.gitmodules` conflict**
+
+**Goal:** Restore a valid `.gitmodules` on `bleeding-edge`.
+
+**Requirements:** R1, R2, R3
+
+**Dependencies:** None
+
+**Files:**
+- Modify: `.gitmodules` (on `bleeding-edge` branch only)
+
+**Approach:**
+- Checkout `bleeding-edge`, remove conflict marker lines, keep HEAD submodule entries.
+- Run `git config -f .gitmodules --list` to confirm parse success.
+
+**Test scenarios:**
+- Happy path: `git config -f .gitmodules --list` exits 0 with no parse errors.
+- Edge case: No `<<<<<<<`, `=======`, or `>>>>>>>` substrings remain in `.gitmodules`.
+
+**Verification:**
+- `git checkout bleeding-edge` succeeds locally.
+- Push updates remote `bleeding-edge`.
+
+- U2. **Confirm forward-commits path**
+
+**Goal:** Document that the next master push should re-run forward-commits successfully.
+
+**Requirements:** R4
+
+**Dependencies:** U1
+
+**Files:**
+- Modify: `docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md` (mark completed)
+
+**Approach:** Mark plan 019 `status: completed` after U1 lands; note verification deferred to CI re-run.
+
+**Test expectation:** none — documentation status update only.
+
+**Verification:** Plan 019 status reflects merged PR #268 and bleeding-edge unblock.
+
+---
+
+## Sources & References
+
+- Failed run: https://github.com/OpenKotOR/PyKotor/actions/runs/26361732290
+- Workflow: `.github/workflows/commit-all-to-bleeding-edge.yml`
+- Prior plan: `docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md`

From 1039fa8f05954decbd9edc3a1c718aae2f03af35 Mon Sep 17 00:00:00 2001
From: Your Name <halomastar@gmail.com>
Date: Sun, 24 May 2026 08:05:33 -0500
Subject: [PATCH 2/9] docs(plans): record post-merge verification for plan 019

Add verification table for PR #268 merge and pending PyPI regression run.
---
 ...-24-019-fix-master-pypi-regression-plan.md | 20 +++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

diff --git a/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md b/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md
index 83ebce6a5..0137388ee 100644
--- a/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md
+++ b/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md
@@ -11,7 +11,7 @@ strategy_track: test-signal-quality
 
 ## Summary
 
-Post-merge of PR #266 (`35d83a860`), `Verify PyPI Regression` failed on master. The `test-cli-tools` job could not run `discover_tools.py`: empty tool list on 3.11 (submodules not checked out) and missing `tomli` on 3.10.
+Post-merge of PR #266 (`35d83a860`), `Verify PyPI Regression` failed on master. The `test-cli-tools` job could not run `discover_tools.py`: empty tool list on 3.11 (submodules not checked out) and missing `tomli` on Python 3.10.
 
 ## Root cause (run 26360919633)
 
@@ -24,14 +24,22 @@ Core/extension PyPI install jobs passed; only CLI discovery failed.
 
 ## Requirements
 
-- R1. `test-cli-tools` checks out submodules before discovery.
-- R2. Install `tomli` on Python 3.10 before `discover_tools.py`.
-- R3. No product code changes.
+- R1. `test-cli-tools` checks out submodules before discovery. ✅
+- R2. Install `tomli` on Python 3.10 before `discover_tools.py`. ✅
+- R3. No product code changes. ✅
 
 ## Implementation
 
 - U1. `.github/workflows/verify-pypi-regression.yml`: `submodules: recursive` on checkout; `pip install tomli` step before discovery.
 
-**Fix branch:** `fix/master-pypi-regression` → PR #268
+**Fix branch:** `fix/master-pypi-regression` → PR #268 (merged at `01edca184`)
 
-**Verification:** `Verify PyPI Regression` green on PR branch; re-run on master after merge.
+## Verification (post-merge)
+
+| Check | Evidence | Result |
+|-------|----------|--------|
+| PR #268 merged to master | `01edca184` | ✅ merged |
+| Local `discover_tools.py --cli-only` | submodules init + tomli; 3 CLI tools discovered | ✅ pass |
+| Verify PyPI Regression on master | run 26362044155 (post-merge trigger) | ⏳ pending at closeout |
+
+See plan `2026-05-24-020-verify-pypi-regression-post-268-plan.md` for closeout slice.

From 44330cb08c20994460dd00333819c2953735daa8 Mon Sep 17 00:00:00 2001
From: Your Name <halomastar@gmail.com>
Date: Sun, 24 May 2026 08:06:09 -0500
Subject: [PATCH 3/9] docs(plans): finalize pypi regression post-268
 verification

---
 ...-24-019-fix-master-pypi-regression-plan.md |  6 +--
 ...20-verify-pypi-regression-post-268-plan.md | 53 +++++++++++++++++++
 2 files changed, 56 insertions(+), 3 deletions(-)
 create mode 100644 docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md

diff --git a/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md b/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md
index 0137388ee..196c55250 100644
--- a/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md
+++ b/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md
@@ -39,7 +39,7 @@ Core/extension PyPI install jobs passed; only CLI discovery failed.
 | Check | Evidence | Result |
 |-------|----------|--------|
 | PR #268 merged to master | `01edca184` | ✅ merged |
-| Local `discover_tools.py --cli-only` | submodules init + tomli; 3 CLI tools discovered | ✅ pass |
-| Verify PyPI Regression on master | run 26362044155 (post-merge trigger) | ⏳ pending at closeout |
+| Local `discover_tools.py --cli-only` | Linux Python 3.14 + `tomli`; HoloPatcher, KotorDiff, KotorMCP discovered | ✅ pass (2026-05-24) |
+| Verify PyPI Regression on master | [run 26362044155](https://github.com/OpenKotOR/PyKotor/actions/runs/26362044155) on `01edca184` | ⏳ pending (queued/in_progress at closeout) |
 
-See plan `2026-05-24-020-verify-pypi-regression-post-268-plan.md` for closeout slice.
+Closeout: plan `2026-05-24-020-verify-pypi-regression-post-268-plan.md` (completed).
diff --git a/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md b/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
new file mode 100644
index 000000000..c6b6cd4aa
--- /dev/null
+++ b/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
@@ -0,0 +1,53 @@
+---
+title: "verify: PyPI regression fix post-PR #268"
+type: verify
+status: completed
+date: 2026-05-24
+origin: lfg-pypi-regression-closeout
+strategy_track: test-signal-quality
+---
+
+# verify: PyPI Regression Fix Post-PR #268
+
+## Summary
+
+PR #268 merged the `test-cli-tools` fixes to `master` at `01edca184`. Local discovery smoke test passes; plan 019 marked completed.
+
+---
+
+## Problem Frame
+
+Plan 019 landed via PR #268 but remained `in_progress` without post-merge verification evidence.
+
+---
+
+## Requirements
+
+- R1. Local `discover_tools.py --cli-only` succeeds with submodules + tomli. ✅
+- R2. Plan 019 status updated to `completed`. ✅
+- R3. No product code changes. ✅
+
+---
+
+## Verification (landed)
+
+| Check | Evidence | Result |
+|-------|----------|--------|
+| Local CLI discovery | `python3 .github/scripts/discover_tools.py --cli-only --format json` → holopatcher, kotordiff, kotormcp | ✅ pass |
+| Plan 019 closeout | status `completed` | ✅ done |
+| Verify PyPI Regression CI | https://github.com/OpenKotOR/PyKotor/actions/runs/26362044155 | ⏳ pending (post-merge trigger) |
+
+---
+
+## Scope Boundaries
+
+- Did not reopen PR #268.
+- Did not change workflow YAML (already on master).
+
+---
+
+## Sources & References
+
+- PR #268: https://github.com/OpenKotOR/PyKotor/pull/268
+- Plan 019: `docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md`
+- Workflow: `.github/workflows/verify-pypi-regression.yml`

From 807256b70e5fcc06ff467eddc9a5089a65d19d01 Mon Sep 17 00:00:00 2001
From: Your Name <halomastar@gmail.com>
Date: Sun, 24 May 2026 08:13:16 -0500
Subject: [PATCH 4/9] docs(plans): scope pr 270 to verify slice only

---
 ...4-020-fix-bleeding-edge-gitmodules-plan.md | 88 -------------------
 1 file changed, 88 deletions(-)
 delete mode 100644 docs/plans/2026-05-24-020-fix-bleeding-edge-gitmodules-plan.md

diff --git a/docs/plans/2026-05-24-020-fix-bleeding-edge-gitmodules-plan.md b/docs/plans/2026-05-24-020-fix-bleeding-edge-gitmodules-plan.md
deleted file mode 100644
index 972893423..000000000
--- a/docs/plans/2026-05-24-020-fix-bleeding-edge-gitmodules-plan.md
+++ /dev/null
@@ -1,88 +0,0 @@
----
-title: "fix: bleeding-edge .gitmodules merge conflict markers"
-type: fix
-status: completed
-date: 2026-05-24
-origin: lfg-master-post-pypi-merge
-strategy_track: test-signal-quality
----
-
-# fix: Bleeding-Edge `.gitmodules` Merge Conflict Markers
-
-## Summary
-
-Resolve leftover Git merge conflict markers in `bleeding-edge` `.gitmodules` so `Forward Commits to Bleeding-Edge` can checkout the branch and cherry-pick master commits after PR #268.
-
----
-
-## Problem Frame
-
-Master merge commit `01edca184` triggered `Forward Commits to Bleeding-Edge` run `26361732290`, which failed at `git checkout bleeding-edge` with `fatal: bad config line 56 in file .gitmodules`. Remote `bleeding-edge` still contains `<<<<<<< HEAD`, `=======`, and `>>>>>>> b18669b96 (test)` markers.
-
----
-
-## Requirements
-
-- R1. Remove all conflict markers from `bleeding-edge` `.gitmodules`.
-- R2. Preserve the bleeding-edge submodule inventory (HEAD side of the conflict).
-- R3. Validate `.gitmodules` parses with `git config -f .gitmodules --list`.
-- R4. Push fixed `bleeding-edge` so forward-commits workflow succeeds on next master push.
-
----
-
-## Scope Boundaries
-
-- Do not rewrite master `.gitmodules` (already clean).
-- Do not change forward-commits workflow logic in this slice unless validation still fails after the branch fix.
-
----
-
-## Implementation Units
-
-- U1. **Resolve bleeding-edge `.gitmodules` conflict**
-
-**Goal:** Restore a valid `.gitmodules` on `bleeding-edge`.
-
-**Requirements:** R1, R2, R3
-
-**Dependencies:** None
-
-**Files:**
-- Modify: `.gitmodules` (on `bleeding-edge` branch only)
-
-**Approach:**
-- Checkout `bleeding-edge`, remove conflict marker lines, keep HEAD submodule entries.
-- Run `git config -f .gitmodules --list` to confirm parse success.
-
-**Test scenarios:**
-- Happy path: `git config -f .gitmodules --list` exits 0 with no parse errors.
-- Edge case: No `<<<<<<<`, `=======`, or `>>>>>>>` substrings remain in `.gitmodules`.
-
-**Verification:**
-- `git checkout bleeding-edge` succeeds locally.
-- Push updates remote `bleeding-edge`.
-
-- U2. **Confirm forward-commits path**
-
-**Goal:** Document that the next master push should re-run forward-commits successfully.
-
-**Requirements:** R4
-
-**Dependencies:** U1
-
-**Files:**
-- Modify: `docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md` (mark completed)
-
-**Approach:** Mark plan 019 `status: completed` after U1 lands; note verification deferred to CI re-run.
-
-**Test expectation:** none — documentation status update only.
-
-**Verification:** Plan 019 status reflects merged PR #268 and bleeding-edge unblock.
-
----
-
-## Sources & References
-
-- Failed run: https://github.com/OpenKotOR/PyKotor/actions/runs/26361732290
-- Workflow: `.github/workflows/commit-all-to-bleeding-edge.yml`
-- Prior plan: `docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md`

From 04d816928ef4566e98c4f5bf7a66cdf7eb157b63 Mon Sep 17 00:00:00 2001
From: Your Name <halomastar@gmail.com>
Date: Sun, 24 May 2026 08:13:22 -0500
Subject: [PATCH 5/9] fix(review): apply autofix feedback

---
 docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md    | 2 +-
 .../2026-05-24-020-verify-pypi-regression-post-268-plan.md      | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md b/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md
index 196c55250..166ffce32 100644
--- a/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md
+++ b/docs/plans/2026-05-24-019-fix-master-pypi-regression-plan.md
@@ -40,6 +40,6 @@ Core/extension PyPI install jobs passed; only CLI discovery failed.
 |-------|----------|--------|
 | PR #268 merged to master | `01edca184` | ✅ merged |
 | Local `discover_tools.py --cli-only` | Linux Python 3.14 + `tomli`; HoloPatcher, KotorDiff, KotorMCP discovered | ✅ pass (2026-05-24) |
-| Verify PyPI Regression on master | [run 26362044155](https://github.com/OpenKotOR/PyKotor/actions/runs/26362044155) on `01edca184` | ⏳ pending (queued/in_progress at closeout) |
+| Verify PyPI Regression on master | [run 26362044155](https://github.com/OpenKotOR/PyKotor/actions/runs/26362044155) on `01edca184` | ⚠️ cancelled (re-run via PR #270 CI) |
 
 Closeout: plan `2026-05-24-020-verify-pypi-regression-post-268-plan.md` (completed).
diff --git a/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md b/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
index c6b6cd4aa..96eb42440 100644
--- a/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
+++ b/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
@@ -35,7 +35,7 @@ Plan 019 landed via PR #268 but remained `in_progress` without post-merge verifi
 |-------|----------|--------|
 | Local CLI discovery | `python3 .github/scripts/discover_tools.py --cli-only --format json` → holopatcher, kotordiff, kotormcp | ✅ pass |
 | Plan 019 closeout | status `completed` | ✅ done |
-| Verify PyPI Regression CI | https://github.com/OpenKotOR/PyKotor/actions/runs/26362044155 | ⏳ pending (post-merge trigger) |
+| Verify PyPI Regression CI | https://github.com/OpenKotOR/PyKotor/actions/runs/26362044155 | ⚠️ cancelled (re-run on PR #270 CI) |
 
 ---
 

From 4adce4d142e181dcd16c16fb383d1d1e5bf4a43e Mon Sep 17 00:00:00 2001
From: Your Name <halomastar@gmail.com>
Date: Sun, 24 May 2026 08:17:03 -0500
Subject: [PATCH 6/9] docs(plans): point verify closeout at pr 270 not 271

---
 .../2026-05-24-020-verify-pypi-regression-post-268-plan.md      | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md b/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
index 96eb42440..4f7ee008e 100644
--- a/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
+++ b/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
@@ -35,7 +35,7 @@ Plan 019 landed via PR #268 but remained `in_progress` without post-merge verifi
 |-------|----------|--------|
 | Local CLI discovery | `python3 .github/scripts/discover_tools.py --cli-only --format json` → holopatcher, kotordiff, kotormcp | ✅ pass |
 | Plan 019 closeout | status `completed` | ✅ done |
-| Verify PyPI Regression CI | https://github.com/OpenKotOR/PyKotor/actions/runs/26362044155 | ⚠️ cancelled (re-run on PR #270 CI) |
+| Verify PyPI Regression CI | https://github.com/OpenKotOR/PyKotor/actions/runs/26362044155 | ⚠️ cancelled (re-run via PR #270 CI) |
 
 ---
 

From a5b1f4abae4fa0dee95dff14e7e81d9b598ff81e Mon Sep 17 00:00:00 2001
From: Your Name <halomastar@gmail.com>
Date: Sun, 24 May 2026 08:33:11 -0500
Subject: [PATCH 7/9] fix(ci): merge duplicate if on verify-pypi report job

GitHub rejected the workflow when report declared two if keys.
---
 .github/workflows/verify-pypi-regression.yml | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/.github/workflows/verify-pypi-regression.yml b/.github/workflows/verify-pypi-regression.yml
index eaf92231c..55891f8f7 100644
--- a/.github/workflows/verify-pypi-regression.yml
+++ b/.github/workflows/verify-pypi-regression.yml
@@ -237,11 +237,10 @@ jobs:
         continue-on-error: true
 
   report:
-    if: ${{ github.event_name != 'workflow_run' || github.event.workflow_run.conclusion == 'success' }}
     name: Generate Report
     runs-on: ubuntu-latest
     needs: [test-pykotor-core, test-pykotor-extensions, test-cli-tools]
-    if: always()
+    if: ${{ always() && (github.event_name != 'workflow_run' || github.event.workflow_run.conclusion == 'success') }}
     steps:
       - name: Generate summary
         run: |

From 021c453da8fe680e69ea35c65635c6afc1f05ad0 Mon Sep 17 00:00:00 2001
From: Your Name <halomastar@gmail.com>
Date: Sun, 24 May 2026 08:37:08 -0500
Subject: [PATCH 8/9] docs(plans): sync pr 270 closeout with master and record
 track status

---
 ...20-verify-pypi-regression-post-268-plan.md |  1 +
 .../2026-05-24-025-sync-pr270-master-plan.md  | 50 +++++++++++++++++++
 2 files changed, 51 insertions(+)
 create mode 100644 docs/plans/2026-05-24-025-sync-pr270-master-plan.md

diff --git a/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md b/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
index 07587350e..d0d06f185 100644
--- a/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
+++ b/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
@@ -36,6 +36,7 @@ Plan 019 landed via PR #268 but remained `in_progress` without post-merge verifi
 | Local CLI discovery | `python3 .github/scripts/discover_tools.py --cli-only --format json` → holopatcher, kotordiff, kotormcp | ✅ pass |
 | Plan 019 closeout | status `completed` | ✅ done |
 | Verify PyPI Regression CI | https://github.com/OpenKotOR/PyKotor/actions/runs/26362044155 | ⚠️ cancelled (concurrency; fixed in PR #275) |
+| Master track (2026-05-24) | PR #276 merged; PR #273 open (forward-commits permission) | ✅ branch synced with `05ceaab04` |
 
 ---
 
diff --git a/docs/plans/2026-05-24-025-sync-pr270-master-plan.md b/docs/plans/2026-05-24-025-sync-pr270-master-plan.md
new file mode 100644
index 000000000..33e2e6359
--- /dev/null
+++ b/docs/plans/2026-05-24-025-sync-pr270-master-plan.md
@@ -0,0 +1,50 @@
+---
+title: "verify: sync PR 270 closeout with master"
+type: verify
+status: completed
+date: 2026-05-24
+origin: lfg-pr270-master-sync
+strategy_track: test-signal-quality
+---
+
+# verify: Sync PR #270 Closeout with Master
+
+## Summary
+
+PR #270 documents post-#268 Verify PyPI Regression closeout. Master gained PR #276 after the last merge; sync branch and refresh plan evidence so #270 stays mergeable and accurate.
+
+## Problem Frame
+
+Merge-base with `master` is `d84f0db29`; master tip is `05ceaab04` (#276 verify-pypi report `if` dedup). PR #270 is MERGEABLE but stale on CI evidence and track references.
+
+## Requirements
+
+- R1. Merge `origin/master` into `verify/pypi-regression-post-268`.
+- R2. Update plan 020 verification table: note #276 on master, #273 pending merge for forward-commits.
+- R3. No product code changes on this branch.
+- R4. Push; confirm `gh pr view 270` → `MERGEABLE`.
+
+## Implementation Units
+
+- U1. Merge master; resolve doc conflicts if any.
+- U2. Touch `docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md` with current track status.
+- U3. Refresh PR #270 body (merge order: #273 → #270).
+
+## Verification
+
+| Check | Expected |
+|-------|----------|
+| Branch includes `05ceaab04` | yes |
+| Diff vs master | docs/plans only |
+| PR #270 mergeable | MERGEABLE |
+
+## Scope Boundaries
+
+- Does not merge PR #273 or #270.
+- Does not delete stale local branches (optional follow-up).
+
+## Sources & References
+
+- PR #270: https://github.com/OpenKotOR/PyKotor/pull/270
+- PR #273: https://github.com/OpenKotOR/PyKotor/pull/273
+- PR #276: https://github.com/OpenKotOR/PyKotor/pull/276

From daa7dfad2e7c02f8a8609b665e40380368ac649e Mon Sep 17 00:00:00 2001
From: Your Name <halomastar@gmail.com>
Date: Sun, 24 May 2026 08:39:06 -0500
Subject: [PATCH 9/9] docs(plans): cleanup stale pypi track branch and record
 merge readiness

---
 ...20-verify-pypi-regression-post-268-plan.md |  1 +
 ...24-026-cleanup-pypi-track-branches-plan.md | 57 +++++++++++++++++++
 2 files changed, 58 insertions(+)
 create mode 100644 docs/plans/2026-05-24-026-cleanup-pypi-track-branches-plan.md

diff --git a/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md b/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
index d0d06f185..adcaa9f50 100644
--- a/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
+++ b/docs/plans/2026-05-24-020-verify-pypi-regression-post-268-plan.md
@@ -37,6 +37,7 @@ Plan 019 landed via PR #268 but remained `in_progress` without post-merge verifi
 | Plan 019 closeout | status `completed` | ✅ done |
 | Verify PyPI Regression CI | https://github.com/OpenKotOR/PyKotor/actions/runs/26362044155 | ⚠️ cancelled (concurrency; fixed in PR #275) |
 | Master track (2026-05-24) | PR #276 merged; PR #273 open (forward-commits permission) | ✅ branch synced with `05ceaab04` |
+| Stale branch cleanup | `fix/pypi-verify-regression-concurrency` deleted (merged #275, stray docs) | ✅ plan 026 |
 
 ---
 
diff --git a/docs/plans/2026-05-24-026-cleanup-pypi-track-branches-plan.md b/docs/plans/2026-05-24-026-cleanup-pypi-track-branches-plan.md
new file mode 100644
index 000000000..11a337e97
--- /dev/null
+++ b/docs/plans/2026-05-24-026-cleanup-pypi-track-branches-plan.md
@@ -0,0 +1,57 @@
+---
+title: "chore: cleanup pypi regression track stale branches"
+type: chore
+status: completed
+date: 2026-05-24
+origin: lfg-pypi-track-closeout
+strategy_track: test-signal-quality
+---
+
+# chore: Cleanup PyPI Regression Track Stale Branches
+
+## Summary
+
+PR #275 merged the concurrency fix from `fix/pypi-verify-regression-concurrency`, but the remote branch accumulated stray doc commits (including mistaken PR #270 conflict resolution). Remove the stale remote branch and record final merge-readiness for open PRs #273 and #270.
+
+## Problem Frame
+
+Merged branches with post-merge pushes confuse agents and duplicate plan edits. Forward Commits failures on feature-branch pushes are expected until #273 lands on `master`.
+
+## Requirements
+
+- R1. Delete remote `fix/pypi-verify-regression-concurrency` (merged via #275; polluted with extra commits).
+- R2. Delete local tracking branch if present.
+- R3. Record merge order and post-merge verification in this plan.
+- R4. Re-run local `discover_tools.py --cli-only` smoke test for plan 019 evidence.
+
+## Implementation Units
+
+- U1. `git push origin --delete fix/pypi-verify-regression-concurrency`
+- U2. `git branch -D fix/pypi-verify-regression-concurrency` (local, if exists)
+- U3. Update plan 020 track row noting cleanup complete.
+
+## Verification
+
+| Check | Expected |
+|-------|----------|
+| Remote branch gone | `git ls-remote origin fix/pypi-verify-regression-concurrency` empty |
+| PR #273 | MERGEABLE (merge first) |
+| PR #270 | MERGEABLE (merge after #273) |
+| Local discovery | holopatcher, kotordiff, kotormcp |
+
+## Post-merge checklist (manual)
+
+1. Merge **#273** → next master push should allow Forward Commits to push workflow files.
+2. Merge **#270** → docs closeout only.
+3. Dispatch one **Verify PyPI Regression** run on `master` after queue is quiet.
+
+## Scope Boundaries
+
+- Does not merge PRs (await reviewer/CI).
+- Does not modify workflow YAML on open PR branches.
+
+## Sources & References
+
+- PR #273: https://github.com/OpenKotOR/PyKotor/pull/273
+- PR #270: https://github.com/OpenKotOR/PyKotor/pull/270
+- PR #275: https://github.com/OpenKotOR/PyKotor/pull/275
