@aionis/substrate 0.1.2 → 0.1.4

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.
@@ -22,6 +22,23 @@ export type RuntimeSnapshotImportSummary = {
22
22
  decisionsSkipped: number;
23
23
  scopes: string[];
24
24
  warnings: string[];
25
+ diagnostics: RuntimeSnapshotImportDiagnostics;
26
+ };
27
+ export type RuntimeSnapshotImportTableName = "lite_memory_nodes" | "lite_memory_edges" | "lite_memory_execution_native_index" | "lite_memory_rule_feedback" | "lite_memory_execution_decisions";
28
+ export type RuntimeSnapshotNodeSkipReason = "not_agent_facing" | "empty_summary";
29
+ export type RuntimeSnapshotRelationSkipReason = "missing_imported_endpoint";
30
+ export type RuntimeSnapshotFeedbackSkipReason = "missing_imported_rule_node";
31
+ export type RuntimeSnapshotDecisionSkipReason = "no_imported_source_rules";
32
+ export type RuntimeSnapshotJsonIssueReason = "json_parse_failed" | "json_not_object" | "json_not_array";
33
+ export type RuntimeSnapshotImportDiagnostics = {
34
+ sourceTables: Record<RuntimeSnapshotImportTableName, boolean>;
35
+ skipReasons: {
36
+ nodes: Record<RuntimeSnapshotNodeSkipReason, number>;
37
+ relations: Record<RuntimeSnapshotRelationSkipReason, number>;
38
+ feedback: Record<RuntimeSnapshotFeedbackSkipReason, number>;
39
+ decisions: Record<RuntimeSnapshotDecisionSkipReason, number>;
40
+ };
41
+ jsonIssues: Record<RuntimeSnapshotJsonIssueReason, number>;
25
42
  };
26
43
  export declare function importRuntimeLiteSnapshot(options: RuntimeSnapshotImportOptions): Promise<RuntimeSnapshotImportSummary>;
27
44
  //# sourceMappingURL=runtime-snapshot-importer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-snapshot-importer.d.ts","sourceRoot":"","sources":["../src/runtime-snapshot-importer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAQV,eAAe,EAEhB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,4BAA4B,GAAG;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,eAAe,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AA2gBF,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,4BAA4B,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAgJ5H"}
1
+ {"version":3,"file":"runtime-snapshot-importer.d.ts","sourceRoot":"","sources":["../src/runtime-snapshot-importer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAQV,eAAe,EAEhB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,4BAA4B,GAAG;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,eAAe,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,gCAAgC,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,8BAA8B,GACtC,mBAAmB,GACnB,mBAAmB,GACnB,oCAAoC,GACpC,2BAA2B,GAC3B,iCAAiC,CAAC;AAEtC,MAAM,MAAM,6BAA6B,GAAG,kBAAkB,GAAG,eAAe,CAAC;AACjF,MAAM,MAAM,iCAAiC,GAAG,2BAA2B,CAAC;AAC5E,MAAM,MAAM,iCAAiC,GAAG,4BAA4B,CAAC;AAC7E,MAAM,MAAM,iCAAiC,GAAG,0BAA0B,CAAC;AAC3E,MAAM,MAAM,8BAA8B,GAAG,mBAAmB,GAAG,iBAAiB,GAAG,gBAAgB,CAAC;AAExG,MAAM,MAAM,gCAAgC,GAAG;IAC7C,YAAY,EAAE,MAAM,CAAC,8BAA8B,EAAE,OAAO,CAAC,CAAC;IAC9D,WAAW,EAAE;QACX,KAAK,EAAE,MAAM,CAAC,6BAA6B,EAAE,MAAM,CAAC,CAAC;QACrD,SAAS,EAAE,MAAM,CAAC,iCAAiC,EAAE,MAAM,CAAC,CAAC;QAC7D,QAAQ,EAAE,MAAM,CAAC,iCAAiC,EAAE,MAAM,CAAC,CAAC;QAC5D,SAAS,EAAE,MAAM,CAAC,iCAAiC,EAAE,MAAM,CAAC,CAAC;KAC9D,CAAC;IACF,UAAU,EAAE,MAAM,CAAC,8BAA8B,EAAE,MAAM,CAAC,CAAC;CAC5D,CAAC;AAsjBF,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,4BAA4B,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAsJ5H"}
@@ -6,6 +6,41 @@ function tableExists(db, tableName) {
6
6
  const row = db.prepare("SELECT name FROM sqlite_master WHERE type = 'table' AND name = ?").get(tableName);
7
7
  return row?.name === tableName;
8
8
  }
9
+ function createImportDiagnostics(db) {
10
+ return {
11
+ sourceTables: {
12
+ lite_memory_nodes: tableExists(db, "lite_memory_nodes"),
13
+ lite_memory_edges: tableExists(db, "lite_memory_edges"),
14
+ lite_memory_execution_native_index: tableExists(db, "lite_memory_execution_native_index"),
15
+ lite_memory_rule_feedback: tableExists(db, "lite_memory_rule_feedback"),
16
+ lite_memory_execution_decisions: tableExists(db, "lite_memory_execution_decisions"),
17
+ },
18
+ skipReasons: {
19
+ nodes: {
20
+ not_agent_facing: 0,
21
+ empty_summary: 0,
22
+ },
23
+ relations: {
24
+ missing_imported_endpoint: 0,
25
+ },
26
+ feedback: {
27
+ missing_imported_rule_node: 0,
28
+ },
29
+ decisions: {
30
+ no_imported_source_rules: 0,
31
+ },
32
+ },
33
+ jsonIssues: {
34
+ json_parse_failed: 0,
35
+ json_not_object: 0,
36
+ json_not_array: 0,
37
+ },
38
+ };
39
+ }
40
+ function recordJsonIssue(diagnostics, reason) {
41
+ if (diagnostics)
42
+ diagnostics.jsonIssues[reason] += 1;
43
+ }
9
44
  function clamp(value, fallback) {
10
45
  const numeric = Number(value);
11
46
  if (!Number.isFinite(numeric))
@@ -22,7 +57,7 @@ function normalizeToken(value) {
22
57
  function asRecord(value) {
23
58
  return value && typeof value === "object" && !Array.isArray(value) ? value : null;
24
59
  }
25
- function parseObject(raw, warnings, label) {
60
+ function parseObject(raw, warnings, label, diagnostics) {
26
61
  if (!raw)
27
62
  return {};
28
63
  try {
@@ -30,16 +65,18 @@ function parseObject(raw, warnings, label) {
30
65
  const record = asRecord(parsed);
31
66
  if (!record) {
32
67
  warnings.push(`${label}: JSON was not an object`);
68
+ recordJsonIssue(diagnostics, "json_not_object");
33
69
  return {};
34
70
  }
35
71
  return record;
36
72
  }
37
73
  catch (err) {
38
74
  warnings.push(`${label}: failed to parse JSON (${err.message})`);
75
+ recordJsonIssue(diagnostics, "json_parse_failed");
39
76
  return {};
40
77
  }
41
78
  }
42
- function parseArray(raw, warnings, label) {
79
+ function parseArray(raw, warnings, label, diagnostics) {
43
80
  if (!raw)
44
81
  return [];
45
82
  try {
@@ -47,10 +84,12 @@ function parseArray(raw, warnings, label) {
47
84
  if (Array.isArray(parsed))
48
85
  return parsed;
49
86
  warnings.push(`${label}: JSON was not an array`);
87
+ recordJsonIssue(diagnostics, "json_not_array");
50
88
  return [];
51
89
  }
52
90
  catch (err) {
53
91
  warnings.push(`${label}: failed to parse JSON (${err.message})`);
92
+ recordJsonIssue(diagnostics, "json_parse_failed");
54
93
  return [];
55
94
  }
56
95
  }
@@ -317,10 +356,11 @@ function metadataForNode(row, slots, executionIndex) {
317
356
  runtime_execution_index: executionIndex ?? null,
318
357
  };
319
358
  }
320
- function mapNode(row, executionIndex, warnings) {
321
- const slots = parseObject(row.slots_json, warnings, `node ${row.id} slots_json`);
359
+ function mapNode(row, executionIndex, state) {
360
+ const slots = parseObject(row.slots_json, state.warnings, `node ${row.id} slots_json`, state.diagnostics);
322
361
  if (isRuntimeAuditOnlyNode(slots)) {
323
- warnings.push(`node ${row.id}: skipped because Runtime marked it not_agent_facing`);
362
+ state.diagnostics.skipReasons.nodes.not_agent_facing += 1;
363
+ state.warnings.push(`node ${row.id}: skipped because Runtime marked it not_agent_facing`);
324
364
  return null;
325
365
  }
326
366
  const executionOutcome = deriveRuntimeExecutionOutcome(slots, executionIndex);
@@ -329,7 +369,8 @@ function mapNode(row, executionIndex, warnings) {
329
369
  const authority = deriveAuthority(row, slots, lifecycle, executionOutcome);
330
370
  const summary = row.text_summary?.trim() || row.title?.trim();
331
371
  if (!summary) {
332
- warnings.push(`node ${row.id}: skipped because title/text_summary are empty`);
372
+ state.diagnostics.skipReasons.nodes.empty_summary += 1;
373
+ state.warnings.push(`node ${row.id}: skipped because title/text_summary are empty`);
333
374
  return null;
334
375
  }
335
376
  return {
@@ -432,6 +473,7 @@ export async function importRuntimeLiteSnapshot(options) {
432
473
  if (!sourcePath)
433
474
  throw new Error("sourcePath is required");
434
475
  const db = new DatabaseSync(sourcePath, { readOnly: true });
476
+ const diagnostics = createImportDiagnostics(db);
435
477
  const state = {
436
478
  db,
437
479
  scope: options.scope?.trim() || null,
@@ -440,6 +482,7 @@ export async function importRuntimeLiteSnapshot(options) {
440
482
  importedNodeIds: new Set(),
441
483
  importedScopes: new Set(),
442
484
  executionIndex: new Map(),
485
+ diagnostics,
443
486
  };
444
487
  const summary = {
445
488
  sourcePath,
@@ -458,13 +501,14 @@ export async function importRuntimeLiteSnapshot(options) {
458
501
  decisionsSkipped: 0,
459
502
  scopes: [],
460
503
  warnings: state.warnings,
504
+ diagnostics,
461
505
  };
462
506
  try {
463
507
  state.executionIndex = readExecutionIndex(state);
464
508
  const nodes = readNodes(state);
465
509
  summary.nodesRead = nodes.length;
466
510
  for (const row of nodes) {
467
- const mapped = mapNode(row, state.executionIndex.get(scopeKey(row.scope, row.id)), state.warnings);
511
+ const mapped = mapNode(row, state.executionIndex.get(scopeKey(row.scope, row.id)), state);
468
512
  if (!mapped) {
469
513
  summary.nodesSkipped += 1;
470
514
  continue;
@@ -481,6 +525,7 @@ export async function importRuntimeLiteSnapshot(options) {
481
525
  const dstKey = scopeKey(row.scope, row.dst_id);
482
526
  if (!state.importedNodeIds.has(srcKey) || !state.importedNodeIds.has(dstKey)) {
483
527
  summary.relationsSkipped += 1;
528
+ state.diagnostics.skipReasons.relations.missing_imported_endpoint += 1;
484
529
  state.warnings.push(`edge ${row.id}: skipped because source or target node was not imported`);
485
530
  continue;
486
531
  }
@@ -499,7 +544,7 @@ export async function importRuntimeLiteSnapshot(options) {
499
544
  weight: row.weight,
500
545
  decay_rate: row.decay_rate,
501
546
  commit_id: row.commit_id,
502
- metadata: parseObject(row.metadata_json, state.warnings, `edge ${row.id} metadata_json`),
547
+ metadata: parseObject(row.metadata_json, state.warnings, `edge ${row.id} metadata_json`, state.diagnostics),
503
548
  },
504
549
  },
505
550
  createdAt: row.created_at,
@@ -511,6 +556,7 @@ export async function importRuntimeLiteSnapshot(options) {
511
556
  for (const row of feedbackRows) {
512
557
  if (!state.importedNodeIds.has(scopeKey(row.scope, row.rule_node_id))) {
513
558
  summary.feedbackSkipped += 1;
559
+ state.diagnostics.skipReasons.feedback.missing_imported_rule_node += 1;
514
560
  state.warnings.push(`feedback ${row.id}: skipped because rule node ${row.rule_node_id} was not imported`);
515
561
  continue;
516
562
  }
@@ -530,7 +576,7 @@ export async function importRuntimeLiteSnapshot(options) {
530
576
  const decisions = readExecutionDecisions(state);
531
577
  summary.decisionsRead = decisions.length;
532
578
  for (const row of decisions) {
533
- const sourceRuleIds = parseArray(row.source_rule_ids_json, state.warnings, `decision ${row.id} source_rule_ids_json`)
579
+ const sourceRuleIds = parseArray(row.source_rule_ids_json, state.warnings, `decision ${row.id} source_rule_ids_json`, state.diagnostics)
534
580
  .filter((item) => typeof item === "string" && item.trim().length > 0);
535
581
  const action = decisionActionForRuntimeDecision(row);
536
582
  const mappedDecisions = sourceRuleIds
@@ -545,6 +591,7 @@ export async function importRuntimeLiteSnapshot(options) {
545
591
  }));
546
592
  if (mappedDecisions.length === 0) {
547
593
  summary.decisionsSkipped += 1;
594
+ state.diagnostics.skipReasons.decisions.no_imported_source_rules += 1;
548
595
  continue;
549
596
  }
550
597
  await options.target.recordDecision({
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-snapshot-importer.js","sourceRoot":"","sources":["../src/runtime-snapshot-importer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AA8I3C,SAAS,QAAQ,CAAC,KAAa,EAAE,EAAU;IACzC,OAAO,GAAG,KAAK,SAAS,EAAE,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,WAAW,CAAC,EAAgB,EAAE,SAAiB;IACtD,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,kEAAkE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAkC,CAAC;IAC3I,OAAO,GAAG,EAAE,IAAI,KAAK,SAAS,CAAC;AACjC,CAAC;AAED,SAAS,KAAK,CAAC,KAAa,EAAE,QAAgB;IAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC/C,IAAI,OAAO,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IAC1B,IAAI,OAAO,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC;IAC1B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACrE,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAgC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/G,CAAC;AAED,SAAS,WAAW,CAAC,GAA8B,EAAE,QAAkB,EAAE,KAAa;IACpF,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,0BAA0B,CAAC,CAAC;YAClD,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,2BAA4B,GAAa,CAAC,OAAO,GAAG,CAAC,CAAC;QAC5E,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,GAA8B,EAAE,QAAkB,EAAE,KAAa;IACnF,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QACzC,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,yBAAyB,CAAC,CAAC;QACjD,OAAO,EAAE,CAAC;IACZ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,2BAA4B,GAAa,CAAC,OAAO,GAAG,CAAC,CAAC;QAC5E,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,OAAO,CAAC,MAA+B,EAAE,IAAc;IAC9D,IAAI,OAAO,GAAY,MAAM,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,aAAa;YAAE,OAAO,SAAS,CAAC;QACrC,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,aAAa,CAAC,MAA+B,EAAE,KAAiB;IACvE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE;YAAE,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IACrE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,cAAc,CAAC,MAA+B,EAAE,KAAiB;IACxE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACpC,IAAI,OAAO,KAAK,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;IAC/C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,SAAS,CAAC,MAA+B,EAAE,KAAiB;IACnE,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACpC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE;oBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YACrD,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,WAAW,CAAC,MAA+B,EAAE,KAAiB;IACrE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACpC,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;IAClC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAoB;IAC9C,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IACtI,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,WAAW,CAAC;IAClH,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,oBAAoB;QAAE,OAAO,WAAW,CAAC;IAChI,IAAI,KAAK,KAAK,YAAY,IAAI,KAAK,KAAK,aAAa,IAAI,KAAK,KAAK,UAAU;QAAE,OAAO,YAAY,CAAC;IACnG,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,cAAc;QAAE,OAAO,UAAU,CAAC;IAC/F,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,YAAY;QAAE,OAAO,SAAS,CAAC;IACpE,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,YAAY,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IACnH,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,oBAAoB,IAAI,KAAK,KAAK,kBAAkB;QAAE,OAAO,oBAAoB,CAAC;IACzH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAa;IAChD,OAAO,KAAK,KAAK,QAAQ;WACpB,KAAK,KAAK,SAAS;WACnB,KAAK,KAAK,MAAM;WAChB,KAAK,KAAK,eAAe;WACzB,KAAK,KAAK,iBAAiB;WAC3B,KAAK,KAAK,SAAS;WACnB,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;WACxB,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;WACzB,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAa;IAChD,OAAO,KAAK,KAAK,QAAQ;WACpB,KAAK,KAAK,MAAM;WAChB,KAAK,KAAK,WAAW;WACrB,KAAK,KAAK,SAAS;WACnB,KAAK,KAAK,iBAAiB;WAC3B,KAAK,KAAK,mBAAmB;WAC7B,KAAK,KAAK,UAAU;WACpB,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;WACxB,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;WAC3B,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,6BAA6B,CACpC,KAAiB,EACjB,cAAoD;IAEpD,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,EAAE;QAC1C,CAAC,cAAc,EAAE,QAAQ,CAAC;QAC1B,CAAC,qBAAqB,EAAE,cAAc,EAAE,QAAQ,CAAC;QACjD,CAAC,uBAAuB,EAAE,cAAc,EAAE,QAAQ,CAAC;KACpD,CAAC,CAAC;IACH,IAAI,aAAa,KAAK,KAAK;QAAE,OAAO,QAAQ,CAAC;IAE7C,MAAM,MAAM,GAAG;QACb,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,0BAA0B,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC9D,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAC,CAAC;QAC/D,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,0BAA0B,EAAE,wBAAwB,CAAC,CAAC,CAAC;QAC9E,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,CAAC,CAAC;QACzE,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,uBAAuB,EAAE,wBAAwB,CAAC,CAAC,CAAC;QAC3E,cAAc,EAAE,aAAa,IAAI,IAAI;QACrC,cAAc,EAAE,YAAY,IAAI,IAAI;QACpC,cAAc,EAAE,sBAAsB,IAAI,IAAI;KAC/C,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEtC,IAAI,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC9D,IAAI,aAAa,KAAK,IAAI;QAAE,OAAO,QAAQ,CAAC;IAC5C,IAAI,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC9D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAiB;IAC/C,OAAO,WAAW,CAAC,KAAK,EAAE;QACxB,CAAC,kBAAkB,CAAC;QACpB,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;QACzC,CAAC,oBAAoB,EAAE,kBAAkB,CAAC;QAC1C,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;KACzC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAoB;IAC9C,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,IAAI,KAAK,KAAK,UAAU;QAAE,OAAO,UAAU,CAAC;IAC5C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChH,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,UAAU,CAAC;IACjH,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9D,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,YAAY;QAAE,OAAO,UAAU,CAAC;IACpH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,GAAmB,EAAE,KAAiB;IACxD,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,WAAW,GAAG,cAAc,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACtH,MAAM,aAAa,GAAG,cAAc,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,qBAAqB,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IACxG,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;IAEnE,IAAI,iBAAiB,IAAI,CACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;WACnB,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC;WAC7B,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC;WAC3B,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CACnC;QAAE,OAAO,eAAe,CAAC;IAE1B,IAAI,IAAI,KAAK,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC;IACtH,IAAI,IAAI,KAAK,YAAY,IAAI,WAAW,CAAC,QAAQ,CAAC,YAAY,CAAC;QAAE,OAAO,YAAY,CAAC;IACrF,IAAI,IAAI,KAAK,OAAO,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IACtE,IAAI,IAAI,KAAK,UAAU,IAAI,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IAC/E,IAAI,aAAa,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,WAAW,CAAC;IACjJ,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,eAAe,CACtB,GAAmB,EACnB,KAAiB,EACjB,SAAsC,EACtC,gBAAyC;IAEzC,IAAI,SAAS,KAAK,YAAY,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,UAAU,CAAC;IACxG,IAAI,gBAAgB,KAAK,QAAQ;QAAE,OAAO,UAAU,CAAC;IACrD,IAAI,gBAAgB,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC;IAC9E,MAAM,QAAQ,GAAG,kBAAkB,CAAC,aAAa,CAAC,KAAK,EAAE;QACvD,CAAC,WAAW,CAAC;QACb,CAAC,iBAAiB,CAAC;QACnB,CAAC,gBAAgB,CAAC;QAClB,CAAC,OAAO,CAAC;QACT,CAAC,qBAAqB,EAAE,gBAAgB,CAAC;QACzC,CAAC,qBAAqB,EAAE,WAAW,CAAC;QACpC,CAAC,oBAAoB,EAAE,iBAAiB,CAAC;QACzC,CAAC,qBAAqB,EAAE,oBAAoB,EAAE,iBAAiB,CAAC;KACjE,CAAC,CAAC,CAAC;IACJ,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAE9B,MAAM,WAAW,GAAG,cAAc,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACtH,IAAI,CAAC,WAAW,KAAK,iBAAiB,IAAI,WAAW,KAAK,eAAe,IAAI,WAAW,KAAK,eAAe,CAAC,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,EAAE,CAAC;QACvI,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CACtB,GAAmB,EACnB,KAAiB,EACjB,SAA+B,EAC/B,gBAAyC;IAEzC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,aAAa,CAAC,KAAK,EAAE;QACvD,CAAC,WAAW,CAAC;QACb,CAAC,iBAAiB,CAAC;QACnB,CAAC,kBAAkB,CAAC;QACpB,CAAC,qBAAqB,CAAC;QACvB,CAAC,qBAAqB,EAAE,WAAW,CAAC;QACpC,CAAC,qBAAqB,EAAE,iBAAiB,CAAC;QAC1C,CAAC,oBAAoB,EAAE,iBAAiB,CAAC;QACzC,CAAC,qBAAqB,EAAE,oBAAoB,EAAE,iBAAiB,CAAC;KACjE,CAAC,CAAC,CAAC;IACJ,IAAI,QAAQ,KAAK,YAAY,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,oBAAoB,EAAE,CAAC;QAClJ,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,gBAAgB,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACpD,IAAI,gBAAgB,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IACnD,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAE9B,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,UAAU,CAAC;IACjE,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,YAAY,CAAC;QAAE,OAAO,oBAAoB,CAAC;IAE9G,MAAM,WAAW,GAAG,cAAc,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACtH,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC;IAC1D,IAAI,WAAW,KAAK,iBAAiB,IAAI,WAAW,KAAK,eAAe,IAAI,WAAW,KAAK,eAAe;QAAE,OAAO,QAAQ,CAAC;IAE7H,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,UAAU;QAAE,OAAO,QAAQ,CAAC;IACzE,IAAI,SAAS,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IAC/C,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAmB,EAAE,KAAiB,EAAE,cAAoD;IACrH,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,EAAE;QACjC,CAAC,cAAc,CAAC;QAChB,CAAC,WAAW,EAAE,cAAc,CAAC;QAC7B,CAAC,qBAAqB,EAAE,cAAc,CAAC;QACvC,CAAC,uBAAuB,EAAE,cAAc,CAAC;QACzC,CAAC,SAAS,EAAE,cAAc,CAAC;QAC3B,CAAC,UAAU,EAAE,cAAc,CAAC;KAC7B,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,cAAc,EAAE,iBAAiB;QACjD,CAAC,CAAC,cAAc,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QAC5F,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,SAAS,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,eAAe,CAAC,GAAmB,EAAE,KAAiB,EAAE,cAAoD;IACnH,OAAO;QACL,aAAa,EAAE,8BAA8B;QAC7C,OAAO,EAAE;YACP,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,eAAe,EAAE,GAAG,CAAC,eAAe;YACpC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;YACtC,oBAAoB,EAAE,GAAG,CAAC,oBAAoB;YAC9C,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;YACxC,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,UAAU,EAAE,GAAG,CAAC,UAAU;SAC3B;QACD,aAAa,EAAE,KAAK;QACpB,uBAAuB,EAAE,cAAc,IAAI,IAAI;KAChD,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,GAAmB,EAAE,cAAoD,EAAE,QAAkB;IAC5G,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;IACjF,IAAI,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;QAClC,QAAQ,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,sDAAsD,CAAC,CAAC;QACpF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,gBAAgB,GAAG,6BAA6B,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IAC9E,MAAM,cAAc,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;IAC3E,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAChF,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;IAC9D,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,QAAQ,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,gDAAgD,CAAC,CAAC;QAC9E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,IAAI,EAAE,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC;QAC5B,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,OAAO;QACP,SAAS;QACT,SAAS;QACT,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC;QACtC,WAAW,EAAE,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,cAAc,CAAC;QAC1D,UAAU,EAAE,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,YAAY,IAAI,IAAI;QACnD,OAAO,EAAE,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,iBAAiB,IAAI,IAAI;QAC5D,MAAM,EAAE,GAAG,CAAC,aAAa;QACzB,QAAQ,EAAE,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,cAAc,CAAC;QACrD,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,SAAS,EAAE,cAAc,EAAE,UAAU,IAAI,GAAG,CAAC,UAAU;KACxD,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,IAAY;IACnC,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACxD,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,YAAY,CAAC;IACjF,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,aAAa,CAAC;IACrF,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,aAAa,CAAC;IACpD,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,kBAAkB,CAAC;IACxF,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,cAAc,CAAC;IACjF,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC;IACjH,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,UAAU,CAAC;IAC9G,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gCAAgC,CAAC,GAAgC;IACxE,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,YAAY,CAAC;IAC3E,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC;IAC/E,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,oBAAoB,CAAC;IACjF,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAyB;IACnD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,oCAAoC,CAAC;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IACnF,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK;QACvB,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,kEAAkE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC;QACvG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,kDAAkD,CAAC,CAAC,GAAG,EAAE,CAA+B,CAAC;IAC9G,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,SAAS,CAAC,KAAyB;IAC1C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,mBAAmB,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACvH,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;IAC3D,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,GAAG,GAAG,kFAAkF,WAAW,EAAE,CAAC;QAC5G,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI;YAC1B,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC;YACxC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAqB,CAAC;IAC/E,CAAC;IACD,MAAM,GAAG,GAAG,kEAAkE,WAAW,EAAE,CAAC;IAC5F,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAqB,CAAC;AAC3H,CAAC;AAED,SAAS,SAAS,CAAC,KAAyB;IAC1C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,mBAAmB,CAAC;QAAE,OAAO,EAAE,CAAC;IAC3D,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,iFAAiF,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAqB,CAAC;IAClJ,CAAC;IACD,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,iEAAiE,CAAC,CAAC,GAAG,EAAsB,CAAC;AACvH,CAAC;AAED,SAAS,YAAY,CAAC,KAAyB;IAC7C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,2BAA2B,CAAC;QAAE,OAAO,EAAE,CAAC;IACnE,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,yFAAyF,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAyB,CAAC;IAC9J,CAAC;IACD,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,yEAAyE,CAAC,CAAC,GAAG,EAA0B,CAAC;AACnI,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAyB;IACvD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,iCAAiC,CAAC;QAAE,OAAO,EAAE,CAAC;IACzE,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,+FAA+F,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAkC,CAAC;IAC7K,CAAC;IACD,OAAO,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,+EAA+E,CAAC,CAAC,GAAG,EAAmC,CAAC;AAClJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,OAAqC;IACnF,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IAC7C,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC3D,MAAM,EAAE,GAAG,IAAI,YAAY,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAuB;QAChC,EAAE;QACF,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,IAAI;QACpC,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAClF,QAAQ,EAAE,EAAE;QACZ,eAAe,EAAE,IAAI,GAAG,EAAE;QAC1B,cAAc,EAAE,IAAI,GAAG,EAAE;QACzB,cAAc,EAAE,IAAI,GAAG,EAAE;KAC1B,CAAC;IAEF,MAAM,OAAO,GAAiC;QAC5C,UAAU;QACV,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,SAAS,EAAE,CAAC;QACZ,aAAa,EAAE,CAAC;QAChB,YAAY,EAAE,CAAC;QACf,aAAa,EAAE,CAAC;QAChB,iBAAiB,EAAE,CAAC;QACpB,gBAAgB,EAAE,CAAC;QACnB,YAAY,EAAE,CAAC;QACf,gBAAgB,EAAE,CAAC;QACnB,eAAe,EAAE,CAAC;QAClB,aAAa,EAAE,CAAC;QAChB,iBAAiB,EAAE,CAAC;QACpB,gBAAgB,EAAE,CAAC;QACnB,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,KAAK,CAAC,QAAQ;KACzB,CAAC;IAEF,IAAI,CAAC;QACH,KAAK,CAAC,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAC/B,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC;QACjC,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YACnG,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,CAAC,YAAY,IAAI,CAAC,CAAC;gBAC1B,SAAS;YACX,CAAC;YACD,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACrC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACvE,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvC,OAAO,CAAC,aAAa,IAAI,CAAC,CAAC;QAC7B,CAAC;QAED,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAC/B,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC;QACrC,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/C,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7E,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC;gBAC9B,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,0DAA0D,CAAC,CAAC;gBAC9F,SAAS;YACX,CAAC;YACD,MAAM,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;gBAC/B,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,IAAI,EAAE,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;gBAC/B,QAAQ,EAAE,GAAG,CAAC,MAAM;gBACpB,QAAQ,EAAE,GAAG,CAAC,MAAM;gBACpB,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBACzD,OAAO,EAAE,CAAC,8BAA8B,GAAG,CAAC,IAAI,EAAE,CAAC;gBACnD,QAAQ,EAAE;oBACR,aAAa,EAAE,8BAA8B;oBAC7C,OAAO,EAAE;wBACP,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,MAAM,EAAE,GAAG,CAAC,MAAM;wBAClB,UAAU,EAAE,GAAG,CAAC,UAAU;wBAC1B,SAAS,EAAE,GAAG,CAAC,SAAS;wBACxB,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,QAAQ,EAAE,QAAQ,GAAG,CAAC,EAAE,gBAAgB,CAAC;qBACzF;iBACF;gBACD,SAAS,EAAE,GAAG,CAAC,UAAU;aAC1B,CAAC,CAAC;YACH,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACzC,OAAO,CAAC,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC;QAC3C,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;gBACtE,OAAO,CAAC,eAAe,IAAI,CAAC,CAAC;gBAC7B,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE,+BAA+B,GAAG,CAAC,YAAY,mBAAmB,CAAC,CAAC;gBAC1G,SAAS;YACX,CAAC;YACD,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC7C,MAAM,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;gBAClC,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,QAAQ,EAAE,GAAG,CAAC,YAAY;gBAC1B,OAAO;gBACP,QAAQ,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ;gBACnD,KAAK,EAAE,GAAG,CAAC,MAAM;gBACjB,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,SAAS,IAAI,IAAI;gBACrD,SAAS,EAAE,GAAG,CAAC,UAAU;aAC1B,CAAC,CAAC;YACH,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC;QAChC,CAAC;QAED,MAAM,SAAS,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAChD,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC;QACzC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC,oBAAoB,EAAE,KAAK,CAAC,QAAQ,EAAE,YAAY,GAAG,CAAC,EAAE,uBAAuB,CAAC;iBAClH,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACxF,MAAM,MAAM,GAAG,gCAAgC,CAAC,GAAG,CAAC,CAAC;YACrD,MAAM,eAAe,GAA8B,aAAa;iBAC7D,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;iBAClE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBACZ,QAAQ,EAAE,EAAE;gBACZ,MAAM;gBACN,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,wCAAwC;wBAC9C,MAAM,EAAE,oBAAoB,GAAG,CAAC,aAAa,2BAA2B,EAAE,EAAE;qBAC7E,CAAC;aACH,CAAC,CAAC,CAAC;YACN,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC;gBAC9B,SAAS;YACX,CAAC;YACD,MAAM,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;gBAClC,EAAE,EAAE,GAAG,CAAC,EAAE;gBACV,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,KAAK,EAAE;oBACL,iBAAiB,GAAG,CAAC,aAAa,EAAE;oBACpC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;oBACxC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,iBAAiB,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE;iBAC9D,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC5B,SAAS,EAAE,eAAe;gBAC1B,SAAS,EAAE,GAAG,CAAC,UAAU;aAC1B,CAAC,CAAC;YACH,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC;QACjC,CAAC;QAED,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC;QACjE,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC;QACzD,OAAO,OAAO,CAAC;IACjB,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"runtime-snapshot-importer.js","sourceRoot":"","sources":["../src/runtime-snapshot-importer.ts"],"names":[],"mappings":"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"}
package/docs/CLI.md CHANGED
@@ -6,6 +6,7 @@ It is intentionally narrow:
6
6
 
7
7
  - it inspects, previews, backs up, restores, and compacts Substrate stores;
8
8
  - it imports Runtime Lite SQLite snapshots into separate Substrate stores;
9
+ - it incrementally mirrors Runtime Lite evidence into separate Substrate stores with an explicit checkpoint;
9
10
  - it runs read-only checks over existing Runtime evidence;
10
11
  - it writes reports to local files;
11
12
  - it does not start Aionis Runtime unless you explicitly use the separate repository script `check:runtime-dual-write`;
@@ -119,6 +120,59 @@ npx aionis-substrate import-runtime-snapshot \
119
120
  ```
120
121
 
121
122
  The Runtime source is opened read-only. The target is a Substrate store owned by this command.
123
+ The JSON output includes imported/skipped counts plus structured `diagnostics.sourceTables`,
124
+ `diagnostics.skipReasons`, and `diagnostics.jsonIssues` so bridge failures can be classified
125
+ without scraping warning strings.
126
+
127
+ ## Runtime Live Sidecar
128
+
129
+ Use `live-sidecar` to keep a separate Substrate store in sync with Runtime Lite evidence without replaying unchanged rows:
130
+
131
+ ```bash
132
+ npx aionis-substrate live-sidecar \
133
+ --source /path/to/aionis-runtime-lite.sqlite \
134
+ --target ./substrate.sqlite \
135
+ --adapter sqlite \
136
+ --checkpoint ./runtime-live-checkpoint.json \
137
+ --scope repo-a
138
+ ```
139
+
140
+ The Runtime source is opened read-only. The target is a Substrate store owned by this command.
141
+ The checkpoint file records stable fingerprints for mapped Runtime nodes, relations, feedback,
142
+ and decisions. Re-running the command applies only new or changed evidence.
143
+
144
+ Use `--dry-run` to inspect the apply plan without writing the target or checkpoint:
145
+
146
+ ```bash
147
+ npx aionis-substrate live-sidecar \
148
+ --source /path/to/aionis-runtime-lite.sqlite \
149
+ --target ./substrate.sqlite \
150
+ --adapter sqlite \
151
+ --checkpoint ./runtime-live-checkpoint.json \
152
+ --scope repo-a \
153
+ --dry-run
154
+ ```
155
+
156
+ Use `--watch` for a bounded polling loop with a single-instance lock:
157
+
158
+ ```bash
159
+ npx aionis-substrate live-sidecar \
160
+ --source /path/to/aionis-runtime-lite.sqlite \
161
+ --target ./substrate.sqlite \
162
+ --adapter sqlite \
163
+ --checkpoint ./runtime-live-checkpoint.json \
164
+ --scope repo-a \
165
+ --watch \
166
+ --iterations 20 \
167
+ --interval-ms 5000
168
+ ```
169
+
170
+ The default lock path is `<checkpoint>.lock`. Override it with `--lock <path>`.
171
+ Use `--no-lock` only for controlled tests. The watch report contract is
172
+ `aionis_runtime_live_sidecar_watch_report_v1`.
173
+
174
+ The report contract is `aionis_runtime_live_sidecar_report_v1`. Read `import_summary` as source coverage
175
+ and `apply_summary` as the checkpointed sidecar result.
122
176
 
123
177
  ## Sidecar Check
124
178
 
@@ -178,6 +232,10 @@ The reference files were scanned, but none of their memory ids overlap the disco
178
232
 
179
233
  The imported Substrate buckets do not match the supplied Runtime guide/measure surface. Inspect the generated `summary.json` before changing code; the mismatch may be a scope, reference, or fixture problem.
180
234
 
235
+ `checkpoint ignored because target store is empty`
236
+
237
+ The live sidecar found an existing checkpoint, but the target store had no events. It replayed the Runtime snapshot into the target so the checkpoint cannot hide a missing or newly created target.
238
+
181
239
  `ExperimentalWarning: SQLite is an experimental feature`
182
240
 
183
241
  Node 24 currently marks `node:sqlite` as experimental. This is expected for the current embedded SQLite adapter.
@@ -0,0 +1,142 @@
1
+ # Runtime Live Sidecar
2
+
3
+ The Runtime live sidecar is an external, one-way bridge from an Aionis Runtime Lite SQLite database into an independent Aionis Substrate store.
4
+
5
+ It exists for a narrow productization step:
6
+
7
+ - Runtime remains the source of execution memory writes.
8
+ - Substrate mirrors Runtime evidence into a durable substrate store.
9
+ - A checkpoint prevents replaying unchanged Runtime rows on every poll.
10
+ - No Runtime table, source file, policy, or guide path is mutated.
11
+
12
+ This is not a replacement for Runtime policy. It is a sidecar substrate sync primitive.
13
+
14
+ ## Command
15
+
16
+ ```bash
17
+ npx aionis-substrate live-sidecar \
18
+ --source /path/to/aionis-runtime-lite.sqlite \
19
+ --target ./substrate.sqlite \
20
+ --adapter sqlite \
21
+ --checkpoint ./runtime-live-checkpoint.json \
22
+ --scope repo-a
23
+ ```
24
+
25
+ Run the command repeatedly from a scheduler or host process. Each run:
26
+
27
+ 1. opens the Runtime SQLite source read-only;
28
+ 2. maps Runtime memory nodes, relations, feedback, and decisions through the snapshot importer;
29
+ 3. fingerprints each mapped Substrate write;
30
+ 4. writes only new or changed evidence into the target store;
31
+ 5. atomically updates the checkpoint file.
32
+
33
+ Use `--adapter file` when the target is a file-backed Substrate directory.
34
+
35
+ Use `--dry-run` to report what would be applied without writing the target or checkpoint:
36
+
37
+ ```bash
38
+ npx aionis-substrate live-sidecar \
39
+ --source /path/to/aionis-runtime-lite.sqlite \
40
+ --target ./substrate.sqlite \
41
+ --adapter sqlite \
42
+ --checkpoint ./runtime-live-checkpoint.json \
43
+ --scope repo-a \
44
+ --dry-run
45
+ ```
46
+
47
+ ## Bounded Watch Loop
48
+
49
+ Use `--watch` when a host wants Substrate to poll Runtime Lite repeatedly in one process:
50
+
51
+ ```bash
52
+ npx aionis-substrate live-sidecar \
53
+ --source /path/to/aionis-runtime-lite.sqlite \
54
+ --target ./substrate.sqlite \
55
+ --adapter sqlite \
56
+ --checkpoint ./runtime-live-checkpoint.json \
57
+ --scope repo-a \
58
+ --watch \
59
+ --iterations 20 \
60
+ --interval-ms 5000
61
+ ```
62
+
63
+ `--watch` is intentionally bounded in this package version. The host chooses the number
64
+ of iterations and can restart the command through cron, launchd, systemd, a supervisor,
65
+ or its own Agent host process.
66
+
67
+ The watch command creates a single-instance lock by default at:
68
+
69
+ ```text
70
+ <checkpoint>.lock
71
+ ```
72
+
73
+ Override it with `--lock <path>`. Use `--no-lock` only for controlled tests.
74
+
75
+ The watch report contract is `aionis_runtime_live_sidecar_watch_report_v1`.
76
+ It contains:
77
+
78
+ - `reports`: every per-iteration `aionis_runtime_live_sidecar_report_v1`;
79
+ - `apply_summary`: aggregate attempted/applied/unchanged counts across all iterations;
80
+ - `lock_path`: the lock used for this run;
81
+ - `iterations_requested` and `iterations_completed`.
82
+
83
+ ## Soak Check
84
+
85
+ Use the soak check before release or before embedding the sidecar in a long-running host:
86
+
87
+ ```bash
88
+ npm run check:runtime-live-sidecar-soak
89
+ ```
90
+
91
+ The check creates a real Runtime Lite SQLite fixture, appends evidence in batches,
92
+ and runs bounded watch loops against a separate real Substrate SQLite target. It
93
+ verifies:
94
+
95
+ - every newly appended Runtime row is applied exactly once;
96
+ - unchanged rows remain checkpoint-skipped on later polls;
97
+ - the checkpoint fingerprint count matches the mirrored target;
98
+ - the lock file is released after every watch loop;
99
+ - the target store can be reopened with the same node and event counts.
100
+
101
+ The report contract is `aionis_runtime_live_sidecar_soak_report_v1`.
102
+
103
+ ## Report
104
+
105
+ The report contract is `aionis_runtime_live_sidecar_report_v1`.
106
+
107
+ Important fields:
108
+
109
+ - `import_summary`: the Runtime snapshot importer coverage for this scan.
110
+ - `apply_summary`: what the live sidecar actually applied or skipped through the checkpoint.
111
+ - `checkpoint_before`: whether a checkpoint existed and how many fingerprints it contained.
112
+ - `checkpoint_after`: fingerprint counts after the run.
113
+ - `store_before` / `store_after`: target store event counters.
114
+ - `warnings`: importer warnings plus sidecar consistency warnings.
115
+
116
+ `import_summary.nodesImported` can be larger than `apply_summary.nodes.applied`. That is expected: the importer reports what it mapped from Runtime; the live sidecar reports what was new or changed after checkpoint comparison.
117
+
118
+ ## Checkpoint Behavior
119
+
120
+ The checkpoint is scoped to:
121
+
122
+ - Runtime source path;
123
+ - optional Runtime scope;
124
+ - mapped Substrate object fingerprints.
125
+
126
+ If the checkpoint path points to a different Runtime source or scope, the command fails. This prevents accidental cross-source reuse.
127
+
128
+ If the checkpoint contains fingerprints but the target store is empty, the sidecar ignores the checkpoint and replays the Runtime snapshot into the target. This prevents a stale checkpoint from hiding a lost or newly created target store.
129
+
130
+ If an individual node, relation, feedback row, or decision is missing from the target even though the checkpoint says it is unchanged, the sidecar re-applies that object.
131
+
132
+ ## Product Boundary
133
+
134
+ The live sidecar is external infrastructure:
135
+
136
+ - it does not replace Runtime Lite;
137
+ - it does not install dual-write inside Runtime;
138
+ - it does not change Runtime guide/admission policy;
139
+ - it does not encode benchmark-specific rules;
140
+ - it does not make Substrate the full Runtime policy engine.
141
+
142
+ Use it when you want a live Substrate mirror for inspection, backup, product experiments, or external host integration without touching Runtime core.
@@ -8,7 +8,7 @@ It is a read-only validation path:
8
8
  2. select Runtime scopes;
9
9
  3. import each scope into a temporary Substrate SQLite store;
10
10
  4. compile Substrate context;
11
- 5. aggregate import coverage, bucket counts, warnings, and failures.
11
+ 5. aggregate import coverage, bucket counts, warnings, failures, and structured import diagnostics.
12
12
 
13
13
  It does not replace Runtime storage and does not install dual-write.
14
14
 
@@ -35,7 +35,11 @@ The command writes a report under `reports/runtime-snapshot-corpus-*` unless `--
35
35
  - `passed_scopes`: scopes imported and compiled successfully.
36
36
  - `failed_scopes`: scopes that failed import or compile.
37
37
  - `total_nodes_imported`: imported Runtime nodes.
38
+ - `total_nodes_read` / `total_nodes_skipped`: node-level import coverage.
39
+ - `total_relations_*`, `total_feedback_*`, `total_decisions_*`: bridge coverage for Runtime relation, outcome, and decision evidence.
38
40
  - `total_warnings`: scan and import warnings.
41
+ - `bucket_totals`: aggregate compiled Substrate admission buckets across imported scopes.
42
+ - `diagnostics_summary`: machine-readable source table coverage, skip reasons, and JSON issues aggregated across scopes.
39
43
  - `scope_reports`: per-scope import and bucket summary.
40
44
 
41
45
  ## Interpretation
@@ -47,7 +51,8 @@ Good results mean:
47
51
  - Runtime SQLite sources can be opened read-only;
48
52
  - Runtime memory nodes can be mapped into Substrate nodes;
49
53
  - Substrate can compile governed context for real scopes;
50
- - warnings and failures are visible.
54
+ - warnings and failures are visible;
55
+ - skipped evidence is attributable to concrete causes such as missing endpoints, missing referenced rule nodes, audit-only nodes, empty summaries, or malformed Runtime JSON.
51
56
 
52
57
  Bad results should be treated as mapping or substrate-contract evidence, not as a reason to mutate Aionis Runtime core.
53
58
 
@@ -65,17 +70,26 @@ npm run check:runtime-corpus -- \
65
70
  --max-per-bucket 50
66
71
  ```
67
72
 
68
- Result on 2026-06-25:
73
+ Result on 2026-06-26:
69
74
 
70
75
  - discovered SQLite files: 30
71
76
  - Runtime SQLite files: 14
72
77
  - candidate scopes: 128
73
- - attempted scopes: 100
74
- - passed scopes: 100
78
+ - attempted scopes: 128
79
+ - passed scopes: 128
75
80
  - failed scopes: 0
76
- - imported Runtime nodes: 8,948
77
- - warnings: 0
81
+ - Runtime nodes read: 9,069
82
+ - Runtime nodes imported: 8,941
83
+ - Runtime nodes skipped: 128
84
+ - relation rows skipped: 0
85
+ - feedback rows skipped: 0
86
+ - decision rows skipped: 0
87
+ - bucket totals: `use_now=128`, `inspect_before_use=3,789`, `do_not_use=80`, `rehydrate=0`
88
+ - source table coverage: `lite_memory_nodes=128/128`, `lite_memory_edges=128/128`, `lite_memory_execution_native_index=41/128`, `lite_memory_rule_feedback=128/128`, `lite_memory_execution_decisions=128/128`
89
+ - skip reason totals: `not_agent_facing=128`, all other skip reasons `0`
90
+ - JSON issues: 0
91
+ - warnings: 128, all from intentionally skipped non-agent-facing Runtime nodes
78
92
 
79
93
  Local report:
80
94
 
81
- `reports/runtime-snapshot-corpus-2026-06-25T11-54-32-014Z/summary.json`
95
+ `reports/runtime-snapshot-corpus-2026-06-26T09-00-03-229Z/summary.json`
@@ -14,6 +14,9 @@ The importer exists to answer one engineering question:
14
14
 
15
15
  > Can the Substrate contract represent Runtime memory evidence, relations, feedback, and decision traces without polluting the focused Runtime?
16
16
 
17
+ For repeated checkpointed mirroring, use the separate Runtime live sidecar documented in
18
+ [RUNTIME_LIVE_SIDECAR.md](RUNTIME_LIVE_SIDECAR.md). Snapshot import is a one-shot copy path.
19
+
17
20
  ## Source Tables
18
21
 
19
22
  The importer currently understands the focused Runtime Lite write-store tables:
@@ -72,7 +75,20 @@ node scripts/import-runtime-snapshot.ts \
72
75
  --adapter file
73
76
  ```
74
77
 
75
- The command prints a JSON summary with imported/skipped counts and warnings.
78
+ The command prints a JSON summary with imported/skipped counts, warnings, and
79
+ structured diagnostics.
80
+
81
+ The diagnostic block is machine-readable:
82
+
83
+ - `sourceTables`: which Runtime Lite tables were present in the read-only source;
84
+ - `skipReasons.nodes`: `not_agent_facing` and `empty_summary` counts;
85
+ - `skipReasons.relations`: relation rows skipped because an endpoint was not imported;
86
+ - `skipReasons.feedback`: feedback rows skipped because the referenced rule node was not imported;
87
+ - `skipReasons.decisions`: decision rows skipped because none of the referenced source rules were imported;
88
+ - `jsonIssues`: malformed or shape-mismatched Runtime JSON fields.
89
+
90
+ Warnings remain for human inspection, but downstream tooling should prefer the
91
+ diagnostic counters when classifying import coverage failures.
76
92
 
77
93
  ## Parity Checker
78
94