@askdkc/kiokuko 0.1.29 → 0.1.30

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.
@@ -1,100 +1,360 @@
1
+ import { readRunIntakeLink } from '../akinator/store.js';
1
2
  import { KiokukoError } from '../errors.js';
2
- import { readEntryRevision } from '../memory/revisions.js';
3
- import { readContextDelivery, } from './delivery.js';
4
- const LEGACY_SCOPED_POLICY_VERSIONS = ['context-ranking-v2', 'context-ranking-v3'];
5
- const MAX_DELIVERIES = 100_000;
6
- function migrationIntegrity() {
7
- throw new KiokukoError('INTEGRITY_ERROR', 'Stored context delivery cannot be migrated safely');
3
+ import { canonicalJson } from '../serialization/validate.js';
4
+ import { CONTEXT_RANKING_COMPONENTS_V2, CONTEXT_SELECTION_REASON_ORDER, } from './ranking.js';
5
+ import { entryOriginMatchesWorkspace, isContextEntryOrigin, } from './origin.js';
6
+ import { legacyScopedDeliveryId, readContextDelivery, } from './delivery.js';
7
+ export const LEGACY_SCOPED_POLICY_VERSIONS = ['context-ranking-v2', 'context-ranking-v3'];
8
+ export const MAX_DELIVERIES = 100_000;
9
+ export const MAX_FINDINGS = 100;
10
+ export const LEGACY_DELIVERY_INSPECTION_STAGES = [
11
+ 'legacy-delivery-row',
12
+ 'legacy-delivery-read',
13
+ 'legacy-delivery-policy',
14
+ 'legacy-delivery-identity',
15
+ 'legacy-delivery-run-binding',
16
+ 'legacy-delivery-profile-binding',
17
+ 'legacy-delivery-entry-revision',
18
+ 'legacy-delivery-entry-rank',
19
+ 'legacy-delivery-entry-score',
20
+ 'legacy-delivery-entry-reasons',
21
+ 'legacy-delivery-entry-origin',
22
+ 'legacy-delivery-character-range',
23
+ ];
24
+ const MAX_IDENTIFIER_BYTES = 256;
25
+ const MAX_ITEMS = 100;
26
+ const MAX_SCORE_COMPONENT = 1_000_000;
27
+ const MAX_CHAR_BUDGET = 100_000;
28
+ const MAX_STORED_JSON_BYTES = 1_000_000;
29
+ function safeIdentifier(value) {
30
+ return typeof value === 'string'
31
+ && value.length > 0
32
+ && !/[\p{C}]/u.test(value)
33
+ && Buffer.byteLength(value, 'utf8') <= MAX_IDENTIFIER_BYTES;
34
+ }
35
+ function safePolicyVersion(value) {
36
+ return safeIdentifier(value);
37
+ }
38
+ function safeDiagnosticString(value) {
39
+ return safeIdentifier(value) ? value : undefined;
40
+ }
41
+ function safeInteger(value, minimum = 0) {
42
+ return typeof value === 'number' && Number.isSafeInteger(value) && value >= minimum;
43
+ }
44
+ function safeHash(value) {
45
+ return typeof value === 'string' && /^[0-9a-f]{64}$/u.test(value);
46
+ }
47
+ function safeStoredJson(value) {
48
+ if (typeof value !== 'string' || Buffer.byteLength(value, 'utf8') > MAX_STORED_JSON_BYTES)
49
+ return undefined;
50
+ try {
51
+ const parsed = JSON.parse(value);
52
+ return canonicalJson(parsed) === value ? parsed : undefined;
53
+ }
54
+ catch {
55
+ return undefined;
56
+ }
57
+ }
58
+ function isPlainObject(value) {
59
+ if (typeof value !== 'object' || value === null || Array.isArray(value))
60
+ return false;
61
+ const prototype = Object.getPrototypeOf(value);
62
+ return prototype === Object.prototype || prototype === null;
63
+ }
64
+ function validStoredScore(value) {
65
+ const parsed = safeStoredJson(value);
66
+ if (!isPlainObject(parsed))
67
+ return false;
68
+ const keys = Object.keys(parsed);
69
+ if (keys.length !== CONTEXT_RANKING_COMPONENTS_V2.length
70
+ || CONTEXT_RANKING_COMPONENTS_V2.some((component) => !Object.hasOwn(parsed, component)))
71
+ return false;
72
+ return CONTEXT_RANKING_COMPONENTS_V2.every((component) => {
73
+ const score = parsed[component];
74
+ return typeof score === 'number'
75
+ && Number.isSafeInteger(score)
76
+ && Number.isFinite(score)
77
+ && score >= -MAX_SCORE_COMPONENT
78
+ && score <= MAX_SCORE_COMPONENT;
79
+ });
80
+ }
81
+ function validStoredReasons(value) {
82
+ const parsed = safeStoredJson(value);
83
+ if (!Array.isArray(parsed) || parsed.length === 0)
84
+ return false;
85
+ let previousIndex = -1;
86
+ for (const reason of parsed) {
87
+ if (typeof reason !== 'string')
88
+ return false;
89
+ const index = CONTEXT_SELECTION_REASON_ORDER.indexOf(reason);
90
+ if (index < 0 || index <= previousIndex)
91
+ return false;
92
+ previousIndex = index;
93
+ }
94
+ return true;
95
+ }
96
+ function migrationIntegrity(metadata, stage, causeCode = 'INTEGRITY_ERROR') {
97
+ const details = { stage, causeCode };
98
+ if (metadata.deliveryId !== undefined)
99
+ details.deliveryId = metadata.deliveryId;
100
+ if (metadata.runId !== undefined)
101
+ details.runId = metadata.runId;
102
+ if (metadata.policyVersion !== undefined)
103
+ details.policyVersion = metadata.policyVersion;
104
+ throw new KiokukoError('INTEGRITY_ERROR', 'Stored legacy context delivery is invalid', details);
105
+ }
106
+ function errorCode(error) {
107
+ if (!(error instanceof KiokukoError))
108
+ return 'INTEGRITY_ERROR';
109
+ return safeDiagnosticString(error.details.causeCode) ?? error.code;
110
+ }
111
+ function metadataFromRow(row) {
112
+ return {
113
+ ...(safeDiagnosticString(row.delivery_id) === undefined ? {} : { deliveryId: row.delivery_id }),
114
+ ...(safeDiagnosticString(row.run_id) === undefined ? {} : { runId: row.run_id }),
115
+ ...(safePolicyVersion(row.policy_version) === undefined ? {} : { policyVersion: row.policy_version }),
116
+ };
117
+ }
118
+ function metadataFromHeader(header) {
119
+ return {
120
+ ...(safeDiagnosticString(header.delivery_id) === undefined ? {} : { deliveryId: header.delivery_id }),
121
+ ...(safeDiagnosticString(header.run_id) === undefined ? {} : { runId: header.run_id }),
122
+ ...(safePolicyVersion(header.policy_version) === undefined ? {} : { policyVersion: header.policy_version }),
123
+ };
8
124
  }
9
125
  function deliveryRows(database) {
10
126
  const placeholders = LEGACY_SCOPED_POLICY_VERSIONS.map(() => '?').join(', ');
11
127
  const rows = database.prepare(`
12
- SELECT cd.delivery_id, lr.workspace AS run_workspace
128
+ SELECT cd.delivery_id, cd.run_id, cd.policy_version, cd.score_schema_version,
129
+ lr.workspace AS run_workspace
13
130
  FROM context_deliveries AS cd
14
131
  LEFT JOIN ledger_runs AS lr ON lr.run_id = cd.run_id
15
- WHERE cd.score_schema_version = 2
16
- AND cd.policy_version IN (${placeholders})
132
+ WHERE cd.policy_version IN (${placeholders})
17
133
  ORDER BY cd.delivery_id ASC
18
134
  LIMIT ?
19
135
  `).all(...LEGACY_SCOPED_POLICY_VERSIONS, MAX_DELIVERIES + 1);
20
- if (rows.length > MAX_DELIVERIES)
21
- migrationIntegrity();
22
- return rows;
136
+ return {
137
+ rows: rows.slice(0, MAX_DELIVERIES),
138
+ scanTruncated: rows.length > MAX_DELIVERIES,
139
+ };
23
140
  }
24
- function readLegacyDelivery(database, row) {
25
- if (typeof row.delivery_id !== 'string' || row.delivery_id.length === 0
26
- || typeof row.run_workspace !== 'string' || row.run_workspace.length === 0)
27
- migrationIntegrity();
141
+ function selectLegacyDeliveryHeader(database, deliveryId) {
142
+ return database.prepare(`
143
+ SELECT cd.delivery_id, cd.run_id, cd.through_sequence, cd.intake_session_id,
144
+ cd.task_profile_hash, cd.query_hash, cd.policy_version,
145
+ cd.char_budget, cd.char_count, cd.truncated, cd.created_at,
146
+ cd.score_schema_version, lr.workspace AS run_workspace,
147
+ lr.last_sequence AS run_last_sequence
148
+ FROM context_deliveries AS cd
149
+ LEFT JOIN ledger_runs AS lr ON lr.run_id = cd.run_id
150
+ WHERE cd.delivery_id = ?
151
+ `).get(deliveryId);
152
+ }
153
+ function selectLegacyDeliveryEntries(database, deliveryId) {
154
+ return database.prepare(`
155
+ SELECT cde.delivery_id, cde.entry_id, cde.entry_revision, cde.rank,
156
+ cde.score_components_json, cde.selection_reason_json, cde.origin_scope,
157
+ e.workspace AS entry_workspace, r.entry_id AS revision_entry_id,
158
+ r.workspace AS revision_workspace
159
+ FROM context_delivery_entries AS cde
160
+ LEFT JOIN entry_revisions AS r
161
+ ON r.entry_id = cde.entry_id AND r.revision = cde.entry_revision
162
+ LEFT JOIN entries AS e ON e.id = cde.entry_id
163
+ WHERE cde.delivery_id = ?
164
+ ORDER BY cde.rank ASC, cde.entry_id ASC
165
+ `).all(deliveryId);
166
+ }
167
+ function headerStage(row, header) {
168
+ if (!safeIdentifier(header.delivery_id)
169
+ || !safeIdentifier(header.run_id)
170
+ || !safeIdentifier(header.run_workspace)
171
+ || header.delivery_id !== row.delivery_id
172
+ || header.run_id !== row.run_id
173
+ || header.run_workspace !== row.run_workspace)
174
+ return 'legacy-delivery-run-binding';
175
+ if (!LEGACY_SCOPED_POLICY_VERSIONS.includes(header.policy_version)
176
+ || header.score_schema_version !== 2)
177
+ return 'legacy-delivery-policy';
178
+ if (!safeInteger(header.run_last_sequence)
179
+ || !safeInteger(header.through_sequence)
180
+ || header.through_sequence > header.run_last_sequence)
181
+ return 'legacy-delivery-run-binding';
182
+ if (!safeHash(header.task_profile_hash) || !safeHash(header.query_hash))
183
+ return 'legacy-delivery-row';
184
+ if (header.intake_session_id !== null && !safeIdentifier(header.intake_session_id))
185
+ return 'legacy-delivery-profile-binding';
186
+ if (!safeInteger(header.char_budget, 1) || header.char_budget > MAX_CHAR_BUDGET
187
+ || !safeInteger(header.char_count) || header.char_count > header.char_budget) {
188
+ return 'legacy-delivery-character-range';
189
+ }
190
+ if (header.truncated !== 0 && header.truncated !== 1)
191
+ return 'legacy-delivery-row';
192
+ if (typeof header.created_at !== 'string'
193
+ || !/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/u.test(header.created_at))
194
+ return 'legacy-delivery-row';
195
+ return undefined;
196
+ }
197
+ function legacyBindingIsValid(database, header) {
198
+ if (!safeIdentifier(header.run_id) || !safeIdentifier(header.run_workspace))
199
+ return false;
200
+ if (header.intake_session_id === null)
201
+ return true;
28
202
  try {
29
- return readContextDelivery(database, { workspace: row.run_workspace, deliveryId: row.delivery_id });
203
+ const link = readRunIntakeLink(database, { workspace: header.run_workspace, runId: header.run_id });
204
+ return link.workspace === header.run_workspace && link.sessionId === header.intake_session_id;
30
205
  }
31
206
  catch {
32
- migrationIntegrity();
207
+ return false;
33
208
  }
34
209
  }
35
- function readDeliveredRevision(database, delivery, item) {
36
- const entry = database.prepare('SELECT workspace FROM entries WHERE id = ?').get(item.entryId);
37
- if (typeof entry?.workspace !== 'string' || entry.workspace.length === 0)
38
- migrationIntegrity();
39
- try {
40
- const revision = readEntryRevision(database, {
41
- entryId: item.entryId,
42
- workspace: entry.workspace,
43
- revision: item.entryRevision,
44
- });
45
- if (revision.workspace !== entry.workspace || revision.revision !== item.entryRevision)
46
- migrationIntegrity();
47
- return { title: revision.title, summary: revision.summary, body: revision.body };
210
+ function entryStage(database, header) {
211
+ if (!safeIdentifier(header.run_workspace) || !safeIdentifier(header.delivery_id)) {
212
+ return 'legacy-delivery-run-binding';
48
213
  }
49
- catch {
50
- migrationIntegrity();
214
+ const rows = selectLegacyDeliveryEntries(database, header.delivery_id);
215
+ if (rows.length > MAX_ITEMS)
216
+ return 'legacy-delivery-entry-rank';
217
+ let expectedRank = 1;
218
+ for (const row of rows) {
219
+ if (row.delivery_id !== header.delivery_id
220
+ || !safeIdentifier(row.entry_id)
221
+ || row.revision_entry_id !== row.entry_id
222
+ || !safeIdentifier(row.entry_workspace)
223
+ || !safeIdentifier(row.revision_workspace)
224
+ || !safeInteger(row.entry_revision, 1)
225
+ || row.revision_workspace !== row.entry_workspace)
226
+ return 'legacy-delivery-entry-revision';
227
+ const origin = isContextEntryOrigin(row.origin_scope) ? row.origin_scope : undefined;
228
+ if (origin === undefined
229
+ || !entryOriginMatchesWorkspace({
230
+ origin,
231
+ runWorkspace: header.run_workspace,
232
+ entryWorkspace: row.entry_workspace,
233
+ }))
234
+ return 'legacy-delivery-entry-origin';
235
+ if (row.rank !== expectedRank || !safeInteger(row.rank, 1))
236
+ return 'legacy-delivery-entry-rank';
237
+ expectedRank += 1;
238
+ if (!validStoredScore(row.score_components_json))
239
+ return 'legacy-delivery-entry-score';
240
+ if (!validStoredReasons(row.selection_reason_json))
241
+ return 'legacy-delivery-entry-reasons';
51
242
  }
243
+ return undefined;
52
244
  }
53
- /** Reproduce the released v2/v3 scoped materializer without changing its persisted identity. */
54
- export function storedLegacyScopedItems(database, delivery) {
55
- if (!LEGACY_SCOPED_POLICY_VERSIONS.includes(delivery.policyVersion)) {
56
- migrationIntegrity();
245
+ function diagnosticFailureStage(database, row, header) {
246
+ const rowMetadata = metadataFromRow(row);
247
+ if (rowMetadata.deliveryId === undefined)
248
+ return 'legacy-delivery-row';
249
+ if (!safeIdentifier(row.run_id) || !safeIdentifier(row.run_workspace))
250
+ return 'legacy-delivery-run-binding';
251
+ if (!LEGACY_SCOPED_POLICY_VERSIONS.includes(row.policy_version)
252
+ || row.score_schema_version !== 2)
253
+ return 'legacy-delivery-policy';
254
+ if (header === undefined)
255
+ return 'legacy-delivery-read';
256
+ const headerFailure = headerStage(row, header);
257
+ if (headerFailure !== undefined)
258
+ return headerFailure;
259
+ if (!legacyBindingIsValid(database, header))
260
+ return 'legacy-delivery-profile-binding';
261
+ const entryFailure = entryStage(database, header);
262
+ if (entryFailure !== undefined)
263
+ return entryFailure;
264
+ if (!safeIdentifier(header.run_id) || !safeHash(header.query_hash)
265
+ || header.delivery_id !== legacyScopedDeliveryId({ runId: header.run_id, queryHash: header.query_hash })) {
266
+ return 'legacy-delivery-identity';
57
267
  }
58
- const items = [];
59
- let remaining = delivery.charBudget;
60
- let charCount = 0;
61
- for (const item of delivery.items) {
62
- if (remaining <= 0)
63
- migrationIntegrity();
64
- const revision = readDeliveredRevision(database, delivery, item);
65
- const bodySource = revision.summary ?? revision.body;
66
- const bodyPreview = Array.from(bodySource).slice(0, remaining).join('');
67
- const cost = Array.from(revision.title).length
68
- + Array.from(revision.summary ?? '').length
69
- + bodyPreview.length;
70
- const scoreComponents = item.scoreComponents;
71
- items.push({
72
- entryId: item.entryId,
73
- revision: item.entryRevision,
74
- origin: item.origin ?? 'project',
75
- title: revision.title,
76
- summary: revision.summary,
77
- bodyPreview,
78
- score: Object.values(scoreComponents).reduce((total, component) => total + component, 0),
79
- scoreComponents: { ...scoreComponents },
80
- selectionReasons: [...item.selectionReasons],
81
- metadata: { storedData: true, untrusted: true, instructions: false },
82
- });
83
- charCount += bodyPreview.length;
84
- remaining -= cost;
268
+ return 'legacy-delivery-read';
269
+ }
270
+ function readLegacyDelivery(database, row) {
271
+ const metadata = metadataFromRow(row);
272
+ if (metadata.deliveryId === undefined)
273
+ migrationIntegrity(metadata, 'legacy-delivery-row');
274
+ if (!safeIdentifier(row.run_workspace))
275
+ migrationIntegrity(metadata, 'legacy-delivery-run-binding');
276
+ const header = selectLegacyDeliveryHeader(database, metadata.deliveryId);
277
+ const preliminaryFailure = header === undefined ? 'legacy-delivery-read' : headerStage(row, header);
278
+ if (preliminaryFailure !== undefined)
279
+ migrationIntegrity(metadataFromHeader(header ?? row), preliminaryFailure);
280
+ if (header === undefined || !safeIdentifier(header.run_workspace))
281
+ migrationIntegrity(metadata, 'legacy-delivery-run-binding');
282
+ if (!legacyBindingIsValid(database, header))
283
+ migrationIntegrity(metadataFromHeader(header), 'legacy-delivery-profile-binding');
284
+ const entryFailure = entryStage(database, header);
285
+ if (entryFailure !== undefined)
286
+ migrationIntegrity(metadataFromHeader(header), entryFailure);
287
+ if (!safeIdentifier(header.run_id) || !safeHash(header.query_hash)
288
+ || header.delivery_id !== legacyScopedDeliveryId({ runId: header.run_id, queryHash: header.query_hash })) {
289
+ migrationIntegrity(metadataFromHeader(header), 'legacy-delivery-identity');
290
+ }
291
+ try {
292
+ return readContextDelivery(database, { workspace: header.run_workspace, deliveryId: metadata.deliveryId });
85
293
  }
86
- if (charCount !== delivery.charCount)
87
- migrationIntegrity();
88
- return items;
294
+ catch (error) {
295
+ if (!(error instanceof KiokukoError))
296
+ throw error;
297
+ migrationIntegrity(metadataFromHeader(header), diagnosticFailureStage(database, row, header), errorCode(error));
298
+ }
299
+ }
300
+ /** Validate one released v2/v3 delivery using persisted structure only. */
301
+ export function inspectLegacyContextDelivery(database, row) {
302
+ const delivery = readLegacyDelivery(database, row);
303
+ if (!LEGACY_SCOPED_POLICY_VERSIONS.includes(delivery.policyVersion)
304
+ || delivery.scoreSchemaVersion !== 2) {
305
+ migrationIntegrity(metadataFromRow(row), 'legacy-delivery-policy');
306
+ }
307
+ return {
308
+ deliveryId: delivery.deliveryId,
309
+ runId: delivery.runId,
310
+ policyVersion: delivery.policyVersion,
311
+ };
89
312
  }
90
- function migrateOneDelivery(database, row) {
91
- const legacy = readLegacyDelivery(database, row);
92
- storedLegacyScopedItems(database, legacy);
313
+ /** Inspect all released v2/v3 deliveries without stopping at the first finding. */
314
+ export function inspectLegacyContextDeliveries(database) {
315
+ const loaded = deliveryRows(database);
316
+ let valid = 0;
317
+ let invalid = 0;
318
+ const findings = [];
319
+ for (const row of loaded.rows) {
320
+ try {
321
+ inspectLegacyContextDelivery(database, row);
322
+ valid += 1;
323
+ }
324
+ catch (error) {
325
+ if (!(error instanceof KiokukoError))
326
+ throw error;
327
+ invalid += 1;
328
+ const stage = LEGACY_DELIVERY_INSPECTION_STAGES.includes(error.details.stage)
329
+ ? error.details.stage
330
+ : 'legacy-delivery-read';
331
+ const metadata = metadataFromRow(row);
332
+ if (findings.length < MAX_FINDINGS) {
333
+ findings.push({
334
+ deliveryId: metadata.deliveryId ?? '<invalid>',
335
+ ...(metadata.runId === undefined ? {} : { runId: metadata.runId }),
336
+ ...(metadata.policyVersion === undefined ? {} : { policyVersion: metadata.policyVersion }),
337
+ stage,
338
+ code: errorCode(error),
339
+ });
340
+ }
341
+ }
342
+ }
343
+ return {
344
+ scanned: loaded.rows.length,
345
+ valid,
346
+ invalid,
347
+ findings,
348
+ scanTruncated: loaded.scanTruncated,
349
+ findingsTruncated: invalid > findings.length,
350
+ };
93
351
  }
94
352
  /** Validate released scoped delivery formats inside the caller-owned migration transaction. */
95
353
  export function migrateLegacyContextDeliveries(database) {
96
- const rows = deliveryRows(database);
97
- for (const row of rows)
98
- migrateOneDelivery(database, row);
354
+ const loaded = deliveryRows(database);
355
+ if (loaded.scanTruncated)
356
+ migrationIntegrity({}, 'legacy-delivery-row');
357
+ for (const row of loaded.rows)
358
+ inspectLegacyContextDelivery(database, row);
99
359
  }
100
360
  //# sourceMappingURL=delivery-migration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-migration.js","sourceRoot":"","sources":["../../src/context/delivery-migration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EACL,mBAAmB,GAGpB,MAAM,eAAe,CAAC;AAGvB,MAAM,6BAA6B,GAAG,CAAC,oBAAoB,EAAE,oBAAoB,CAAU,CAAC;AAC5F,MAAM,cAAc,GAAG,OAAO,CAAC;AAO/B,SAAS,kBAAkB;IACzB,MAAM,IAAI,YAAY,CAAC,iBAAiB,EAAE,mDAAmD,CAAC,CAAC;AACjG,CAAC;AAED,SAAS,YAAY,CAAC,QAAwB;IAC5C,MAAM,YAAY,GAAG,6BAA6B,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7E,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC;;;;;mCAKG,YAAY;;;GAG5C,CAAC,CAAC,GAAG,CAAoB,GAAG,6BAA6B,EAAE,cAAc,GAAG,CAAC,CAAC,CAAC;IAChF,IAAI,IAAI,CAAC,MAAM,GAAG,cAAc;QAAE,kBAAkB,EAAE,CAAC;IACvD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAwB,EAAE,GAAsB;IAC1E,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,IAAI,GAAG,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;WAClE,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ,IAAI,GAAG,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC;QAAE,kBAAkB,EAAE,CAAC;IACnG,IAAI,CAAC;QACH,OAAO,mBAAmB,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,aAAa,EAAE,UAAU,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IACtG,CAAC;IAAC,MAAM,CAAC;QACP,kBAAkB,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAwB,EACxB,QAA6B,EAC7B,IAA8B;IAE9B,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC,GAAG,CAAyB,IAAI,CAAC,OAAO,CAAC,CAAC;IACvH,IAAI,OAAO,KAAK,EAAE,SAAS,KAAK,QAAQ,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,kBAAkB,EAAE,CAAC;IAC/F,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,EAAE;YAC3C,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,QAAQ,EAAE,IAAI,CAAC,aAAa;SAC7B,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC,aAAa;YAAE,kBAAkB,EAAE,CAAC;QAC7G,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnF,CAAC;IAAC,MAAM,CAAC;QACP,kBAAkB,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AAED,gGAAgG;AAChG,MAAM,UAAU,uBAAuB,CACrC,QAAwB,EACxB,QAA6B;IAE7B,IAAI,CAAC,6BAA6B,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAA+D,CAAC,EAAE,CAAC;QACtH,kBAAkB,EAAE,CAAC;IACvB,CAAC;IACD,MAAM,KAAK,GAAwB,EAAE,CAAC;IACtC,IAAI,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC;IACpC,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QAClC,IAAI,SAAS,IAAI,CAAC;YAAE,kBAAkB,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjE,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC;QACrD,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxE,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,MAAM;cAC1C,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM;cACzC,WAAW,CAAC,MAAM,CAAC;QACvB,MAAM,eAAe,GAAG,IAAI,CAAC,eAAuD,CAAC;QACrF,KAAK,CAAC,IAAI,CAAC;YACT,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,aAAa;YAC5B,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,SAAS;YAChC,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,WAAW;YACX,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,KAAK,GAAG,SAAS,EAAE,CAAC,CAAC;YACxF,eAAe,EAAE,EAAE,GAAG,eAAe,EAAE;YACvC,gBAAgB,EAAE,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC;YAC5C,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE;SACrE,CAAC,CAAC;QACH,SAAS,IAAI,WAAW,CAAC,MAAM,CAAC;QAChC,SAAS,IAAI,IAAI,CAAC;IACpB,CAAC;IACD,IAAI,SAAS,KAAK,QAAQ,CAAC,SAAS;QAAE,kBAAkB,EAAE,CAAC;IAC3D,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAwB,EAAE,GAAsB;IAC1E,MAAM,MAAM,GAAG,kBAAkB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACjD,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,8BAA8B,CAAC,QAAwB;IACrE,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IACpC,KAAK,MAAM,GAAG,IAAI,IAAI;QAAE,kBAAkB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AAC5D,CAAC"}
1
+ {"version":3,"file":"delivery-migration.js","sourceRoot":"","sources":["../../src/context/delivery-migration.ts"],"names":[],"mappings":"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"}
@@ -53,6 +53,7 @@ export interface ContextDeliveryPage {
53
53
  nextCursor: string | null;
54
54
  }
55
55
  export declare function scopedDeliveryId(input: ContextDeliveryInput): string;
56
+ export declare function legacyScopedDeliveryId(input: Pick<ContextDeliveryInput, 'runId' | 'queryHash'>): string;
56
57
  export declare function recordContextDeliveryInTransaction(database: SqliteDatabase, input: unknown, options?: ContextDeliveryWriteOptions): ContextDeliveryView;
57
58
  export declare function recordContextDelivery(database: SqliteDatabase, input: unknown, options?: ContextDeliveryWriteOptions): ContextDeliveryView;
58
59
  export declare function readContextDelivery(database: SqliteDatabase, input: unknown): ContextDeliveryView;
@@ -1 +1 @@
1
- {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/context/delivery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,kBAAkB,CAAC;AAGlE,OAAO,EAKL,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC/B,MAAM,cAAc,CAAC;AAQtB,OAAO,EAAqD,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAC;AA0BzG,MAAM,MAAM,8BAA8B,GAAG;KAAG,SAAS,IAAI,uBAAuB,GAAG,MAAM;CAAE,CAAC;AAChG,MAAM,MAAM,gCAAgC,GAAG;KAAG,SAAS,IAAI,yBAAyB,GAAG,MAAM;CAAE,CAAC;AACpG,MAAM,MAAM,iCAAiC,GAAG,8BAA8B,GAAG,gCAAgC,CAAC;AAElH,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,iCAAiC,CAAC;IACnD,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,8EAA8E;IAC9E,MAAM,CAAC,EAAE,kBAAkB,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,wBAAwB,EAAE,CAAC;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,uBAAwB,SAAQ,wBAAwB;IACvE,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC;IAC9E,KAAK,EAAE,uBAAuB,EAAE,CAAC;IACjC,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,2BAA2B;IAC1C,2GAA2G;IAC3G,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAudD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,oBAAoB,GAAG,MAAM,CAwBpE;AAgRD,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,2BAAgC,GACxC,mBAAmB,CAQrB;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,2BAAgC,GACxC,mBAAmB,CAQrB;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,GAAG,mBAAmB,CAOjG;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,GAAG,mBAAmB,CA8CnG"}
1
+ {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/context/delivery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,kBAAkB,CAAC;AAGlE,OAAO,EAKL,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC/B,MAAM,cAAc,CAAC;AAQtB,OAAO,EAAqD,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAC;AA2BzG,MAAM,MAAM,8BAA8B,GAAG;KAAG,SAAS,IAAI,uBAAuB,GAAG,MAAM;CAAE,CAAC;AAChG,MAAM,MAAM,gCAAgC,GAAG;KAAG,SAAS,IAAI,yBAAyB,GAAG,MAAM;CAAE,CAAC;AACpG,MAAM,MAAM,iCAAiC,GAAG,8BAA8B,GAAG,gCAAgC,CAAC;AAElH,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,iCAAiC,CAAC;IACnD,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,8EAA8E;IAC9E,MAAM,CAAC,EAAE,kBAAkB,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,wBAAwB,EAAE,CAAC;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,uBAAwB,SAAQ,wBAAwB;IACvE,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC;IAC9E,KAAK,EAAE,uBAAuB,EAAE,CAAC;IACjC,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,2BAA2B;IAC1C,2GAA2G;IAC3G,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAudD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,oBAAoB,GAAG,MAAM,CAwBpE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,oBAAoB,EAAE,OAAO,GAAG,WAAW,CAAC,GAAG,MAAM,CAEvG;AAgSD,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,2BAAgC,GACxC,mBAAmB,CAQrB;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,2BAAgC,GACxC,mBAAmB,CAQrB;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,GAAG,mBAAmB,CAOjG;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,GAAG,mBAAmB,CA8CnG"}
@@ -8,6 +8,7 @@ import { isRetrievableEntry } from '../memory/hybrid-retrieval.js';
8
8
  import { entryOriginMatchesWorkspace, isContextEntryOrigin } from './origin.js';
9
9
  import { RUN_STATUSES } from '../ledger/types.js';
10
10
  import { RECOMMENDATION_POLICY_VERSION } from './recommendations.js';
11
+ import { readRunIntakeLink } from '../akinator/store.js';
11
12
  import { readContextRunProfileBinding } from './run-state.js';
12
13
  const MAX_IDENTIFIER_BYTES = 256;
13
14
  const MAX_ITEMS = 100;
@@ -494,7 +495,7 @@ export function scopedDeliveryId(input) {
494
495
  })),
495
496
  })}`;
496
497
  }
497
- function legacyScopedDeliveryId(input) {
498
+ export function legacyScopedDeliveryId(input) {
498
499
  return `context-${canonicalContentHash({ runId: input.runId, queryHash: input.queryHash })}`;
499
500
  }
500
501
  function storedScopedDeliveryIdentityMatches(input) {
@@ -715,6 +716,28 @@ function assertStoredProfileBinding(database, header) {
715
716
  || header.taskProfileHash !== binding.profileHash)
716
717
  integrity();
717
718
  }
719
+ function assertLegacyStoredIntakeBinding(database, header) {
720
+ if (header.intakeSessionId === null)
721
+ return;
722
+ let link;
723
+ try {
724
+ link = readRunIntakeLink(database, { workspace: header.workspace, runId: header.runId });
725
+ }
726
+ catch (error) {
727
+ if (isKiokukoError(error) && (error.code === 'NOT_FOUND' || error.code === 'INTEGRITY_ERROR'))
728
+ integrity();
729
+ throw error;
730
+ }
731
+ if (link.workspace !== header.workspace || link.sessionId !== header.intakeSessionId)
732
+ integrity();
733
+ }
734
+ function assertStoredDeliveryBinding(database, header) {
735
+ if (LEGACY_SCOPED_DELIVERY_POLICY_VERSIONS.has(header.policyVersion)) {
736
+ assertLegacyStoredIntakeBinding(database, header);
737
+ return;
738
+ }
739
+ assertStoredProfileBinding(database, header);
740
+ }
718
741
  function readStoredDelivery(database, workspace, deliveryId) {
719
742
  const row = selectHeaderByDeliveryId(database, deliveryId);
720
743
  if (!row)
@@ -724,7 +747,7 @@ function readStoredDelivery(database, workspace, deliveryId) {
724
747
  if (row.run_workspace !== workspace)
725
748
  notFound();
726
749
  const header = validateStoredHeader(row, workspace);
727
- assertStoredProfileBinding(database, header);
750
+ assertStoredDeliveryBinding(database, header);
728
751
  const items = validateStoredEntries(database, header);
729
752
  const complete = { ...header, items };
730
753
  if ((header.scoreSchemaVersion ?? 1) === 2 && !storedScopedDeliveryIdentityMatches(complete))
@@ -828,7 +851,7 @@ export function listContextDeliveries(database, input) {
828
851
  const pageRows = rows.slice(0, validated.limit);
829
852
  const items = pageRows.map((row) => {
830
853
  const header = validateStoredHeader(row, validated.workspace);
831
- assertStoredProfileBinding(database, header);
854
+ assertStoredDeliveryBinding(database, header);
832
855
  const storedItems = validateStoredEntries(database, header);
833
856
  const complete = { ...header, items: storedItems };
834
857
  if ((header.scoreSchemaVersion ?? 1) === 2 && !storedScopedDeliveryIdentityMatches(complete))