@calliopelabs/cli 3.2.0 → 3.3.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 (161) hide show
  1. package/README.md +15 -0
  2. package/dist/acp.d.ts +11 -3
  3. package/dist/acp.d.ts.map +1 -1
  4. package/dist/acp.js +114 -27
  5. package/dist/acp.js.map +1 -1
  6. package/dist/attach.d.ts +95 -0
  7. package/dist/attach.d.ts.map +1 -0
  8. package/dist/attach.js +306 -0
  9. package/dist/attach.js.map +1 -0
  10. package/dist/bin.js +27 -5
  11. package/dist/bin.js.map +1 -1
  12. package/dist/brain/actions.d.ts +1 -1
  13. package/dist/brain/actions.d.ts.map +1 -1
  14. package/dist/brain/actions.js.map +1 -1
  15. package/dist/brain/cli.d.ts +1 -1
  16. package/dist/brain/cli.d.ts.map +1 -1
  17. package/dist/brain/cli.js +47 -5
  18. package/dist/brain/cli.js.map +1 -1
  19. package/dist/brain/exchange-json.d.ts +4 -0
  20. package/dist/brain/exchange-json.d.ts.map +1 -0
  21. package/dist/brain/exchange-json.js +77 -0
  22. package/dist/brain/exchange-json.js.map +1 -0
  23. package/dist/brain/exchange.d.ts +26 -0
  24. package/dist/brain/exchange.d.ts.map +1 -0
  25. package/dist/brain/exchange.js +86 -0
  26. package/dist/brain/exchange.js.map +1 -0
  27. package/dist/brain/index.d.ts +3 -0
  28. package/dist/brain/index.d.ts.map +1 -1
  29. package/dist/brain/index.js +3 -0
  30. package/dist/brain/index.js.map +1 -1
  31. package/dist/brain/journal.js +3 -3
  32. package/dist/brain/journal.js.map +1 -1
  33. package/dist/brain/kg-claims.d.ts +13 -0
  34. package/dist/brain/kg-claims.d.ts.map +1 -0
  35. package/dist/brain/kg-claims.js +156 -0
  36. package/dist/brain/kg-claims.js.map +1 -0
  37. package/dist/brain/kg-export.d.ts +13 -0
  38. package/dist/brain/kg-export.d.ts.map +1 -0
  39. package/dist/brain/kg-export.js +116 -0
  40. package/dist/brain/kg-export.js.map +1 -0
  41. package/dist/brain/kg-transfer.d.ts +29 -0
  42. package/dist/brain/kg-transfer.d.ts.map +1 -0
  43. package/dist/brain/kg-transfer.js +156 -0
  44. package/dist/brain/kg-transfer.js.map +1 -0
  45. package/dist/brain/kg.d.ts.map +1 -1
  46. package/dist/brain/kg.js +89 -16
  47. package/dist/brain/kg.js.map +1 -1
  48. package/dist/brain/presentation.d.ts.map +1 -1
  49. package/dist/brain/presentation.js +10 -0
  50. package/dist/brain/presentation.js.map +1 -1
  51. package/dist/brain/store.d.ts +1 -1
  52. package/dist/brain/store.d.ts.map +1 -1
  53. package/dist/brain/store.js +8 -2
  54. package/dist/brain/store.js.map +1 -1
  55. package/dist/brain/transfer-report.d.ts +38 -0
  56. package/dist/brain/transfer-report.d.ts.map +1 -0
  57. package/dist/brain/transfer-report.js +10 -0
  58. package/dist/brain/transfer-report.js.map +1 -0
  59. package/dist/brain/transfer.d.ts +29 -21
  60. package/dist/brain/transfer.d.ts.map +1 -1
  61. package/dist/brain/transfer.js +120 -89
  62. package/dist/brain/transfer.js.map +1 -1
  63. package/dist/brain/validation.d.ts +1 -0
  64. package/dist/brain/validation.d.ts.map +1 -1
  65. package/dist/brain/validation.js +7 -6
  66. package/dist/brain/validation.js.map +1 -1
  67. package/dist/config.d.ts +4 -0
  68. package/dist/config.d.ts.map +1 -1
  69. package/dist/config.js.map +1 -1
  70. package/dist/execution/authority.d.ts.map +1 -1
  71. package/dist/execution/authority.js +4 -2
  72. package/dist/execution/authority.js.map +1 -1
  73. package/dist/execution/files.d.ts.map +1 -1
  74. package/dist/execution/files.js +9 -6
  75. package/dist/execution/files.js.map +1 -1
  76. package/dist/execution/ledger.d.ts.map +1 -1
  77. package/dist/execution/ledger.js +3 -1
  78. package/dist/execution/ledger.js.map +1 -1
  79. package/dist/execution/project-spend.d.ts.map +1 -1
  80. package/dist/execution/project-spend.js +9 -6
  81. package/dist/execution/project-spend.js.map +1 -1
  82. package/dist/execution/writer-recovery.d.ts.map +1 -1
  83. package/dist/execution/writer-recovery.js +14 -10
  84. package/dist/execution/writer-recovery.js.map +1 -1
  85. package/dist/goals/store.d.ts.map +1 -1
  86. package/dist/goals/store.js +3 -1
  87. package/dist/goals/store.js.map +1 -1
  88. package/dist/index.d.ts +2 -0
  89. package/dist/index.d.ts.map +1 -1
  90. package/dist/index.js +1 -0
  91. package/dist/index.js.map +1 -1
  92. package/dist/judgment/cli.d.ts +20 -0
  93. package/dist/judgment/cli.d.ts.map +1 -0
  94. package/dist/judgment/cli.js +141 -0
  95. package/dist/judgment/cli.js.map +1 -0
  96. package/dist/judgment/evaluate.d.ts +47 -0
  97. package/dist/judgment/evaluate.d.ts.map +1 -0
  98. package/dist/judgment/evaluate.js +369 -0
  99. package/dist/judgment/evaluate.js.map +1 -0
  100. package/dist/judgment/index.d.ts +8 -0
  101. package/dist/judgment/index.d.ts.map +1 -0
  102. package/dist/judgment/index.js +5 -0
  103. package/dist/judgment/index.js.map +1 -0
  104. package/dist/judgment/policy.d.ts +61 -0
  105. package/dist/judgment/policy.d.ts.map +1 -0
  106. package/dist/judgment/policy.js +143 -0
  107. package/dist/judgment/policy.js.map +1 -0
  108. package/dist/judgment/types.d.ts +73 -0
  109. package/dist/judgment/types.d.ts.map +1 -0
  110. package/dist/judgment/types.js +9 -0
  111. package/dist/judgment/types.js.map +1 -0
  112. package/dist/model-detection.d.ts.map +1 -1
  113. package/dist/model-detection.js +40 -7
  114. package/dist/model-detection.js.map +1 -1
  115. package/dist/models/metadata.d.ts +2 -0
  116. package/dist/models/metadata.d.ts.map +1 -1
  117. package/dist/models/metadata.js +2 -2
  118. package/dist/models/metadata.js.map +1 -1
  119. package/dist/orchestration/execution-store.d.ts.map +1 -1
  120. package/dist/orchestration/execution-store.js +14 -3
  121. package/dist/orchestration/execution-store.js.map +1 -1
  122. package/dist/orchestration/store.d.ts.map +1 -1
  123. package/dist/orchestration/store.js +3 -1
  124. package/dist/orchestration/store.js.map +1 -1
  125. package/dist/policy.d.ts +8 -1
  126. package/dist/policy.d.ts.map +1 -1
  127. package/dist/policy.js +74 -5
  128. package/dist/policy.js.map +1 -1
  129. package/dist/providers/anthropic.d.ts.map +1 -1
  130. package/dist/providers/anthropic.js +10 -5
  131. package/dist/providers/anthropic.js.map +1 -1
  132. package/dist/providers/openai.d.ts.map +1 -1
  133. package/dist/providers/openai.js +3 -2
  134. package/dist/providers/openai.js.map +1 -1
  135. package/dist/routing/select.d.ts +7 -0
  136. package/dist/routing/select.d.ts.map +1 -1
  137. package/dist/routing/select.js +18 -1
  138. package/dist/routing/select.js.map +1 -1
  139. package/dist/session-management/files.d.ts.map +1 -1
  140. package/dist/session-management/files.js +9 -6
  141. package/dist/session-management/files.js.map +1 -1
  142. package/dist/sessions/history.d.ts.map +1 -1
  143. package/dist/sessions/history.js +12 -6
  144. package/dist/sessions/history.js.map +1 -1
  145. package/dist/spawning/store.d.ts.map +1 -1
  146. package/dist/spawning/store.js +10 -8
  147. package/dist/spawning/store.js.map +1 -1
  148. package/dist/tools.d.ts.map +1 -1
  149. package/dist/tools.js +5 -2
  150. package/dist/tools.js.map +1 -1
  151. package/dist/types.js +1 -1
  152. package/dist/ui/agent.d.ts.map +1 -1
  153. package/dist/ui/agent.js +3 -2
  154. package/dist/ui/agent.js.map +1 -1
  155. package/dist/ui/commands.d.ts.map +1 -1
  156. package/dist/ui/commands.js +20 -12
  157. package/dist/ui/commands.js.map +1 -1
  158. package/dist/ui/model-commands.d.ts.map +1 -1
  159. package/dist/ui/model-commands.js +3 -2
  160. package/dist/ui/model-commands.js.map +1 -1
  161. package/package.json +5 -5
package/dist/brain/cli.js CHANGED
@@ -8,9 +8,10 @@ import { OrchestrationError } from '../orchestration/types.js';
8
8
  import { BrainError } from './types.js';
9
9
  import { initBrain, ingestBrainFile, noteBrain, editBrain, editBrainEdge, linkBrain, reverseBrain, reindexBrain, refreshBrain, } from './actions.js';
10
10
  import { queryBrain } from './queries.js';
11
- import { exportBrain, exportKnowledgeGraphFile, importBrain, importKnowledgeGraph } from './transfer.js';
11
+ import { exportBrain, exportKnowledgeGraphFile, importBrain, importKnowledgeGraph, } from './transfer.js';
12
+ import { BrainTransferError } from './transfer-report.js';
12
13
  import { ingestBrainRun } from './run-ingest.js';
13
- export const BRAIN_USAGE = 'calliope brain init|status|ingest <path>|ingest-run <id>|search <query>|entity <id/name>|neighbors <id/name>|path <from> <to>|graph [root]|decisions|risks|history|export [path] [--kg]|import <path>|note <name> <text>|edit <id/name>|edit-edge <id>|link <from> <to> <type> --source <id>|reverse <event> --reason <text>|refresh|reindex [--global] [--allow-mutations] [--json]';
14
+ export const BRAIN_USAGE = 'calliope brain init|status|ingest <path>|ingest-run <id>|search <query>|entity <id/name>|neighbors <id/name>|path <from> <to>|graph [root]|decisions|risks|history|export [path] [--kg --exchange --manifest <path> --preview --allow-loss]|import <path> [--kg --origin <id> --preview --allow-loss --reconcile-revision <revision>]|note <name> <text>|edit <id/name>|edit-edge <id>|link <from> <to> <type> --source <id>|reverse <event> --reason <text>|refresh|reindex [--global] [--allow-mutations] [--json]';
14
15
  export function brainReceipt(result) {
15
16
  const { journal, state, ...extra } = result;
16
17
  return {
@@ -49,6 +50,12 @@ export async function runBrainCommand(args, options = {}) {
49
50
  state: { type: 'string' },
50
51
  confidence: { type: 'string' },
51
52
  kg: { type: 'boolean' },
53
+ preview: { type: 'boolean' },
54
+ 'allow-loss': { type: 'boolean' },
55
+ origin: { type: 'string' },
56
+ 'reconcile-revision': { type: 'string' },
57
+ exchange: { type: 'boolean' },
58
+ manifest: { type: 'string' },
52
59
  },
53
60
  });
54
61
  json = !!v.json;
@@ -92,6 +99,12 @@ export async function runBrainCommand(args, options = {}) {
92
99
  state: ['edit', 'edit-edge'],
93
100
  confidence: ['edit', 'edit-edge'],
94
101
  kg: ['export', 'import'],
102
+ preview: ['export', 'import'],
103
+ 'allow-loss': ['export', 'import'],
104
+ origin: ['import'],
105
+ 'reconcile-revision': ['import'],
106
+ exchange: ['export'],
107
+ manifest: ['export'],
95
108
  };
96
109
  for (const [flag, actions] of Object.entries(allowed))
97
110
  if (v[flag] !== undefined && !actions.includes(action))
@@ -99,11 +112,21 @@ export async function runBrainCommand(args, options = {}) {
99
112
  if ((['edit', 'edit-edge', 'reverse'].includes(action) && !v.reason) ||
100
113
  (action === 'link' && !v.source))
101
114
  throw new BrainError('invalid', BRAIN_USAGE);
115
+ if (!v.kg &&
116
+ (['allow-loss', 'origin', 'reconcile-revision'].some((flag) => v[flag] !== undefined) ||
117
+ (action === 'import' && v.preview)))
118
+ throw new BrainError('invalid', 'Projection review flags require --kg; native import validates and stages its journal claims directly.');
102
119
  const opts = {
103
120
  ...options,
104
121
  scope: v.global ? 'global' : options.scope,
105
122
  confirmation: v['allow-mutations'] ? 'none' : (options.confirmation ?? 'mutating'),
106
123
  ...(v['allow-mutations'] ? { approve: async () => 'allow' } : {}),
124
+ preview: v.preview,
125
+ allowLoss: v['allow-loss'],
126
+ origin: v.origin,
127
+ reconcileRevision: v['reconcile-revision'],
128
+ exchange: v.exchange,
129
+ manifestPath: v.manifest,
107
130
  };
108
131
  let result;
109
132
  switch (action) {
@@ -168,7 +191,13 @@ export async function runBrainCommand(args, options = {}) {
168
191
  }, opts);
169
192
  }
170
193
  if (json)
171
- emit({ version: 1, type: 'brain', action, localOnly: true, data: result });
194
+ emit({
195
+ version: 1,
196
+ type: 'brain',
197
+ action,
198
+ localOnly: true,
199
+ data: result,
200
+ });
172
201
  else
173
202
  write(approvalDisplayText(brainLines(action, result).join('\n')) + '\n');
174
203
  return 0;
@@ -197,9 +226,22 @@ export async function runBrainCommand(args, options = {}) {
197
226
  ? BRAIN_USAGE
198
227
  : 'Brain operation failed; preserve its history and inspect paths, permissions and available storage.';
199
228
  if (json)
200
- emit({ version: 1, type: 'brain', action, localOnly: true, error: { code, message } });
201
- else
229
+ emit({
230
+ version: 1,
231
+ type: 'brain',
232
+ action,
233
+ localOnly: true,
234
+ error: {
235
+ code,
236
+ message,
237
+ ...(error instanceof BrainTransferError ? { report: error.report } : {}),
238
+ },
239
+ });
240
+ else {
202
241
  write(message + '\n');
242
+ if (error instanceof BrainTransferError)
243
+ write(approvalDisplayText(brainLines(action, { report: error.report }).join('\n')) + '\n');
244
+ }
203
245
  return cancelled ? 130 : denied ? 3 : code === 'invalid' ? 2 : 1;
204
246
  }
205
247
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/brain/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/brain/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare function canonicalExchangeJson(value: unknown): string;
2
+ /** Native syntax parser plus a key-token pass, because JSON.parse overwrites duplicates. */
3
+ export declare function parseExchangeJson(text: string): unknown;
4
+ //# sourceMappingURL=exchange-json.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exchange-json.d.ts","sourceRoot":"","sources":["../../src/brain/exchange-json.ts"],"names":[],"mappings":"AAKA,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAuC5D;AAED,4FAA4F;AAC5F,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAiCvD"}
@@ -0,0 +1,77 @@
1
+ /** RFC 8785 serialization with bounded depth, finite numbers and safe integers.
2
+ * Emit object members directly: JSON.stringify(object) reorders integer keys.
3
+ */
4
+ import { BrainError } from './types.js';
5
+ export function canonicalExchangeJson(value) {
6
+ let count = 0;
7
+ const visit = (item, depth) => {
8
+ if (++count > 100000 || depth > 32)
9
+ throw new BrainError('limit', 'Exchange JSON exceeds its structural limits.');
10
+ if (item === null || typeof item === 'boolean')
11
+ return JSON.stringify(item);
12
+ if (typeof item === 'number') {
13
+ if (!Number.isFinite(item) || (Number.isInteger(item) && !Number.isSafeInteger(item)))
14
+ throw new BrainError('invalid', 'Exchange numbers must be finite; large exact integers must be strings.');
15
+ return JSON.stringify(item);
16
+ }
17
+ if (typeof item === 'string') {
18
+ if (/[\uD800-\uDFFF]/u.test(item))
19
+ throw new BrainError('invalid', 'Exchange JSON contains invalid Unicode.');
20
+ return JSON.stringify(item);
21
+ }
22
+ if (Array.isArray(item))
23
+ return '[' + Array.from(item, (child) => visit(child, depth + 1)).join(',') + ']';
24
+ if (!item || typeof item !== 'object' || Object.getPrototypeOf(item) !== Object.prototype)
25
+ throw new BrainError('invalid', 'Exchange requires plain JSON values.');
26
+ return ('{' +
27
+ Object.keys(item)
28
+ .sort()
29
+ .map((key) => visit(key, depth + 1) + ':' + visit(item[key], depth + 1))
30
+ .join(',') +
31
+ '}');
32
+ };
33
+ const output = visit(value, 0);
34
+ if (Buffer.byteLength(output) > 16 * 1024 * 1024)
35
+ throw new BrainError('limit', 'Exchange JSON exceeds 16 MiB.');
36
+ return output;
37
+ }
38
+ /** Native syntax parser plus a key-token pass, because JSON.parse overwrites duplicates. */
39
+ export function parseExchangeJson(text) {
40
+ if (Buffer.byteLength(text) > 16 * 1024 * 1024)
41
+ throw new BrainError('limit', 'Exchange JSON exceeds 16 MiB.');
42
+ let value;
43
+ try {
44
+ value = JSON.parse(text);
45
+ }
46
+ catch {
47
+ throw new BrainError('invalid', 'Knowledge exchange must be JSON.');
48
+ }
49
+ const stack = [];
50
+ for (const match of text.matchAll(/"(?:\\.|[^"\\])*"|[{}\[\]:,]/g)) {
51
+ const token = match[0], parent = stack.at(-1);
52
+ if (token === '{' || token === '[') {
53
+ stack.push({
54
+ keys: token === '{' ? new Set() : null,
55
+ expectingKey: token === '{',
56
+ });
57
+ if (stack.length > 32)
58
+ throw new BrainError('limit', 'Exchange JSON exceeds its structural limits.');
59
+ }
60
+ else if (token === '}' || token === ']')
61
+ stack.pop();
62
+ else if (token === ',') {
63
+ if (parent?.keys)
64
+ parent.expectingKey = true;
65
+ }
66
+ else if (token.startsWith('"') && parent?.keys && parent.expectingKey) {
67
+ const key = JSON.parse(token);
68
+ if (parent.keys.has(key))
69
+ throw new BrainError('invalid', 'Duplicate exchange JSON property.');
70
+ parent.keys.add(key);
71
+ parent.expectingKey = false;
72
+ }
73
+ }
74
+ canonicalExchangeJson(value);
75
+ return value;
76
+ }
77
+ //# sourceMappingURL=exchange-json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exchange-json.js","sourceRoot":"","sources":["../../src/brain/exchange-json.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import type { BrainOptions } from './access.js';
2
+ import { type PortableKnowledgeGraph } from './kg.js';
3
+ export interface BrainTransferOptions extends BrainOptions {
4
+ allowLoss?: boolean;
5
+ preview?: boolean;
6
+ origin?: string;
7
+ manifestPath?: string;
8
+ exchange?: boolean;
9
+ reconcileRevision?: string;
10
+ }
11
+ export interface ExchangeArchive {
12
+ format: 'brain-exchange/v2';
13
+ sourceFormat: PortableKnowledgeGraph['format'] | 'compiled-brain/v1' | 'calliope.brain/v1';
14
+ origin: {
15
+ id: string;
16
+ revision: string;
17
+ };
18
+ manifest: Record<string, unknown> | null;
19
+ payload: Record<string, unknown>;
20
+ sha256: string;
21
+ }
22
+ export declare function makeExchange(payload: Record<string, unknown>, origin: ExchangeArchive['origin'], manifest?: ExchangeArchive['manifest']): ExchangeArchive;
23
+ export declare function parseExchangeArchive(value: unknown): ExchangeArchive;
24
+ export declare function compiledGraph(value: Record<string, unknown>): PortableKnowledgeGraph;
25
+ export declare function archiveGraph(archive: ExchangeArchive): PortableKnowledgeGraph;
26
+ //# sourceMappingURL=exchange.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exchange.d.ts","sourceRoot":"","sources":["../../src/brain/exchange.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAuB,KAAK,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAI3E,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACxD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AACD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,YAAY,EAAE,sBAAsB,CAAC,QAAQ,CAAC,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;IAC3F,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACzC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACzC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC;CAChB;AAuBD,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,EACjC,QAAQ,GAAE,eAAe,CAAC,UAAU,CAAQ,GAC3C,eAAe,CAiBjB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,CAgBpE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,sBAAsB,CAsBpF;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,eAAe,GAAG,sBAAsB,CAS7E"}
@@ -0,0 +1,86 @@
1
+ /** The shared archive is transport metadata, not a journal or permission grant. */
2
+ import { digest } from '../approvals/index.js';
3
+ import { canonicalExchangeJson } from './exchange-json.js';
4
+ import { parseKnowledgeGraph } from './kg.js';
5
+ import { BrainError } from './types.js';
6
+ import { hash, obj, shape, text } from './validation.js';
7
+ function sourceFormat(value) {
8
+ if (!obj(value))
9
+ throw new BrainError('invalid', 'Exchange payload must be an object.');
10
+ if (value.format === 'calliope-kg/v1' || value.format === 'conflict-kg/v1') {
11
+ parseKnowledgeGraph(value);
12
+ return value.format;
13
+ }
14
+ if ('format' in value)
15
+ throw new BrainError('invalid', 'Unsupported exchange payload format.');
16
+ if (value.kind === 'calliope.brain' &&
17
+ value.version === 1 &&
18
+ obj(value.journal) &&
19
+ value.journal.version === 1)
20
+ return 'calliope.brain/v1'; // Native replay remains required at import.
21
+ if (obj(value.meta) && value.meta.version === '1') {
22
+ compiledGraph(value);
23
+ return 'compiled-brain/v1'; // Destination ontology semantics are not inferred.
24
+ }
25
+ throw new BrainError('invalid', 'Unsupported exchange payload version.');
26
+ }
27
+ export function makeExchange(payload, origin, manifest = null) {
28
+ shape(origin, ['id', 'revision']);
29
+ text(origin.id, 512);
30
+ text(origin.revision, 512);
31
+ if (manifest !== null && !obj(manifest))
32
+ throw new BrainError('invalid', 'Exchange manifest must be an object or null.');
33
+ const body = {
34
+ format: 'brain-exchange/v2',
35
+ sourceFormat: sourceFormat(payload),
36
+ origin,
37
+ manifest,
38
+ payload,
39
+ };
40
+ return structuredClone({
41
+ ...body,
42
+ sha256: digest(canonicalExchangeJson(body)),
43
+ });
44
+ }
45
+ export function parseExchangeArchive(value) {
46
+ shape(value, ['format', 'sourceFormat', 'origin', 'manifest', 'payload', 'sha256']);
47
+ if (value.format !== 'brain-exchange/v2')
48
+ throw new BrainError('invalid', 'CLI exchange requires brain-exchange/v2; validate/unpack v1 with the core and explicitly repack as v2.');
49
+ if (!hash(value.sha256))
50
+ throw new BrainError('invalid', 'Invalid exchange digest.');
51
+ const expected = makeExchange(value.payload, value.origin, value.manifest);
52
+ if (canonicalExchangeJson(expected) !== canonicalExchangeJson(value))
53
+ throw new BrainError('invalid', 'Exchange digest or source format mismatch.');
54
+ return expected;
55
+ }
56
+ export function compiledGraph(value) {
57
+ if (!obj(value.meta) ||
58
+ value.meta.version !== '1' ||
59
+ !Array.isArray(value.nodes) ||
60
+ !Array.isArray(value.edges))
61
+ throw new BrainError('invalid', 'Unsupported compiled brain envelope.');
62
+ const nodes = value.nodes.map((raw) => {
63
+ if (!obj(raw))
64
+ throw new BrainError('invalid', 'Compiled node must be an object.');
65
+ if ('data' in raw && !obj(raw.data))
66
+ throw new BrainError('invalid', 'Compiled node data must be an object.');
67
+ const { id, kind, ...props } = raw;
68
+ const name = raw.title || raw.text || id;
69
+ return { id, name, type: kind, props };
70
+ });
71
+ const edges = value.edges.map((raw) => {
72
+ if (!obj(raw))
73
+ throw new BrainError('invalid', 'Compiled edge must be an object.');
74
+ const { source, target, rel, ...props } = raw;
75
+ return { source, target, type: rel, props };
76
+ });
77
+ return parseKnowledgeGraph({ format: 'conflict-kg/v1', nodes, edges });
78
+ }
79
+ export function archiveGraph(archive) {
80
+ if (archive.sourceFormat === 'calliope.brain/v1')
81
+ throw new BrainError('invalid', 'Use native brain import for journal archives; graph projection cannot replay history.');
82
+ return archive.sourceFormat === 'compiled-brain/v1'
83
+ ? compiledGraph(archive.payload)
84
+ : parseKnowledgeGraph(archive.payload);
85
+ }
86
+ //# sourceMappingURL=exchange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exchange.js","sourceRoot":"","sources":["../../src/brain/exchange.ts"],"names":[],"mappings":"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"}
@@ -13,4 +13,7 @@ export * from './cli.js';
13
13
  export * from './presentation.js';
14
14
  export * from './tools.js';
15
15
  export * from './tool-query.js';
16
+ export * from './exchange-json.js';
17
+ export * from './exchange.js';
18
+ export * from './transfer-report.js';
16
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/brain/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/brain/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC"}
@@ -13,4 +13,7 @@ export * from './cli.js';
13
13
  export * from './presentation.js';
14
14
  export * from './tools.js';
15
15
  export * from './tool-query.js';
16
+ export * from './exchange-json.js';
17
+ export * from './exchange.js';
18
+ export * from './transfer-report.js';
16
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/brain/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/brain/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC"}
@@ -1,13 +1,13 @@
1
1
  import { canonicalJson, digest } from '../approvals/index.js';
2
2
  import { throwIfCancelled } from '../cancellation.js';
3
3
  import { BrainError, BRAIN_LIMITS, } from './types.js';
4
- import { shape, uuid, hash, iso, text, change, invalid } from './validation.js';
4
+ import { shape, uuid, hash, iso, text, change, invalid, enumValue } from './validation.js';
5
5
  export function validateHeader(value) {
6
6
  shape(value, ['version', 'id', 'scope', 'project', 'createdAt']);
7
7
  if (value.version !== 1 ||
8
8
  !uuid(value.id) ||
9
9
  !iso(value.createdAt) ||
10
- !['project', 'global'].includes(String(value.scope)))
10
+ !enumValue(value.scope, ['project', 'global']))
11
11
  invalid();
12
12
  if (value.scope === 'global') {
13
13
  if (value.project !== null)
@@ -45,7 +45,7 @@ export function validateEvent(value) {
45
45
  !iso(value.at) ||
46
46
  !hash(value.previous) ||
47
47
  !hash(value.hash) ||
48
- !['human', 'ingest', 'run', 'import', 'reversal'].includes(String(value.actor)) ||
48
+ !enumValue(value.actor, ['human', 'ingest', 'run', 'import', 'reversal']) ||
49
49
  (value.reverses !== null && !uuid(value.reverses)))
50
50
  invalid();
51
51
  text(value.reason, 4096);
@@ -1 +1 @@
1
- {"version":3,"file":"journal.js","sourceRoot":"","sources":["../../src/brain/journal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"journal.js","sourceRoot":"","sources":["../../src/brain/journal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { type PortableKnowledgeGraph, type PortableKgNode, type PortableKgEdge } from './kg.js';
2
+ import type { ExchangeArchive } from './exchange.js';
3
+ import type { TransferLoss } from './transfer-report.js';
4
+ import { type EntityInput, type EdgeInput, type SourceInput } from './types.js';
5
+ export declare function graphOrigin(graph: PortableKnowledgeGraph, archive?: ExchangeArchive, explicit?: string): {
6
+ id: string;
7
+ revision: string;
8
+ };
9
+ export declare const graphNamespace: (origin: string, kind: 'entity' | 'edge', id: string) => string;
10
+ export declare function edgeIdentities(graph: PortableKnowledgeGraph): string[];
11
+ export declare function claimSource(value: unknown, locator: SourceInput['locator'], losses: TransferLoss[]): SourceInput;
12
+ export declare function projectClaim(kind: 'entity' | 'edge', externalId: string, record: PortableKgNode | PortableKgEdge, origin: string, sourceIds: string[], losses: TransferLoss[]): EntityInput | EdgeInput;
13
+ //# sourceMappingURL=kg-claims.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kg-claims.d.ts","sourceRoot":"","sources":["../../src/brain/kg-claims.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAGL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,WAAW,EACjB,MAAM,YAAY,CAAC;AAGpB,wBAAgB,WAAW,CACzB,KAAK,EAAE,sBAAsB,EAC7B,OAAO,CAAC,EAAE,eAAe,EACzB,QAAQ,CAAC,EAAE,MAAM;;;EAgClB;AAED,eAAO,MAAM,cAAc,WAAY,MAAM,QAAQ,QAAQ,GAAG,MAAM,MAAM,MAAM,WAChB,CAAC;AAEnE,wBAAgB,cAAc,CAAC,KAAK,EAAE,sBAAsB,GAAG,MAAM,EAAE,CAqBtE;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,EAC/B,MAAM,EAAE,YAAY,EAAE,GACrB,WAAW,CA0Bb;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,EACvB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,cAAc,GAAG,cAAc,EACvC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EAAE,EACnB,MAAM,EAAE,YAAY,EAAE,GACrB,WAAW,GAAG,SAAS,CAwHzB"}