Files
stack/docs/plans/2026-09-07_repository-consolidation-assessment.md
jason.woltje 193479b52d docs: concept annexation, provider/reference docs, ACT-1 groundwork
Mosaic concepts pages now own the adapted content; source/license
metadata under docs/reference/concepts. Adds ACT-1 agent-context
planning capture, pinned concept test package + preparation utility,
foundation observation notes (durability, evidence, federation,
onboarding, workflow), and the #1495 consolidation assessment.
TOOLS.md updated for the host-dev launcher.
2026-09-07 14:07:05 -05:00

55 lines
3.3 KiB
Markdown

# Repository consolidation — owner request and verified boundaries
Owner requested consolidating v1 below v1/, moving the new foundation to the
canonical checkout, and using a refactor branch of mosaicstack/stack.
Status: initial read-only assessment, no move or Git mutation performed.
Verified repositories:
- /mnt/storage/src/mosaic-stack: origin mosaicstack/stack, branch next,
HEAD 5d2770002612a09ae0cadc129b4ea30619133e8a; no tracked modifications observed.
Contains .git and .mosaic plus other hidden entries. Ignored/untracked content
has not been inventoried; tracked cleanliness does not mean empty local state.
- /home/jwoltje/src/mosaic-stack-dev-test: origin mosaicstack/stack-v2, branch main,
HEAD 9a5fbdbda74b16adf488fe28138b2ba69ea5e669; tracked modifications include shared
logs/CURRENT, docs/TOOLS.md and scripts/agent.sh. The reviewed inspector and its
review records are uncommitted. Generated/dependency/local files also exist.
The approved demo belongs to the second repository. The earlier user instruction
"from the repository directory" was ambiguous; no demo work was performed in v1.
## Recommendation
Consolidate the public project identity, but use a reversible, coordinated cutover,
not an in-place wildcard move. A shell * omits hidden files; naively including .git
would mix two different repositories. Existing absolute-path references and running
agents may continue targeting the canonical path after its contents become v2.
Those are concrete safety reasons to sequence the change, not reasons to retain
ambiguous names indefinitely.
Proposed destination layout: new foundation at canonical root, tracked legacy source
under v1/, one top-level Git repository belonging to mosaicstack/stack, a local
refactor branch, and preserved access to both original commit histories. This is
not a nested .git repository under v1. No branch push is inferred.
Before cutover:
1. Establish writer/index holds for both checkouts; do not abandon existing agent
goals. Determine which running sessions/launchers reference either path using
authorized metadata, not credential reads or unrelated fleet investigation.
2. Inventory tracked, untracked and ignored files; take verified reversible snapshots
outside the destination. Preserve local state, but do not automatically add it
to Git. No blanket staging or root directory cleanup.
3. Prepare the branch/import in an isolated staging checkout, retaining original
histories so accepted source SHA citations remain resolvable. Archive tracked
v1 source separately from private/local state and generated dependencies.
4. Carry approved v2 source and owned pending work with explicit manifests and
source ownership, not a wholesale overwrite of either .git directory.
5. Verify content identities, history, source/runtime/install boundaries and test
behavior; review path-dependent launch/config changes before activation.
6. Only after coordinated readiness, swap to the canonical path, explicitly restart/
rebind affected sessions as authorized, and retain rollback copies. Do not leave
two writable authoritative roots or silently redirect v1 workers into v2.
Open prerequisite: safe writer/session cutover and full local-content inventory.
This assessment does not move files, change deployment/config, force-push, delete
old work, rewrite accepted evidence or grant a v1 orchestrator authority over v2.