zelari-code 2.37.3 → 2.38.0

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.
Files changed (41) hide show
  1. package/dist/cli/asyncLimit.js +53 -0
  2. package/dist/cli/asyncLimit.js.map +1 -0
  3. package/dist/cli/budget/restoreRuntime.js +10 -5
  4. package/dist/cli/budget/restoreRuntime.js.map +1 -1
  5. package/dist/cli/crossProviderFailover.js +32 -0
  6. package/dist/cli/crossProviderFailover.js.map +1 -1
  7. package/dist/cli/harnessState.js +7 -3
  8. package/dist/cli/harnessState.js.map +1 -1
  9. package/dist/cli/headlessSpine.js +7 -3
  10. package/dist/cli/headlessSpine.js.map +1 -1
  11. package/dist/cli/kraken/cachedShell.js +162 -0
  12. package/dist/cli/kraken/cachedShell.js.map +1 -0
  13. package/dist/cli/kraken/contractCompiler.js +6 -1
  14. package/dist/cli/kraken/contractCompiler.js.map +1 -1
  15. package/dist/cli/kraken/executor.js +27 -17
  16. package/dist/cli/kraken/executor.js.map +1 -1
  17. package/dist/cli/kraken/nativeVerification.js +9 -1
  18. package/dist/cli/kraken/nativeVerification.js.map +1 -1
  19. package/dist/cli/kraken/worktreeCleanupBatch.js +110 -0
  20. package/dist/cli/kraken/worktreeCleanupBatch.js.map +1 -0
  21. package/dist/cli/main.bundled.js +1204 -468
  22. package/dist/cli/main.bundled.js.map +4 -4
  23. package/dist/cli/memory/legacyImport.js +66 -14
  24. package/dist/cli/memory/legacyImport.js.map +1 -1
  25. package/dist/cli/memory/sqliteBackend.js +19 -5
  26. package/dist/cli/memory/sqliteBackend.js.map +1 -1
  27. package/dist/cli/providerFailover.js +21 -2
  28. package/dist/cli/providerFailover.js.map +1 -1
  29. package/dist/cli/runHeadless.js +32 -1
  30. package/dist/cli/runHeadless.js.map +1 -1
  31. package/dist/cli/sessionSpine.js +26 -10
  32. package/dist/cli/sessionSpine.js.map +1 -1
  33. package/dist/cli/toolRegistry.js +23 -4
  34. package/dist/cli/toolRegistry.js.map +1 -1
  35. package/dist/cli/tools/krakenModel.js +72 -9
  36. package/dist/cli/tools/krakenModel.js.map +1 -1
  37. package/dist/cli/tools/krakenRadio.js +60 -3
  38. package/dist/cli/tools/krakenRadio.js.map +1 -1
  39. package/dist/cli/tools/krakenWorktree.js +105 -4
  40. package/dist/cli/tools/krakenWorktree.js.map +1 -1
  41. package/package.json +3 -2
@@ -1,7 +1,9 @@
1
1
  import { createHash } from 'node:crypto';
2
2
  import { promises as fs } from 'node:fs';
3
3
  import * as path from 'node:path';
4
- import { MEMORY_KINDS } from '@zelari/core/memory';
4
+ import { MEMORY_KINDS, MemoryPolicyError } from '@zelari/core/memory';
5
+ /** Sidecar completion marker next to `memory.db`; deleting it forces a re-import. */
6
+ export const LEGACY_IMPORT_MARKER = 'legacy-import-done.json';
5
7
  function sourceId(fact, line) {
6
8
  return `jsonl:${fact.id ?? createHash('sha256').update(line).digest('hex')}`;
7
9
  }
@@ -21,17 +23,52 @@ function timestamp(value) {
21
23
  const parsed = Date.parse(value);
22
24
  return Number.isFinite(parsed) ? new Date(parsed).toISOString() : undefined;
23
25
  }
24
- /** Import the V1 JSONL log once per legacy id. The source file is untouched. */
26
+ /** A rejected secret or malformed record stays rejected on every pass; a backend
27
+ * or RPC failure is transient and must keep the completion marker unwritten. */
28
+ function isPermanentSkip(error) {
29
+ return error instanceof MemoryPolicyError ||
30
+ error?.name === 'ZodError';
31
+ }
32
+ async function isImportComplete(markerPath) {
33
+ try {
34
+ const marker = JSON.parse(await fs.readFile(markerPath, 'utf8'));
35
+ return typeof marker?.found === 'number' && typeof marker?.at === 'string';
36
+ }
37
+ catch {
38
+ return false;
39
+ }
40
+ }
41
+ async function markImportComplete(markerPath, found) {
42
+ const temporary = `${markerPath}.tmp`;
43
+ try {
44
+ await fs.writeFile(temporary, `${JSON.stringify({ found, at: new Date().toISOString() })}\n`, 'utf8');
45
+ await fs.rename(temporary, markerPath);
46
+ }
47
+ catch {
48
+ // Best effort: without the marker the next boot simply re-imports the log.
49
+ }
50
+ }
51
+ /**
52
+ * Import the V1 JSONL log once per legacy id. The source file is untouched.
53
+ *
54
+ * A pass that resolves every line (imported / skipped / corrupt) writes
55
+ * `legacy-import-done.json` next to the database, so later boots return before
56
+ * reading `log.jsonl`; deleting the marker forces a manual re-import.
57
+ */
25
58
  export async function importLegacyMemoryLog(backend, service) {
26
59
  const result = { found: 0, imported: 0, skipped: 0, corrupt: 0 };
27
- const logPath = path.join(path.dirname(backend.databasePath), 'log.jsonl');
60
+ const memoryDir = path.dirname(backend.databasePath);
61
+ const markerPath = path.join(memoryDir, LEGACY_IMPORT_MARKER);
62
+ if (await isImportComplete(markerPath))
63
+ return result;
28
64
  let raw;
29
65
  try {
30
- raw = await fs.readFile(logPath, 'utf8');
66
+ raw = await fs.readFile(path.join(memoryDir, 'log.jsonl'), 'utf8');
31
67
  }
32
68
  catch {
33
69
  return result;
34
70
  }
71
+ const rows = [];
35
72
  for (const line of raw.split(/\r?\n/)) {
36
73
  const trimmed = line.trim();
37
74
  if (!trimmed)
@@ -50,17 +87,26 @@ export async function importLegacyMemoryLog(backend, service) {
50
87
  result.corrupt += 1;
51
88
  continue;
52
89
  }
53
- const importId = sourceId(fact, trimmed);
54
- if (await backend.hasImport(importId)) {
90
+ rows.push({ fact, content, importId: sourceId(fact, trimmed) });
91
+ }
92
+ // One batched lookup instead of one hasImport RPC per row; ids imported
93
+ // earlier in this same pass are treated as skipped to keep legacy counts.
94
+ const known = rows.length > 0
95
+ ? await backend.hasImports([...new Set(rows.map((row) => row.importId))])
96
+ : new Set();
97
+ const importedHere = new Set();
98
+ let unresolved = 0;
99
+ for (const row of rows) {
100
+ if (known.has(row.importId) || importedHere.has(row.importId)) {
55
101
  result.skipped += 1;
56
102
  continue;
57
103
  }
58
- const metadata = fact.metadata && typeof fact.metadata === 'object' ? fact.metadata : {};
59
- const createdAt = timestamp(fact.createdAt);
104
+ const metadata = row.fact.metadata && typeof row.fact.metadata === 'object' ? row.fact.metadata : {};
105
+ const createdAt = timestamp(row.fact.createdAt);
60
106
  try {
61
107
  const node = await service.remember({
62
108
  kind: kind(metadata),
63
- content,
109
+ content: row.content,
64
110
  importance: typeof metadata.importance === 'number' ? metadata.importance : 0.55,
65
111
  confidence: typeof metadata.confidence === 'number' ? metadata.confidence : 0.65,
66
112
  source: {
@@ -72,20 +118,26 @@ export async function importLegacyMemoryLog(backend, service) {
72
118
  ...(createdAt ? { createdAt, recordedAt: createdAt } : {}),
73
119
  metadata: {
74
120
  ...metadata,
75
- legacyId: fact.id,
76
- legacyCreatedAt: fact.createdAt,
77
- ...(fact.graph ? { legacyGraph: fact.graph } : {}),
121
+ legacyId: row.fact.id,
122
+ legacyCreatedAt: row.fact.createdAt,
123
+ ...(row.fact.graph ? { legacyGraph: row.fact.graph } : {}),
78
124
  },
79
125
  writeClass: 'auto',
80
126
  });
81
- await backend.recordImport(importId, node.id);
127
+ await backend.recordImport(row.importId, node.id);
128
+ importedHere.add(row.importId);
82
129
  result.imported += 1;
83
130
  }
84
- catch {
131
+ catch (error) {
85
132
  // A rejected secret or malformed legacy record is deliberately skipped.
86
133
  result.skipped += 1;
134
+ if (!isPermanentSkip(error))
135
+ unresolved += 1;
87
136
  }
88
137
  }
138
+ const everyRowResolved = result.imported + result.skipped + result.corrupt === result.found;
139
+ if (everyRowResolved && unresolved === 0)
140
+ await markImportComplete(markerPath, result.found);
89
141
  return result;
90
142
  }
91
143
  //# sourceMappingURL=legacyImport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"legacyImport.js","sourceRoot":"","sources":["../../../src/cli/memory/legacyImport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"legacyImport.js","sourceRoot":"","sources":["../../../src/cli/memory/legacyImport.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,8 @@ const NODE_COLUMNS = `
12
12
  valid_until, recorded_at, retracted_at, embedding_ref, metadata_json`;
13
13
  const INSERT_NODE_SQL = `INSERT INTO memory_nodes (${NODE_COLUMNS})
14
14
  VALUES (${Array.from({ length: 19 }, () => '?').join(',')})`;
15
+ /** Legacy-import ids per `IN` query: 500 placeholders per RPC, well under SQLite limits. */
16
+ const IMPORT_ID_CHUNK = 500;
15
17
  const SOURCE_COLUMNS = {
16
18
  agent: 'agent', sessionId: 'sessionId', missionId: 'missionId',
17
19
  sliceId: 'sliceId', tentacleId: 'tentacleId', councilMemberId: 'councilMemberId',
@@ -614,12 +616,24 @@ export class SQLiteMemoryBackend {
614
616
  versions: versionRows.map(decodeVersion).filter((version) => Boolean(version)),
615
617
  };
616
618
  }
617
- async hasImport(sourceId) {
619
+ /** Batched `hasImport`: one `IN` query per 500 ids instead of one RPC per row. */
620
+ async hasImports(ids) {
618
621
  this.assertReady();
619
- const row = await this.rpc.statement({
620
- sql: 'SELECT source_id FROM memory_imports WHERE source_id=?', params: [sourceId], mode: 'get',
621
- });
622
- return Boolean(row);
622
+ const found = new Set();
623
+ const unique = [...new Set(ids)];
624
+ for (let index = 0; index < unique.length; index += IMPORT_ID_CHUNK) {
625
+ const chunk = unique.slice(index, index + IMPORT_ID_CHUNK);
626
+ const rows = await this.rpc.statement({
627
+ sql: `SELECT source_id FROM memory_imports WHERE source_id IN (${chunk.map(() => '?').join(',')})`,
628
+ params: chunk, mode: 'all',
629
+ });
630
+ for (const row of rows)
631
+ found.add(String(row.source_id));
632
+ }
633
+ return found;
634
+ }
635
+ async hasImport(sourceId) {
636
+ return (await this.hasImports([sourceId])).has(sourceId);
623
637
  }
624
638
  async recordImport(sourceId, memoryId) {
625
639
  this.assertReady();
@@ -1 +1 @@
1
- {"version":3,"file":"sqliteBackend.js","sourceRoot":"","sources":["../../../src/cli/memory/sqliteBackend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqliteBackend.js","sourceRoot":"","sources":["../../../src/cli/memory/sqliteBackend.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,20 @@ export function providerFailover(options) {
35
35
  const fallbackFailedMsg = options.fallbackLabel
36
36
  ? `[failover] fallback (${options.fallbackLabel}) also failed: `
37
37
  : '[failover] fallback also failed: ';
38
+ const notify = (phase, message) => {
39
+ if (!options.onFailover)
40
+ return;
41
+ try {
42
+ options.onFailover({
43
+ phase,
44
+ message,
45
+ ...(options.fallbackLabel ? { label: options.fallbackLabel } : {}),
46
+ });
47
+ }
48
+ catch {
49
+ // audit must never break the stream
50
+ }
51
+ };
38
52
  return async function* (params) {
39
53
  const triedFallback = { value: false };
40
54
  try {
@@ -48,6 +62,7 @@ export function providerFailover(options) {
48
62
  kind: 'error',
49
63
  message: primaryFailedMsg,
50
64
  };
65
+ notify('swap-delta', primaryFailedMsg);
51
66
  break;
52
67
  }
53
68
  yield delta;
@@ -56,10 +71,12 @@ export function providerFailover(options) {
56
71
  catch (err) {
57
72
  // Network-level throw (fetch rejection, etc.) → also failover.
58
73
  triedFallback.value = true;
74
+ const threwMsg = `${primaryThrewMsg}${err instanceof Error ? err.message : String(err)}`;
59
75
  yield {
60
76
  kind: 'error',
61
- message: `${primaryThrewMsg}${err instanceof Error ? err.message : String(err)}`,
77
+ message: threwMsg,
62
78
  };
79
+ notify('swap-throw', threwMsg);
63
80
  }
64
81
  if (triedFallback.value) {
65
82
  try {
@@ -68,10 +85,12 @@ export function providerFailover(options) {
68
85
  }
69
86
  }
70
87
  catch (err) {
88
+ const failedMsg = `${fallbackFailedMsg}${err instanceof Error ? err.message : String(err)}`;
71
89
  yield {
72
90
  kind: 'error',
73
- message: `${fallbackFailedMsg}${err instanceof Error ? err.message : String(err)}`,
91
+ message: failedMsg,
74
92
  };
93
+ notify('fallback-failed', failedMsg);
75
94
  return;
76
95
  }
77
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"providerFailover.js","sourceRoot":"","sources":["../../src/cli/providerFailover.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAwBH,MAAM,oBAAoB,GAAG,CAAC,KAAoB,EAAW,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC;AAEvF;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAwB;IACvD,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB,IAAI,oBAAoB,CAAC;IACvE,sEAAsE;IACtE,wEAAwE;IACxE,sEAAsE;IACtE,MAAM,gBAAgB,GAAG,OAAO,CAAC,aAAa;QAC5C,CAAC,CAAC,2CAA2C,OAAO,CAAC,aAAa,EAAE;QACpE,CAAC,CAAC,kDAAkD,CAAC;IACvD,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa;QAC3C,CAAC,CAAC,0CAA0C,OAAO,CAAC,aAAa,IAAI;QACrE,CAAC,CAAC,4BAA4B,CAAC;IACjC,MAAM,iBAAiB,GAAG,OAAO,CAAC,aAAa;QAC7C,CAAC,CAAC,wBAAwB,OAAO,CAAC,aAAa,iBAAiB;QAChE,CAAC,CAAC,mCAAmC,CAAC;IACxC,OAAO,KAAK,SAAS,CAAC,EAAE,MAAM;QAC5B,MAAM,aAAa,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACvC,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClD,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvB,4DAA4D;oBAC5D,qDAAqD;oBACrD,MAAM,KAAK,CAAC;oBACZ,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC;oBAC3B,MAAM;wBACJ,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE,gBAAgB;qBAC1B,CAAC;oBACF,MAAM;gBACR,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,+DAA+D;YAC/D,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC;YAC3B,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,GAAG,eAAe,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;aACjF,CAAC;QACJ,CAAC;QACD,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACnD,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM;oBACJ,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,GAAG,iBAAiB,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;iBACnF,CAAC;gBACF,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,EAAoB,EACpB,MAAuC;IAEvC,MAAM,GAAG,GAAoB,EAAE,CAAC;IAChC,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC;QAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9C,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"providerFailover.js","sourceRoot":"","sources":["../../src/cli/providerFailover.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAoCH,MAAM,oBAAoB,GAAG,CAAC,KAAoB,EAAW,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC;AAEvF;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAwB;IACvD,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB,IAAI,oBAAoB,CAAC;IACvE,sEAAsE;IACtE,wEAAwE;IACxE,sEAAsE;IACtE,MAAM,gBAAgB,GAAG,OAAO,CAAC,aAAa;QAC5C,CAAC,CAAC,2CAA2C,OAAO,CAAC,aAAa,EAAE;QACpE,CAAC,CAAC,kDAAkD,CAAC;IACvD,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa;QAC3C,CAAC,CAAC,0CAA0C,OAAO,CAAC,aAAa,IAAI;QACrE,CAAC,CAAC,4BAA4B,CAAC;IACjC,MAAM,iBAAiB,GAAG,OAAO,CAAC,aAAa;QAC7C,CAAC,CAAC,wBAAwB,OAAO,CAAC,aAAa,iBAAiB;QAChE,CAAC,CAAC,mCAAmC,CAAC;IACxC,MAAM,MAAM,GAAG,CAAC,KAA8B,EAAE,OAAe,EAAE,EAAE;QACjE,IAAI,CAAC,OAAO,CAAC,UAAU;YAAE,OAAO;QAChC,IAAI,CAAC;YACH,OAAO,CAAC,UAAU,CAAC;gBACjB,KAAK;gBACL,OAAO;gBACP,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACnE,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,oCAAoC;QACtC,CAAC;IACH,CAAC,CAAC;IACF,OAAO,KAAK,SAAS,CAAC,EAAE,MAAM;QAC5B,MAAM,aAAa,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACvC,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClD,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBACvB,4DAA4D;oBAC5D,qDAAqD;oBACrD,MAAM,KAAK,CAAC;oBACZ,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC;oBAC3B,MAAM;wBACJ,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE,gBAAgB;qBAC1B,CAAC;oBACF,MAAM,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;oBACvC,MAAM;gBACR,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,+DAA+D;YAC/D,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC;YAC3B,MAAM,QAAQ,GAAG,GAAG,eAAe,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YACzF,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,QAAQ;aAClB,CAAC;YACF,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACnD,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,SAAS,GAAG,GAAG,iBAAiB,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5F,MAAM;oBACJ,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,SAAS;iBACnB,CAAC;gBACF,MAAM,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC;gBACrC,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,EAAoB,EACpB,MAAuC;IAEvC,MAAM,GAAG,GAAoB,EAAE,CAAC;IAChC,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC;QAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9C,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -120,12 +120,43 @@ export async function runHeadless(opts) {
120
120
  return 1;
121
121
  }
122
122
  const { buildProviderStream } = await import('./provider/resolveStream.js');
123
- providerStream = buildProviderStream({
123
+ const primaryStream = buildProviderStream({
124
124
  providerId: provider,
125
125
  apiKey: key.apiKey,
126
126
  baseUrl: key.baseUrl,
127
127
  model,
128
128
  });
129
+ // Int5b: opt-in transport failover (ZELARI_HEADLESS_FAILOVER=1).
130
+ // Local-CLI is never wrapped (parity with TUI). Default off = bit-identical:
131
+ // the wrap block (and its openai-compatible import) only runs when enabled,
132
+ // so mocks that do not export providerConfigFor stay valid with failover off.
133
+ const { isHeadlessFailoverEnabled, wrapWithHeadlessFailover } = await import('./crossProviderFailover.js');
134
+ if (isHeadlessFailoverEnabled()) {
135
+ const { PROVIDERS } = await import('./keyStore.js');
136
+ const { providerConfigFor } = await import('./provider/openai-compatible.js');
137
+ providerStream = await wrapWithHeadlessFailover({
138
+ primary: primaryStream,
139
+ primaryProviderId: provider,
140
+ validProviderIds: PROVIDERS.map((p) => p.id),
141
+ lookupFallbackConfig: async (id) => providerConfigFor(id),
142
+ buildStream: (config) => buildProviderStream(config),
143
+ onWarning: (warning) => {
144
+ try {
145
+ process.stderr.write(`[zelari-code --headless] ${warning}\n`);
146
+ }
147
+ catch { /* ignore */ }
148
+ },
149
+ onFailover: (info) => {
150
+ try {
151
+ process.stderr.write(`[zelari-code --headless] [failover] ${info.phase}${info.label ? ` → ${info.label}` : ''}: ${info.message}\n`);
152
+ }
153
+ catch { /* ignore */ }
154
+ },
155
+ });
156
+ }
157
+ else {
158
+ providerStream = primaryStream;
159
+ }
129
160
  }
130
161
  return dispatchHeadlessTurn(opts, provider, model, providerStream, {
131
162
  // H10-fix3: the gate already ran above on the SAME input (no chdir in