Skip to content

Commit 2d6f699

Browse files
authored
Merge pull request #5601 from mikamikasuki/codex/loopx-retire-gh-c102
docs(contributor): retire completed GH-C102 task
2 parents bd8f50a + b552eb5 commit 2d6f699

2 files changed

Lines changed: 2 additions & 2 deletions

File tree

‎docs/development/contributor-tasks-history.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ names a possible shape; the anchor names the gap.
1919
| GH-C04 | docs | Landed: #3982 (merged 2026-09-06) synced the public timeline to tagged v0.5.4 evidence and completed the restart-host activation note beside the first-time PyPI install block; the #3301/#3566/#3556 install, ownership, activation-recovery, and extension-doctor alignment landed earlier via #3810. The `docs/release-readiness-v0.5.4` branch is absent from the remote because its work merged, so this row is history rather than an open claim. | `python3 examples/fresh-clone-quickstart-smoke.py`, `python3 examples/loopx-update-smoke.py`, `python3 examples/release/release-readiness-doc-smoke.py`, `python3 examples/release/release-version-contract-smoke.py`, and `loopx check --scan-path docs/product/release-readiness.md --scan-path CONTRIBUTING.md` |
2020
| GH-C06 | cli | Landed: #4659 owns `update` registration and dispatch, #4803 owns `goal-channel prepare-operation` and `deliver-operation`, and #4818 owns quota action selection. The public commands remain unchanged, each parent and extracted owner stays below its module budget, and no compatibility wrapper was added. | Command-specific smoke, `python3 examples/cli-command-module-size-ownership-command-modularization-smoke.py`, `python3 regression/cli-command-module-contract.py`, and focused pytest if rules move |
2121
| GH-C100 | state | Landed via #4422: the provider-neutral parity fixture drives the shipped file-backed `claim_work` executor through same-target competition, independent-target rebase, exact replay, operation-identity mismatch, and stale-generation rejection. The fixtures remain synthetic and public-safe. | `python3 -m pytest -q tests/control_plane/test_coordination_executor.py tests/control_plane/test_coordination_file_provider.py tests/control_plane/test_coordination_provider_parity.py` and `loopx check --scan-path loopx/control_plane/coordination --scan-path docs/architecture/rfcs/shared-goal-authority-state-provider-v0.md --scan-path docs/development/contributor-tasks.md` |
22+
| GH-C102 | state | Landed via [#4549](https://github.com/loopx-project/loopx/pull/4549) (merged 2026-09-16): the production-scale fixture now carries rejected standing-decision receipts, every provider conformance arm verifies they remain inactive, and an independent negative/mutation test covers approval-only activation and typed-scope removal. | See merged #4549 for the recorded focused tests, file/SQLite conformance, typecheck and CI-gated provider validation. |
2223
| GH-C96 | design / migration | Claimed: the compatibility review is published as [TypeScript migration compatibility notes](../architecture/typescript-migration-compatibility-notes.md), verifying typed state rules (zero `as unknown as` casts and a one-entry named seam inventory for the internal clone assertion on `main`), domain neutrality (providers stay explicit adapters), behavior-change disclosure (no undisclosed change found), the public/private boundary, and a stage ledger of sixteen merged Stage 2B cutovers against the RFC's three time layers, without starting new migration work. | `python3 examples/docs-governance-smoke.py` and `loopx check --scan-path docs/architecture/rfcs/typescript-control-plane-migration-v0.md --scan-path docs/development/contributor-tasks.md` |
2324
| GH-C89 | governance | Landed: [#4172](https://github.com/huangruiteng/loopx/pull/4172) (merged 2026-09-11) responds to the AGE-style attractor proposal (#2831) with a provider-neutral, Agent-scoped direction baseline. It defines the Goal-owned read boundary, exact-revision drift signal, advisory-only Vision re-evaluation, and synthetic fixture plan without making repository docs a write authority. | Public design note with a synthetic drift fixture plan plus `loopx check --scan-path docs/architecture/rfcs --scan-path docs/development/contributor-tasks.md` |
2425
| GH-C89b | RFC fixture | Landed via [#5549](https://github.com/loopx-project/loopx/pull/5549) (merged 2026-10-04): the pre-M1 F2 revision-drift fixture and mutation checks are executable, public-safe, and recorded in the RFC; issue [#5547](https://github.com/loopx-project/loopx/issues/5547) is closed. F1 and F3–F8 remain open under M1. | `python3 examples/goal-direction-baseline-f2-smoke.py` and `loopx check --scan-path docs/architecture/rfcs` |

‎docs/development/contributor-tasks.md‎

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,6 @@ the section; "extend the fixture" is not an obligation.
133133
| ID | Anchor | Gap and exit | Validation | Status |
134134
| --- | --- | --- | --- | --- |
135135
| GH-R5A | R5 / [shared-goal-authority-state-provider-v0](../architecture/rfcs/shared-goal-authority-state-provider-v0.md) · D2 durability / [#4224](https://github.com/loopx-project/loopx/issues/4224) [#3245](https://github.com/loopx-project/loopx/issues/3245) | Existing contributor-owned capacity and process-recovery work includes merged #4328 and read-proof optimization [#4931](https://github.com/loopx-project/loopx/pull/4931). D2 still lacks complete reference-profile reruns, large-history recovery/consumer-lag, restore/upgrade/runtime coverage and elapsed-soak evidence. Exit: reconcile the RFC §7.2 passed/failed/missing ledger against the merged source while retaining the original failed budgets and separate promotion holds. | Declared reference-runtime capacity profiles and real SQLite process/recovery suites; independently recorded platform and >=10-day elapsed-soak evidence | Claimed |
136-
| GH-C102 | [shared-goal-authority-state-provider-v0](../architecture/rfcs/shared-goal-authority-state-provider-v0.md) · one named invariant | Extend the shared production-scale coordination fixture only for an accepted RFC invariant or a reproduced public regression that the current envelope does not cover, naming the invariant section in the PR. Update the checked-in envelope, shared generator and an independent negative or mutation assertion; run the same dimension through every affected provider arm. Do not add a dimension because the fixture accepts one. Exit: the named invariant has a passing positive case and a failing mutation case on every affected arm. | `npm run test:control-plane`; for PostgreSQL, `LOOPX_TEST_POSTGRES_URL="$DISPOSABLE_POSTGRES_URL" npm run test:postgresql-authority-store`; `loopx check --scan-path tests/fixtures/control_plane --scan-path tests/control_plane_ts` | Available (named invariant required) |
137136
| GH-B01 | S11 / [long-horizon benchmark research program](../architecture/rfcs/long-horizon-harness-benchmark-research-program-v0.md) · treatment integrity / [#3243](https://github.com/loopx-project/loopx/issues/3243) | Adapter-fidelity and treatment-integrity gaps are asserted but not reproducible from public fixtures. Exit: one reproducible gap with the existing focused fixtures, reported without live scoring. | Deterministic fixtures in `tests/capabilities/test_benchmark_toolkit.py`; no live runs | Needs design |
138137

139138
## Retired Task Generators
@@ -145,7 +144,7 @@ anchored row above.
145144
| Former ID | Was | Why retired | Where the work goes now |
146145
| --- | --- | --- | --- |
147146
| GH-C37 | "Curate the interaction pattern catalog with one new public-safe case" | Eight IP entries landed in three weeks with no consuming controller, dashboard copy or test named; the catalog is 3,300 lines and its own admission note now applies. | A new IP is part of the anchored row that consumes it; cite the code, test or copy that reads the pattern. |
148-
| GH-C102 (open form) | "Extend the shared coordination fixture with one more dimension" | Dimensions were added because the fixture accepted them, not because an invariant was uncovered. | Kept as GH-C102 above with a named RFC invariant required. |
147+
| GH-C102 (open form) | "Extend the shared coordination fixture with one more dimension" | Dimensions were added because the fixture accepted them, not because an invariant was uncovered. | Retired as a claimable template: admit future work only after it names a specific accepted invariant, consumer, gap, and exit. |
149148
| Progress-log "contributor implication" hints | "Add one synthetic fixture / negative case / walkthrough" | Hints named a shape, not a gap; they generated test-pin PRs. | Read them in [history](contributor-tasks-history.md); open an anchored issue if a hint maps to an RFC invariant or defect. |
150149

151150
## Maintainer-Owned / Coordination Required

0 commit comments

Comments
 (0)