Approved implementation plan: docs/plans/client-data-import.md on feature/client-data-import, proposal commit 418df1fa8a44c067fa7a40416152d422ae41235b; exact plan SHA-256 1dbab1754da321b1e99680b0a987b6f845ef35bf0dc98fa1a3ae5b051d00f9bc. Scope: client-first CLI reconciliation, editable unpublished working records in existing ISAC registries, explicit publication, duplicate holds, verified Worn/Protocol/Skill Chip corrections, audit and backup safeguards. Implementation uses an isolated worktree. Live local-dev migration/import requires a reviewed dry-run and verified backup. No production/staging access or deployment.
Approved implementation plan: docs/plans/client-data-import.md on feature/client-data-import, proposal commit 418df1fa8a44c067fa7a40416152d422ae41235b; exact plan SHA-256 1dbab1754da321b1e99680b0a987b6f845ef35bf0dc98fa1a3ae5b051d00f9bc. Scope: client-first CLI reconciliation, editable unpublished working records in existing ISAC registries, explicit publication, duplicate holds, verified Worn/Protocol/Skill Chip corrections, audit and backup safeguards. Implementation uses an isolated worktree. Live local-dev migration/import requires a reviewed dry-run and verified backup. No production/staging access or deployment.
Transfer-safety checkpoint (29SEP2026): isolated full verification passed 89 files / 728 tests, Svelte check 0 errors / 0 warnings, and build. Current-format raw backup/restore preserves generated passkey bytes, held/published working records, source bindings, immutable batches and audit rows. No live database was accessed.
A negative control proved Turso 0.7.1 silently ignores PRAGMA foreign_key_check. Owner approved a node:sqlite in-memory verifier, with no new package dependency. That verifier found 13 orphaned weapon_mod_effect_quality_values rows in the generated UI fixture. src/lib/server/database.ts opens the shared connection without enabling foreign_keys; fresh connections report 0. Weapon Mod saves delete/recreate effect IDs and rely on the declared ON DELETE CASCADE, which therefore did not execute.
Owner explicitly chose to defer shared-runtime FK enforcement. Do not enable it or repair persistent data under this approval. The failed fixture remains unchanged and its server is stopped. Actual development data integrity is unknown. Live import remains blocked pending this defect, reviewed backup/restore evidence and the existing maintenance/apply gates. Continue the approved importer implementation on isolated data.
Decision and verification boundaries: docs/adr/sqlite-transfer-integrity-verifier-29SEP2026.md and docs/plans/client-data-import.md in the isolated feature worktree. No main integration, deployment or independent importer approval is claimed.
Transfer-safety checkpoint (29SEP2026): isolated full verification passed 89 files / 728 tests, Svelte check 0 errors / 0 warnings, and build. Current-format raw backup/restore preserves generated passkey bytes, held/published working records, source bindings, immutable batches and audit rows. No live database was accessed.
A negative control proved Turso 0.7.1 silently ignores PRAGMA foreign_key_check. Owner approved a node:sqlite in-memory verifier, with no new package dependency. That verifier found 13 orphaned weapon_mod_effect_quality_values rows in the generated UI fixture. src/lib/server/database.ts opens the shared connection without enabling foreign_keys; fresh connections report 0. Weapon Mod saves delete/recreate effect IDs and rely on the declared ON DELETE CASCADE, which therefore did not execute.
Owner explicitly chose to defer shared-runtime FK enforcement. Do not enable it or repair persistent data under this approval. The failed fixture remains unchanged and its server is stopped. Actual development data integrity is unknown. Live import remains blocked pending this defect, reviewed backup/restore evidence and the existing maintenance/apply gates. Continue the approved importer implementation on isolated data.
Decision and verification boundaries: docs/adr/sqlite-transfer-integrity-verifier-29SEP2026.md and docs/plans/client-data-import.md in the isolated feature worktree. No main integration, deployment or independent importer approval is claimed.
Owner decisions: retain audited exclusions for explicitly removed owned Weapon relationships; keep Builds with unavailable Weapons visible under existing privacy rules, preserve selections, and suppress complete-build totals.
Local-only importer checkpoint e1740378424f73472111130c904c1a7d37264a07 adds the initial held mod-slot exclusion service and additive metadata migration. It preserves source bindings, originals, evidence and canonical rows. Full verification passed 740 tests, typecheck and build. Whole-graph publication remains unfinished.
The separate prototype/client-data-import branch now captures three unavailable-equipment presentations at 6dc62a4d175c211c2528466505cffc024ae1b391, in prototypes/client-data-import/unavailable-builds/index.html. This does not replace the previously approved ISAC Variant C. Final browser verification passed 24 viewport/view/variant cases and five control checks; prototype-branch tests (590), typecheck and build passed. Presentation choice remains pending manual review.
Neither branch has been pushed, integrated into main or deployed. Shared-runtime FK enforcement remains deferred. The failed UI database fixture is unchanged and its application server remains stopped; port 4198 currently serves only the static review artifact, with no database access. Live import remains blocked.
Owner decisions: retain audited exclusions for explicitly removed owned Weapon relationships; keep Builds with unavailable Weapons visible under existing privacy rules, preserve selections, and suppress complete-build totals.
Local-only importer checkpoint e1740378424f73472111130c904c1a7d37264a07 adds the initial held mod-slot exclusion service and additive metadata migration. It preserves source bindings, originals, evidence and canonical rows. Full verification passed 740 tests, typecheck and build. Whole-graph publication remains unfinished.
The separate prototype/client-data-import branch now captures three unavailable-equipment presentations at 6dc62a4d175c211c2528466505cffc024ae1b391, in prototypes/client-data-import/unavailable-builds/index.html. This does not replace the previously approved ISAC Variant C. Final browser verification passed 24 viewport/view/variant cases and five control checks; prototype-branch tests (590), typecheck and build passed. Presentation choice remains pending manual review.
Neither branch has been pushed, integrated into main or deployed. Shared-runtime FK enforcement remains deferred. The failed UI database fixture is unchanged and its application server remains stopped; port 4198 currently serves only the static review artifact, with no database access. Live import remains blocked.
The owner selected A (slot-first) for Builder and public Builds, then narrowed its implementation: show Unavailable in the retained slot; replacement uses the normal Weapon picker like any other Weapon change. No guided recovery, resolution queues, replacement suggestions or extra recovery actions. Complete-build totals remain suppressed and selections/privacy remain unchanged. The static prototype recovery controls are not approved for production. ISAC Variant C remains unchanged. Decision recorded in docs/adr/unavailable-weapon-presentation-30SEP2026.md; implementation is pending and live import remains blocked.
The owner selected A (slot-first) for Builder and public Builds, then narrowed its implementation: show Unavailable in the retained slot; replacement uses the normal Weapon picker like any other Weapon change. No guided recovery, resolution queues, replacement suggestions or extra recovery actions. Complete-build totals remain suppressed and selections/privacy remain unchanged. The static prototype recovery controls are not approved for production. ISAC Variant C remains unchanged. Decision recorded in docs/adr/unavailable-weapon-presentation-30SEP2026.md; implementation is pending and live import remains blocked.
Completed the owner-authorized, reduced-scope one-off LOCAL development import. The reusable importer, reconciliation/editor work and Build UI are parked, not represented as complete.
Target: /home/jb/code/shd.build/data/shd-build-development.db. Added 628 source records as640 canonical rows (including12 Captured Only rule markers) and641 properly attributed game-data audit events. All8499 original rows stayed unchanged. New active-flag records are inactive drafts.8373 source records remain archive-only; no canonical Weapons were added because required facts/identities remain unresolved. The complete9001-record/42578-evidence capture and verified result are stored exactly in client_data_import_runs, without guessed facts or automatic identity merges.
Verified pre-import backup: data/backups/shd-build-development-pre-one-off-2026-09-30T05-02-00Z.json. Verified post-import backup: data/backups/shd-build-development-post-one-off-2026-09-30T06-50-05Z.json, with matching .schema.json. Post state147 tables/9781 rows. The three preexisting article_drafts->articles violations were preserved; no new FK violations. Shared-runtime FK configuration remains unchanged. Private CLI connection used FK enforcement.
Product commit1cd97c1 on feature/client-data-import, exact reviewed patchd24ea4bd1b5bdc869124b379be89a673594c84aa3b9acd261045429c12eae6b6. Real restored-copy rehearsal/report refusal/readback passed; final743tests/check0errors0warnings/build passed. One bounded safety review caught a reporting bug, corrected and verified before apply. No importer-wide approval is implied.
Root/main b45bfd4 remains clean. Root development server restarted as tracked taskbg_1vaew_munr0np9_79 on5175; home, Weapons and OS Protocol pages returnedHTTP200. Failed UI fixture unchanged/stopped. No staging/production, main integration, push or deployment. Closing this issue for the agreed one-off scope.
Completed the owner-authorized, reduced-scope one-off LOCAL development import. The reusable importer, reconciliation/editor work and Build UI are parked, not represented as complete.
Target: /home/jb/code/shd.build/data/shd-build-development.db. Added 628 source records as640 canonical rows (including12 Captured Only rule markers) and641 properly attributed game-data audit events. All8499 original rows stayed unchanged. New active-flag records are inactive drafts.8373 source records remain archive-only; no canonical Weapons were added because required facts/identities remain unresolved. The complete9001-record/42578-evidence capture and verified result are stored exactly in client_data_import_runs, without guessed facts or automatic identity merges.
Verified pre-import backup: data/backups/shd-build-development-pre-one-off-2026-09-30T05-02-00Z.json. Verified post-import backup: data/backups/shd-build-development-post-one-off-2026-09-30T06-50-05Z.json, with matching .schema.json. Post state147 tables/9781 rows. The three preexisting article_drafts->articles violations were preserved; no new FK violations. Shared-runtime FK configuration remains unchanged. Private CLI connection used FK enforcement.
Product commit1cd97c1 on feature/client-data-import, exact reviewed patchd24ea4bd1b5bdc869124b379be89a673594c84aa3b9acd261045429c12eae6b6. Real restored-copy rehearsal/report refusal/readback passed; final743tests/check0errors0warnings/build passed. One bounded safety review caught a reporting bug, corrected and verified before apply. No importer-wide approval is implied.
Root/main b45bfd4 remains clean. Root development server restarted as tracked taskbg_1vaew_munr0np9_79 on5175; home, Weapons and OS Protocol pages returnedHTTP200. Failed UI fixture unchanged/stopped. No staging/production, main integration, push or deployment. Closing this issue for the agreed one-off scope.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Approved implementation plan: docs/plans/client-data-import.md on feature/client-data-import, proposal commit 418df1fa8a44c067fa7a40416152d422ae41235b; exact plan SHA-256 1dbab1754da321b1e99680b0a987b6f845ef35bf0dc98fa1a3ae5b051d00f9bc. Scope: client-first CLI reconciliation, editable unpublished working records in existing ISAC registries, explicit publication, duplicate holds, verified Worn/Protocol/Skill Chip corrections, audit and backup safeguards. Implementation uses an isolated worktree. Live local-dev migration/import requires a reviewed dry-run and verified backup. No production/staging access or deployment.
Transfer-safety checkpoint (29SEP2026): isolated full verification passed 89 files / 728 tests, Svelte check 0 errors / 0 warnings, and build. Current-format raw backup/restore preserves generated passkey bytes, held/published working records, source bindings, immutable batches and audit rows. No live database was accessed.
A negative control proved Turso 0.7.1 silently ignores PRAGMA foreign_key_check. Owner approved a node:sqlite in-memory verifier, with no new package dependency. That verifier found 13 orphaned weapon_mod_effect_quality_values rows in the generated UI fixture. src/lib/server/database.ts opens the shared connection without enabling foreign_keys; fresh connections report 0. Weapon Mod saves delete/recreate effect IDs and rely on the declared ON DELETE CASCADE, which therefore did not execute.
Owner explicitly chose to defer shared-runtime FK enforcement. Do not enable it or repair persistent data under this approval. The failed fixture remains unchanged and its server is stopped. Actual development data integrity is unknown. Live import remains blocked pending this defect, reviewed backup/restore evidence and the existing maintenance/apply gates. Continue the approved importer implementation on isolated data.
Decision and verification boundaries: docs/adr/sqlite-transfer-integrity-verifier-29SEP2026.md and docs/plans/client-data-import.md in the isolated feature worktree. No main integration, deployment or independent importer approval is claimed.
Owner decisions: retain audited exclusions for explicitly removed owned Weapon relationships; keep Builds with unavailable Weapons visible under existing privacy rules, preserve selections, and suppress complete-build totals.
Local-only importer checkpoint e1740378424f73472111130c904c1a7d37264a07 adds the initial held mod-slot exclusion service and additive metadata migration. It preserves source bindings, originals, evidence and canonical rows. Full verification passed 740 tests, typecheck and build. Whole-graph publication remains unfinished.
The separate prototype/client-data-import branch now captures three unavailable-equipment presentations at 6dc62a4d175c211c2528466505cffc024ae1b391, in prototypes/client-data-import/unavailable-builds/index.html. This does not replace the previously approved ISAC Variant C. Final browser verification passed 24 viewport/view/variant cases and five control checks; prototype-branch tests (590), typecheck and build passed. Presentation choice remains pending manual review.
Neither branch has been pushed, integrated into main or deployed. Shared-runtime FK enforcement remains deferred. The failed UI database fixture is unchanged and its application server remains stopped; port 4198 currently serves only the static review artifact, with no database access. Live import remains blocked.
The owner selected A (slot-first) for Builder and public Builds, then narrowed its implementation: show Unavailable in the retained slot; replacement uses the normal Weapon picker like any other Weapon change. No guided recovery, resolution queues, replacement suggestions or extra recovery actions. Complete-build totals remain suppressed and selections/privacy remain unchanged. The static prototype recovery controls are not approved for production. ISAC Variant C remains unchanged. Decision recorded in docs/adr/unavailable-weapon-presentation-30SEP2026.md; implementation is pending and live import remains blocked.
Completed the owner-authorized, reduced-scope one-off LOCAL development import. The reusable importer, reconciliation/editor work and Build UI are parked, not represented as complete.
Target: /home/jb/code/shd.build/data/shd-build-development.db. Added 628 source records as640 canonical rows (including12 Captured Only rule markers) and641 properly attributed game-data audit events. All8499 original rows stayed unchanged. New active-flag records are inactive drafts.8373 source records remain archive-only; no canonical Weapons were added because required facts/identities remain unresolved. The complete9001-record/42578-evidence capture and verified result are stored exactly in client_data_import_runs, without guessed facts or automatic identity merges.
Verified pre-import backup: data/backups/shd-build-development-pre-one-off-2026-09-30T05-02-00Z.json. Verified post-import backup: data/backups/shd-build-development-post-one-off-2026-09-30T06-50-05Z.json, with matching .schema.json. Post state147 tables/9781 rows. The three preexisting article_drafts->articles violations were preserved; no new FK violations. Shared-runtime FK configuration remains unchanged. Private CLI connection used FK enforcement.
Product commit1cd97c1 on feature/client-data-import, exact reviewed patchd24ea4bd1b5bdc869124b379be89a673594c84aa3b9acd261045429c12eae6b6. Real restored-copy rehearsal/report refusal/readback passed; final743tests/check0errors0warnings/build passed. One bounded safety review caught a reporting bug, corrected and verified before apply. No importer-wide approval is implied.
Root/main b45bfd4 remains clean. Root development server restarted as tracked taskbg_1vaew_munr0np9_79 on5175; home, Weapons and OS Protocol pages returnedHTTP200. Failed UI fixture unchanged/stopped. No staging/production, main integration, push or deployment. Closing this issue for the agreed one-off scope.