@cleocode/core 2026.10.5 → 2026.10.6-rc.ci.673
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bootstrap.d.ts +13 -0
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/bootstrap.js +21 -32
- package/dist/bootstrap.js.map +1 -1
- package/dist/build-provenance.json +2 -2
- package/dist/cloud/nexus-cloud-status.d.ts.map +1 -1
- package/dist/cloud/nexus-cloud-status.js +3 -1
- package/dist/cloud/nexus-cloud-status.js.map +1 -1
- package/dist/cloud/nexus-device.d.ts +1 -1
- package/dist/cloud/nexus-presence-refresh.d.ts.map +1 -1
- package/dist/cloud/nexus-presence-refresh.js +20 -13
- package/dist/cloud/nexus-presence-refresh.js.map +1 -1
- package/dist/cloud/nexus-vault.d.ts.map +1 -1
- package/dist/cloud/nexus-vault.js +4 -1
- package/dist/cloud/nexus-vault.js.map +1 -1
- package/dist/docs/derive-links.d.ts +69 -0
- package/dist/docs/derive-links.d.ts.map +1 -0
- package/dist/docs/derive-links.js +85 -0
- package/dist/docs/derive-links.js.map +1 -0
- package/dist/docs/docs-generator.d.ts.map +1 -1
- package/dist/docs/docs-generator.js +2 -0
- package/dist/docs/docs-generator.js.map +1 -1
- package/dist/docs/docs-update.d.ts.map +1 -1
- package/dist/docs/docs-update.js +24 -4
- package/dist/docs/docs-update.js.map +1 -1
- package/dist/docs/fetch-result.d.ts +77 -0
- package/dist/docs/fetch-result.d.ts.map +1 -0
- package/dist/docs/fetch-result.js +132 -0
- package/dist/docs/fetch-result.js.map +1 -0
- package/dist/docs/supersede.d.ts.map +1 -1
- package/dist/docs/supersede.js +9 -0
- package/dist/docs/supersede.js.map +1 -1
- package/dist/doctor/db-substrate.d.ts.map +1 -1
- package/dist/doctor/db-substrate.js +64 -29
- package/dist/doctor/db-substrate.js.map +1 -1
- package/dist/doctor/row-identity-refill.d.ts.map +1 -1
- package/dist/doctor/row-identity-refill.js +25 -10
- package/dist/doctor/row-identity-refill.js.map +1 -1
- package/dist/doctor/row-identity.d.ts.map +1 -1
- package/dist/doctor/row-identity.js +8 -2
- package/dist/doctor/row-identity.js.map +1 -1
- package/dist/doctor/sync-repair.d.ts +5 -0
- package/dist/doctor/sync-repair.d.ts.map +1 -1
- package/dist/doctor/sync-repair.js +11 -0
- package/dist/doctor/sync-repair.js.map +1 -1
- package/dist/doctor/sync-triggers.d.ts.map +1 -1
- package/dist/doctor/sync-triggers.js +3 -17
- package/dist/doctor/sync-triggers.js.map +1 -1
- package/dist/hygiene/validate-spawn-readiness.d.ts +6 -1
- package/dist/hygiene/validate-spawn-readiness.d.ts.map +1 -1
- package/dist/hygiene/validate-spawn-readiness.js +11 -6
- package/dist/hygiene/validate-spawn-readiness.js.map +1 -1
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +10 -1
- package/dist/init.js.map +1 -1
- package/dist/injection.d.ts +37 -12
- package/dist/injection.d.ts.map +1 -1
- package/dist/injection.js +152 -35
- package/dist/injection.js.map +1 -1
- package/dist/memory/brain-search.d.ts.map +1 -1
- package/dist/memory/brain-search.js +7 -32
- package/dist/memory/brain-search.js.map +1 -1
- package/dist/memory/pipeline-manifest-sqlite.d.ts +2 -0
- package/dist/memory/pipeline-manifest-sqlite.d.ts.map +1 -1
- package/dist/memory/pipeline-manifest-sqlite.js +51 -9
- package/dist/memory/pipeline-manifest-sqlite.js.map +1 -1
- package/dist/nexus/assessment-projection.d.ts +96 -1
- package/dist/nexus/assessment-projection.d.ts.map +1 -1
- package/dist/nexus/assessment-projection.js +135 -0
- package/dist/nexus/assessment-projection.js.map +1 -1
- package/dist/nexus/assessment-store.d.ts +54 -0
- package/dist/nexus/assessment-store.d.ts.map +1 -1
- package/dist/nexus/assessment-store.js +161 -2
- package/dist/nexus/assessment-store.js.map +1 -1
- package/dist/nexus/knowledge.d.ts +19 -0
- package/dist/nexus/knowledge.d.ts.map +1 -1
- package/dist/nexus/knowledge.js +56 -2
- package/dist/nexus/knowledge.js.map +1 -1
- package/dist/orchestrate/spawn-ops.d.ts.map +1 -1
- package/dist/orchestrate/spawn-ops.js +12 -1
- package/dist/orchestrate/spawn-ops.js.map +1 -1
- package/dist/release/commit-presence.d.ts +24 -0
- package/dist/release/commit-presence.d.ts.map +1 -1
- package/dist/release/commit-presence.js +31 -0
- package/dist/release/commit-presence.js.map +1 -1
- package/dist/release/plan.d.ts +8 -6
- package/dist/release/plan.d.ts.map +1 -1
- package/dist/release/plan.js +11 -6
- package/dist/release/plan.js.map +1 -1
- package/dist/release/reconcile.d.ts.map +1 -1
- package/dist/release/reconcile.js +10 -8
- package/dist/release/reconcile.js.map +1 -1
- package/dist/release/verify-provenance.d.ts.map +1 -1
- package/dist/release/verify-provenance.js +6 -8
- package/dist/release/verify-provenance.js.map +1 -1
- package/dist/resources/admission-ledger.d.ts +66 -0
- package/dist/resources/admission-ledger.d.ts.map +1 -1
- package/dist/resources/admission-ledger.js +145 -6
- package/dist/resources/admission-ledger.js.map +1 -1
- package/dist/resources/run-class.d.ts +71 -0
- package/dist/resources/run-class.d.ts.map +1 -1
- package/dist/resources/run-class.js +203 -0
- package/dist/resources/run-class.js.map +1 -1
- package/dist/resources/run-governed.d.ts +2 -0
- package/dist/resources/run-governed.d.ts.map +1 -1
- package/dist/resources/run-governed.js +1 -0
- package/dist/resources/run-governed.js.map +1 -1
- package/dist/scaffold/ensure-config.d.ts +20 -9
- package/dist/scaffold/ensure-config.d.ts.map +1 -1
- package/dist/scaffold/ensure-config.js +56 -23
- package/dist/scaffold/ensure-config.js.map +1 -1
- package/dist/scaffold/ensure-skills.d.ts +10 -0
- package/dist/scaffold/ensure-skills.d.ts.map +1 -1
- package/dist/scaffold/ensure-skills.js +47 -3
- package/dist/scaffold/ensure-skills.js.map +1 -1
- package/dist/scaffold/upgrade-file-journal.d.ts +79 -0
- package/dist/scaffold/upgrade-file-journal.d.ts.map +1 -0
- package/dist/scaffold/upgrade-file-journal.js +111 -0
- package/dist/scaffold/upgrade-file-journal.js.map +1 -0
- package/dist/session/engine-ops.d.ts.map +1 -1
- package/dist/session/engine-ops.js +10 -2
- package/dist/session/engine-ops.js.map +1 -1
- package/dist/sessions/index.d.ts.map +1 -1
- package/dist/sessions/index.js +3 -0
- package/dist/sessions/index.js.map +1 -1
- package/dist/spawn/worktree-lock-holder.d.ts +59 -1
- package/dist/spawn/worktree-lock-holder.d.ts.map +1 -1
- package/dist/spawn/worktree-lock-holder.js +114 -0
- package/dist/spawn/worktree-lock-holder.js.map +1 -1
- package/dist/store/attachment-store.d.ts.map +1 -1
- package/dist/store/attachment-store.js +38 -0
- package/dist/store/attachment-store.js.map +1 -1
- package/dist/store/backup-recover.d.ts +4 -4
- package/dist/store/backup-recover.d.ts.map +1 -1
- package/dist/store/backup-recover.js +11 -4
- package/dist/store/backup-recover.js.map +1 -1
- package/dist/store/backup-sidecar.d.ts +19 -1
- package/dist/store/backup-sidecar.d.ts.map +1 -1
- package/dist/store/backup-sidecar.js +57 -6
- package/dist/store/backup-sidecar.js.map +1 -1
- package/dist/store/db-helpers.js +1 -1
- package/dist/store/display-id-alias.js +1 -1
- package/dist/store/display-id-alias.js.map +1 -1
- package/dist/store/dual-scope-db.d.ts +2 -0
- package/dist/store/dual-scope-db.d.ts.map +1 -1
- package/dist/store/dual-scope-db.js +28 -16
- package/dist/store/dual-scope-db.js.map +1 -1
- package/dist/store/exodus/archive.d.ts +42 -2
- package/dist/store/exodus/archive.d.ts.map +1 -1
- package/dist/store/exodus/archive.js +81 -4
- package/dist/store/exodus/archive.js.map +1 -1
- package/dist/store/exodus/bare-family.d.ts +104 -0
- package/dist/store/exodus/bare-family.d.ts.map +1 -0
- package/dist/store/exodus/bare-family.js +470 -0
- package/dist/store/exodus/bare-family.js.map +1 -0
- package/dist/store/exodus/column-transforms.d.ts.map +1 -1
- package/dist/store/exodus/column-transforms.js +15 -8
- package/dist/store/exodus/column-transforms.js.map +1 -1
- package/dist/store/exodus/health.d.ts +2 -0
- package/dist/store/exodus/health.d.ts.map +1 -1
- package/dist/store/exodus/health.js +7 -1
- package/dist/store/exodus/health.js.map +1 -1
- package/dist/store/exodus/index.d.ts +2 -2
- package/dist/store/exodus/index.d.ts.map +1 -1
- package/dist/store/exodus/index.js +2 -2
- package/dist/store/exodus/index.js.map +1 -1
- package/dist/store/exodus/migrate.d.ts.map +1 -1
- package/dist/store/exodus/migrate.js +30 -1
- package/dist/store/exodus/migrate.js.map +1 -1
- package/dist/store/exodus/on-open.d.ts +11 -0
- package/dist/store/exodus/on-open.d.ts.map +1 -1
- package/dist/store/exodus/on-open.js +26 -1
- package/dist/store/exodus/on-open.js.map +1 -1
- package/dist/store/exodus/prior-recoveries.d.ts +3 -2
- package/dist/store/exodus/prior-recoveries.d.ts.map +1 -1
- package/dist/store/exodus/prior-recoveries.js +7 -3
- package/dist/store/exodus/prior-recoveries.js.map +1 -1
- package/dist/store/exodus/reconcile.d.ts +44 -6
- package/dist/store/exodus/reconcile.d.ts.map +1 -1
- package/dist/store/exodus/reconcile.js +246 -173
- package/dist/store/exodus/reconcile.js.map +1 -1
- package/dist/store/exodus/recovery.d.ts +48 -0
- package/dist/store/exodus/recovery.d.ts.map +1 -1
- package/dist/store/exodus/recovery.js +104 -6
- package/dist/store/exodus/recovery.js.map +1 -1
- package/dist/store/exodus/seal.d.ts.map +1 -1
- package/dist/store/exodus/seal.js +4 -2
- package/dist/store/exodus/seal.js.map +1 -1
- package/dist/store/exodus/table-order.d.ts +6 -0
- package/dist/store/exodus/table-order.d.ts.map +1 -1
- package/dist/store/exodus/table-order.js +15 -0
- package/dist/store/exodus/table-order.js.map +1 -1
- package/dist/store/exodus/types.d.ts +4 -0
- package/dist/store/exodus/types.d.ts.map +1 -1
- package/dist/store/exodus/types.js +4 -0
- package/dist/store/exodus/types.js.map +1 -1
- package/dist/store/exodus/verify-migration.d.ts.map +1 -1
- package/dist/store/exodus/verify-migration.js +22 -17
- package/dist/store/exodus/verify-migration.js.map +1 -1
- package/dist/store/identity-share.d.ts +14 -0
- package/dist/store/identity-share.d.ts.map +1 -1
- package/dist/store/identity-share.js +33 -0
- package/dist/store/identity-share.js.map +1 -1
- package/dist/store/lock.d.ts +33 -0
- package/dist/store/lock.d.ts.map +1 -1
- package/dist/store/lock.js +60 -0
- package/dist/store/lock.js.map +1 -1
- package/dist/store/portable-bundle-import.d.ts.map +1 -1
- package/dist/store/portable-bundle-import.js +7 -0
- package/dist/store/portable-bundle-import.js.map +1 -1
- package/dist/store/portable-bundle-scan.d.ts +3 -2
- package/dist/store/portable-bundle-scan.d.ts.map +1 -1
- package/dist/store/portable-bundle-scan.js +7 -5
- package/dist/store/portable-bundle-scan.js.map +1 -1
- package/dist/store/portable-bundle.d.ts +1 -1
- package/dist/store/portable-bundle.d.ts.map +1 -1
- package/dist/store/portable-bundle.js +9 -1
- package/dist/store/portable-bundle.js.map +1 -1
- package/dist/store/repair-malformed-dbs.d.ts.map +1 -1
- package/dist/store/repair-malformed-dbs.js +36 -6
- package/dist/store/repair-malformed-dbs.js.map +1 -1
- package/dist/store/restore-marker.d.ts +20 -2
- package/dist/store/restore-marker.d.ts.map +1 -1
- package/dist/store/restore-marker.js +41 -1
- package/dist/store/restore-marker.js.map +1 -1
- package/dist/store/row-identity-flag.d.ts +9 -6
- package/dist/store/row-identity-flag.d.ts.map +1 -1
- package/dist/store/row-identity-flag.js +10 -7
- package/dist/store/row-identity-flag.js.map +1 -1
- package/dist/store/row-identity-registry.d.ts +4 -3
- package/dist/store/row-identity-registry.d.ts.map +1 -1
- package/dist/store/row-identity-registry.js +132 -31
- package/dist/store/row-identity-registry.js.map +1 -1
- package/dist/store/row-identity.d.ts +81 -14
- package/dist/store/row-identity.d.ts.map +1 -1
- package/dist/store/row-identity.js +238 -32
- package/dist/store/row-identity.js.map +1 -1
- package/dist/store/schema/cleo-shared/brain.d.ts +368 -0
- package/dist/store/schema/cleo-shared/brain.d.ts.map +1 -1
- package/dist/store/schema/cleo-shared/brain.js +104 -2
- package/dist/store/schema/cleo-shared/brain.js.map +1 -1
- package/dist/store/sync/apply/applier.d.ts +5 -0
- package/dist/store/sync/apply/applier.d.ts.map +1 -1
- package/dist/store/sync/apply/applier.js +5 -1
- package/dist/store/sync/apply/applier.js.map +1 -1
- package/dist/store/sync/apply/parent-delete.d.ts.map +1 -1
- package/dist/store/sync/apply/parent-delete.js +4 -0
- package/dist/store/sync/apply/parent-delete.js.map +1 -1
- package/dist/store/sync/capture.d.ts +13 -1
- package/dist/store/sync/capture.d.ts.map +1 -1
- package/dist/store/sync/capture.js +31 -3
- package/dist/store/sync/capture.js.map +1 -1
- package/dist/store/sync/flags.d.ts +14 -5
- package/dist/store/sync/flags.d.ts.map +1 -1
- package/dist/store/sync/flags.js +20 -8
- package/dist/store/sync/flags.js.map +1 -1
- package/dist/store/sync/genesis.d.ts +130 -0
- package/dist/store/sync/genesis.d.ts.map +1 -0
- package/dist/store/sync/genesis.js +337 -0
- package/dist/store/sync/genesis.js.map +1 -0
- package/dist/store/sync/repair.d.ts +2 -2
- package/dist/store/sync/repair.d.ts.map +1 -1
- package/dist/store/sync/repair.js +55 -15
- package/dist/store/sync/repair.js.map +1 -1
- package/dist/store/sync/sealer.d.ts +14 -0
- package/dist/store/sync/sealer.d.ts.map +1 -1
- package/dist/store/sync/sealer.js +27 -6
- package/dist/store/sync/sealer.js.map +1 -1
- package/dist/store/sync/segments.d.ts +124 -0
- package/dist/store/sync/segments.d.ts.map +1 -0
- package/dist/store/sync/segments.js +267 -0
- package/dist/store/sync/segments.js.map +1 -0
- package/dist/store/sync/sequencing.d.ts +44 -1
- package/dist/store/sync/sequencing.d.ts.map +1 -1
- package/dist/store/sync/sequencing.js +59 -2
- package/dist/store/sync/sequencing.js.map +1 -1
- package/dist/store/sync/timestamp-canon.d.ts +6 -3
- package/dist/store/sync/timestamp-canon.d.ts.map +1 -1
- package/dist/store/sync/timestamp-canon.js +55 -4
- package/dist/store/sync/timestamp-canon.js.map +1 -1
- package/dist/store/sync/txn-signing.d.ts +69 -0
- package/dist/store/sync/txn-signing.d.ts.map +1 -0
- package/dist/store/sync/txn-signing.js +81 -0
- package/dist/store/sync/txn-signing.js.map +1 -0
- package/dist/store/table-classification.d.ts.map +1 -1
- package/dist/store/table-classification.js +30 -0
- package/dist/store/table-classification.js.map +1 -1
- package/dist/store/twin-collapse.d.ts.map +1 -1
- package/dist/store/twin-collapse.js +65 -2
- package/dist/store/twin-collapse.js.map +1 -1
- package/dist/system/backup.d.ts +3 -2
- package/dist/system/backup.d.ts.map +1 -1
- package/dist/system/backup.js +43 -17
- package/dist/system/backup.js.map +1 -1
- package/dist/system/health.d.ts.map +1 -1
- package/dist/system/health.js +2 -1
- package/dist/system/health.js.map +1 -1
- package/dist/tasks/affected-packages.d.ts +26 -0
- package/dist/tasks/affected-packages.d.ts.map +1 -1
- package/dist/tasks/affected-packages.js +95 -28
- package/dist/tasks/affected-packages.js.map +1 -1
- package/dist/tasks/change-set.d.ts.map +1 -1
- package/dist/tasks/change-set.js +14 -4
- package/dist/tasks/change-set.js.map +1 -1
- package/dist/tasks/done-plan.d.ts.map +1 -1
- package/dist/tasks/done-plan.js +50 -4
- package/dist/tasks/done-plan.js.map +1 -1
- package/dist/tasks/test-run-binding.d.ts +14 -0
- package/dist/tasks/test-run-binding.d.ts.map +1 -1
- package/dist/tasks/test-run-binding.js +35 -4
- package/dist/tasks/test-run-binding.js.map +1 -1
- package/dist/upgrade.d.ts +6 -0
- package/dist/upgrade.d.ts.map +1 -1
- package/dist/upgrade.js +58 -11
- package/dist/upgrade.js.map +1 -1
- package/migrations/drizzle-cleo-global/20261010120000_t12894-brain-row-uids/migration.sql +88 -0
- package/migrations/drizzle-cleo-project/20261010120000_t12894-brain-row-uids/migration.sql +92 -0
- package/migrations/sync-journal/20261007120000_t12343-segment-outbox/migration.sql +38 -0
- package/package.json +13 -13
- package/templates/CLEO-INJECTION.md +1 -1
- package/templates/CLEO-REFERENCE.md +2 -2
|
@@ -91,6 +91,13 @@ export interface ExodusCompleteMarker {
|
|
|
91
91
|
readonly targetDbPath?: string;
|
|
92
92
|
/** Persisted cutover token; prevents a replaced/restored database inheriting this marker. */
|
|
93
93
|
readonly databaseIdentity?: string;
|
|
94
|
+
/**
|
|
95
|
+
* What `verifyMigration` reported at the cutover beyond the data-continuity
|
|
96
|
+
* gate (content digests that differ, values outside an enum), surfaced by
|
|
97
|
+
* `cleo doctor exodus-health` so a FAILED verify is never silent (T12711).
|
|
98
|
+
* Absent when the verify passed.
|
|
99
|
+
*/
|
|
100
|
+
readonly verifyIssues?: readonly string[];
|
|
94
101
|
}
|
|
95
102
|
/**
|
|
96
103
|
* Return `true` if a scope's exodus completion marker exists on disk.
|
|
@@ -107,6 +114,17 @@ export interface ExodusCompleteMarker {
|
|
|
107
114
|
* @returns Whether `<scopeBase>/exodus-complete` exists.
|
|
108
115
|
*/
|
|
109
116
|
export declare function hasExodusCompleteMarker(scope: ExodusScope, cwd?: string, targetDbPath?: string, nativeDb?: DatabaseSync): boolean;
|
|
117
|
+
/**
|
|
118
|
+
* What a scope's completion marker records `verifyMigration` reported at the
|
|
119
|
+
* cutover beyond data continuity (T12711); empty when the verify passed, the
|
|
120
|
+
* marker is absent or unreadable.
|
|
121
|
+
*
|
|
122
|
+
* @param scope - Target scope.
|
|
123
|
+
* @param cwd - Working directory used to resolve the project `.cleo/` dir.
|
|
124
|
+
* @param targetDbPath - Explicit target database; its directory owns metadata, overriding discovery.
|
|
125
|
+
* @returns The recorded issues.
|
|
126
|
+
*/
|
|
127
|
+
export declare function readExodusVerifyIssues(scope: ExodusScope, cwd?: string, targetDbPath?: string): string[];
|
|
110
128
|
/**
|
|
111
129
|
* Write a scope's exodus completion marker atomically (write-then-rename).
|
|
112
130
|
*
|
|
@@ -119,11 +137,32 @@ export declare function hasExodusCompleteMarker(scope: ExodusScope, cwd?: string
|
|
|
119
137
|
* @param cwd - Working directory used to resolve the project dir.
|
|
120
138
|
* @param targetDbPath - Explicit target database; its directory owns metadata, overriding discovery.
|
|
121
139
|
* @param databaseIdentity - Token committed on the verified database generation before publication.
|
|
140
|
+
* @param verifyIssues - What the cutover's verify reported beyond data continuity (T12711).
|
|
122
141
|
* @returns The marker's absolute path.
|
|
123
142
|
*
|
|
124
143
|
* @task T11777
|
|
125
144
|
*/
|
|
126
|
-
export declare function writeExodusCompleteMarker(scope: ExodusScope, archivedSources: readonly string[], cwd?: string, targetDbPath?: string, databaseIdentity?: string): string;
|
|
145
|
+
export declare function writeExodusCompleteMarker(scope: ExodusScope, archivedSources: readonly string[], cwd?: string, targetDbPath?: string, databaseIdentity?: string, verifyIssues?: readonly string[]): string;
|
|
146
|
+
/**
|
|
147
|
+
* Certify a scope as sealed (`cleo exodus seal`), MERGING into an existing
|
|
148
|
+
* completion marker rather than rebuilding it (T13375).
|
|
149
|
+
*
|
|
150
|
+
* Seal runs only count parity, never a cutover, so it has nothing to say about
|
|
151
|
+
* the fields a cutover recorded: `databaseIdentity` (which
|
|
152
|
+
* {@link hasExodusCompleteMarker} certifies a database handle against),
|
|
153
|
+
* `targetDbPath`, `verifyIssues`, `completedAt`, `cleoVersion`, or any field a
|
|
154
|
+
* later format adds. Every one is kept; `archivedSources` gains the sources
|
|
155
|
+
* this seal archived. Without a marker, or with one that is not a version-1
|
|
156
|
+
* marker of this scope, a fresh marker is written as before.
|
|
157
|
+
*
|
|
158
|
+
* @param scope - Scope being certified as migrated.
|
|
159
|
+
* @param archivedSources - Logical names of the sources this seal archived.
|
|
160
|
+
* @param cwd - Working directory used to resolve the project dir.
|
|
161
|
+
* @returns The marker's absolute path.
|
|
162
|
+
*
|
|
163
|
+
* @task T13375
|
|
164
|
+
*/
|
|
165
|
+
export declare function sealExodusCompleteMarker(scope: ExodusScope, archivedSources: readonly string[], cwd?: string): string;
|
|
127
166
|
/**
|
|
128
167
|
* Outcome of archiving one source DB.
|
|
129
168
|
*/
|
|
@@ -182,8 +221,9 @@ export interface ArchiveMigratedSourcesResult {
|
|
|
182
221
|
*
|
|
183
222
|
* @task T11777
|
|
184
223
|
* @param identities - Persisted cutover tokens for the exact verified target generations.
|
|
224
|
+
* @param verifyIssues - What the cutover's verify reported beyond data continuity, recorded in each marker (T12711).
|
|
185
225
|
*/
|
|
186
|
-
export declare function archiveMigratedSources(consumed: readonly LegacyDbDescriptor[], cwd?: string, targets?: Pick<ExodusPlan, 'projectDbPath' | 'globalDbPath'>, identities?: Partial<Record<ExodusScope, string
|
|
226
|
+
export declare function archiveMigratedSources(consumed: readonly LegacyDbDescriptor[], cwd?: string, targets?: Pick<ExodusPlan, 'projectDbPath' | 'globalDbPath'>, identities?: Partial<Record<ExodusScope, string>>, verifyIssues?: readonly string[]): ArchiveMigratedSourcesResult;
|
|
187
227
|
/**
|
|
188
228
|
* A legacy source DB that is still present on disk AFTER its scope's exodus
|
|
189
229
|
* completion marker was written — i.e. stranded residue that should have been
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../../../src/store/exodus/archive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAYH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAMhD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../../../src/store/exodus/archive.ts"],"names":[],"mappings":"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"}
|
|
@@ -63,6 +63,7 @@ const markerIdentity = z.object({
|
|
|
63
63
|
scope: z.enum(['project', 'global']),
|
|
64
64
|
targetDbPath: z.string().optional(),
|
|
65
65
|
databaseIdentity: z.string().optional(),
|
|
66
|
+
verifyIssues: z.array(z.string()).optional(),
|
|
66
67
|
});
|
|
67
68
|
/** Per-scope archive directory name (sibling of the migrated DBs). */
|
|
68
69
|
const ARCHIVE_DIR_NAME = '_archive';
|
|
@@ -150,6 +151,28 @@ export function hasExodusCompleteMarker(scope, cwd, targetDbPath, nativeDb) {
|
|
|
150
151
|
!marker.targetDbPath ||
|
|
151
152
|
resolve(marker.targetDbPath) === resolve(targetDbPath)));
|
|
152
153
|
}
|
|
154
|
+
/**
|
|
155
|
+
* What a scope's completion marker records `verifyMigration` reported at the
|
|
156
|
+
* cutover beyond data continuity (T12711); empty when the verify passed, the
|
|
157
|
+
* marker is absent or unreadable.
|
|
158
|
+
*
|
|
159
|
+
* @param scope - Target scope.
|
|
160
|
+
* @param cwd - Working directory used to resolve the project `.cleo/` dir.
|
|
161
|
+
* @param targetDbPath - Explicit target database; its directory owns metadata, overriding discovery.
|
|
162
|
+
* @returns The recorded issues.
|
|
163
|
+
*/
|
|
164
|
+
export function readExodusVerifyIssues(scope, cwd, targetDbPath) {
|
|
165
|
+
try {
|
|
166
|
+
const markerPath = exodusMarkerPath(scope, cwd, targetDbPath);
|
|
167
|
+
if (!existsSync(markerPath))
|
|
168
|
+
return [];
|
|
169
|
+
const marker = markerIdentity.safeParse(JSON.parse(readFileSync(markerPath, 'utf8')));
|
|
170
|
+
return marker.success ? (marker.data.verifyIssues ?? []) : [];
|
|
171
|
+
}
|
|
172
|
+
catch {
|
|
173
|
+
return [];
|
|
174
|
+
}
|
|
175
|
+
}
|
|
153
176
|
/**
|
|
154
177
|
* Write a scope's exodus completion marker atomically (write-then-rename).
|
|
155
178
|
*
|
|
@@ -162,11 +185,12 @@ export function hasExodusCompleteMarker(scope, cwd, targetDbPath, nativeDb) {
|
|
|
162
185
|
* @param cwd - Working directory used to resolve the project dir.
|
|
163
186
|
* @param targetDbPath - Explicit target database; its directory owns metadata, overriding discovery.
|
|
164
187
|
* @param databaseIdentity - Token committed on the verified database generation before publication.
|
|
188
|
+
* @param verifyIssues - What the cutover's verify reported beyond data continuity (T12711).
|
|
165
189
|
* @returns The marker's absolute path.
|
|
166
190
|
*
|
|
167
191
|
* @task T11777
|
|
168
192
|
*/
|
|
169
|
-
export function writeExodusCompleteMarker(scope, archivedSources, cwd, targetDbPath, databaseIdentity) {
|
|
193
|
+
export function writeExodusCompleteMarker(scope, archivedSources, cwd, targetDbPath, databaseIdentity, verifyIssues = []) {
|
|
170
194
|
const markerPath = exodusMarkerPath(scope, cwd, targetDbPath);
|
|
171
195
|
const baseDir = scopeBaseDir(scope, cwd, targetDbPath);
|
|
172
196
|
mkdirSync(baseDir, { recursive: true });
|
|
@@ -178,11 +202,63 @@ export function writeExodusCompleteMarker(scope, archivedSources, cwd, targetDbP
|
|
|
178
202
|
archivedSources: [...archivedSources],
|
|
179
203
|
targetDbPath: resolve(targetDbPath ?? join(baseDir, 'cleo.db')),
|
|
180
204
|
...(databaseIdentity ? { databaseIdentity } : {}),
|
|
205
|
+
...(verifyIssues.length > 0 ? { verifyIssues: [...verifyIssues] } : {}),
|
|
181
206
|
};
|
|
207
|
+
publishMarker(markerPath, marker);
|
|
208
|
+
log.info({ scope, markerPath, archivedSources }, 'exodus: wrote completion marker');
|
|
209
|
+
return markerPath;
|
|
210
|
+
}
|
|
211
|
+
/** Write a marker object atomically (write-then-rename). */
|
|
212
|
+
function publishMarker(markerPath, marker) {
|
|
182
213
|
const tmpPath = `${markerPath}.tmp`;
|
|
183
214
|
writeFileSync(tmpPath, JSON.stringify(marker, null, 2) + '\n', 'utf8');
|
|
184
215
|
renameSync(tmpPath, markerPath);
|
|
185
|
-
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Certify a scope as sealed (`cleo exodus seal`), MERGING into an existing
|
|
219
|
+
* completion marker rather than rebuilding it (T13375).
|
|
220
|
+
*
|
|
221
|
+
* Seal runs only count parity, never a cutover, so it has nothing to say about
|
|
222
|
+
* the fields a cutover recorded: `databaseIdentity` (which
|
|
223
|
+
* {@link hasExodusCompleteMarker} certifies a database handle against),
|
|
224
|
+
* `targetDbPath`, `verifyIssues`, `completedAt`, `cleoVersion`, or any field a
|
|
225
|
+
* later format adds. Every one is kept; `archivedSources` gains the sources
|
|
226
|
+
* this seal archived. Without a marker, or with one that is not a version-1
|
|
227
|
+
* marker of this scope, a fresh marker is written as before.
|
|
228
|
+
*
|
|
229
|
+
* @param scope - Scope being certified as migrated.
|
|
230
|
+
* @param archivedSources - Logical names of the sources this seal archived.
|
|
231
|
+
* @param cwd - Working directory used to resolve the project dir.
|
|
232
|
+
* @returns The marker's absolute path.
|
|
233
|
+
*
|
|
234
|
+
* @task T13375
|
|
235
|
+
*/
|
|
236
|
+
export function sealExodusCompleteMarker(scope, archivedSources, cwd) {
|
|
237
|
+
const markerPath = exodusMarkerPath(scope, cwd);
|
|
238
|
+
let prior = null;
|
|
239
|
+
if (existsSync(markerPath)) {
|
|
240
|
+
try {
|
|
241
|
+
const raw = JSON.parse(readFileSync(markerPath, 'utf8'));
|
|
242
|
+
const known = markerIdentity.safeParse(raw);
|
|
243
|
+
if (known.success && known.data.scope === scope && typeof raw === 'object' && raw !== null)
|
|
244
|
+
prior = { ...raw };
|
|
245
|
+
}
|
|
246
|
+
catch {
|
|
247
|
+
prior = null;
|
|
248
|
+
}
|
|
249
|
+
if (prior === null)
|
|
250
|
+
log.warn({ scope, markerPath }, 'exodus seal: unreadable completion marker rewritten');
|
|
251
|
+
}
|
|
252
|
+
if (prior === null)
|
|
253
|
+
return writeExodusCompleteMarker(scope, archivedSources, cwd);
|
|
254
|
+
const before = Array.isArray(prior.archivedSources)
|
|
255
|
+
? prior.archivedSources.filter((n) => typeof n === 'string')
|
|
256
|
+
: [];
|
|
257
|
+
publishMarker(markerPath, {
|
|
258
|
+
...prior,
|
|
259
|
+
archivedSources: [...new Set([...before, ...archivedSources])],
|
|
260
|
+
});
|
|
261
|
+
log.info({ scope, markerPath, archivedSources }, 'exodus: merged into completion marker');
|
|
186
262
|
return markerPath;
|
|
187
263
|
}
|
|
188
264
|
/**
|
|
@@ -278,8 +354,9 @@ export function archiveSourceDb(source, cwd, targetDbPath) {
|
|
|
278
354
|
*
|
|
279
355
|
* @task T11777
|
|
280
356
|
* @param identities - Persisted cutover tokens for the exact verified target generations.
|
|
357
|
+
* @param verifyIssues - What the cutover's verify reported beyond data continuity, recorded in each marker (T12711).
|
|
281
358
|
*/
|
|
282
|
-
export function archiveMigratedSources(consumed, cwd, targets, identities) {
|
|
359
|
+
export function archiveMigratedSources(consumed, cwd, targets, identities, verifyIssues = []) {
|
|
283
360
|
const results = [];
|
|
284
361
|
const scopes = new Set();
|
|
285
362
|
for (const source of consumed) {
|
|
@@ -291,7 +368,7 @@ export function archiveMigratedSources(consumed, cwd, targets, identities) {
|
|
|
291
368
|
for (const scope of scopes) {
|
|
292
369
|
const archivedForScope = consumed.filter((s) => s.targetScope === scope).map((s) => s.name);
|
|
293
370
|
const target = scope === 'project' ? targets?.projectDbPath : targets?.globalDbPath;
|
|
294
|
-
writeExodusCompleteMarker(scope, archivedForScope, cwd, target, identities?.[scope]);
|
|
371
|
+
writeExodusCompleteMarker(scope, archivedForScope, cwd, target, identities?.[scope], verifyIssues);
|
|
295
372
|
markersWritten.push(scope);
|
|
296
373
|
}
|
|
297
374
|
return { sources: results, markersWritten };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive.js","sourceRoot":"","sources":["../../../src/store/exodus/archive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,OAAO,EACL,YAAY,EACZ,UAAU,EACV,SAAS,EACT,YAAY,EACZ,UAAU,EACV,UAAU,EACV,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAE7D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAG1D,MAAM,GAAG,GAAG,SAAS,CAAC,gBAAgB,CAAC,CAAC;AACxC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACrB,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACpC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"archive.js","sourceRoot":"","sources":["../../../src/store/exodus/archive.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The live store's own bare legacy family as a reconcile source.
|
|
3
|
+
*
|
|
4
|
+
* A `cleo.db` from before consolidation can hold rows in bare tables
|
|
5
|
+
* (`tasks`, `task_labels`, `sessions`, …) that the runtime no longer reads.
|
|
6
|
+
* Two reconcile modes carry them into the prefixed tables:
|
|
7
|
+
*
|
|
8
|
+
* - full mode, while `tasks_tasks` is still EMPTY (the project never ran on
|
|
9
|
+
* the consolidated store): every bare row (T12346);
|
|
10
|
+
* - bare-strands mode (T13309), once `tasks_tasks` is populated: only bare
|
|
11
|
+
* rows whose key the prefixed twin lacks, plus bare tasks whose id a
|
|
12
|
+
* DIFFERENT live task took (renumbered by the caller). A row that is, or
|
|
13
|
+
* refers to, a task the live store recorded as deleted is skipped and named,
|
|
14
|
+
* never resurrected, and so is a row referring to a task neither side holds.
|
|
15
|
+
*
|
|
16
|
+
* @module
|
|
17
|
+
* @task T12346
|
|
18
|
+
* @task T13309
|
|
19
|
+
*/
|
|
20
|
+
import type { SupersededStoreBareAccount, SupersededStoreConflict } from '@cleocode/contracts';
|
|
21
|
+
import type { TargetResolver } from './runtime-targets.js';
|
|
22
|
+
import { type TaskIdRemapResult } from './task-id-remap.js';
|
|
23
|
+
import { type LegacyDbDescriptor } from './types.js';
|
|
24
|
+
/**
|
|
25
|
+
* The live store's own dead bare task-core family as a reconcile source — item
|
|
26
|
+
* 2 of T12319, found real by the T12346 sweep: a stranded `cleo.db` can hold
|
|
27
|
+
* rows in bare tables the runtime no longer reads that exist in NO legacy file
|
|
28
|
+
* (llmtxt: 1,972 `task_labels`; versionguard: 20 `task_dependencies`).
|
|
29
|
+
*
|
|
30
|
+
* Offered ONLY while the prefixed `tasks_tasks` is still empty — i.e. the
|
|
31
|
+
* project never ran on the consolidated store. Once it has, a bare row missing
|
|
32
|
+
* from the prefixed family may be one the runtime deliberately removed; the
|
|
33
|
+
* bare-strands mode ({@link bareStrandSource}) handles that case.
|
|
34
|
+
*
|
|
35
|
+
* @returns The descriptor (path = the materialised file), or `null`.
|
|
36
|
+
*/
|
|
37
|
+
export declare function bareTaskCoreSource(liveStorePath: string, resolveTarget: TargetResolver, outDir: string): Promise<LegacyDbDescriptor | null>;
|
|
38
|
+
/** Result of {@link bareStrandSource}. */
|
|
39
|
+
export interface BareStrandSource {
|
|
40
|
+
/** The materialised stranded rows, or `null` when none is left to copy. */
|
|
41
|
+
readonly source: LegacyDbDescriptor | null;
|
|
42
|
+
/** Rows deliberately left uncopied, per table and reason. */
|
|
43
|
+
readonly skipped: SupersededStoreConflict[];
|
|
44
|
+
/** Every bare table with rows, as the run found it (recorded on success). */
|
|
45
|
+
readonly accounted: SupersededStoreBareAccount[];
|
|
46
|
+
/** `false` when the live task graph is empty: full mode's case, not this one. */
|
|
47
|
+
readonly populated: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* The renumbering of bare tasks a different live task shadows, applied
|
|
50
|
+
* BEFORE any row was judged present or skipped (T13333), so each row is
|
|
51
|
+
* judged by the key it is copied under. Its `sources` is `source`.
|
|
52
|
+
*/
|
|
53
|
+
readonly remap: TaskIdRemapResult;
|
|
54
|
+
/**
|
|
55
|
+
* Every stranded row the run did NOT list in `skipped`, renumbered: the
|
|
56
|
+
* rows it copies plus those it judged already present. Each must be in the
|
|
57
|
+
* live store once the run is over, or the run is refused (T13333).
|
|
58
|
+
* `null` when the live task graph is empty or no bare table holds rows.
|
|
59
|
+
*/
|
|
60
|
+
readonly accountingPath: string | null;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* The live store's stranded bare rows as a reconcile source (T13309): for a
|
|
64
|
+
* project already running on the consolidated store, the bare rows whose key
|
|
65
|
+
* the prefixed twin lacks, and the bare tasks a different live task shadows by
|
|
66
|
+
* id (kept so the caller's renumbering recovers them).
|
|
67
|
+
*
|
|
68
|
+
* The shadowed tasks are renumbered first, with every reference re-pointed,
|
|
69
|
+
* so a child row is judged by the key it is copied under, never by the key of
|
|
70
|
+
* the live holder's child (T13333). An undecided collision is not renumbered:
|
|
71
|
+
* the caller withholds the task graph.
|
|
72
|
+
*
|
|
73
|
+
* Skipped, and named in `skipped`: a row that is, or whose task reference
|
|
74
|
+
* points at, a task the live store recorded as deleted (`tasks_audit_log`
|
|
75
|
+
* action `task_deleted`), a row whose task reference neither the live store
|
|
76
|
+
* nor the copy holds (`parent-absent`), and, to a fixed point, a row whose
|
|
77
|
+
* task reference is a bare task this run skipped (`parent-skipped`, T13334).
|
|
78
|
+
* A deletion record of a shadowed id, or of a fresh id a renumbering took,
|
|
79
|
+
* belongs to another task and skips nothing. A table whose twin key the bare
|
|
80
|
+
* table cannot produce keeps every row, and the post-copy verification judges
|
|
81
|
+
* it.
|
|
82
|
+
*
|
|
83
|
+
* @param liveStorePath - The live project `cleo.db` (read only).
|
|
84
|
+
* @param resolveTarget - Runtime target resolver.
|
|
85
|
+
* @param outDir - Scratch directory for the materialised file.
|
|
86
|
+
* @param cleoDir - The project's `.cleo`, where earlier receipts live.
|
|
87
|
+
*/
|
|
88
|
+
export declare function bareStrandSource(liveStorePath: string, resolveTarget: TargetResolver, outDir: string, cleoDir: string): Promise<BareStrandSource>;
|
|
89
|
+
/**
|
|
90
|
+
* Task references in the copied strands source that the live store cannot
|
|
91
|
+
* resolve after the copy: `table.column -> id` for each (T13334). Empty when
|
|
92
|
+
* every reference a copied row carries names a live task.
|
|
93
|
+
*
|
|
94
|
+
* Only scalar references are judged. A JSON array of task ids (a session's
|
|
95
|
+
* `tasks_completed_json`, `tasks_created_json`) is history: an id in it whose
|
|
96
|
+
* task is gone is valid, as the runtime keeps it (deleting a task leaves it
|
|
97
|
+
* listed) and the sync wire drops it rather than rejecting the row (T12798).
|
|
98
|
+
* A copied session listing a deleted task is therefore copied (T13377).
|
|
99
|
+
*
|
|
100
|
+
* @param liveStorePath - The live project `cleo.db` (read only).
|
|
101
|
+
* @param sourcePath - The strands source the run copied from.
|
|
102
|
+
*/
|
|
103
|
+
export declare function danglingStrandReferences(liveStorePath: string, sourcePath: string): string[];
|
|
104
|
+
//# sourceMappingURL=bare-family.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bare-family.d.ts","sourceRoot":"","sources":["../../../src/store/exodus/bare-family.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAM/F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3D,OAAO,EAAyB,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAA8C,KAAK,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAgCjG;;;;;;;;;;;;GAYG;AACH,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,cAAc,EAC7B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAapC;AAiGD,0CAA0C;AAC1C,MAAM,WAAW,gBAAgB;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC3C,6DAA6D;IAC7D,QAAQ,CAAC,OAAO,EAAE,uBAAuB,EAAE,CAAC;IAC5C,6EAA6E;IAC7E,QAAQ,CAAC,SAAS,EAAE,0BAA0B,EAAE,CAAC;IACjD,iFAAiF;IACjF,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;IAClC;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC;AAqDD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,MAAM,EACrB,aAAa,EAAE,cAAc,EAC7B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,gBAAgB,CAAC,CAwO3B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAwB5F"}
|