Chore/reorg 1 formats - #833
Conversation
District 1 of the canon reorg — the second district taken end-to-end, after 0-canon (2.0.3). 11 plain moves, 261 inbound references rewritten, the map updated, GATE D green at entry_count 120. MOVED (11) did-you-actually-do-that -> 1-formats/sub-specs/did-you-actually-do-that/ a2ml-templates -> 1-formats/templates/ inline-annotations -> 1-formats/sub-specs/inline-annotations/ contractiles -> 1-formats/contractiles/ [COUPLED to the spine] deed -> 1-formats/deed/ [COUPLED to the spine] panll-panels -> 1-formats/sub-specs/panll-panels/ ensaid-config -> 1-formats/sub-specs/ensaid-config/ cartridges -> 1-formats/sub-specs/cartridges/ A2ML-REPO-TEMPLATE.adoc -> 1-formats/A2ML-REPO-TEMPLATE.adoc SATELLITES.a2ml -> 1-formats/SATELLITES.a2ml bindings-haskell -> 1-formats/sub-specs/bindings-haskell/ NO POINTERS YET (8, deliberately untouched): k9-svc -> 1-formats/k9/ and the seven *-a2ml profile dirs -> 1-formats/a2ml/. The map annotates these "(pointer)" — the standard relocates and the old path keeps a stub — but no pointer artefact exists in this repo to copy: a2ml/ was evicted outright on 2026-08-28 by 24a12d6 (the map's note says "finish the eviction or revert it") and no stub convention is defined anywhere in this tree. The mover reports and skips them rather than inventing one. Their paths are unchanged and still resolve, so this commit leaves no dangling state. NO VERSION BUMP. None of the five [canon.artifacts] bytes changed; GATE A assertion 1 confirms all five hashes still match, and the lock's own recorded precedent is that a relocation whose sha256 values are unchanged needs no bump. GATE A assertion 2 reports the no-change case rather than a violation. canon.lock: hand-edited, two lines (the mover protects this file because it mixes identifiers with paths — a sweep rewrites the slot KEY and doubles the slash; district 0 proved that). [canon.split-candidates] path values follow the move: deed-grammar path -> 1-formats/deed/spec/DEED-GRAMMAR-SPEC.adoc contractile-spec path -> 1-formats/contractiles/README.adoc Key names, slot names and sha256 values are untouched. Also fixed here, because the move exposed it: the ecosystem-a2ml scorecard named `.machine_readable/6a2/ECOSYSTEM.a2ml`. That directory no longer exists (it is `.machine_readable/descriptiles/`), and because this move rewrites another path on the same line, the line counts as ADDED — which scripts/check-canonical-names.sh correctly flags as reintroducing a deprecated name. The stale path is corrected to the real one rather than grandfathered. GATES (all run in this tree) scripts/check-standards-map.sh PASSED, entry_count 120 scripts/check-canon-lockstep.sh 8 passed / 0 failed / 2 skipped (4+5 skipped: no gh, no hypatia — advertised) check-canonical-names.sh rc=0 (rc=1 before the scorecard fix) check-manifest-ply.sh rc=0 (control rc=1: the moved manifest's declared ply was deeper than its home) every other scripts/check-*.sh identical rc to the pristine control at 176d1f7 except the two above, both explained The map gains a record for the district root itself: GATE D assertion 2 requires every TOP-LEVEL entry to appear as some record's `from`, and a district move creates a new top-level entry. entry_count moves 119 -> 120 with it (assertion 5 counts records). Reference rewrite is path-shaped only: a bare word is never rewritten, so identifiers (`constitution` the canon.lock slot key, loop variables) are safe. Audit: 2647 files scanned, 0 references left pointing at an old path.
…a stub The map annotates these entries "(pointer)": the standard relocates and the old path keeps a stub. Owner ruled the stub shape: a POINTER.adoc in each old directory, with a machine-readable `moved-to` line. (canon.lock is untouched: these entries are [canon.split-candidates] only if they are slots, and none are.) RELOCATED (232 files) -> new home stub left at k9-svc 41 files -> 1-formats/k9/ k9-svc/ meta-a2ml 38 files -> 1-formats/a2ml/meta/ meta-a2ml/ agentic-a2ml 37 files -> 1-formats/a2ml/agentic/ agentic-a2ml/ state-a2ml 30 files -> 1-formats/a2ml/state/ state-a2ml/ anchor-a2ml 25 files -> 1-formats/a2ml/anchor/ anchor-a2ml/ ecosystem-a2ml 23 files -> 1-formats/a2ml/ecosystem/ ecosystem-a2ml/ neurosym-a2ml 23 files -> 1-formats/a2ml/neurosym/ neurosym-a2ml/ playbook-a2ml 15 files -> 1-formats/a2ml/playbook/ playbook-a2ml/ 183 inbound references rewritten. THE MAP IS SILENT ON TWO THINGS. Neither is decided silently here; both are resolved from this repo's own vocabulary and the resolution is recorded IN the map: 1. All seven *-a2ml dirs carried the SAME target, `1-formats/a2ml/`. Taken literally that merges seven directories into one, and 34 relative paths COLLIDE: seven README.adoc, seven .editorconfig, seven .gitattributes, seven .gitignore, seven .machine_readable/descriptiles/*.a2ml, and 28 more. docs/reorg/STREAM-PROMPTS.adoc names the seven homes normatively — "the descriptiles family becomes A2ML profiles: a2ml/state, a2ml/meta, a2ml/ecosystem, a2ml/agentic, a2ml/neurosym, a2ml/playbook, a2ml/anchor" — so each profile becomes a subdirectory and `target` records the refinement. k9-svc's target already named its own directory and is unchanged. 2. A pointer entry's `from` is NOT rewritten, unlike a plain move. The old path still EXISTS (it holds the stub), so GATE D assertions 1 and 2 keep holding and the record keeps stating where the migration started. A plain move rewrites `from` because there the old path stops existing. THE STUB is one file per old directory, no other content: SPDX + title, a relative link to the new home, and a TOML block (`moved-to`, `pointer`, `district`) whose shape is stable and greppable. Nothing in it is normative. Also fixed, same class as the last one: three re-added scorecard lines named `.machine_readable/6a2/`, a directory that has not existed since the rename to `.machine_readable/descriptiles/`. Corrected in place (playbook-a2ml ×2, state-a2ml ×3) — added lines only, so the chartered wider migration is untouched. check-canonical-names.sh rc=1 -> rc=0. GATES scripts/check-standards-map.sh PASSED, entry_count 120 scripts/check-canon-lockstep.sh 8 passed / 0 failed / 2 skipped check-canonical-names.sh rc=0 every other scripts/check-*.sh identical rc to the pristine 176d1f7 control except the two already explained
|
Important Review skippedToo many files! This PR contains 387 files, which is 287 over the limit of 100. To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch. Upgrade to a paid plan to raise the limit. Usage-priced reviews support at most 300 files. ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Advanced Run ID: ⛔ Files ignored due to path filters (5)
📒 Files selected for processing (387)
You can disable this status message by setting the Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Bring main at 6054f0f (feat deed conformance lane) into PR #833. Resolved: - .gitignore, INTENT, scorecards, CRG, QUICKSTART-DEV, README, TOPOLOGY, INNERVATION, developers/index, build-registry, standards-map: took origin/main (theirs) — it reflects the 2-protocols (2-protocols/) and 3-practice reorgs that landed after PR branched at 176d1f7. - 1-formats/a2ml/*/.editorconfig etc (AA): both added identical RSR template files at same destination — kept theirs (identical to ours). - agentic/anchor/ecosystem/k9/meta/neurosym/playbook old dirs (DD): both deleted after move — removed. - 2-protocols/* (UA): added by origin/main — kept (the 7 plain moves of district 2). The 1-formats district itself (11 plain moves in 0718580/cfbb66 and 8 pointer moves in 6358451/92e25e2) is already on main via #827 and #829, so this merge is a no-op for that district except for the 2-protocols gap. After this, PR #833 is mergeable via squash (merge commits are forbidden).
|



Summary
Closes #
Type of change
How has this been verified?
Checklist
git commit -S).SPDX-License-Identifier(code/configMPL-2.0,prose
CC-BY-SA-4.0); I did not relicense existing files.Notes for reviewers