You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Lane: openxfactory-4 (openXfactory-4-openDox_extraction)
Authored by lane openXfactory-3, delegated by lane openxfactory-4 (#656 5984809190)
Plan 034 T097, release 1's bookkeeping. This PR ticks all 63 release-1 boxes of #1144's tasks.md (add-neutral-product-standalone-operability) that a realization task closes, each with its evidence note, and records research R16's non-normative corrections. Its After set has landed: batch P (#1230), T096 (#1241 → 8a37a087) and T099 (the publish at the cut, and openDox#19 → d77f8cbf). On the holder's rulings it also ticks plan 034's T095, T099, T002, T007 and T097, each with its bullet, so plan 034 closes at 92 of its 96 tasks. T090 to T093 tick at the arc's close.
Bookkeeping, so it carries no Arc: trailer (R1Q20 (a), 5817152735; T091) and no closing keyword. It touches openspec/changes/, so lane openxfactory-4 lands it under a Rule 6 LANDING/LANDED window.
b7f49673 and e2efb3a1: from Copilot's review (below), which edit note text only;
bd32ea9c: the merge of main after batch P landed;
cf2c6bdc: 16.3a's tick, on the T100 follow-on's landing (openDox-code#86 → 651c35fe);
5870cd00: 4.3's and 9.2's ticks, on T086's landing (openXdox-code#37 → 56e1c238);
23665543: 5.5's note reworded (Copilot at 5870cd00), note text only;
96c74eab: the merge of main after T094 and T098 landed;
935164af: 3.3's tick, on T098's landing (openxFactory#1237 → 20ce593e);
e93ab9fb: 5.4a's note reworded (Copilot at 935164af), note text only;
f6c6dc3c: the merge of main after T089 landed;
e873b25f: F4.1's, F5.2's and F16.1's ticks, on T089's landing (openxFactory#1238 → fab575ad);
9759313b: the merge of mainf2acc88c;
10b6ba05: the phase-1 and phase-2 checkpoint citations by path (below), note text only;
0cde3961: the merge of main after T096 landed;
f94be2fd: 10.3's tick, on T099's publish, and plan 034's ticks (below);
9713f991: plan 034's opening status, which still said batch P was to land (Copilot at f94be2fd, below), plan text only.
If main moves before the landing, I merge it in. No rebase and no force-push.
Measured, not copied
Lane 4's table (2026-10-03T20:05Z, at de2ab703: 52 CLOSED-LANDED, 11 PENDING, 5 LEFT-OPEN, 2 ALREADY-TICKED) was regenerated by its own generator, patched, at c8d80020, at ba6bb870, and again after each closing landing:
T099 has published opendox 0.1.0, and its root README PR has landed (openDox#19 → d77f8cbf). That closes 10.3 (below), the last box.
Batch P closes and rewords no box. In #1144's tasks.md it only inserts addenda at the ends of 12.4a, 16.3a and F16.1: no box line moves and no box changes state. Since ba6bb870, no landing has touched #1144's tasks.md. In plan 034's tasks.md, T097's own text is unchanged.
The census
python3 box_census.py openspec/changes/add-neutral-product-standalone-operability/tasks.md, with the tool written from research.md § Appendix (byte-identical to the Appendix's heredoc).
Before, at main8a37a087 (identical to c8d80020's, ba6bb870's, 20ce593e's and a43845e6's):
The release-1 groups are shown. Groups 1, 6, 8, 12, 14, 15 and the follow-ons read the same before and after. Earlier heads read 'x': 66, ' ': 50 (76d8ff37 to bd32ea9c), 'x': 67, ' ': 49 (cf2c6bdc), 'x': 69, ' ': 47 (5870cd00 and 23665543), 'x': 70, ' ': 46 (935164af to f6c6dc3c) and 'x': 73, ' ': 43 (e873b25f to 0cde3961).
The change: #1144's tasks.md, and plan 034's ticks
63 boxes ticked, each with its evidence note as the item's last paragraph, after any addenda. The note is in 1.8's and 3.0's form: a bold dated lead, **Landed <date>**, where the date is the last landing of the box's realizing tasks; the tasks; the landings as repo#n → sha8; and the falsifier's result, with where it was quoted. For example, 2.4:
Landed 2026-09-27 (T030, in T011's PR): openDox-code#46 → 0e88454a. tests/test_imports_standalone.py::test_every_module_imports_with_no_sibling first asserts the four siblings absent, then imports every module, failing with the first that still needs one (evidence/checkpoint-phase1.md § 1).
No ratified line moves. Against main8a37a087, File add-neutral-product-standalone-operability: open the BUILD arc, recording ten rulings #1144's diff is the 63 checkbox lines, [ ] → [x], and 64 inserted paragraphs (482 lines): 63 notes, and 1 R16 note on an open box (9.5). This was proven at f94be2fd by setting every checkbox to [ ] in both files and diffing: the result is 64 insertions and nothing else, and the lines the two files share differ only by the 63 flips. The only other file the PR changes is plan 034's tasks.md (below). The file is byte-identical to a fresh re-apply of the regenerated decisions onto main's file.
Research R16 (research.md § R16), each figure re-checked against research R2, R4, R5, R10 and R13 and plan 034's records:
R16 item
box
where it is recorded
1
2.5
in 2.5's note: 22 modules, not 26, were reached by no CI step
2
9.4
in 9.4's note: openXdox-code's floors read 564/558/6 at 626f2c8d, not 539/533/6
3
4.3
in 4.3's note, since 4.3 closed on T086 (an open-box note until then): run_scoped_doc_health makes three of the four reaches, and the fourth is session_documents
4
3.2
in 3.2's note: the proxy's refusal was written for NOTHING REGISTERED
5
10.1
in 10.1's note: Q-R4 is recorded at runtime/cli.py:39-42, not :40-46
6
9.5
a note on the open box (open for the arc's close, T090): the openDox pin was 11 commits behind, not 9, and T086 has since moved it to dede32b4
7
Group 2's heading
in 2.1's note, the box the heading introduces: 1,305 and 1,239 at 1e4a57fb
8
3.0
no new line: 3.0's own note already records it ("Read at ratification, 2026-09-24")
10.3, closed on T099
10.3's box says the openDox root documents the entry point and does not host it, and batch H's addendum makes the documented command pip install "opendox[local]", then opendox generate-and-open --local …. Plan 034 maps it to T076, T101 and T099:
T076 (openDox#17 → 504324de) documents the install and the start, and adds no make target.
T101 adds the release workflow and the version bump (openDox-code#78 → d59f3f26, openDox-code#79 → dede32b4).
T099 publishes that commit at the cut, on Brett Heap's word (5997633384). Read from the forge and from PyPI:
the annotated tag v0.1.0 (9153c254) names dede32b4, which the openDox root's contracts/code-pin.yaml names;
openDox-code's release run 37339111713, dispatched on that tag, completed success in all four jobs: build and verify, publish to TestPyPI (the dry run), install opendox[local] from TestPyPI and publish to PyPI, whose steps include PyPI serves the files the build job verified;
https://pypi.org/pypi/opendox/0.1.0/json lists exactly two files, neither yanked: opendox-0.1.0-py3-none-any.whl (sha256 8ecea00db6f9…) and opendox-0.1.0.tar.gz (sha256 56869b6208a8…);
openDox#19 → d77f8cbf replaces the README's stand-in paragraph. At that commit, the README's first line resolves from PyPI, and no paragraph says that no release is published.
Plan 034: T095, T099, T002, T007 and T097
Lane openxfactory-4's delegation of 2026-10-05T16:37:31Z asks #1233 to tick these, each with a Landed or Done bullet in #1226's form, so that release 1 closes at 92 of 96. Its ruling 5999175092 settles three points: (a), (a) and (a). Every sha in the bullets was read from GitHub.
T095: openDox-code#75 → 389e5a4a, which is X. Its acceptance job at X is the dispatched run 37333323932: head_sha X, job 111841708700, success, and its log reads AT-R1 HTTP half: PASS (314 assertions held).
T099: P against X. The compare shows four files between them, none a build input, so the ruled check exits 0. Then the tag, the release run, PyPI's two files and openDox#19, as above.
Lane openxfactory-4 ruled at 2026-10-05T16:25:25Z that the notes' CP1 § n and CP2 § n citations name their records, as the phase-3 notes name evidence/checkpoint-phase3.md. CP1 and CP2 are the shorthand of lane 4's table, and #1144 never defines them. The change is non-normative and inside T097's R16 scope. 10b6ba05 makes it. The 26 citations, in 25 notes, now read evidence/checkpoint-phase1.md (T049, #1204) and evidence/checkpoint-phase2.md (T063, #1218). A word diff against e873b25f finds those 26 tokens and nothing else; only the 25 paragraphs' line breaks move.
F4.1, F5.2 and F16.1, closed on T089
T089, phase 3's checkpoint, landed on 2026-10-05T15:26:43Z as #1238 → fab575ad. Its record, specs/034-opendox-standalone-operation/evidence/checkpoint-phase3.md, extracts each block from #1144 by anchor at 36908480 and runs it from a fresh worktree at the commits phase 3 pinned: openDox-code dede32b4, the code of the openDox root e1e3a3c3 (T087), and openXdox-code 56e1c238 (T086). It says of F4.1 and F5.2 "T097 ticks both in #1144; this record ticks nothing there", and plan 034's T089 Run bullet says the same. Each box closes on that run, by plan 034's Box accounting:
F4.1 (F4.1 → T089): as extracted (sha256 8900b985e72f) and run unchanged, it exits 0 with 1 passed, 1 passed, then no deferred reach names the consumer or the publisher (§ 1).
F5.2 (F5.2 → T086, T089; RULED 5962785556, item 1, moves its close to phase 3): whole, as batches C, F, G and K amend it (OPENXFACTORY at 36908480, last step --chains), it exits 0. The seven suites pass whole (45, 23, 18, 6, 40, 9 and 12 passed), test -s holds, and the last step prints five admitted: lines, then ok: 5 protected edit(s), each entered and holding (§ 5). One of the five admits T086's edits to tests/test_session_snapshot.py, by entries 16, 17 and 19 of tests/protected_suite_respellings.yaml at 56e1c238: the three pre-arc reds that T063 quoted, each entry naming the test it repairs.
F16.1 (F16.1 → T083 (at 38d3350e), T089 (batch P's cases, at T087's pin)): with batch M's line, it exits 0 with 24 passed, the dialect line, no model configured: the catalog offers nothing, 83 passed and 532 passed (§ 4). dede32b4 carries the T100 follow-on (openDox-code#86 → 651c35fe is its ancestor, and the only commit between T100's landing and dede32b4 that touches tests/test_model_binding_trust.py). That file is the same at both: 160 tests, among them batch P's six test_F16_1_batch_p_* cases and A8's test_A8_a_state_directory_that_is_a_link_trusts_nothing, none of which exists at 38d3350e. T083's run there is quoted beside it, as before.
3.3, closed on T098
3.3 asks that the carve manifest's deleted_at_carve row for scripts/ideation_dashboard/profile_openxfactory.py stay BYTE-IDENTICAL. T017, which realizes it, reads the row through the three interim F11.1 runs, "and T097 ticks 3.3 on all three". Each was re-checked on main20ce593e:
Re-read for this tick at main20ce593e: the row is still equal to 17167481's, both raw (4 lines) and parsed. scripts/opendox_host.py is still openxFactory's host: T094 modified it and deleted nothing, which F11.1 would have refused.
4.3 and 9.2, closed on T086
T086 landed on 2026-10-05T12:23:03Z as openXdox-code#37 → 56e1c238. It is a squash whose tree (78ef1ed1) is that of its head 57bebd8b. Its pin is openDox-code dede32b4, the commit T087 pins (openDox#18 → e1e3a3c3).
4.3 closes "with the last of" the nineteen reaches into openXdox, and "openXdox-code's ratchet (OPENDOX_BACK_IMPORTS) is tightened to (0, 0) in the same landing". At 56e1c238:
tests/test_dependency_direction.py holds OPENDOX_BACK_IMPORTS = {}, and test_the_pinned_opendox_does_not_import_openxdox_back asserts (0, 0).
openXdox-code#37's body reads that file 17 passed at the pin, with the census empty.
consumer_reach.py, absent at dede32b4, was retired by T084 (openDox-code#77 → e49b17c3).
9.2 closes in phase 3 (batch F's addendum), with batch B's note. At 56e1c238:
CI's validate at the PR's head (openXdox-code run 37307785866) printed open extraction: the declared exclusion and triple: selected=1099 passed=1095 skipped=4 failures=0 errors=0.
Requirement 9 stays open until T008.
16.3a, closed on the T100 follow-on
16.3a is "Carried out by T100", and batch P's addendum adds "Carried out by a T100 follow-on openDox-code PR (claim 5982447319), which is no task of plan 034 and lands before T087":
T100 landed as openDox-code#82 → 38d3350e.
The follow-on landed as openDox-code#86 → 651c35fe (09:49:55Z). It is a squash whose tree is that of its head aecac805, and it landed before T087 (openDox#18, 11:58:27Z) and T101.
It carries out Brett Heap's 5982436447, item 2, and 5983805990, with the holder's 5984069416, 5985046107 (C1 to C5) and 5985553609, and the holder's A8.
Its body records the falsifier: F16.1's block as batch P amends it, run by T089's runner at aecac805, exits 0 with 532 passed in tests/test_model_binding_trust.py. The six test_F16_1_batch_p_* tests are present at 651c35fe.
The open trust-time existence check, and the follow-ons of openDox-code#86's eighth Copilot review, move no box of release 1. 16.3a's own text says so for the first, and the holder's 5992038800 for the second.
Left open, by T097's own text
9.5, 11.0, 11.1 and F11.1, for the arc's close (T090 to T093), and F9.2, until T008. Nothing else is held.
T097 is ticked
T097's task is "Tick #1144's release-1 boxes, each with its evidence note: the 63 in the table below." All 63 are ticked, so f94be2fd ticks T097 in the same commit as 10.3, the last box, as lane 4's brief requires.
The merges of main
bd32ea9c merged batch P (ba6bb870). It gave the one conflict this PR expected, at 16.4's checkbox line, which follows batch P's insertion at the end of 16.3a. The resolution took main's text for every hunk batch P changed and re-applied the ticks and notes with the same tool, byte-identical to a fresh re-apply onto main's file.
8 failed, 3427 passed, 1 skipped, the same 8 nodes as at 10b6ba05
The 8 failures are environmental, the same 8 at every head. Each needs the openDox and openXdox legs initialized, as CI's pytest-suite does, or a reachable pinned validator: test_ideation_readiness.py (3), test_readiness_dispatch.py (1), test_sentinel_vocabulary.py (2), test_status_reader_real_lines.py (1) and test_chain_reader.py (1). Re-run alone at main8a37a087, they read 8 failed with the same messages. The venv was built by CI's own pip install --require-hashes -r requirements/hermes-runtime-contracts.lock, with LANG=C.UTF-8 and every GIT_*/XF_* variable unset. The earlier rounds read the same: mainc8d80020 against 76d8ff37, b7f49673 and e2efb3a1, mainba6bb870 against bd32ea9c, cf2c6bdc, 5870cd00 and 23665543, main20ce593e against 935164af, maina43845e6 against e873b25f, and mainf2acc88c against 10b6ba05. At f94be2fd the local run was stopped at 31% on a session swap, and CI's pytest-suite passed there. No test, script or workflow reads plan 034's files (git grep over tests, scripts and .github finds none).
every other sha (17167481, 1e4a57fb, 36908480, 5c137a90, 626f2c8d, aecac805, dede32b4, f8a1ece; in the plan, 5c663a7e, 9153c254 and f632d70c) resolves in its repository, and the file digests match PyPI's JSON and the SHA256SUMS files;
CI at this head 9713f991: every check-run but Sourcery's completed success, the 8 required among them (pytest-suite 17:54:16Z to 18:15:30Z). Sourcery's reads skipped. lane-line re-ran on each edit of this description and passed.
CI at f94be2fd: every check-run completed success, the 8 required among them (pytest-suite 17:13:56Z to 17:31:21Z).
CI at 10b6ba05: every check-run completed success (pytest-suite until 17:04:09Z).
CI at e873b25f: every check-run completed success, the 8 required among them (pytest-suite 15:57:01Z to 16:22:01Z). lane-line re-ran on each edit of this description and passed.
CI at 935164af, 23665543, cf2c6bdc, bd32ea9c and e2efb3a1: every check-run completed success, the 8 required among them (signed-execution-chain-gate, lane-line, former-id-arrival-gate, openspec-cli-pin, wallet-validation, pytest-suite, release-tag-gate, openxdox-consumer-gate). At 5870cd00, 23665543's run superseded its pytest-suite.
Copilot at 76d8ff37: one finding, r4179674026: F7.2's note named no landing commit for T058 or T063. b7f49673 names them (openDox-code#68 → 047bb4fa, openxFactory#1218 → a883bbf6), and 7.1's changelog landing too (openDox#15 → 66758438). The thread is answered and resolved.
Copilot at b7f49673: no new finding, and one "previously missed" note: that 5.4a's note wrongly said T059's run deselected the three pre-arc cases. The note was right, and comment 5985467371 gives the records. The cited lines are T059's Falsifier line, written before it landed; T059's Landed record and openXdox-code#35's body (rulings 4 and 6, and its F5.2 run) record the deselections. e2efb3a1 makes the note exact and cites them.
Copilot at 5870cd00:"Findings: None", and one "previously missed" low note: 5.5's note read as though consumer_reach"names the task lists". 23665543 says what it meant, that the seven consumer_reach names T055 lists are retired.
Copilot at e2efb3a1, bd32ea9c, cf2c6bdc and 23665543:"Findings: None". Where its status line read "Changes recommended", it named only what this DRAFT waits for.
Copilot at 935164af: one finding, r4185667778: 5.4a's note read "the seven red at both pins". e93ab9fb reads "the seven reds", and the thread is answered and resolved.
Copilot at e873b25f: one finding, r4186043242: this description was stale after T089's ticks. It is refreshed here, and the thread is answered and resolved. A second request at that head registered no new review.
Copilot at 9713f991: review 5418607294, on the push. Its one open item was r4186761413, this description, refreshed here for 9713f991. Its two "previously missed" low notes, at plan 034's lines 129 ("whose message lacks") and 4496 ("the drive"), need no change, because each phrase is the wording of the record it cites, T091's and oracle-verdict.md's. Comment 6000157580 gives the records. A request through the reviewer API, at 18:01:14Z, registered no new review at this head.
Sourcery posted a reviewer's guide, and no comment on the diff. At 17:16:25Z it reported its review budget used, and its check-run reads skipped at f94be2fd and at 9713f991.
…s, and record research R16 (plan 034)
Bookkeeping for plan 034's T097, its "Now" part, delegated by lane
openxfactory-4 (#656 comment 5984809190). Measured at openxFactory main
c8d8002, with every landing re-read from the forge:
- 55 boxes of #1144's tasks.md whose realizing tasks have all landed are
ticked. Each carries its evidence note as the item's last paragraph, in
the form of 1.8 and 3.0: a bold dated lead, the tasks, the landings
(repo#n -> sha8) and the falsifier's quoted result, from the phase
checkpoints and the F10.1, F13.1 and F16.1 run records.
- Research R16's non-normative corrections are recorded: items 1, 2, 4
and 5 in the notes of 2.5, 9.4, 3.2 and 10.1, and item 7 in 2.1's note.
Items 3 and 6 are notes on boxes that stay open: 4.3 until T086, and
9.5 until the arc's close. Item 8 is already 3.0's own note.
- Left open by T097's own text: 9.5, 11.0, 11.1 and F11.1 (the arc's
close) and F9.2 (after T008). Still pending: 3.3, 4.3, F4.1, F5.2, 9.2,
10.3, 16.3a and F16.1. 16.3a and F16.1 are held to Brett Heap's rulings
5982436447 and 5983805990, which batch P records.
No other line moves: the diff is 55 checkbox flips and insertions only.
box_census.py: 105 [ ], 11 [x] and 9 [~] before; 50, 66 and 9 after.
Lane: openxfactory-3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This documentation-only PR records release-1 bookkeeping for plan 034 by ticking 55 realized task boxes and appending dated evidence and R16 corrections, while deliberately leaving eight dependency- and arc-close-dependent boxes—and T097 itself—unticked until the stated follow-up landings arrive. The diff is intended to be insertion-only aside from checkbox changes, with validation showing no behavioral or ratified-text changes.
Sequence diagram for bookkeeping merge and final T097 tick
sequenceDiagram
participant Lane4
participant Main
participant BatchP
participant FollowUps
participant Tasks
Lane4->>Main: merge latest main
Main-->>Lane4: updated tasks.md
Lane4->>BatchP: resolve 16.4 conflict
BatchP-->>Lane4: retain batch P text
Lane4->>FollowUps: wait for pending landings
FollowUps-->>Lane4: final pending box lands
Lane4->>Tasks: tick final pending box and T097
Tasks-->>Lane4: release-1 bookkeeping complete
Loading
Flow diagram for release-1 bookkeeping and pending landings
flowchart LR
A["Plan 034 tasks.md at main"] --> B["T097 bookkeeping PR"]
B --> C["55 boxes ticked"]
B --> D["55 dated evidence notes"]
B --> E["2 R16 correction notes"]
B --> F["8 boxes remain pending"]
F --> G["T086"]
F --> H["T089"]
F --> I["T098"]
F --> J["T099"]
F --> K["T100 follow-on"]
F --> L["T083 and batch P"]
G --> M["T097 becomes tickable"]
H --> M
I --> M
J --> M
K --> M
L --> M
Loading
File-Level Changes
Change
Details
Files
Bookkeeping updates the release-1 task ledger with completion evidence and researched corrections.
Ticks 55 completed release-1 task and falsifier boxes.
Adds dated landing notes with repository PRs, merge SHAs, test results, and cited evidence.
Records eight non-normative R16 corrections, including two notes on boxes that remain open.
Leaves ratified task text unchanged and intentionally holds pending boxes awaiting T086, T089, T098, T099, T100 follow-on, and batch P.
The updated ledger is validated as an insertion-only documentation change.
Regenerates the task census from 11 to 66 checked boxes while preserving blocked and open states.
Verifies evidence references, landing dates, merge commits, line width, and absence of ratified-line changes.
Reports unchanged validation, documentation-health, support, sequencing, catalog, and test-gate results relative to main, with eight known environmental failures.
Trigger a new review: Comment @sourcery-ai review on the pull request.
Continue discussions: Reply directly to Sourcery's review comments.
Generate a GitHub issue from a review comment: Ask Sourcery to create an
issue from a review comment by replying to it. You can also reply to a
review comment with @sourcery-ai issue to create an issue from it.
Generate a pull request title: Write @sourcery-ai anywhere in the pull
request title to generate a title at any time. You can also comment @sourcery-ai title on the pull request to (re-)generate the title at any time.
Generate a pull request summary: Write @sourcery-ai summary anywhere in
the pull request body to generate a PR summary at any time exactly where you
want it. You can also comment @sourcery-ai summary on the pull request to
(re-)generate the summary at any time.
Generate reviewer's guide: Comment @sourcery-ai guide on the pull
request to (re-)generate the reviewer's guide at any time.
Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
pull request to resolve all Sourcery comments. Useful if you've already
addressed all the comments and don't want to see them anymore.
Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
request to dismiss all existing Sourcery reviews. Especially useful if you
want to start fresh with a new review - don't forget to comment @sourcery-ai review to trigger a new review!
…r4179674026) (plan 034)
F7.2's note named T058 and T063 but neither landing commit, and 7.1's note
left out T053's changelog landing (openDox#15). Both now name every landing
as repo#n -> sha8, as the other notes do: F7.2 gains openDox-code#68 ->
047bb4fa and openxFactory#1218 -> a883bbf, and 7.1 gains openDox#15 ->
66758438. A check that every ticked note names each of its tasks' landings
now finds none missing. The census is unchanged: 50 [ ], 66 [x], 9 [~].
Lane: openxfactory-3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This reverses the recorded T059 run. Plan 034 says only the two consumer-schema cases in test_snapshot.py were deselected and every other suite ran whole (specs/034-opendox-standalone-operation/tasks.md:1620-1630); T063 then reports the three pre-arc cases as executed and red (:1965-1978). Saying those three were deselected makes this evidence note inaccurate.
… note (Copilot at b7f4967) (plan 034)
Copilot's review at b7f4967 read 5.4a's note against T059's Falsifier
line, the plan written before the landing (two schema cases deselected,
every other suite whole). The note follows the landing instead: T059's
record in plan 034 and openXdox-code#35's body (its rulings 4 and 6)
deselect the seven consumer-schema reds red at both pins, the two schema
cases of tests/test_snapshot.py, and the three pre-arc reds of
tests/test_session_snapshot.py, which T063 then quotes red (CP2 section 2).
The note now gives those counts and cites its source, so it no longer
reads as a contradiction. No other line moves, and the census is
unchanged: 50 [ ], 66 [x], 9 [~].
Lane: openxfactory-3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copilot's review at b7f49673, "previously missed": 5.4a's note and T059's deselections. The review had no thread, so this comment answers it.
The note described T059's run as it landed, and that is correct. The cited lines, plan 034 tasks.md:1620-1630, are T059's Falsifier line. That line is the plan written before the landing, and it deselects only tests/test_snapshot.py's two schema cases. The landed run deselected more, and three records say so:
T059's Landed record in plan 034: "Seven consumer-schema reds that fail at both pins are deselected in T059's F5.2 run … Three pre-arc reds in tests/test_session_snapshot.py are deselected with the reason "red at both pins; pre-arc carve residue; not the arc's", and stay open for F5.2 whole (T061, T063)."
:1965-1978 is T063's later run of F5.2 whole. There the three pre-arc cases do run, and are red, as RULED 5962785556 (CP2 § 2). That run is T063's, not T059's.
The terse wording invited the misreading, so e2efb3a1 makes the note exact: the seven consumer-schema reds, tests/test_snapshot.py's two, and the three pre-arc reds of tests/test_session_snapshot.py, citing T059's record and openXdox-code#35's rulings 4 and 6, with T063's red quote. No other line moves.
…the ticks and notes re-applied on main's text (plan 034)
Batch P landed on main as ba6bb87, the squash of its head 051f994. In
#1144's tasks.md it inserts addenda at the ends of 12.4a, 16.3a and F16.1
and changes no other line: no box line moves and no box changes state.
The merge conflicted in one place, 16.4's checkbox line, which follows
batch P's insertion at the end of 16.3a. Main's text is taken for every
hunk batch P changed, and this PR's 55 ticks and 57 notes are re-applied
with the same tool (apply_t097.py). The result is byte-identical to that
tool's fresh re-apply onto main's file, and to the conflict resolved by
the rule (batch P's text, then 16.4's [x]). 16.3a and F16.1 keep main's
text and stay open.
Every box was re-classified against ba6bb87, with every landing PR
re-read: 55 CLOSED-LANDED, 8 PENDING, 5 LEFT-OPEN and 2 ALREADY-TICKED,
as before, and every note is unchanged. box_census.py reads 105 [ ],
11 [x] and 9 [~] at main, and 50, 66 and 9 after.
Lane: openxfactory-3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…651c35fe), with its evidence note (plan 034)
16.3a is carried out by T100 (openDox-code#82 -> 38d3350e) and, as batch
P's addendum on main says, by a T100 follow-on openDox-code PR (claim
5982447319) that lands before T087. The follow-on landed on 2026-10-05 as
openDox-code#86 -> 651c35fe, a squash whose tree is that of its head
aecac805, and T087 has not landed. It carries out Brett Heap's rulings
5982436447 (item 2) and 5983805990, with the holder's 5984069416,
5985046107 (C1 to C5) and 5985553609, and the holder's A8. Item 3 (A14)
changes no code.
The note quotes the falsifier as the follow-on's body records it: F16.1's
block as batch P amends it, run by T089's runner against aecac805, exits 0
with 532 passed in tests/test_model_binding_trust.py, batch P's cases among
them. F16.1 itself stays open, since its Box accounting row is T083 and
T089, and T089 runs it whole at T087's pin.
The file is a fresh re-apply onto main's (ba6bb87) with the regenerated
decisions. Against the previous head it moves 16.3a's checkbox and inserts
its note, and nothing else. box_census.py reads 105 [ ], 11 [x] and 9 [~]
at main, and 49, 67 and 9 after. Seven boxes stay pending: 3.3, 4.3,
F4.1, F5.2, 9.2, 10.3 and F16.1.
Lane: openxfactory-3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…8), with their evidence notes (plan 034)
T086 landed on 2026-10-05 as openXdox-code#37 -> 56e1c238, a squash
whose tree is that of its head 57bebd8b. Its pin is openDox-code
dede32b4, the commit T087 pins (openDox root e1e3a3c3).
4.3 closes with the last of the nineteen reaches into openXdox. T084
(openDox-code#77) routed openDox's half and retired consumer_reach.py.
T086 contributes openXdox's governed columns at those seams and empties
OPENDOX_BACK_IMPORTS to (0, 0) in the same landing that moves the pin, as
4.3 asks. At that pin tests/test_dependency_direction.py reads 17 passed,
with an empty census (openXdox-code#37's body).
9.2 closes in phase 3 (batch F's addendum), with batch B's note. The
whole suite runs less the declared exclusion, which at 56e1c238 holds 66
files carrying 68 reasons: 60 doc_health, 3 status-exemption-rail and 5
openxfactory-contracts. CI's validate at that PR's head prints it as an
open extraction and reads selected=1099 passed=1095 skipped=4.
Requirement 9 stays open for openXdox-code until T008.
4.3's tick note now carries research R16 item 3, which was its open-box
note. 9.5's R16 item 6 note now says that T086 moved the pin to
dede32b4, which it did. F5.2 still waits on T089. 10.3 still waits on
T099, now that T076 (openDox#17 -> 504324de) and T101 (openDox-code#78
-> d59f3f26, openDox-code#79 -> dede32b4) have landed.
The file is a fresh re-apply onto main's (ba6bb87, unchanged).
box_census.py reads 105 [ ], 11 [x] and 9 [~] at main, and 47, 69 and 9
after. Five boxes stay pending: 3.3, F4.1, F5.2, 10.3 and F16.1.
Lane: openxfactory-3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
fab575a), with their evidence notes (plan 034)
T089, phase 3's checkpoint, landed on 2026-10-05 as openxFactory#1238
-> fab575a. Its record, evidence/checkpoint-phase3.md, runs each block
as extracted from #1144 at the commits phase 3 pinned, and each passes:
- F4.1 (plan 034's box map: F4.1 -> T089), run unchanged at openDox-code
dede32b4, T087's pin, exits 0: "1 passed", "1 passed", then "no
deferred reach names the consumer or the publisher" (section 1).
- F5.2 (F5.2 -> T086, T089; RULED 5962785556, item 1: the box closes at
phase 3's checkpoint), whole as batches C, F, G and K amend it, at
openXdox-code 56e1c238 with openDox-code dede32b4 installed over it
and OPENXFACTORY at 3690848, exits 0: the seven suites pass whole,
"test -s" holds, and the --chains step prints five admitted: lines,
then "ok: 5 protected edit(s), each entered and holding" (section 5).
T086 (openXdox-code#37 -> 56e1c238) had repaired the three pre-arc
reds that T063 quoted.
- F16.1 (F16.1 -> T083 at 38d3350e, T089 with batch P's cases at T087's
pin), with batch M's line, exits 0 at dede32b4, which carries the T100
follow-on (openDox-code#86 -> 651c35fe) and with it batch P's cases:
"24 passed", the dialect line, "no model configured: the catalog
offers nothing", "83 passed" and "532 passed" (section 4). T083's run
at 38d3350e is quoted beside it.
The file is a fresh re-apply onto main's (a43845e, the same as
20ce593's for this file), in which only these three boxes changed.
box_census.py reads 105 [ ], 11 [x] and 9 [~] at main, and 43, 73 and 9
after. One box stays pending, 10.3, for T099.
Lane: openxfactory-3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
main moved from a43845e by one landing: openxFactory#1240 (f2acc88,
Q-GRC-4's second bookkeeping). It does not touch #1144's tasks.md, so
the merge is clean, and this PR's file is unchanged by it: it is still
byte-identical to a fresh re-apply of the decisions onto main's file.
The other files take main's text.
Lane: openxfactory-3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…notes (plan 034)
The notes cited the phase 1 and phase 2 checkpoint records as "CP1 § n"
and "CP2 § n", the shorthand of lane openxfactory-4's evidence table,
which #1144 never defines. Lane openxfactory-4 ruled on 2026-10-05 at
16:25:25Z that each citation names its record, as the phase-3 notes
name evidence/checkpoint-phase3.md: non-normative, inside T097's R16
scope. The 26 citations, in 25 notes, now read
evidence/checkpoint-phase1.md (T049, openxFactory#1204) and
evidence/checkpoint-phase2.md (T063, openxFactory#1218), the records on
main. No other word changes, and no box changes state; the paragraphs
are rewrapped at 80 characters.
The file is a fresh re-apply onto main's (f2acc88, the same as
a43845e's for this file). box_census.py reads 43 [ ], 73 [x] and 9 [~],
as at e873b25.
Lane: openxfactory-3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
main moved from f2acc88 by one landing: openxFactory#1241 (8a37a08,
T096, AT-R1 at openDox-code 389e5a4a, with T095's acceptance job; it
ticks T096). It does not touch #1144's tasks.md, so the merge is clean,
and this PR's file is unchanged by it: it is still byte-identical to a
fresh re-apply of the decisions onto main's file. Plan 034's tasks.md,
plan.md, README.md and evidence/at-r1/ take main's text.
Lane: openxfactory-3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…007 and T097 (plan 034)
The last landings of release 1: T095 (openDox-code#75 -> 389e5a4a, X),
T096 (#1241 -> 8a37a08) and T099, the publish at the cut and the root
README PR (openDox#19 -> d77f8cbf).
#1144's tasks.md: 10.3 is ticked with its note. T076 (openDox#17)
documents the install and the start, T101 (openDox-code#78 and
openDox-code#79) adds the release workflow and the version bump, and
T099 publishes that commit. The annotated tag v0.1.0 names dede32b4.
openDox-code's release run 37339111713 succeeds in all four jobs, among
them "publish to PyPI" with its step "PyPI serves the files the build
job verified". PyPI serves the wheel and the sdist of opendox 0.1.0. The
file is a fresh re-apply onto main's (8a37a08, the same as f2acc88's
for this file). box_census.py reads 105 [ ], 11 [x] and 9 [~] at main,
and 42, 74 and 9 after: all 63 release-1 boxes that a realization task
closes.
Plan 034's tasks.md, on the holder's rulings (the delegation of
2026-10-05T16:37:31Z, and 5999175092, (a), (a) and (a)), each with a
Landed or Done bullet in #1226's form:
- T095: the harness, its dispatched acceptance run 37333323932 at X;
- T099: P against X, the tag, the release run, PyPI's two files and
openDox#19;
- T002: the 45 claims cited, and the five slices without one named, in
T091's form; nothing is back-filled;
- T007: batches A to P landed, and its status sentence says so;
- T097: the census, R16's corrections, and two non-normative notes, the
T096 refusals ("refused by name, with no browser signal") and the
reachability of #1241's first commit, f632d70.
92 of plan 034's 96 tasks are ticked; T090 to T093 tick at the arc's
close.
Lane: openxfactory-3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…nded (Copilot at f94be2f) (plan 034)
Copilot's review at f94be2f (r4186761333) found that the opening
status of plan 034's tasks.md still said fifteen of T007's sixteen
batches had landed, and that batch P lands before T087, while this PR
ticks T007. On the holder's ruling (fix now), that summary now reads
that all sixteen batches have landed, from A (#1171) to P (#1230, on
Brett Heap's words 5982436447 and 5983805990 and the holder's rulings),
that batch P landed before T087, and that T007 is closed. No other line
moves.
Lane: openxfactory-3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
“Drive” refers to no artifact here; the evidence names the browser driver (at_r1_browser.py). Change this to “driver” so the provenance note identifies the file whose bytes ran.
Copilot's review at 9713f991 (5418607294), "previously missed": two low notes, on text f94be2fd added to plan 034's tasks.md. Neither needs a change, because each phrase is the wording of the record it cites.
Line 129, "the two landings whose message lacks 11.0's line". T002's Done bullet repeats T091's own words. T091 (line 4309 at 9713f991) names openDox-code#37 and openDox-code#44 as "the two landings whose message lacks the line". The singular is distributive, one message per landing, and a change here would make T002 cite T091 in words T091 does not use.
Line 4496, "the runbook and the drive that ran". "The drive" is the name evidence/at-r1/oracle-verdict.md gives at_r1_browser.py: its § "How it ran" has the bullets The runbook. (run-at-r1.sh, line 124) and The drive. (at_r1_browser.py, line 167). The note names the two files by the verdict's own headings. The note's next sentences then name each by its sha256: the bytes that ran, 702e2a4b… for run-at-r1.sh and 763b5919… for at_r1_browser.py, as the verdict records them, and the reviewed files that SHA256SUMS lists at 8a37a087.
Plan 034's opening status, Copilot's one finding at f94be2fd (r4186761333), is fixed in 9713f991. The description is refreshed for 9713f991 (r4186761413). Both threads are answered and resolved.
READY at 9713f99 — Lane: openxfactory-4 (openXfactory-4-openDox_extraction)
Holder: lane openXfactory-3's D1, T097, release 1's bookkeeping. It is the last landing of release 1. It touches openspec/changes/, so it lands under a Rule 6 LANDING/LANDED window. It carries no Arc: trailer (R1Q20 (a)) and no closing keyword.
release run 37339111713, all four jobs succeeding;
tag v0.1.0 (9153c254) at dede32b4;
PyPI's wheel 8ecea00d… and sdist 56869b62…;
openDox#19 → d77f8cbf.
9.5, 11.0, 11.1 and F11.1 stay open for the arc's close, and F9.2 stays open until T008.
Plan 034's ticks. T095, T099, T002, T007 and T097 are ticked in phase 3 ticks: T084, T102 and T103 (plan 034) #1226's form, which brings plan 034 to 92 of 96. T090 to T093 are ticked at the arc's close. T002's Done bullet cites the 45 slices' claims and names the five found without one, all lane openxfactory-4's own (RULED 5999175092, on T091's precedent; nothing is back-filled).
R16's non-normative corrections are recorded in the evidence notes:
CP1 and CP2 are expanded to their record paths;
T096's two notes, "refused by name, with no browser signal", and f632d70c's reachability, in the ruled wording.
Gates at the head. All checks pass. Copilot has reviewed at the head, with every thread resolved. The pinned OpenSpec gate reads as it does on main.
Takes #1233 (plan 034 bookkeeping) so the branch and the main baseline
of the full-suite comparison share one base.
Lane: openxfactory-5 (openXfactory-5)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Brings in origin/main 12753f2 (#1233, plan 034 docs only). It overlaps nothing
in the dashboard lane files or the product pins.
Lane: openxfactory-5 (openXfactory-5)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Lane: openxfactory-4 (openXfactory-4-openDox_extraction)
Authored by lane openXfactory-3, delegated by lane openxfactory-4 (#656 5984809190)
Plan 034 T097, release 1's bookkeeping. This PR ticks all 63 release-1 boxes of #1144's
tasks.md(add-neutral-product-standalone-operability) that a realization task closes, each with its evidence note, and records research R16's non-normative corrections. Its After set has landed: batch P (#1230), T096 (#1241 →8a37a087) and T099 (the publish at the cut, and openDox#19 →d77f8cbf). On the holder's rulings it also ticks plan 034's T095, T099, T002, T007 and T097, each with its bullet, so plan 034 closes at 92 of its 96 tasks. T090 to T093 tick at the arc's close.Bookkeeping, so it carries no
Arc:trailer (R1Q20 (a),5817152735; T091) and no closing keyword. It touchesopenspec/changes/, so lane openxfactory-4 lands it under a Rule 6LANDING/LANDEDwindow.Based on
main8a37a087(T096: AT-R1 at openDox-code 389e5a4a (RELEASE1_TIP), both halves, with T095's acceptance job; tick T096 (plan 034) #1241, T096), merged in by0cde3961. The PR was first based onc8d80020(Q-GRC-4 bookkeeping: tick 6.9-6.14 against T2 (#1006 → 765d8c6f); 6.15 and 6.18 left open, one named clause each #1232). The merges since are listed below. Its commits:76d8ff37: the ticks, the notes and R16;b7f49673ande2efb3a1: from Copilot's review (below), which edit note text only;bd32ea9c: the merge ofmainafter batch P landed;cf2c6bdc: 16.3a's tick, on the T100 follow-on's landing (openDox-code#86 →651c35fe);5870cd00: 4.3's and 9.2's ticks, on T086's landing (openXdox-code#37 →56e1c238);23665543: 5.5's note reworded (Copilot at5870cd00), note text only;96c74eab: the merge ofmainafter T094 and T098 landed;935164af: 3.3's tick, on T098's landing (openxFactory#1237 →20ce593e);e93ab9fb: 5.4a's note reworded (Copilot at935164af), note text only;f6c6dc3c: the merge ofmainafter T089 landed;e873b25f: F4.1's, F5.2's and F16.1's ticks, on T089's landing (openxFactory#1238 →fab575ad);9759313b: the merge ofmainf2acc88c;10b6ba05: the phase-1 and phase-2 checkpoint citations by path (below), note text only;0cde3961: the merge ofmainafter T096 landed;f94be2fd: 10.3's tick, on T099's publish, and plan 034's ticks (below);9713f991: plan 034's opening status, which still said batch P was to land (Copilot atf94be2fd, below), plan text only.If
mainmoves before the landing, I merge it in. No rebase and no force-push.Measured, not copied
Lane 4's table (2026-10-03T20:05Z, at
de2ab703: 52 CLOSED-LANDED, 11 PENDING, 5 LEFT-OPEN, 2 ALREADY-TICKED) was regenerated by its own generator, patched, atc8d80020, atba6bb870, and again after each closing landing:gh pr view <n> -R opensoft/<repo> --json state,mergeCommit,mergedAt, last at 2026-10-05T16:50Z. Since the first reading these have landed: T007 batch P: the rulings of 5982436447 in #1144 (12.4a's hint line and history limit, 16.3a's in-repo refusal and served-repo limit, F16.1's note) and the T100 follow-on (plan 034) #1230 (batch P,ba6bb870), openDox-code#84 (T104, which realizes no box,32943cbf), openDox-code#86 (the T100 follow-on,651c35fe), openDox-code#78 and openDox-code#79 (T101,d59f3f26anddede32b4), openDox#17 (T076,504324de), openDox#18 (T087,e1e3a3c3), openXdox-code#37 (T086,56e1c238), openXdox#22 (T094's openXdox root step,9564d5d9), T094's ahead PR: the CLI help golden, the usage line and the rebound-Host case hold at both pins (T066's form; not an arc landing) (plan 034) #1234 (T094's ahead PR,ca1c1486), phase 3 ticks: T076, T086, T087, T101 and T104 (plan 034) #1235 (phase 3's plan ticks,70602a0a), T094: phase 3's consumer pins, openDox e1e3a3c3 and openXdox 9564d5d9, with phase 3's host wiring: openXdox's columns and the governed binding-trust policy (plan 034) #1236 (T094,36908480), T094/T098: phase 3's interim F11.1, tick both (plan 034) #1237 (T094/T098,20ce593e), T089: phase 3's checkpoint, quoted; T092's phase-3 notes (plan 034) #1238 (T089,fab575ad), openDox-code#75 (T095, which realizes no box,389e5a4a) and openDox#19 (T099's root README,d77f8cbf);Landed:bullet (78 of 96 tasks ticked atc8d80020andba6bb870, 85 at20ce593e, 86 ata43845e6, 87 at8a37a087), and each run record traced to the openxFactory PR that added it:checkpoint-phase1.md(T049: phase 1's checkpoint, quoted; F9.2 red as ruled; T092's phase-1 notes (plan 034) #1204 →9d2e5bc3),checkpoint-phase2.md(T063: phase 2's checkpoint, quoted; T092's phase-2 notes (plan 034) #1218 →a883bbf6),f10.1-run.md(T077: run F10.1 as batch H amends it, at openDox-code 8e377823 (plan 034) #1223 →f261fefa),f13.1-run.md(T074: run F13.1 as batch H amends it, at openDox-code 90ac7033 (plan 034) #1224 →de2ab703),f16.1-run.md(T083: 16.6 and F16.1 at openDox-code 38d3350e; tick T082, T083 and T100 (plan 034) #1231 →0e01ca85),f11.1-phase3.txt(T094/T098: phase 3's interim F11.1, tick both (plan 034) #1237 →20ce593e),checkpoint-phase3.md(T089: phase 3's checkpoint, quoted; T092's phase-3 notes (plan 034) #1238 →fab575ad) andat-r1/oracle-verdict.md(T096: AT-R1 at openDox-code 389e5a4a (RELEASE1_TIP), both halves, with T095's acceptance job; tick T096 (plan 034) #1241 →8a37a087). The T100 follow-on, which is no task, is read from the forge;84113a44andd08249a2, and as it landed (ba6bb870, the squash of its head051f9945).Result: 63 CLOSED-LANDED, 0 PENDING, 5 LEFT-OPEN and 2 ALREADY-TICKED, of 70. Since lane 4's table:
ca9e1bd5), T100 (openDox-code#82 →38d3350e), T102 (openDox-code#81 →0116293a) and T083 (openxFactory#1231 →0e01ca85) have landed. That closes 16.4, 16.5 and 16.6.651c35fe) has landed. That closes 16.3a.56e1c238) has landed. That closes 4.3 and 9.2.20ce593e), phase 3's interim F11.1, has landed. That closes 3.3 (below).fab575ad), phase 3's checkpoint, has landed. That closes F4.1, F5.2 and F16.1 (below).504324de) and T101 (openDox-code#78 →d59f3f26, openDox-code#79 →dede32b4) have landed.389e5a4a) and T096 (T096: AT-R1 at openDox-code 389e5a4a (RELEASE1_TIP), both halves, with T095's acceptance job; tick T096 (plan 034) #1241 →8a37a087), AT-R1's two halves, have landed. They close no box of File add-neutral-product-standalone-operability: open the BUILD arc, recording ten rulings #1144.opendox0.1.0, and its root README PR has landed (openDox#19 →d77f8cbf). That closes 10.3 (below), the last box.Batch P closes and rewords no box. In #1144's
tasks.mdit only inserts addenda at the ends of 12.4a, 16.3a and F16.1: no box line moves and no box changes state. Sinceba6bb870, no landing has touched #1144'stasks.md. In plan 034'stasks.md, T097's own text is unchanged.The census
python3 box_census.py openspec/changes/add-neutral-product-standalone-operability/tasks.md, with the tool written from research.md § Appendix (byte-identical to the Appendix's heredoc).Before, at
main8a37a087(identical toc8d80020's,ba6bb870's,20ce593e's anda43845e6's):After, at this head
9713f991(9713f991changes only plan 034, so the census isf94be2fd's):The release-1 groups are shown. Groups 1, 6, 8, 12, 14, 15 and the follow-ons read the same before and after. Earlier heads read
'x': 66, ' ': 50(76d8ff37tobd32ea9c),'x': 67, ' ': 49(cf2c6bdc),'x': 69, ' ': 47(5870cd00and23665543),'x': 70, ' ': 46(935164aftof6c6dc3c) and'x': 73, ' ': 43(e873b25fto0cde3961).The change: #1144's
tasks.md, and plan 034's ticks63 boxes ticked, each with its evidence note as the item's last paragraph, after any addenda. The note is in 1.8's and 3.0's form: a bold dated lead,
**Landed <date>**, where the date is the last landing of the box's realizing tasks; the tasks; the landings asrepo#n → sha8; and the falsifier's result, with where it was quoted. For example, 2.4:No ratified line moves. Against
main8a37a087, File add-neutral-product-standalone-operability: open the BUILD arc, recording ten rulings #1144's diff is the 63 checkbox lines,[ ]→[x], and 64 inserted paragraphs (482 lines): 63 notes, and 1 R16 note on an open box (9.5). This was proven atf94be2fdby setting every checkbox to[ ]in both files and diffing: the result is 64 insertions and nothing else, and the lines the two files share differ only by the 63 flips. The only other file the PR changes is plan 034'stasks.md(below). The file is byte-identical to a fresh re-apply of the regenerated decisions ontomain's file.Research R16 (research.md § R16), each figure re-checked against research R2, R4, R5, R10 and R13 and plan 034's records:
564/558/6at626f2c8d, not539/533/6run_scoped_doc_healthmakes three of the four reaches, and the fourth issession_documentsruntime/cli.py:39-42, not:40-46dede32b41e4a57fb10.3, closed on T099
10.3's box says the openDox root documents the entry point and does not host it, and batch H's addendum makes the documented command
pip install "opendox[local]", thenopendox generate-and-open --local …. Plan 034 maps it to T076, T101 and T099:504324de) documents the install and the start, and adds nomaketarget.d59f3f26, openDox-code#79 →dede32b4).5997633384). Read from the forge and from PyPI:v0.1.0(9153c254) namesdede32b4, which the openDox root'scontracts/code-pin.yamlnames;releaserun 37339111713, dispatched on that tag, completedsuccessin all four jobs:build and verify,publish to TestPyPI (the dry run),install opendox[local] from TestPyPIandpublish to PyPI, whose steps includePyPI serves the files the build job verified;https://pypi.org/pypi/opendox/0.1.0/jsonlists exactly two files, neither yanked:opendox-0.1.0-py3-none-any.whl(sha2568ecea00db6f9…) andopendox-0.1.0.tar.gz(sha25656869b6208a8…);d77f8cbfreplaces the README's stand-in paragraph. At that commit, the README's first line resolves from PyPI, and no paragraph says that no release is published.Plan 034: T095, T099, T002, T007 and T097
Lane openxfactory-4's delegation of 2026-10-05T16:37:31Z asks #1233 to tick these, each with a
LandedorDonebullet in #1226's form, so that release 1 closes at 92 of 96. Its ruling5999175092settles three points: (a), (a) and (a). Every sha in the bullets was read from GitHub.389e5a4a, which is X. Itsacceptancejob at X is the dispatched run 37333323932:head_shaX, job 111841708700,success, and its log readsAT-R1 HTTP half: PASS (314 assertions held).5850230046was posted as a literal file path and never edited, and P1-L, P2-H, P2-L and P2-M. Nothing is back-filled.ba6bb870), and its status sentence now says so.f632d70c, whichoracle-verdict.mdnames as holding the bytes that ran (ruling (a)'s wording). It is not onmain:refs/pull/1241/head(5c663a7e) reaches it, and so does T096: AT-R1 at openDox-code 389e5a4a (RELEASE1_TIP), both halves, with T095's acceptance job; tick T096 (plan 034) #1241's branch, which still stands.main'sSHA256SUMSfixes the reviewed scripts, and the record names the ran bytes by their sha256.The checkpoint citations, by path
Lane openxfactory-4 ruled at 2026-10-05T16:25:25Z that the notes'
CP1 § nandCP2 § ncitations name their records, as the phase-3 notes nameevidence/checkpoint-phase3.md.CP1andCP2are the shorthand of lane 4's table, and #1144 never defines them. The change is non-normative and inside T097's R16 scope.10b6ba05makes it. The 26 citations, in 25 notes, now readevidence/checkpoint-phase1.md(T049, #1204) andevidence/checkpoint-phase2.md(T063, #1218). A word diff againste873b25ffinds those 26 tokens and nothing else; only the 25 paragraphs' line breaks move.F4.1, F5.2 and F16.1, closed on T089
T089, phase 3's checkpoint, landed on 2026-10-05T15:26:43Z as #1238 →
fab575ad. Its record,specs/034-opendox-standalone-operation/evidence/checkpoint-phase3.md, extracts each block from #1144 by anchor at36908480and runs it from a fresh worktree at the commits phase 3 pinned: openDox-codedede32b4, thecodeof the openDox roote1e3a3c3(T087), and openXdox-code56e1c238(T086). It says of F4.1 and F5.2 "T097 ticks both in #1144; this record ticks nothing there", and plan 034's T089Runbullet says the same. Each box closes on that run, by plan 034's Box accounting:F4.1 → T089): as extracted (sha2568900b985e72f) and run unchanged, it exits 0 with1 passed,1 passed, thenno deferred reach names the consumer or the publisher(§ 1).F5.2 → T086, T089; RULED5962785556, item 1, moves its close to phase 3): whole, as batches C, F, G and K amend it (OPENXFACTORYat36908480, last step--chains), it exits 0. The seven suites pass whole (45, 23, 18, 6, 40, 9 and 12 passed),test -sholds, and the last step prints fiveadmitted:lines, thenok: 5 protected edit(s), each entered and holding(§ 5). One of the five admits T086's edits totests/test_session_snapshot.py, by entries 16, 17 and 19 oftests/protected_suite_respellings.yamlat56e1c238: the three pre-arc reds that T063 quoted, each entry naming the test it repairs.F16.1 → T083 (at 38d3350e), T089 (batch P's cases, at T087's pin)): with batch M's line, it exits 0 with24 passed, the dialect line,no model configured: the catalog offers nothing,83 passedand532 passed(§ 4).dede32b4carries the T100 follow-on (openDox-code#86 →651c35feis its ancestor, and the only commit between T100's landing anddede32b4that touchestests/test_model_binding_trust.py). That file is the same at both: 160 tests, among them batch P's sixtest_F16_1_batch_p_*cases and A8'stest_A8_a_state_directory_that_is_a_link_trusts_nothing, none of which exists at38d3350e. T083's run there is quoted beside it, as before.3.3, closed on T098
3.3 asks that the carve manifest's
deleted_at_carverow forscripts/ideation_dashboard/profile_openxfactory.pystay BYTE-IDENTICAL. T017, which realizes it, reads the row through the three interim F11.1 runs, "and T097 ticks 3.3 on all three". Each was re-checked onmain20ce593e:e81eed62,evidence/f11.1-phase1.txt): the amended run at T047's landing printsrequirement 1 holds: 0 note(s) annotated, every other path a declared surface (11.1), and the record's T017 section reads the row.1f670bc3,evidence/f11.1-phase2.txt): the same line, at T064's landing.20ce593e,evidence/f11.1-phase3.txt), at ARC_TIP36908480(T094, T094: phase 3's consumer pins, openDox e1e3a3c3 and openXdox 9564d5d9, with phase 3's host wiring: openXdox's columns and the governed binding-trust policy (plan 034) #1236). It prints the same line (exit 0) over the arc's three landings, and it refuses a planted path.docs/opendox-carve-manifest.yamlis touched by none of the three. Its T017 section finds the row equal at the manifest's introducing commit17167481and at that tip, both raw and parsed:not_moved,deleted_at_carve, noedits.main20ce593e: the row is still equal to17167481's, both raw (4 lines) and parsed.scripts/opendox_host.pyis still openxFactory's host: T094 modified it and deleted nothing, which F11.1 would have refused.4.3 and 9.2, closed on T086
T086 landed on 2026-10-05T12:23:03Z as openXdox-code#37 →
56e1c238. It is a squash whose tree (78ef1ed1) is that of its head57bebd8b. Its pin is openDox-codedede32b4, the commit T087 pins (openDox#18 →e1e3a3c3).OPENDOX_BACK_IMPORTS) is tightened to(0, 0)in the same landing". At56e1c238:tests/test_dependency_direction.pyholdsOPENDOX_BACK_IMPORTS = {}, andtest_the_pinned_opendox_does_not_import_openxdox_backasserts(0, 0).17 passedat the pin, with the census empty.consumer_reach.py, absent atdede32b4, was retired by T084 (openDox-code#77 →e49b17c3).56e1c238:tests/declared_exclusion.yamlholds 66 entries carrying 68 reasons: 60doc_health, 3status-exemption-railand 5openxfactory-contracts.validateat the PR's head (openXdox-code run 37307785866) printedopen extraction: the declared exclusionandtriple: selected=1099 passed=1095 skipped=4 failures=0 errors=0.16.3a, closed on the T100 follow-on
16.3a is "Carried out by T100", and batch P's addendum adds "Carried out by a T100 follow-on openDox-code PR (claim
5982447319), which is no task of plan 034 and lands before T087":38d3350e.651c35fe(09:49:55Z). It is a squash whose tree is that of its headaecac805, and it landed before T087 (openDox#18, 11:58:27Z) and T101.5982436447, item 2, and5983805990, with the holder's5984069416,5985046107(C1 to C5) and5985553609, and the holder's A8.aecac805, exits 0 with532 passedintests/test_model_binding_trust.py. The sixtest_F16_1_batch_p_*tests are present at651c35fe.5992038800for the second.Left open, by T097's own text
T097 is ticked
T097's task is "Tick #1144's release-1 boxes, each with its evidence note: the 63 in the table below." All 63 are ticked, so
f94be2fdticks T097 in the same commit as 10.3, the last box, as lane 4's brief requires.The merges of
mainbd32ea9cmerged batch P (ba6bb870). It gave the one conflict this PR expected, at 16.4's checkbox line, which follows batch P's insertion at the end of 16.3a. The resolution tookmain's text for every hunk batch P changed and re-applied the ticks and notes with the same tool, byte-identical to a fresh re-apply ontomain's file.96c74eabmergedmain20ce593e(T094's ahead PR: the CLI help golden, the usage line and the rebound-Host case hold at both pins (T066's form; not an arc landing) (plan 034) #1234 to T094/T098: phase 3's interim F11.1, tick both (plan 034) #1237). It was clean, because none of the four touches File add-neutral-product-standalone-operability: open the BUILD arc, recording ten rulings #1144'stasks.md.f6c6dc3cmergedmaina43845e6(T089: phase 3's checkpoint, quoted; T092's phase-3 notes (plan 034) #1238 and Q-GRC-4: tick 6.25 + 6.26 — C2 dispatched, admitted and sealed (run 37230435234, five seats); C2 record landed (cxF #500 → cc85a3cc) #1239). It was clean too, because neither touches File add-neutral-product-standalone-operability: open the BUILD arc, recording ten rulings #1144'stasks.md.9759313bmergedmainf2acc88c(Q-GRC-4 bookkeeping 2: tick 1.7, 2.1-2.6, 5.1 and 5.3 against what landed; 5.3 is a dated reading #1240), and0cde3961mergedmain8a37a087(T096: AT-R1 at openDox-code 389e5a4a (RELEASE1_TIP), both halves, with T095's acceptance job; tick T096 (plan 034) #1241). Both were clean, for the same reason.main's file.Gates, at
main8a37a087and at this head9713f991, in one full clone namedopenxFactorymain8a37a0879713f991python3 scripts/validate-openspec-cli-pin.py --all --no-cache(CI's form; pinned 1.12.0)110 passed, 1 failed (111 items),0 UNDISPOSITIONED failures, 1 accepted exception (add-chain-attestation)… --change add-neutral-product-standalone-operability1 passed, 0 failed,validated --strict cleanscripts/doc-health.py --single-repo . --as-of 2026-10-0531 critical, 22 error, 69 warning, 20 info, 0 new regressionsproposal-support.py . verify add-neutral-product-standalone-operabilityvalidate-sequenced-after.py . --ledger-diffvalidate-code-surface.py,validate-target-release.py,validate-pin-registrations.py,validate-document-catalog.pypytest -m "not postgres"overtests/doc-health,sequenced_after,proposal-support,former_id_arrival,citation_remainder,signed_execution_chain,openspec_cli_pin,target_release,code_surface,packet_reference,scope_globs8 failed, 3427 passed, 1 skipped, the same 8 nodes as at10b6ba05The 8 failures are environmental, the same 8 at every head. Each needs the
openDoxandopenXdoxlegs initialized, as CI'spytest-suitedoes, or a reachable pinned validator:test_ideation_readiness.py(3),test_readiness_dispatch.py(1),test_sentinel_vocabulary.py(2),test_status_reader_real_lines.py(1) andtest_chain_reader.py(1). Re-run alone atmain8a37a087, they read8 failedwith the same messages. The venv was built by CI's ownpip install --require-hashes -r requirements/hermes-runtime-contracts.lock, withLANG=C.UTF-8and everyGIT_*/XF_*variable unset. The earlier rounds read the same:mainc8d80020against76d8ff37,b7f49673ande2efb3a1,mainba6bb870againstbd32ea9c,cf2c6bdc,5870cd00and23665543,main20ce593eagainst935164af,maina43845e6againste873b25f, andmainf2acc88cagainst10b6ba05. Atf94be2fdthe local run was stopped at 31% on a session swap, and CI'spytest-suitepassed there. No test, script or workflow reads plan 034's files (git grepovertests,scriptsand.githubfinds none).Also checked, on the inserted text at
9713f991:repo#n → sha8in File add-neutral-product-standalone-operability: open the BUILD arc, recording ten rulings #1144's notes (71 distinct pairs, 122 mentions) and in plan 034's bullets is that PR's merge commit, per the forge;17167481,1e4a57fb,36908480,5c137a90,626f2c8d,aecac805,dede32b4,f8a1ece; in the plan,5c663a7e,9153c254andf632d70c) resolves in its repository, and the file digests match PyPI's JSON and theSHA256SUMSfiles;Landeddates equals the last landing of the box's realizing tasks (F5.1's and F7.1's notes also name T063's later re-run, and 5.4a's names the host line, T064: phase 2's consumer pins, openDox d5098297 and openXdox f257e021, with openXdox's governed projection registered by the host (plan 034) #1215);Arc:line, no host path, and no unqualified reference to another repository, in the diff, the commit messages or this body;CI and review
9713f991: every check-run but Sourcery's completedsuccess, the 8 required among them (pytest-suite17:54:16Z to 18:15:30Z). Sourcery's readsskipped.lane-linere-ran on each edit of this description and passed.f94be2fd: every check-run completedsuccess, the 8 required among them (pytest-suite17:13:56Z to 17:31:21Z).10b6ba05: every check-run completedsuccess(pytest-suiteuntil 17:04:09Z).e873b25f: every check-run completedsuccess, the 8 required among them (pytest-suite15:57:01Z to 16:22:01Z).lane-linere-ran on each edit of this description and passed.935164af,23665543,cf2c6bdc,bd32ea9cande2efb3a1: every check-run completedsuccess, the 8 required among them (signed-execution-chain-gate,lane-line,former-id-arrival-gate,openspec-cli-pin,wallet-validation,pytest-suite,release-tag-gate,openxdox-consumer-gate). At5870cd00,23665543's run superseded itspytest-suite.76d8ff37: one finding, r4179674026: F7.2's note named no landing commit for T058 or T063.b7f49673names them (openDox-code#68 →047bb4fa, openxFactory#1218 →a883bbf6), and 7.1's changelog landing too (openDox#15 →66758438). The thread is answered and resolved.b7f49673: no new finding, and one "previously missed" note: that 5.4a's note wrongly said T059's run deselected the three pre-arc cases. The note was right, and comment5985467371gives the records. The cited lines are T059's Falsifier line, written before it landed; T059'sLandedrecord and openXdox-code#35's body (rulings 4 and 6, and its F5.2 run) record the deselections.e2efb3a1makes the note exact and cites them.5870cd00: "Findings: None", and one "previously missed" low note: 5.5's note read as thoughconsumer_reach"names the task lists".23665543says what it meant, that the sevenconsumer_reachnames T055 lists are retired.e2efb3a1,bd32ea9c,cf2c6bdcand23665543: "Findings: None". Where its status line read "Changes recommended", it named only what this DRAFT waits for.935164af: one finding, r4185667778: 5.4a's note read "the seven red at both pins".e93ab9fbreads "the seven reds", and the thread is answered and resolved.e873b25f: one finding, r4186043242: this description was stale after T089's ticks. It is refreshed here, and the thread is answered and resolved. A second request at that head registered no new review.10b6ba05: "Findings: None".f94be2fd: two findings, review5418196219. r4186761333: plan 034's opening status still said batch P was to land, against this PR's T007 tick.9713f991says that all sixteen batches have landed, A (T007 batch A: record #1144's ruled amendments (F3.1, 2.2, 3.2, 4.3, 10.1, 11.0, 11.1, F11.1) #1171) to P (T007 batch P: the rulings of 5982436447 in #1144 (12.4a's hint line and history limit, 16.3a's in-repo refusal and served-repo limit, F16.1's note) and the T100 follow-on (plan 034) #1230), and that T007 is closed. r4186761413: this description was stale ate873b25f. It was refreshed at 17:16:28Z, while that review ran, and is refreshed again here for9713f991. Both threads are answered and resolved.9713f991: review5418607294, on the push. Its one open item was r4186761413, this description, refreshed here for9713f991. Its two "previously missed" low notes, at plan 034's lines 129 ("whose message lacks") and 4496 ("the drive"), need no change, because each phrase is the wording of the record it cites, T091's andoracle-verdict.md's. Comment6000157580gives the records. A request through the reviewer API, at 18:01:14Z, registered no new review at this head.skippedatf94be2fdand at9713f991.🤖 Generated with Claude Code