Files
stack/docs/plans/2026-09-07_repository-consolidation-completed.md

96 lines
4.9 KiB
Markdown

# Repository conversion #1495 — local completion record
Owner instruction: "Nothing is working in the repo now. Get the conversion completed."
Tracking: https://git.mosaicstack.dev/mosaicstack/stack/issues/1495.
Coordinator: darkwing. Date: 2026-09-07 UTC.
## One authoritative checkout
- Canonical root: `/mnt/storage/src/mosaic-stack`.
- New Mosaic Stack foundation: root-level source, scripts, contracts and docs.
- Legacy Mosaic Stack: `v1/`, retained as archival source, not an active deployment.
- Working branch: `refactor`.
- Origin: `https://git.mosaicstack.dev/mosaicstack/stack`.
- `/home/jwoltje/src/mosaic-stack-dev-test` is a compatibility symlink to the
canonical root. It is not a second working tree.
- Exactly one top-level `.git`; no nested `v1/.git`.
The original v2 repository is retained as the `stack-v2-archive` fetch remote;
its push URL is deliberately disabled. No remote repository was deleted or pushed.
The canonical branch has no automatically configured push/upstream authority.
## Git and pending-work preservation
Original heads:
- v1: `5d2770002612a09ae0cadc129b4ea30619133e8a` (`next`).
- v2: `9a5fbdbda74b16adf488fe28138b2ba69ea5e669` (`main`).
The local conversion merge preserves both histories. Its first parent is the v2
head, its second parent is the v1 head. The selected root tree is v2; the exact
tracked v1 tree is imported under `v1/`. This is not a merge into `next` or `main`.
All v1 refs are additionally preserved below `refs/archive/v1/`; original v2 refs
remain available. Accepted source/review SHA citations still resolve.
Only the 3,507 already-tracked v1 paths and these four conversion documentation
paths belong to the conversion commit:
- `AGENTS.md`
- `README.md`
- this completion record
- `docs/plans/reviews/2026-09-07_repository-conversion-verification.json`
All earlier v2 tracked modifications, untracked inspector/source/reviews, ignored
files and generated/dependency state were copied without bulk staging. They remain
pending work, not silently committed or approved. Legacy ignored/local files were
preserved on disk but were not automatically added to Git. No source implementation
bytes, role authority or immutable inspector inputs were changed by the conversion.
## Verification
Full pre-cutover snapshots and staged copies matched file hashes, types, permissions,
UID/GID, symlink targets and regular-file mtimes. Both sources were checked again
for drift immediately before cutover. Post-cutover payload checks matched as well.
Inventories: 4,149 v1 entries including Git metadata; 15,734 v2 entries including Git
metadata/dependencies; 4,105 legacy payload entries excluding `.git`.
From the canonical checkout with synthetic HOME/TMPDIR and no provider credentials:
- Inspector Node tests: 80 passed.
- Inspector selftests: 43 passed.
- Schema oracle: zero disagreements, 1,568 records.
- Foundation checker: passed, with its existing synthetic/runtime limitations.
- Config/auth/conductor tests: 24/15/17 passed.
- Network/engine command guards were not invoked.
- All 382 approved r6 inspector file identities and every pinned input were unchanged
before and after the tests.
Command/log receipts: `docs/plans/reviews/2026-09-07_repository-conversion-verification.json`.
Git object integrity and exact archival tree/parent relationships are checked before
and after the local commit. No v1 build, service, native runtime or deployment test
was run. Task/release suites remain NOT RUN / DEFERRED; the previous offline-demo
ruling is not expanded into deployment acceptance by this conversion.
## Rollback material — outside the repository
Verified copies and private inventories:
`/mnt/storage/src/.mosaic-stack-conversion-20260907T172430Z/`
This contains `before-v1/`, `before-v2/`, `retired-v1-original/`, inventory JSON,
conversion state and verification logs. The original v2 directory is also retained:
`/home/jwoltje/src/.mosaic-stack-dev-test.pre-conversion-20260907T172430Z`.
These are retired rollback copies, not alternative development roots. Do not edit
or launch from them. Before any rollback, stop writers and preserve any new work.
A rollback must move the converted checkout aside, verify/remove only the old-v2
compatibility symlink, and restore the two original directories to their original
paths. Never overwrite/delete newer work or use blanket recursive deletion.
## Remaining boundaries
No push, PR merge, live service/config/data migration, package install or history
rewrite occurred. The old absolute v2 path remains usable through the explicit
compatibility link; historical evidence was not bulk rewritten to claim new paths.
Future work should use the canonical path above. Reopen sessions there when convenient.
The inspector is independently code-approved for the bounded offline demo; Jason's
A9 demo acceptance remains pending. Neither that acceptance nor future runtime
permissions are granted by the repository conversion.