All checks were successful
ci/woodpecker/push/ci Pipeline was successful
Make CONSTITUTION/AGENTS/STANDARDS framework-owned (overwritten on upgrade) while never losing user data: - FRAMEWORK_OWNED vs USER_SEEDED lists (append-friendly per Lead's ask) - reconcile_framework_files: overwrite framework-owned from defaults/, backing up a divergent copy ONCE to <file>.pre-constitution.bak (advisory); seed-if-absent for USER_SEEDED (TOOLS.md) - anchor rsync preserve excludes to top-level (/<file>) so defaults/<file> still syncs - never delete *.pre-constitution.bak across upgrades (rsync + cp-fallback) - snapshot -> sync -> restore-on-failure (ERR/INT/TERM trap) for crash safety - FRAMEWORK_VERSION 2 -> 3 + v2->v3 migration advisory - MOSAIC_SYNC_ONLY hook for testability (file phase only, no env side effects) Fixture suite (test-install-migration.sh) green 7/7: fresh, legacy-edited AGENTS (overwrite + backup + SOUL/creds survive + idempotent .bak), tuned STANDARDS, no-TTY, failure-path data integrity. Two real bugs caught + fixed by the fixtures (unanchored exclude blocking the overwrite; backup deletion on re-upgrade). file-adapter.ts TS parity + the vitest fixture matrix land in P4 (2/2). Refs #542 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>