@cleocode/core 2026.10.13-rc.ci.682 → 2026.10.14-rc.ci.683
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/build-provenance.json +2 -2
- package/dist/cloud/nexus-vault.d.ts +6 -2
- package/dist/cloud/nexus-vault.d.ts.map +1 -1
- package/dist/cloud/nexus-vault.js +53 -3
- package/dist/cloud/nexus-vault.js.map +1 -1
- package/dist/cloud/secret-seal.js +2 -2
- package/dist/cloud/secret-seal.js.map +1 -1
- package/dist/config/registry.d.ts +0 -21
- package/dist/config/registry.d.ts.map +1 -1
- package/dist/config/registry.js +0 -41
- package/dist/config/registry.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +1 -0
- package/dist/config.js.map +1 -1
- package/dist/crypto/credentials.d.ts +13 -0
- package/dist/crypto/credentials.d.ts.map +1 -1
- package/dist/crypto/credentials.js +35 -6
- package/dist/crypto/credentials.js.map +1 -1
- package/dist/docs/docs-ops.d.ts +11 -1
- package/dist/docs/docs-ops.d.ts.map +1 -1
- package/dist/docs/docs-ops.js +38 -3
- package/dist/docs/docs-ops.js.map +1 -1
- package/dist/docs/docs-update.d.ts.map +1 -1
- package/dist/docs/docs-update.js +5 -1
- package/dist/docs/docs-update.js.map +1 -1
- package/dist/docs/supersede.d.ts.map +1 -1
- package/dist/docs/supersede.js +5 -1
- package/dist/docs/supersede.js.map +1 -1
- package/dist/docs/wikilinks.d.ts +3 -1
- package/dist/docs/wikilinks.d.ts.map +1 -1
- package/dist/docs/wikilinks.js +23 -12
- package/dist/docs/wikilinks.js.map +1 -1
- package/dist/gateway-client/generated/index.d.ts +2 -2
- package/dist/gateway-client/generated/index.d.ts.map +1 -1
- package/dist/gateway-client/generated/index.js +1 -1
- package/dist/gateway-client/generated/index.js.map +1 -1
- package/dist/gateway-client/generated/namespaces.gen.d.ts +33 -0
- package/dist/gateway-client/generated/namespaces.gen.d.ts.map +1 -1
- package/dist/gateway-client/generated/namespaces.gen.js +34 -1
- package/dist/gateway-client/generated/namespaces.gen.js.map +1 -1
- package/dist/gateway-client/generated/sdk.gen.d.ts +137 -5
- package/dist/gateway-client/generated/sdk.gen.d.ts.map +1 -1
- package/dist/gateway-client/generated/sdk.gen.js +355 -6
- package/dist/gateway-client/generated/sdk.gen.js.map +1 -1
- package/dist/gateway-client/generated/types.gen.d.ts +1811 -187
- package/dist/gateway-client/generated/types.gen.d.ts.map +1 -1
- package/dist/lib/error-message.d.ts +30 -0
- package/dist/lib/error-message.d.ts.map +1 -0
- package/dist/lib/error-message.js +65 -0
- package/dist/lib/error-message.js.map +1 -0
- package/dist/lib/index.d.ts +1 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +1 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/llm/credentials-store.d.ts +29 -16
- package/dist/llm/credentials-store.d.ts.map +1 -1
- package/dist/llm/credentials-store.js +158 -139
- package/dist/llm/credentials-store.js.map +1 -1
- package/dist/memory/brain-embedding.d.ts +4 -2
- package/dist/memory/brain-embedding.d.ts.map +1 -1
- package/dist/memory/brain-embedding.js +8 -2
- package/dist/memory/brain-embedding.js.map +1 -1
- package/dist/memory/embedding-local.d.ts +28 -5
- package/dist/memory/embedding-local.d.ts.map +1 -1
- package/dist/memory/embedding-local.js +47 -9
- package/dist/memory/embedding-local.js.map +1 -1
- package/dist/memory/engine-compat.d.ts +4 -0
- package/dist/memory/engine-compat.d.ts.map +1 -1
- package/dist/memory/engine-compat.js +76 -0
- package/dist/memory/engine-compat.js.map +1 -1
- package/dist/memory/global-brain.d.ts +93 -0
- package/dist/memory/global-brain.d.ts.map +1 -0
- package/dist/memory/global-brain.js +183 -0
- package/dist/memory/global-brain.js.map +1 -0
- package/dist/memory/patterns.d.ts +2 -2
- package/dist/memory/quality-feedback.d.ts.map +1 -1
- package/dist/memory/quality-feedback.js +0 -26
- package/dist/memory/quality-feedback.js.map +1 -1
- package/dist/memory/retrieval/observe.js +4 -4
- package/dist/memory/retrieval/observe.js.map +1 -1
- package/dist/memory/transcript-extractor.js +5 -2
- package/dist/memory/transcript-extractor.js.map +1 -1
- package/dist/orchestration/lean-change.d.ts.map +1 -1
- package/dist/orchestration/lean-change.js +2 -3
- package/dist/orchestration/lean-change.js.map +1 -1
- package/dist/orchestration/lean-debt.d.ts +48 -0
- package/dist/orchestration/lean-debt.d.ts.map +1 -0
- package/dist/orchestration/lean-debt.js +167 -0
- package/dist/orchestration/lean-debt.js.map +1 -0
- package/dist/sessions/briefing.d.ts.map +1 -1
- package/dist/sessions/briefing.js +10 -0
- package/dist/sessions/briefing.js.map +1 -1
- package/dist/store/attachment-store.d.ts.map +1 -1
- package/dist/store/attachment-store.js +5 -1
- package/dist/store/attachment-store.js.map +1 -1
- package/dist/store/backup-sidecar.d.ts +5 -2
- package/dist/store/backup-sidecar.d.ts.map +1 -1
- package/dist/store/backup-sidecar.js +31 -18
- package/dist/store/backup-sidecar.js.map +1 -1
- package/dist/store/credential-transfer.d.ts +13 -14
- package/dist/store/credential-transfer.d.ts.map +1 -1
- package/dist/store/credential-transfer.js +75 -23
- package/dist/store/credential-transfer.js.map +1 -1
- package/dist/store/docs-bytes-backup.d.ts +133 -0
- package/dist/store/docs-bytes-backup.d.ts.map +1 -0
- package/dist/store/docs-bytes-backup.js +450 -0
- package/dist/store/docs-bytes-backup.js.map +1 -0
- package/dist/store/llm-accounts-accessor.d.ts +107 -0
- package/dist/store/llm-accounts-accessor.d.ts.map +1 -0
- package/dist/store/llm-accounts-accessor.js +224 -0
- package/dist/store/llm-accounts-accessor.js.map +1 -0
- package/dist/store/memory-accessor.d.ts +44 -0
- package/dist/store/memory-accessor.d.ts.map +1 -1
- package/dist/store/memory-accessor.js +60 -0
- package/dist/store/memory-accessor.js.map +1 -1
- package/dist/store/memory-sqlite.d.ts +18 -0
- package/dist/store/memory-sqlite.d.ts.map +1 -1
- package/dist/store/memory-sqlite.js +40 -23
- package/dist/store/memory-sqlite.js.map +1 -1
- package/dist/store/migration-manager.d.ts.map +1 -1
- package/dist/store/migration-manager.js +7 -1
- package/dist/store/migration-manager.js.map +1 -1
- package/dist/store/restore-store.d.ts +12 -1
- package/dist/store/restore-store.d.ts.map +1 -1
- package/dist/store/restore-store.js +150 -11
- package/dist/store/restore-store.js.map +1 -1
- package/dist/store/row-identity-registry.d.ts +4 -4
- package/dist/store/row-identity-registry.d.ts.map +1 -1
- package/dist/store/row-identity-registry.js +35 -8
- package/dist/store/row-identity-registry.js.map +1 -1
- package/dist/store/schema/cleo-global/accounts.d.ts +6 -5
- package/dist/store/schema/cleo-global/accounts.d.ts.map +1 -1
- package/dist/store/schema/cleo-global/accounts.js +7 -6
- package/dist/store/schema/cleo-global/accounts.js.map +1 -1
- package/dist/store/schema/cleo-project/docs.d.ts +32 -0
- package/dist/store/schema/cleo-project/docs.d.ts.map +1 -1
- package/dist/store/schema/cleo-project/docs.js +9 -0
- package/dist/store/schema/cleo-project/docs.js.map +1 -1
- package/dist/store/sync/apply/applier.d.ts +3 -1
- package/dist/store/sync/apply/applier.d.ts.map +1 -1
- package/dist/store/sync/apply/applier.js +80 -19
- 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/apply/write-api.d.ts +5 -1
- package/dist/store/sync/apply/write-api.d.ts.map +1 -1
- package/dist/store/sync/apply/write-api.js +22 -0
- package/dist/store/sync/apply/write-api.js.map +1 -1
- package/dist/store/sync/capture.d.ts +27 -0
- package/dist/store/sync/capture.d.ts.map +1 -1
- package/dist/store/sync/capture.js +32 -1
- package/dist/store/sync/capture.js.map +1 -1
- package/dist/store/sync/genesis.d.ts.map +1 -1
- package/dist/store/sync/genesis.js +3 -1
- package/dist/store/sync/genesis.js.map +1 -1
- package/dist/store/sync/inbox.d.ts +18 -2
- package/dist/store/sync/inbox.d.ts.map +1 -1
- package/dist/store/sync/inbox.js +23 -2
- package/dist/store/sync/inbox.js.map +1 -1
- package/dist/store/sync/pull.d.ts +1 -1
- package/dist/store/sync/pull.d.ts.map +1 -1
- package/dist/store/sync/pull.js +4 -1
- package/dist/store/sync/pull.js.map +1 -1
- package/dist/store/sync/timestamp-canon.d.ts.map +1 -1
- package/dist/store/sync/timestamp-canon.js +3 -0
- package/dist/store/sync/timestamp-canon.js.map +1 -1
- package/dist/store/table-classification.d.ts.map +1 -1
- package/dist/store/table-classification.js +29 -3
- package/dist/store/table-classification.js.map +1 -1
- package/dist/system/backup.d.ts +5 -2
- package/dist/system/backup.d.ts.map +1 -1
- package/dist/system/backup.js +39 -3
- package/dist/system/backup.js.map +1 -1
- package/dist/tasks/affected-scope.d.ts +44 -5
- package/dist/tasks/affected-scope.d.ts.map +1 -1
- package/dist/tasks/affected-scope.js +159 -20
- package/dist/tasks/affected-scope.js.map +1 -1
- package/dist/tasks/complete-ci.d.ts.map +1 -1
- package/dist/tasks/complete-ci.js +11 -9
- package/dist/tasks/complete-ci.js.map +1 -1
- package/dist/tasks/done-plan.d.ts.map +1 -1
- package/dist/tasks/done-plan.js +4 -6
- package/dist/tasks/done-plan.js.map +1 -1
- package/dist/tasks/gate-preview.d.ts.map +1 -1
- package/dist/tasks/gate-preview.js +13 -5
- package/dist/tasks/gate-preview.js.map +1 -1
- package/dist/tasks/gate-result-cache.d.ts +30 -1
- package/dist/tasks/gate-result-cache.d.ts.map +1 -1
- package/dist/tasks/gate-result-cache.js +81 -2
- package/dist/tasks/gate-result-cache.js.map +1 -1
- package/dist/tasks/gate-runner.d.ts +27 -2
- package/dist/tasks/gate-runner.d.ts.map +1 -1
- package/dist/tasks/gate-runner.js +67 -14
- package/dist/tasks/gate-runner.js.map +1 -1
- package/dist/tasks/qa-run-binding.d.ts +15 -0
- package/dist/tasks/qa-run-binding.d.ts.map +1 -1
- package/dist/tasks/qa-run-binding.js +24 -3
- package/dist/tasks/qa-run-binding.js.map +1 -1
- package/migrations/drizzle-brain/20261014180000_t13719-prune-candidate-column/migration.sql +16 -0
- package/migrations/drizzle-cleo-project/20261014100000_t12919-docs-row-uids/migration.sql +27 -0
- package/package.json +13 -13
- package/templates/CLEO-REFERENCE.md +1 -1
- package/templates/global-config.template.json +2 -1
|
@@ -241,13 +241,17 @@ export declare function cloudSync(opts?: NexusVaultCommandOptions & {
|
|
|
241
241
|
}): Promise<CloudSyncResult>;
|
|
242
242
|
/**
|
|
243
243
|
* `cleo cloud pull` / `cleo cloud restore`: verify and activate a snapshot.
|
|
244
|
+
* A restore then turns sync on for the store and the home stream (T13718).
|
|
244
245
|
*
|
|
245
|
-
* @param opts - Mode, snapshot, project and target overrides
|
|
246
|
+
* @param opts - Mode, snapshot, project and target overrides;
|
|
247
|
+
* `allowUnreleased` for tests and staging only.
|
|
246
248
|
* @returns What was restored.
|
|
247
249
|
* @throws {NexusAccountError} `E_NEXUS_VAULT_LOCAL_CHANGES`, `E_NEXUS_VAULT_VERIFY_FAILED`,
|
|
248
250
|
* `E_NEXUS_VAULT_EMPTY`, `E_NEXUS_VAULT_KEY_UNAVAILABLE`, or a mapped API error.
|
|
249
251
|
*/
|
|
250
|
-
export declare function restoreNexusVault(opts: NexusVaultRestoreOptions
|
|
252
|
+
export declare function restoreNexusVault(opts: NexusVaultRestoreOptions & {
|
|
253
|
+
allowUnreleased?: boolean;
|
|
254
|
+
}): Promise<CloudRestoreResult>;
|
|
251
255
|
/**
|
|
252
256
|
* `cleo cloud vault`: the vault's lineage, last push per device, pending changes and leases.
|
|
253
257
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nexus-vault.d.ts","sourceRoot":"","sources":["../../src/cloud/nexus-vault.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAQH,OAAO,KAAK,EACV,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAClB,yBAAyB,EACzB,eAAe,EAGf,eAAe,EAEf,sBAAsB,EAGtB,iBAAiB,EAGlB,MAAM,qBAAqB,CAAC;AAkD7B,OAAO,EACL,KAAK,gBAAgB,EAMtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAoB,KAAK,gBAAgB,EAAc,MAAM,uBAAuB,CAAC;AAgB5F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"nexus-vault.d.ts","sourceRoot":"","sources":["../../src/cloud/nexus-vault.ts"],"names":[],"mappings":"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"}
|
|
@@ -82,6 +82,7 @@ import { sealPending } from '../store/sync/sealer.js';
|
|
|
82
82
|
import { firstBadTxnSignature, signTxn } from '../store/sync/txn-signing.js';
|
|
83
83
|
import { buildVaultManifest, carryMachineState, compareVaultManifests, emptyVaultTableHash, isVaultAnnotationKey, isVaultForkManifest, sameVaultManifest, VAULT_FILES_KEY, VAULT_FORK_KEY, VAULT_FORMAT_KEY, VAULT_GLOBAL_CONFIG_LOCAL_KEYS, VAULT_MANIFEST_FORMAT_VERSION, vaultDatabaseEntry, vaultDatabaseKey, vaultFileDigest, vaultFilesEntry, vaultForkEntry, vaultFormatEntry, vaultManifestFormat, vaultStripColumns, } from '../store/vault-manifest.js';
|
|
84
84
|
import { foreignWriterLeases, storeOpenElsewhere } from '../store/writer-lease.js';
|
|
85
|
+
import { autoSyncSuppressedBy } from './auto-sync.js';
|
|
85
86
|
import { deriveKey, uuidv7 } from './crypto.js';
|
|
86
87
|
import { NexusError } from './http.js';
|
|
87
88
|
import { cursorFromCheckpoint, initialPullCursor, Journal } from './journal.js';
|
|
@@ -3075,14 +3076,63 @@ export function cloudSync(opts = {}) {
|
|
|
3075
3076
|
}
|
|
3076
3077
|
/**
|
|
3077
3078
|
* `cleo cloud pull` / `cleo cloud restore`: verify and activate a snapshot.
|
|
3079
|
+
* A restore then turns sync on for the store and the home stream (T13718).
|
|
3078
3080
|
*
|
|
3079
|
-
* @param opts - Mode, snapshot, project and target overrides
|
|
3081
|
+
* @param opts - Mode, snapshot, project and target overrides;
|
|
3082
|
+
* `allowUnreleased` for tests and staging only.
|
|
3080
3083
|
* @returns What was restored.
|
|
3081
3084
|
* @throws {NexusAccountError} `E_NEXUS_VAULT_LOCAL_CHANGES`, `E_NEXUS_VAULT_VERIFY_FAILED`,
|
|
3082
3085
|
* `E_NEXUS_VAULT_EMPTY`, `E_NEXUS_VAULT_KEY_UNAVAILABLE`, or a mapped API error.
|
|
3083
3086
|
*/
|
|
3084
|
-
export function restoreNexusVault(opts) {
|
|
3085
|
-
|
|
3087
|
+
export async function restoreNexusVault(opts) {
|
|
3088
|
+
const result = await mapped(() => restoreNexusVaultImpl(opts));
|
|
3089
|
+
if (opts.mode !== 'restore' || result.status !== 'restored')
|
|
3090
|
+
return result;
|
|
3091
|
+
const { mode, checkpointId, force, projectId, into, relink, ...vault } = opts;
|
|
3092
|
+
return {
|
|
3093
|
+
...result,
|
|
3094
|
+
warnings: [...result.warnings, ...(await turnSyncOnAfterJoin(vault, result))],
|
|
3095
|
+
};
|
|
3096
|
+
}
|
|
3097
|
+
/**
|
|
3098
|
+
* After a restore places a store on this device (`cleo cloud restore`, or the
|
|
3099
|
+
* login first run's restore), turn sync on for it and for the account's home
|
|
3100
|
+
* stream, the way login does once a project is linked, so a device that joins
|
|
3101
|
+
* by restore is syncing with no enable step (T13718). Inert while `sync.push`
|
|
3102
|
+
* is unreleased; skipped under a test runner or CI and by the opt-outs
|
|
3103
|
+
* `CLEO_DISABLE_AUTO_SYNC=1` or `cloud.autoSync: false`. A failure warns
|
|
3104
|
+
* `W_NEXUS_FIRST_RUN_SYNC`; the restore stands.
|
|
3105
|
+
*/
|
|
3106
|
+
async function turnSyncOnAfterJoin(opts, restored) {
|
|
3107
|
+
if (UNRELEASED_FLAGS.has('sync.push') && opts.allowUnreleased !== true)
|
|
3108
|
+
return [];
|
|
3109
|
+
if (autoSyncSuppressedBy(process.env) !== null)
|
|
3110
|
+
return [];
|
|
3111
|
+
if (process.env['CLEO_DISABLE_AUTO_SYNC'] === '1')
|
|
3112
|
+
return [];
|
|
3113
|
+
const projectRoot = restored.scope === 'project' ? restored.target : (opts.projectRoot ?? process.cwd()); // CWD-OK: global restore, root only feeds the cloud.autoSync lookup
|
|
3114
|
+
try {
|
|
3115
|
+
const { getConfigValue } = await import('../config/registry.js');
|
|
3116
|
+
if ((await getConfigValue('cloud.autoSync', { projectRoot })) === false)
|
|
3117
|
+
return [];
|
|
3118
|
+
}
|
|
3119
|
+
catch {
|
|
3120
|
+
// An unreadable config is not an opt-out.
|
|
3121
|
+
}
|
|
3122
|
+
const scopes = restored.scope === 'project' ? ['project', 'global'] : ['global'];
|
|
3123
|
+
const warnings = [];
|
|
3124
|
+
for (const scope of scopes) {
|
|
3125
|
+
try {
|
|
3126
|
+
await enableSyncPush({ ...opts, projectRoot, scope });
|
|
3127
|
+
}
|
|
3128
|
+
catch (err) {
|
|
3129
|
+
warnings.push({
|
|
3130
|
+
code: 'W_NEXUS_FIRST_RUN_SYNC',
|
|
3131
|
+
message: `restored, but sync is not on for the ${scope} store: ${err instanceof Error ? err.message : String(err)}; run \`cleo sync enable push --scope ${scope}\``,
|
|
3132
|
+
});
|
|
3133
|
+
}
|
|
3134
|
+
}
|
|
3135
|
+
return warnings;
|
|
3086
3136
|
}
|
|
3087
3137
|
/**
|
|
3088
3138
|
* `cleo cloud vault`: the vault's lineage, last push per device, pending changes and leases.
|