@ttsc/graph 0.23.0 → 0.25.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 (70) hide show
  1. package/README.md +1 -1
  2. package/lib/index.js +36 -0
  3. package/lib/index.js.map +1 -1
  4. package/lib/model/TtscGraphMemory.d.ts +1 -1
  5. package/lib/model/TtscGraphMemory.js +16 -13
  6. package/lib/model/TtscGraphMemory.js.map +1 -1
  7. package/lib/model/TtscGraphSession.d.ts +2 -6
  8. package/lib/model/TtscGraphSession.js +414 -235
  9. package/lib/model/TtscGraphSession.js.map +1 -1
  10. package/lib/model/TtscGraphShardStore.d.ts +16 -0
  11. package/lib/model/TtscGraphShardStore.js +272 -0
  12. package/lib/model/TtscGraphShardStore.js.map +1 -0
  13. package/lib/model/loadGraph.js +68 -61
  14. package/lib/model/loadGraph.js.map +1 -1
  15. package/lib/nativeExecutable.d.ts +22 -0
  16. package/lib/nativeExecutable.js +76 -0
  17. package/lib/nativeExecutable.js.map +1 -1
  18. package/lib/server/runDetails.js +4 -9
  19. package/lib/server/runDetails.js.map +1 -1
  20. package/lib/server/runEntrypoints.js +4 -7
  21. package/lib/server/runEntrypoints.js.map +1 -1
  22. package/lib/server/runLookup.js +1 -1
  23. package/lib/server/runLookup.js.map +1 -1
  24. package/lib/server/runOverview.js +3 -3
  25. package/lib/server/runOverview.js.map +1 -1
  26. package/lib/server/runTour.js +7 -11
  27. package/lib/server/runTour.js.map +1 -1
  28. package/lib/server/runTrace.d.ts +4 -5
  29. package/lib/server/runTrace.js +10 -19
  30. package/lib/server/runTrace.js.map +1 -1
  31. package/lib/structures/ITtscGraphDump.d.ts +8 -2
  32. package/lib/structures/ITtscGraphNode.d.ts +1 -2
  33. package/lib/structures/ITtscGraphSnapshot.d.ts +37 -1
  34. package/lib/structures/TtscGraphDumpEdgeKind.d.ts +2 -0
  35. package/lib/structures/TtscGraphDumpEdgeKind.js +3 -0
  36. package/lib/structures/TtscGraphDumpEdgeKind.js.map +1 -0
  37. package/lib/structures/TtscGraphDumpNodeKind.d.ts +2 -0
  38. package/lib/structures/TtscGraphDumpNodeKind.js +3 -0
  39. package/lib/structures/TtscGraphDumpNodeKind.js.map +1 -0
  40. package/lib/structures/TtscGraphEdgeKind.d.ts +8 -6
  41. package/lib/structures/TtscGraphNodeKind.d.ts +5 -6
  42. package/lib/structures/TtscGraphNodeModifier.d.ts +1 -1
  43. package/lib/structures/index.d.ts +2 -0
  44. package/lib/structures/index.js +2 -0
  45. package/lib/structures/index.js.map +1 -1
  46. package/lib/view.js +17 -2
  47. package/lib/view.js.map +1 -1
  48. package/package.json +3 -3
  49. package/src/index.ts +40 -0
  50. package/src/model/TtscGraphMemory.ts +10 -8
  51. package/src/model/TtscGraphSession.ts +64 -47
  52. package/src/model/TtscGraphShardStore.ts +371 -0
  53. package/src/model/loadGraph.ts +20 -13
  54. package/src/nativeExecutable.ts +83 -0
  55. package/src/server/runDetails.ts +5 -10
  56. package/src/server/runEntrypoints.ts +4 -7
  57. package/src/server/runLookup.ts +1 -1
  58. package/src/server/runOverview.ts +3 -3
  59. package/src/server/runTour.ts +8 -14
  60. package/src/server/runTrace.ts +10 -19
  61. package/src/structures/ITtscGraphDump.ts +10 -2
  62. package/src/structures/ITtscGraphNode.ts +1 -2
  63. package/src/structures/ITtscGraphSnapshot.ts +42 -1
  64. package/src/structures/TtscGraphDumpEdgeKind.ts +11 -0
  65. package/src/structures/TtscGraphDumpNodeKind.ts +10 -0
  66. package/src/structures/TtscGraphEdgeKind.ts +8 -9
  67. package/src/structures/TtscGraphNodeKind.ts +5 -11
  68. package/src/structures/TtscGraphNodeModifier.ts +1 -2
  69. package/src/structures/index.ts +2 -0
  70. package/src/view.ts +21 -7
@@ -44,6 +44,7 @@ const typia_1 = __importDefault(require("typia"));
44
44
  const nativeExecutable_1 = require("../nativeExecutable");
45
45
  const resolveGraphBinary_1 = require("../resolveGraphBinary");
46
46
  const TtscGraphMemory_1 = require("./TtscGraphMemory");
47
+ const TtscGraphShardStore_1 = require("./TtscGraphShardStore");
47
48
  const loadGraph_1 = require("./loadGraph");
48
49
  /**
49
50
  * The serve protocol version this client speaks.
@@ -54,8 +55,7 @@ const loadGraph_1 = require("./loadGraph");
54
55
  * constant out of this file and fails if the pair drifts.
55
56
  */
56
57
  const PROTOCOL_VERSION = 1;
57
- const DEFAULT_REQUEST_TIMEOUT_MS = 300000;
58
- const MAX_TIMER_MS = 2147483647;
58
+ const GRAPH_SNAPSHOT_PROTOCOL_VERSION = 1;
59
59
  const TERMINATION_GRACE_MS = 1000;
60
60
  /**
61
61
  * Resident bridge to `ttscgraph serve`.
@@ -69,20 +69,14 @@ class TtscGraphSession {
69
69
  cwd;
70
70
  tsconfig;
71
71
  binary;
72
- requestTimeoutMs;
73
72
  child;
74
73
  nextId = 0;
75
74
  pending = new Map();
76
75
  queue = Promise.resolve();
77
76
  current;
77
+ shardStore = new TtscGraphShardStore_1.TtscGraphShardStore();
78
78
  closed = false;
79
79
  constructor(options) {
80
- const requestTimeoutMs = options.requestTimeoutMs ?? DEFAULT_REQUEST_TIMEOUT_MS;
81
- if (!Number.isSafeInteger(requestTimeoutMs) ||
82
- requestTimeoutMs <= 0 ||
83
- requestTimeoutMs > MAX_TIMER_MS) {
84
- throw new TypeError(`@ttsc/graph: requestTimeoutMs must be an integer between 1 and ${String(MAX_TIMER_MS)}`);
85
- }
86
80
  // Resolve the platform binary from the project this session serves, so the
87
81
  // MCP server started from an unrelated directory still finds the target's
88
82
  // installed `ttsc`.
@@ -96,7 +90,6 @@ class TtscGraphSession {
96
90
  this.cwd = options.cwd;
97
91
  this.tsconfig = options.tsconfig;
98
92
  this.binary = binary;
99
- this.requestTimeoutMs = requestTimeoutMs;
100
93
  }
101
94
  /** Return a graph for the current disk snapshot, serialized per tool call. */
102
95
  graph(options = {}) {
@@ -161,20 +154,63 @@ class TtscGraphSession {
161
154
  // The protocol version and the envelope shape were both settled in onLine,
162
155
  // before this frame was ever routed here.
163
156
  const response = await this.request(signal);
157
+ this.assertResponseSemantics(response);
164
158
  if (response.error !== undefined) {
165
159
  throw new Error(`@ttsc/graph: ${response.error}`);
166
160
  }
167
161
  if (response.changed) {
168
- if (response.dump === undefined) {
169
- throw new Error(`@ttsc/graph: native ${response.mode} response omitted its dump`);
162
+ if (response.snapshot !== undefined) {
163
+ try {
164
+ this.current = TtscGraphMemory_1.TtscGraphMemory.from(this.shardStore.apply(response.snapshot));
165
+ }
166
+ catch (error) {
167
+ const failure = asError(error);
168
+ if (this.child !== undefined)
169
+ this.failChild(this.child, failure);
170
+ throw failure;
171
+ }
172
+ }
173
+ else if (response.dump !== undefined) {
174
+ // A serve-protocol-v1 binary predating graph shard negotiation ignores
175
+ // the optional request field and retains the complete-dump response.
176
+ this.current = TtscGraphMemory_1.TtscGraphMemory.from(response.dump);
177
+ }
178
+ else {
179
+ throw new Error(`@ttsc/graph: native ${response.mode} response omitted both graph snapshot protocol v${String(GRAPH_SNAPSHOT_PROTOCOL_VERSION)} data and a compatible dump`);
170
180
  }
171
- this.current = TtscGraphMemory_1.TtscGraphMemory.from(response.dump);
172
181
  }
173
182
  if (this.current === undefined) {
174
183
  throw new Error("@ttsc/graph: native session returned no initial graph snapshot");
175
184
  }
176
185
  return this.current;
177
186
  }
187
+ assertResponseSemantics(response) {
188
+ const bodies = Number(response.dump !== undefined) +
189
+ Number(response.snapshot !== undefined);
190
+ let problem;
191
+ if (response.error !== undefined) {
192
+ if (response.mode !== "error" || response.changed || bodies !== 0) {
193
+ problem = "an error response carried snapshot state";
194
+ }
195
+ }
196
+ else if (response.mode === "error") {
197
+ problem = "an error-mode response omitted its error";
198
+ }
199
+ else if (response.changed) {
200
+ if (response.mode === "unchanged" || bodies !== 1) {
201
+ problem = "a changed response did not carry exactly one snapshot body";
202
+ }
203
+ }
204
+ else if (response.mode !== "unchanged" || bodies !== 0) {
205
+ problem = "an unchanged response carried changed mode or snapshot state";
206
+ }
207
+ if (problem === undefined)
208
+ return;
209
+ const error = new Error(`@ttsc/graph: native session returned ${problem}`);
210
+ if (this.child !== undefined)
211
+ this.failChild(this.child, error);
212
+ throw error;
213
+ }
178
214
  request(signal) {
179
215
  if (signal?.aborted)
180
216
  throw cancelledError(signal);
@@ -185,12 +221,8 @@ class TtscGraphSession {
185
221
  child,
186
222
  resolve,
187
223
  reject,
188
- timer: setTimeout(() => {
189
- this.failChild(child, new Error(`@ttsc/graph: native snapshot request timed out after ${String(this.requestTimeoutMs)} ms${stderrSuffix(child)}`));
190
- }, this.requestTimeoutMs),
191
224
  signal,
192
225
  };
193
- pending.timer.unref();
194
226
  if (signal !== undefined) {
195
227
  pending.abort = () => this.failChild(child, cancelledError(signal, child));
196
228
  signal.addEventListener("abort", pending.abort, { once: true });
@@ -200,7 +232,7 @@ class TtscGraphSession {
200
232
  pending.abort();
201
233
  return;
202
234
  }
203
- child.process.stdin.write(`${JSON.stringify({ id })}\n`, (error) => {
235
+ child.process.stdin.write(`${JSON.stringify({ id, graphSnapshotVersion: GRAPH_SNAPSHOT_PROTOCOL_VERSION })}\n`, (error) => {
204
236
  if (error === null || error === undefined)
205
237
  return;
206
238
  if (this.pending.get(id) !== pending)
@@ -275,35 +307,50 @@ class TtscGraphSession {
275
307
  // routes the frame — were the unchecked ones. Anything added to the
276
308
  // envelope belongs on this side of that line.
277
309
  response = (() => {
278
- const _ip0 = input => Array.isArray(input["capabilities"]) && input["capabilities"].every(elem => "string" === typeof elem);
279
- const _ip1 = input => "string" === typeof input["file"];
280
- const _ip2 = input => "string" === typeof input["id"];
281
- const _ip3 = input => true === _iv0.has(input["kind"]);
282
- const _iv0 = new Set(["class", "enum", "external_symbol", "file", "function", "interface", "method", "module", "namespace", "package", "parameter", "property", "type", "variable"]);
283
- const _ip4 = input => "string" === typeof input["name"];
284
- const _ip5 = input => undefined === input["qualifiedName"] || "string" === typeof input["qualifiedName"];
285
- const _ip6 = input => "boolean" === typeof input["external"];
286
- const _ip7 = input => undefined === input["ignored"] || "boolean" === typeof input["ignored"];
287
- const _ip8 = input => undefined === input["exported"] || "boolean" === typeof input["exported"];
288
- const _ip9 = input => undefined === input["closure"] || "boolean" === typeof input["closure"];
289
- const _ip10 = input => undefined === input["modifiers"] || Array.isArray(input["modifiers"]) && input["modifiers"].every(elem => true === _iv1.has(elem));
290
- const _iv1 = new Set(["abstract", "async", "const", "declare", "default", "export", "optional", "private", "protected", "public", "readonly", "static"]);
291
- const _ip11 = input => undefined === input["literals"] || Array.isArray(input["literals"]) && input["literals"].every(elem => "string" === typeof elem);
292
- const _ip12 = input => undefined === input["enumMembers"] || Array.isArray(input["enumMembers"]) && input["enumMembers"].every(elem => "object" === typeof elem && null !== elem && _io10(elem));
293
- const _ip13 = input => undefined === input["objectMembers"] || Array.isArray(input["objectMembers"]) && input["objectMembers"].every(elem => "object" === typeof elem && null !== elem && _io11(elem));
294
- const _ip14 = input => undefined === input["decorators"] || Array.isArray(input["decorators"]) && input["decorators"].every(elem => "object" === typeof elem && null !== elem && _io12(elem));
295
- const _ip15 = input => undefined === input["signature"] || "string" === typeof input["signature"];
296
- const _ip16 = input => undefined === input["evidence"] || "object" === typeof input["evidence"] && null !== input["evidence"] && _io14(input["evidence"]);
297
- const _ip17 = input => undefined === input["implementation"] || "object" === typeof input["implementation"] && null !== input["implementation"] && _io14(input["implementation"]);
298
- const _iv2 = new Set(["accesses", "calls", "contains", "decorates", "dispatches", "exports", "extends", "implements", "imports", "instantiates", "overrides", "renders", "tests", "type_ref"]);
299
- const _ap0 = (input, _path, _exceptionable = true) => (Array.isArray(input["capabilities"]) || _assertGuard_1._assertGuard(_exceptionable, {
310
+ const _ip0 = input => "number" === typeof input["protocolVersion"];
311
+ const _ip1 = input => Array.isArray(input["capabilities"]) && input["capabilities"].every(elem => "string" === typeof elem);
312
+ const _ip2 = input => "string" === typeof input["project"];
313
+ const _ip3 = input => "string" === typeof input["tsconfig"];
314
+ const _ip4 = input => Array.isArray(input["diagnostics"]) && input["diagnostics"].every(elem => "object" === typeof elem && null !== elem && _io8(elem));
315
+ const _ip5 = input => Array.isArray(input["nodes"]) && input["nodes"].every(elem => "object" === typeof elem && null !== elem && _io9(elem));
316
+ const _ip6 = input => Array.isArray(input["edges"]) && input["edges"].every(elem => "object" === typeof elem && null !== elem && _io15(elem));
317
+ const _ip7 = input => "number" === typeof input["schemaVersion"];
318
+ const _ip8 = input => "object" === typeof input["producer"] && null !== input["producer"] && _io3(input["producer"]);
319
+ const _ip9 = input => "object" === typeof input["universe"] && null !== input["universe"] && _io4(input["universe"]);
320
+ const _ip10 = input => "string" === typeof input["file"];
321
+ const _ip11 = input => "string" === typeof input["digest"];
322
+ const _ip12 = input => "string" === typeof input["id"];
323
+ const _ip13 = input => "string" === typeof input["name"];
324
+ const _ip14 = input => undefined === input["qualifiedName"] || "string" === typeof input["qualifiedName"];
325
+ const _ip15 = input => "boolean" === typeof input["external"];
326
+ const _ip16 = input => undefined === input["ignored"] || "boolean" === typeof input["ignored"];
327
+ const _ip17 = input => undefined === input["exported"] || "boolean" === typeof input["exported"];
328
+ const _ip18 = input => undefined === input["closure"] || "boolean" === typeof input["closure"];
329
+ const _ip19 = input => undefined === input["modifiers"] || Array.isArray(input["modifiers"]) && input["modifiers"].every(elem => true === _iv0.has(elem));
330
+ const _iv0 = new Set(["abstract", "async", "const", "declare", "default", "export", "private", "protected", "public", "readonly", "static"]);
331
+ const _ip20 = input => undefined === input["literals"] || Array.isArray(input["literals"]) && input["literals"].every(elem => "string" === typeof elem);
332
+ const _ip21 = input => undefined === input["enumMembers"] || Array.isArray(input["enumMembers"]) && input["enumMembers"].every(elem => "object" === typeof elem && null !== elem && _io10(elem));
333
+ const _ip22 = input => undefined === input["objectMembers"] || Array.isArray(input["objectMembers"]) && input["objectMembers"].every(elem => "object" === typeof elem && null !== elem && _io11(elem));
334
+ const _ip23 = input => undefined === input["decorators"] || Array.isArray(input["decorators"]) && input["decorators"].every(elem => "object" === typeof elem && null !== elem && _io12(elem));
335
+ const _ip24 = input => undefined === input["signature"] || "string" === typeof input["signature"];
336
+ const _ip25 = input => "class" === input["kind"] || "enum" === input["kind"] || "function" === input["kind"] || "interface" === input["kind"] || "method" === input["kind"] || "module" === input["kind"] || "type" === input["kind"] || "variable" === input["kind"];
337
+ const _ip26 = input => undefined === input["evidence"] || "object" === typeof input["evidence"] && null !== input["evidence"] && _io14(input["evidence"]);
338
+ const _ip27 = input => undefined === input["implementation"] || "object" === typeof input["implementation"] && null !== input["implementation"] && _io14(input["implementation"]);
339
+ const _ip28 = input => "string" === typeof input["key"];
340
+ const _ap0 = (input, _path, _exceptionable = true) => "number" === typeof input["protocolVersion"] || _assertGuard_1._assertGuard(_exceptionable, {
341
+ method: "typia.assert",
342
+ path: _path + ".protocolVersion",
343
+ expected: "number",
344
+ value: input["protocolVersion"]
345
+ }, _errorFactory);
346
+ const _ap1 = (input, _path, _exceptionable = true) => (Array.isArray(input["capabilities"]) || _assertGuard_1._assertGuard(_exceptionable, {
300
347
  method: "typia.assert",
301
348
  path: _path + ".capabilities",
302
349
  expected: "Array<string>",
303
350
  value: input["capabilities"]
304
- }, _errorFactory)) && input["capabilities"].every((elem, _index14) => "string" === typeof elem || _assertGuard_1._assertGuard(_exceptionable, {
351
+ }, _errorFactory)) && input["capabilities"].every((elem, _index17) => "string" === typeof elem || _assertGuard_1._assertGuard(_exceptionable, {
305
352
  method: "typia.assert",
306
- path: _path + ".capabilities[" + _index14 + "]",
353
+ path: _path + ".capabilities[" + _index17 + "]",
307
354
  expected: "string",
308
355
  value: elem
309
356
  }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
@@ -312,71 +359,172 @@ class TtscGraphSession {
312
359
  expected: "Array<string>",
313
360
  value: input["capabilities"]
314
361
  }, _errorFactory);
315
- const _ap1 = (input, _path, _exceptionable = true) => "string" === typeof input["file"] || _assertGuard_1._assertGuard(_exceptionable, {
362
+ const _ap2 = (input, _path, _exceptionable = true) => "string" === typeof input["project"] || _assertGuard_1._assertGuard(_exceptionable, {
363
+ method: "typia.assert",
364
+ path: _path + ".project",
365
+ expected: "string",
366
+ value: input["project"]
367
+ }, _errorFactory);
368
+ const _ap3 = (input, _path, _exceptionable = true) => "string" === typeof input["tsconfig"] || _assertGuard_1._assertGuard(_exceptionable, {
369
+ method: "typia.assert",
370
+ path: _path + ".tsconfig",
371
+ expected: "string",
372
+ value: input["tsconfig"]
373
+ }, _errorFactory);
374
+ const _ap4 = (input, _path, _exceptionable = true) => (Array.isArray(input["diagnostics"]) || _assertGuard_1._assertGuard(_exceptionable, {
375
+ method: "typia.assert",
376
+ path: _path + ".diagnostics",
377
+ expected: "Array<ITtscGraphDump.IDiagnostic>",
378
+ value: input["diagnostics"]
379
+ }, _errorFactory)) && input["diagnostics"].every((elem, _index18) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
380
+ method: "typia.assert",
381
+ path: _path + ".diagnostics[" + _index18 + "]",
382
+ expected: "ITtscGraphDump.IDiagnostic",
383
+ value: elem
384
+ }, _errorFactory)) && _ao8(elem, _path + ".diagnostics[" + _index18 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
385
+ method: "typia.assert",
386
+ path: _path + ".diagnostics[" + _index18 + "]",
387
+ expected: "ITtscGraphDump.IDiagnostic",
388
+ value: elem
389
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
390
+ method: "typia.assert",
391
+ path: _path + ".diagnostics",
392
+ expected: "Array<ITtscGraphDump.IDiagnostic>",
393
+ value: input["diagnostics"]
394
+ }, _errorFactory);
395
+ const _ap5 = (input, _path, _exceptionable = true) => (Array.isArray(input["nodes"]) || _assertGuard_1._assertGuard(_exceptionable, {
396
+ method: "typia.assert",
397
+ path: _path + ".nodes",
398
+ expected: "Array<ITtscGraphDump.INode>",
399
+ value: input["nodes"]
400
+ }, _errorFactory)) && input["nodes"].every((elem, _index19) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
401
+ method: "typia.assert",
402
+ path: _path + ".nodes[" + _index19 + "]",
403
+ expected: "ITtscGraphDump.INode",
404
+ value: elem
405
+ }, _errorFactory)) && _ao9(elem, _path + ".nodes[" + _index19 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
406
+ method: "typia.assert",
407
+ path: _path + ".nodes[" + _index19 + "]",
408
+ expected: "ITtscGraphDump.INode",
409
+ value: elem
410
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
411
+ method: "typia.assert",
412
+ path: _path + ".nodes",
413
+ expected: "Array<ITtscGraphDump.INode>",
414
+ value: input["nodes"]
415
+ }, _errorFactory);
416
+ const _ap6 = (input, _path, _exceptionable = true) => (Array.isArray(input["edges"]) || _assertGuard_1._assertGuard(_exceptionable, {
417
+ method: "typia.assert",
418
+ path: _path + ".edges",
419
+ expected: "Array<ITtscGraphDump.IEdge>",
420
+ value: input["edges"]
421
+ }, _errorFactory)) && input["edges"].every((elem, _index20) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
422
+ method: "typia.assert",
423
+ path: _path + ".edges[" + _index20 + "]",
424
+ expected: "ITtscGraphDump.IEdge",
425
+ value: elem
426
+ }, _errorFactory)) && _ao15(elem, _path + ".edges[" + _index20 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
427
+ method: "typia.assert",
428
+ path: _path + ".edges[" + _index20 + "]",
429
+ expected: "ITtscGraphDump.IEdge",
430
+ value: elem
431
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
432
+ method: "typia.assert",
433
+ path: _path + ".edges",
434
+ expected: "Array<ITtscGraphDump.IEdge>",
435
+ value: input["edges"]
436
+ }, _errorFactory);
437
+ const _ap7 = (input, _path, _exceptionable = true) => "number" === typeof input["schemaVersion"] || _assertGuard_1._assertGuard(_exceptionable, {
438
+ method: "typia.assert",
439
+ path: _path + ".schemaVersion",
440
+ expected: "number",
441
+ value: input["schemaVersion"]
442
+ }, _errorFactory);
443
+ const _ap8 = (input, _path, _exceptionable = true) => ("object" === typeof input["producer"] && null !== input["producer"] || _assertGuard_1._assertGuard(_exceptionable, {
444
+ method: "typia.assert",
445
+ path: _path + ".producer",
446
+ expected: "ITtscGraphDump.IProducer",
447
+ value: input["producer"]
448
+ }, _errorFactory)) && _ao3(input["producer"], _path + ".producer", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
449
+ method: "typia.assert",
450
+ path: _path + ".producer",
451
+ expected: "ITtscGraphDump.IProducer",
452
+ value: input["producer"]
453
+ }, _errorFactory);
454
+ const _ap9 = (input, _path, _exceptionable = true) => ("object" === typeof input["universe"] && null !== input["universe"] || _assertGuard_1._assertGuard(_exceptionable, {
455
+ method: "typia.assert",
456
+ path: _path + ".universe",
457
+ expected: "ITtscGraphDump.IUniverse",
458
+ value: input["universe"]
459
+ }, _errorFactory)) && _ao4(input["universe"], _path + ".universe", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
460
+ method: "typia.assert",
461
+ path: _path + ".universe",
462
+ expected: "ITtscGraphDump.IUniverse",
463
+ value: input["universe"]
464
+ }, _errorFactory);
465
+ const _ap10 = (input, _path, _exceptionable = true) => "string" === typeof input["file"] || _assertGuard_1._assertGuard(_exceptionable, {
316
466
  method: "typia.assert",
317
467
  path: _path + ".file",
318
468
  expected: "string",
319
469
  value: input["file"]
320
470
  }, _errorFactory);
321
- const _ap2 = (input, _path, _exceptionable = true) => "string" === typeof input["id"] || _assertGuard_1._assertGuard(_exceptionable, {
471
+ const _ap11 = (input, _path, _exceptionable = true) => "string" === typeof input["digest"] || _assertGuard_1._assertGuard(_exceptionable, {
322
472
  method: "typia.assert",
323
- path: _path + ".id",
473
+ path: _path + ".digest",
324
474
  expected: "string",
325
- value: input["id"]
475
+ value: input["digest"]
326
476
  }, _errorFactory);
327
- const _ap3 = (input, _path, _exceptionable = true) => true === _av0.has(input["kind"]) || _assertGuard_1._assertGuard(_exceptionable, {
477
+ const _ap12 = (input, _path, _exceptionable = true) => "string" === typeof input["id"] || _assertGuard_1._assertGuard(_exceptionable, {
328
478
  method: "typia.assert",
329
- path: _path + ".kind",
330
- expected: _ae0,
331
- value: input["kind"]
479
+ path: _path + ".id",
480
+ expected: "string",
481
+ value: input["id"]
332
482
  }, _errorFactory);
333
- const _av0 = new Set(["class", "enum", "external_symbol", "file", "function", "interface", "method", "module", "namespace", "package", "parameter", "property", "type", "variable"]);
334
- const _ae0 = "(\"class\" | \"enum\" | \"external_symbol\" | \"file\" | \"function\" | \"interface\" | \"method\" | \"module\" | \"namespace\" | \"package\" | \"parameter\" | \"property\" | \"type\" | \"variable\")";
335
- const _ap4 = (input, _path, _exceptionable = true) => "string" === typeof input["name"] || _assertGuard_1._assertGuard(_exceptionable, {
483
+ const _ap13 = (input, _path, _exceptionable = true) => "string" === typeof input["name"] || _assertGuard_1._assertGuard(_exceptionable, {
336
484
  method: "typia.assert",
337
485
  path: _path + ".name",
338
486
  expected: "string",
339
487
  value: input["name"]
340
488
  }, _errorFactory);
341
- const _ap5 = (input, _path, _exceptionable = true) => undefined === input["qualifiedName"] || "string" === typeof input["qualifiedName"] || _assertGuard_1._assertGuard(_exceptionable, {
489
+ const _ap14 = (input, _path, _exceptionable = true) => undefined === input["qualifiedName"] || "string" === typeof input["qualifiedName"] || _assertGuard_1._assertGuard(_exceptionable, {
342
490
  method: "typia.assert",
343
491
  path: _path + ".qualifiedName",
344
492
  expected: "(string | undefined)",
345
493
  value: input["qualifiedName"]
346
494
  }, _errorFactory);
347
- const _ap6 = (input, _path, _exceptionable = true) => "boolean" === typeof input["external"] || _assertGuard_1._assertGuard(_exceptionable, {
495
+ const _ap15 = (input, _path, _exceptionable = true) => "boolean" === typeof input["external"] || _assertGuard_1._assertGuard(_exceptionable, {
348
496
  method: "typia.assert",
349
497
  path: _path + ".external",
350
498
  expected: "boolean",
351
499
  value: input["external"]
352
500
  }, _errorFactory);
353
- const _ap7 = (input, _path, _exceptionable = true) => undefined === input["ignored"] || "boolean" === typeof input["ignored"] || _assertGuard_1._assertGuard(_exceptionable, {
501
+ const _ap16 = (input, _path, _exceptionable = true) => undefined === input["ignored"] || "boolean" === typeof input["ignored"] || _assertGuard_1._assertGuard(_exceptionable, {
354
502
  method: "typia.assert",
355
503
  path: _path + ".ignored",
356
504
  expected: "(boolean | undefined)",
357
505
  value: input["ignored"]
358
506
  }, _errorFactory);
359
- const _ap8 = (input, _path, _exceptionable = true) => undefined === input["exported"] || "boolean" === typeof input["exported"] || _assertGuard_1._assertGuard(_exceptionable, {
507
+ const _ap17 = (input, _path, _exceptionable = true) => undefined === input["exported"] || "boolean" === typeof input["exported"] || _assertGuard_1._assertGuard(_exceptionable, {
360
508
  method: "typia.assert",
361
509
  path: _path + ".exported",
362
510
  expected: "(boolean | undefined)",
363
511
  value: input["exported"]
364
512
  }, _errorFactory);
365
- const _ap9 = (input, _path, _exceptionable = true) => undefined === input["closure"] || "boolean" === typeof input["closure"] || _assertGuard_1._assertGuard(_exceptionable, {
513
+ const _ap18 = (input, _path, _exceptionable = true) => undefined === input["closure"] || "boolean" === typeof input["closure"] || _assertGuard_1._assertGuard(_exceptionable, {
366
514
  method: "typia.assert",
367
515
  path: _path + ".closure",
368
516
  expected: "(boolean | undefined)",
369
517
  value: input["closure"]
370
518
  }, _errorFactory);
371
- const _ap10 = (input, _path, _exceptionable = true) => undefined === input["modifiers"] || (Array.isArray(input["modifiers"]) || _assertGuard_1._assertGuard(_exceptionable, {
519
+ const _ap19 = (input, _path, _exceptionable = true) => undefined === input["modifiers"] || (Array.isArray(input["modifiers"]) || _assertGuard_1._assertGuard(_exceptionable, {
372
520
  method: "typia.assert",
373
521
  path: _path + ".modifiers",
374
522
  expected: "(Array<TtscGraphNodeModifier> | undefined)",
375
523
  value: input["modifiers"]
376
- }, _errorFactory)) && input["modifiers"].every((elem, _index21) => true === _av1.has(elem) || _assertGuard_1._assertGuard(_exceptionable, {
524
+ }, _errorFactory)) && input["modifiers"].every((elem, _index24) => true === _av0.has(elem) || _assertGuard_1._assertGuard(_exceptionable, {
377
525
  method: "typia.assert",
378
- path: _path + ".modifiers[" + _index21 + "]",
379
- expected: _ae1,
526
+ path: _path + ".modifiers[" + _index24 + "]",
527
+ expected: _ae0,
380
528
  value: elem
381
529
  }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
382
530
  method: "typia.assert",
@@ -384,16 +532,16 @@ class TtscGraphSession {
384
532
  expected: "(Array<TtscGraphNodeModifier> | undefined)",
385
533
  value: input["modifiers"]
386
534
  }, _errorFactory);
387
- const _av1 = new Set(["abstract", "async", "const", "declare", "default", "export", "optional", "private", "protected", "public", "readonly", "static"]);
388
- const _ae1 = "(\"abstract\" | \"async\" | \"const\" | \"declare\" | \"default\" | \"export\" | \"optional\" | \"private\" | \"protected\" | \"public\" | \"readonly\" | \"static\")";
389
- const _ap11 = (input, _path, _exceptionable = true) => undefined === input["literals"] || (Array.isArray(input["literals"]) || _assertGuard_1._assertGuard(_exceptionable, {
535
+ const _av0 = new Set(["abstract", "async", "const", "declare", "default", "export", "private", "protected", "public", "readonly", "static"]);
536
+ const _ae0 = "(\"abstract\" | \"async\" | \"const\" | \"declare\" | \"default\" | \"export\" | \"private\" | \"protected\" | \"public\" | \"readonly\" | \"static\")";
537
+ const _ap20 = (input, _path, _exceptionable = true) => undefined === input["literals"] || (Array.isArray(input["literals"]) || _assertGuard_1._assertGuard(_exceptionable, {
390
538
  method: "typia.assert",
391
539
  path: _path + ".literals",
392
540
  expected: "(Array<string> | undefined)",
393
541
  value: input["literals"]
394
- }, _errorFactory)) && input["literals"].every((elem, _index22) => "string" === typeof elem || _assertGuard_1._assertGuard(_exceptionable, {
542
+ }, _errorFactory)) && input["literals"].every((elem, _index25) => "string" === typeof elem || _assertGuard_1._assertGuard(_exceptionable, {
395
543
  method: "typia.assert",
396
- path: _path + ".literals[" + _index22 + "]",
544
+ path: _path + ".literals[" + _index25 + "]",
397
545
  expected: "string",
398
546
  value: elem
399
547
  }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
@@ -402,19 +550,19 @@ class TtscGraphSession {
402
550
  expected: "(Array<string> | undefined)",
403
551
  value: input["literals"]
404
552
  }, _errorFactory);
405
- const _ap12 = (input, _path, _exceptionable = true) => undefined === input["enumMembers"] || (Array.isArray(input["enumMembers"]) || _assertGuard_1._assertGuard(_exceptionable, {
553
+ const _ap21 = (input, _path, _exceptionable = true) => undefined === input["enumMembers"] || (Array.isArray(input["enumMembers"]) || _assertGuard_1._assertGuard(_exceptionable, {
406
554
  method: "typia.assert",
407
555
  path: _path + ".enumMembers",
408
556
  expected: "(Array<ITtscGraphNode.IEnumMember> | undefined)",
409
557
  value: input["enumMembers"]
410
- }, _errorFactory)) && input["enumMembers"].every((elem, _index23) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
558
+ }, _errorFactory)) && input["enumMembers"].every((elem, _index26) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
411
559
  method: "typia.assert",
412
- path: _path + ".enumMembers[" + _index23 + "]",
560
+ path: _path + ".enumMembers[" + _index26 + "]",
413
561
  expected: "ITtscGraphNode.IEnumMember",
414
562
  value: elem
415
- }, _errorFactory)) && _ao10(elem, _path + ".enumMembers[" + _index23 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
563
+ }, _errorFactory)) && _ao10(elem, _path + ".enumMembers[" + _index26 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
416
564
  method: "typia.assert",
417
- path: _path + ".enumMembers[" + _index23 + "]",
565
+ path: _path + ".enumMembers[" + _index26 + "]",
418
566
  expected: "ITtscGraphNode.IEnumMember",
419
567
  value: elem
420
568
  }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
@@ -423,19 +571,19 @@ class TtscGraphSession {
423
571
  expected: "(Array<ITtscGraphNode.IEnumMember> | undefined)",
424
572
  value: input["enumMembers"]
425
573
  }, _errorFactory);
426
- const _ap13 = (input, _path, _exceptionable = true) => undefined === input["objectMembers"] || (Array.isArray(input["objectMembers"]) || _assertGuard_1._assertGuard(_exceptionable, {
574
+ const _ap22 = (input, _path, _exceptionable = true) => undefined === input["objectMembers"] || (Array.isArray(input["objectMembers"]) || _assertGuard_1._assertGuard(_exceptionable, {
427
575
  method: "typia.assert",
428
576
  path: _path + ".objectMembers",
429
577
  expected: "(Array<ITtscGraphNode.IObjectMember> | undefined)",
430
578
  value: input["objectMembers"]
431
- }, _errorFactory)) && input["objectMembers"].every((elem, _index24) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
579
+ }, _errorFactory)) && input["objectMembers"].every((elem, _index27) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
432
580
  method: "typia.assert",
433
- path: _path + ".objectMembers[" + _index24 + "]",
581
+ path: _path + ".objectMembers[" + _index27 + "]",
434
582
  expected: "ITtscGraphNode.IObjectMember",
435
583
  value: elem
436
- }, _errorFactory)) && _ao11(elem, _path + ".objectMembers[" + _index24 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
584
+ }, _errorFactory)) && _ao11(elem, _path + ".objectMembers[" + _index27 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
437
585
  method: "typia.assert",
438
- path: _path + ".objectMembers[" + _index24 + "]",
586
+ path: _path + ".objectMembers[" + _index27 + "]",
439
587
  expected: "ITtscGraphNode.IObjectMember",
440
588
  value: elem
441
589
  }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
@@ -444,19 +592,19 @@ class TtscGraphSession {
444
592
  expected: "(Array<ITtscGraphNode.IObjectMember> | undefined)",
445
593
  value: input["objectMembers"]
446
594
  }, _errorFactory);
447
- const _ap14 = (input, _path, _exceptionable = true) => undefined === input["decorators"] || (Array.isArray(input["decorators"]) || _assertGuard_1._assertGuard(_exceptionable, {
595
+ const _ap23 = (input, _path, _exceptionable = true) => undefined === input["decorators"] || (Array.isArray(input["decorators"]) || _assertGuard_1._assertGuard(_exceptionable, {
448
596
  method: "typia.assert",
449
597
  path: _path + ".decorators",
450
598
  expected: "(Array<ITtscGraphDecorator> | undefined)",
451
599
  value: input["decorators"]
452
- }, _errorFactory)) && input["decorators"].every((elem, _index25) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
600
+ }, _errorFactory)) && input["decorators"].every((elem, _index28) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
453
601
  method: "typia.assert",
454
- path: _path + ".decorators[" + _index25 + "]",
602
+ path: _path + ".decorators[" + _index28 + "]",
455
603
  expected: "ITtscGraphDecorator",
456
604
  value: elem
457
- }, _errorFactory)) && _ao12(elem, _path + ".decorators[" + _index25 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
605
+ }, _errorFactory)) && _ao12(elem, _path + ".decorators[" + _index28 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
458
606
  method: "typia.assert",
459
- path: _path + ".decorators[" + _index25 + "]",
607
+ path: _path + ".decorators[" + _index28 + "]",
460
608
  expected: "ITtscGraphDecorator",
461
609
  value: elem
462
610
  }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
@@ -465,13 +613,19 @@ class TtscGraphSession {
465
613
  expected: "(Array<ITtscGraphDecorator> | undefined)",
466
614
  value: input["decorators"]
467
615
  }, _errorFactory);
468
- const _ap15 = (input, _path, _exceptionable = true) => undefined === input["signature"] || "string" === typeof input["signature"] || _assertGuard_1._assertGuard(_exceptionable, {
616
+ const _ap24 = (input, _path, _exceptionable = true) => undefined === input["signature"] || "string" === typeof input["signature"] || _assertGuard_1._assertGuard(_exceptionable, {
469
617
  method: "typia.assert",
470
618
  path: _path + ".signature",
471
619
  expected: "(string | undefined)",
472
620
  value: input["signature"]
473
621
  }, _errorFactory);
474
- const _ap16 = (input, _path, _exceptionable = true) => undefined === input["evidence"] || ("object" === typeof input["evidence"] && null !== input["evidence"] || _assertGuard_1._assertGuard(_exceptionable, {
622
+ const _ap25 = (input, _path, _exceptionable = true) => "class" === input["kind"] || "enum" === input["kind"] || "function" === input["kind"] || "interface" === input["kind"] || "method" === input["kind"] || "module" === input["kind"] || "type" === input["kind"] || "variable" === input["kind"] || _assertGuard_1._assertGuard(_exceptionable, {
623
+ method: "typia.assert",
624
+ path: _path + ".kind",
625
+ expected: "(\"class\" | \"enum\" | \"function\" | \"interface\" | \"method\" | \"module\" | \"type\" | \"variable\")",
626
+ value: input["kind"]
627
+ }, _errorFactory);
628
+ const _ap26 = (input, _path, _exceptionable = true) => undefined === input["evidence"] || ("object" === typeof input["evidence"] && null !== input["evidence"] || _assertGuard_1._assertGuard(_exceptionable, {
475
629
  method: "typia.assert",
476
630
  path: _path + ".evidence",
477
631
  expected: "(ITtscGraphSpan | undefined)",
@@ -482,7 +636,7 @@ class TtscGraphSession {
482
636
  expected: "(ITtscGraphSpan | undefined)",
483
637
  value: input["evidence"]
484
638
  }, _errorFactory);
485
- const _ap17 = (input, _path, _exceptionable = true) => undefined === input["implementation"] || ("object" === typeof input["implementation"] && null !== input["implementation"] || _assertGuard_1._assertGuard(_exceptionable, {
639
+ const _ap27 = (input, _path, _exceptionable = true) => undefined === input["implementation"] || ("object" === typeof input["implementation"] && null !== input["implementation"] || _assertGuard_1._assertGuard(_exceptionable, {
486
640
  method: "typia.assert",
487
641
  path: _path + ".implementation",
488
642
  expected: "(ITtscGraphSpan | undefined)",
@@ -493,24 +647,23 @@ class TtscGraphSession {
493
647
  expected: "(ITtscGraphSpan | undefined)",
494
648
  value: input["implementation"]
495
649
  }, _errorFactory);
496
- const _av2 = new Set(["accesses", "calls", "contains", "decorates", "dispatches", "exports", "extends", "implements", "imports", "instantiates", "overrides", "renders", "tests", "type_ref"]);
497
- const _ae2 = "(\"accesses\" | \"calls\" | \"contains\" | \"decorates\" | \"dispatches\" | \"exports\" | \"extends\" | \"implements\" | \"imports\" | \"instantiates\" | \"overrides\" | \"renders\" | \"tests\" | \"type_ref\")";
650
+ const _ap28 = (input, _path, _exceptionable = true) => "string" === typeof input["key"] || _assertGuard_1._assertGuard(_exceptionable, {
651
+ method: "typia.assert",
652
+ path: _path + ".key",
653
+ expected: "string",
654
+ value: input["key"]
655
+ }, _errorFactory);
498
656
  const _ao0 = (input, _path, _exceptionable = true) => ("number" === typeof input.id || _assertGuard_1._assertGuard(_exceptionable, {
499
657
  method: "typia.assert",
500
658
  path: _path + ".id",
501
659
  expected: "number",
502
660
  value: input.id
503
- }, _errorFactory)) && ("number" === typeof input.protocolVersion || _assertGuard_1._assertGuard(_exceptionable, {
504
- method: "typia.assert",
505
- path: _path + ".protocolVersion",
506
- expected: "number",
507
- value: input.protocolVersion
508
- }, _errorFactory)) && ("error" === input.mode || "incremental" === input.mode || "initial" === input.mode || "rebuild" === input.mode || "reload" === input.mode || "unchanged" === input.mode || _assertGuard_1._assertGuard(_exceptionable, {
661
+ }, _errorFactory)) && _ap0(input, _path, true && _exceptionable) && ("error" === input.mode || "incremental" === input.mode || "initial" === input.mode || "rebuild" === input.mode || "reload" === input.mode || "unchanged" === input.mode || _assertGuard_1._assertGuard(_exceptionable, {
509
662
  method: "typia.assert",
510
663
  path: _path + ".mode",
511
664
  expected: "(\"error\" | \"incremental\" | \"initial\" | \"rebuild\" | \"reload\" | \"unchanged\")",
512
665
  value: input.mode
513
- }, _errorFactory)) && _ap0(input, _path, true && _exceptionable) && ("boolean" === typeof input.changed || _assertGuard_1._assertGuard(_exceptionable, {
666
+ }, _errorFactory)) && _ap1(input, _path, true && _exceptionable) && ("boolean" === typeof input.changed || _assertGuard_1._assertGuard(_exceptionable, {
514
667
  method: "typia.assert",
515
668
  path: _path + ".changed",
516
669
  expected: "boolean",
@@ -525,23 +678,23 @@ class TtscGraphSession {
525
678
  path: _path + ".dump",
526
679
  expected: "(ITtscGraphDump | undefined)",
527
680
  value: input.dump
681
+ }, _errorFactory)) && (undefined === input.snapshot || ("object" === typeof input.snapshot && null !== input.snapshot || _assertGuard_1._assertGuard(_exceptionable, {
682
+ method: "typia.assert",
683
+ path: _path + ".snapshot",
684
+ expected: "(ITtscGraphSnapshot.ITransaction | undefined)",
685
+ value: input.snapshot
686
+ }, _errorFactory)) && _ao16(input.snapshot, _path + ".snapshot", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
687
+ method: "typia.assert",
688
+ path: _path + ".snapshot",
689
+ expected: "(ITtscGraphSnapshot.ITransaction | undefined)",
690
+ value: input.snapshot
528
691
  }, _errorFactory)) && (undefined === input.error || "string" === typeof input.error || _assertGuard_1._assertGuard(_exceptionable, {
529
692
  method: "typia.assert",
530
693
  path: _path + ".error",
531
694
  expected: "(string | undefined)",
532
695
  value: input.error
533
696
  }, _errorFactory));
534
- const _ao1 = (input, _path, _exceptionable = true) => ("string" === typeof input.project || _assertGuard_1._assertGuard(_exceptionable, {
535
- method: "typia.assert",
536
- path: _path + ".project",
537
- expected: "string",
538
- value: input.project
539
- }, _errorFactory)) && ("string" === typeof input.tsconfig || _assertGuard_1._assertGuard(_exceptionable, {
540
- method: "typia.assert",
541
- path: _path + ".tsconfig",
542
- expected: "string",
543
- value: input.tsconfig
544
- }, _errorFactory)) && (("object" === typeof input.provenance && null !== input.provenance || _assertGuard_1._assertGuard(_exceptionable, {
697
+ const _ao1 = (input, _path, _exceptionable = true) => _ap2(input, _path, true && _exceptionable) && _ap3(input, _path, true && _exceptionable) && (("object" === typeof input.provenance && null !== input.provenance || _assertGuard_1._assertGuard(_exceptionable, {
545
698
  method: "typia.assert",
546
699
  path: _path + ".provenance",
547
700
  expected: "ITtscGraphDump.IProvenance",
@@ -551,74 +704,14 @@ class TtscGraphSession {
551
704
  path: _path + ".provenance",
552
705
  expected: "ITtscGraphDump.IProvenance",
553
706
  value: input.provenance
554
- }, _errorFactory)) && ((Array.isArray(input.diagnostics) || _assertGuard_1._assertGuard(_exceptionable, {
555
- method: "typia.assert",
556
- path: _path + ".diagnostics",
557
- expected: "Array<ITtscGraphDump.IDiagnostic>",
558
- value: input.diagnostics
559
- }, _errorFactory)) && input.diagnostics.every((elem, _index15) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
560
- method: "typia.assert",
561
- path: _path + ".diagnostics[" + _index15 + "]",
562
- expected: "ITtscGraphDump.IDiagnostic",
563
- value: elem
564
- }, _errorFactory)) && _ao8(elem, _path + ".diagnostics[" + _index15 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
565
- method: "typia.assert",
566
- path: _path + ".diagnostics[" + _index15 + "]",
567
- expected: "ITtscGraphDump.IDiagnostic",
568
- value: elem
569
- }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
570
- method: "typia.assert",
571
- path: _path + ".diagnostics",
572
- expected: "Array<ITtscGraphDump.IDiagnostic>",
573
- value: input.diagnostics
574
- }, _errorFactory)) && ((Array.isArray(input.nodes) || _assertGuard_1._assertGuard(_exceptionable, {
575
- method: "typia.assert",
576
- path: _path + ".nodes",
577
- expected: "Array<ITtscGraphDump.INode>",
578
- value: input.nodes
579
- }, _errorFactory)) && input.nodes.every((elem, _index16) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
580
- method: "typia.assert",
581
- path: _path + ".nodes[" + _index16 + "]",
582
- expected: "ITtscGraphDump.INode",
583
- value: elem
584
- }, _errorFactory)) && _ao9(elem, _path + ".nodes[" + _index16 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
585
- method: "typia.assert",
586
- path: _path + ".nodes[" + _index16 + "]",
587
- expected: "ITtscGraphDump.INode",
588
- value: elem
589
- }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
590
- method: "typia.assert",
591
- path: _path + ".nodes",
592
- expected: "Array<ITtscGraphDump.INode>",
593
- value: input.nodes
594
- }, _errorFactory)) && ((Array.isArray(input.edges) || _assertGuard_1._assertGuard(_exceptionable, {
595
- method: "typia.assert",
596
- path: _path + ".edges",
597
- expected: "Array<ITtscGraphDump.IEdge>",
598
- value: input.edges
599
- }, _errorFactory)) && input.edges.every((elem, _index17) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
600
- method: "typia.assert",
601
- path: _path + ".edges[" + _index17 + "]",
602
- expected: "ITtscGraphDump.IEdge",
603
- value: elem
604
- }, _errorFactory)) && _ao15(elem, _path + ".edges[" + _index17 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
605
- method: "typia.assert",
606
- path: _path + ".edges[" + _index17 + "]",
607
- expected: "ITtscGraphDump.IEdge",
608
- value: elem
609
- }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
610
- method: "typia.assert",
611
- path: _path + ".edges",
612
- expected: "Array<ITtscGraphDump.IEdge>",
613
- value: input.edges
614
- }, _errorFactory));
615
- const _ao10 = (input, _path, _exceptionable = true) => _ap4(input, _path, true && _exceptionable) && (undefined === input.value || "string" === typeof input.value || _assertGuard_1._assertGuard(_exceptionable, {
707
+ }, _errorFactory)) && _ap4(input, _path, true && _exceptionable) && _ap5(input, _path, true && _exceptionable) && _ap6(input, _path, true && _exceptionable);
708
+ const _ao10 = (input, _path, _exceptionable = true) => _ap13(input, _path, true && _exceptionable) && (undefined === input.value || "string" === typeof input.value || _assertGuard_1._assertGuard(_exceptionable, {
616
709
  method: "typia.assert",
617
710
  path: _path + ".value",
618
711
  expected: "(string | undefined)",
619
712
  value: input.value
620
713
  }, _errorFactory));
621
- const _ao11 = (input, _path, _exceptionable = true) => _ap4(input, _path, true && _exceptionable) && ("method" === input.kind || "property" === input.kind || _assertGuard_1._assertGuard(_exceptionable, {
714
+ const _ao11 = (input, _path, _exceptionable = true) => _ap13(input, _path, true && _exceptionable) && ("method" === input.kind || "property" === input.kind || _assertGuard_1._assertGuard(_exceptionable, {
622
715
  method: "typia.assert",
623
716
  path: _path + ".kind",
624
717
  expected: "(\"method\" | \"property\")",
@@ -628,20 +721,20 @@ class TtscGraphSession {
628
721
  path: _path + ".line",
629
722
  expected: "(number | undefined)",
630
723
  value: input.line
631
- }, _errorFactory)) && _ap15(input, _path, true && _exceptionable);
632
- const _ao12 = (input, _path, _exceptionable = true) => _ap4(input, _path, true && _exceptionable) && ((Array.isArray(input.arguments) || _assertGuard_1._assertGuard(_exceptionable, {
724
+ }, _errorFactory)) && _ap24(input, _path, true && _exceptionable);
725
+ const _ao12 = (input, _path, _exceptionable = true) => _ap13(input, _path, true && _exceptionable) && ((Array.isArray(input.arguments) || _assertGuard_1._assertGuard(_exceptionable, {
633
726
  method: "typia.assert",
634
727
  path: _path + ".arguments",
635
728
  expected: "Array<ITtscGraphDecorator.IArgument>",
636
729
  value: input.arguments
637
- }, _errorFactory)) && input.arguments.every((elem, _index26) => ("object" === typeof elem && null !== elem && false === Array.isArray(elem) || _assertGuard_1._assertGuard(_exceptionable, {
730
+ }, _errorFactory)) && input.arguments.every((elem, _index29) => ("object" === typeof elem && null !== elem && false === Array.isArray(elem) || _assertGuard_1._assertGuard(_exceptionable, {
638
731
  method: "typia.assert",
639
- path: _path + ".arguments[" + _index26 + "]",
732
+ path: _path + ".arguments[" + _index29 + "]",
640
733
  expected: "ITtscGraphDecorator.IArgument",
641
734
  value: elem
642
- }, _errorFactory)) && _ao13(elem, _path + ".arguments[" + _index26 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
735
+ }, _errorFactory)) && _ao13(elem, _path + ".arguments[" + _index29 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
643
736
  method: "typia.assert",
644
- path: _path + ".arguments[" + _index26 + "]",
737
+ path: _path + ".arguments[" + _index29 + "]",
645
738
  expected: "ITtscGraphDecorator.IArgument",
646
739
  value: elem
647
740
  }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
@@ -692,50 +785,134 @@ class TtscGraphSession {
692
785
  path: _path + ".to",
693
786
  expected: "string",
694
787
  value: input.to
695
- }, _errorFactory)) && (true === _av2.has(input.kind) || _assertGuard_1._assertGuard(_exceptionable, {
788
+ }, _errorFactory)) && ("accesses" === input.kind || "calls" === input.kind || "exports" === input.kind || "extends" === input.kind || "implements" === input.kind || "instantiates" === input.kind || "overrides" === input.kind || "renders" === input.kind || "type_ref" === input.kind || _assertGuard_1._assertGuard(_exceptionable, {
696
789
  method: "typia.assert",
697
790
  path: _path + ".kind",
698
- expected: _ae2,
791
+ expected: "(\"accesses\" | \"calls\" | \"exports\" | \"extends\" | \"implements\" | \"instantiates\" | \"overrides\" | \"renders\" | \"type_ref\")",
699
792
  value: input.kind
700
- }, _errorFactory)) && _ap16(input, _path, true && _exceptionable);
701
- const _ao2 = (input, _path, _exceptionable = true) => ("number" === typeof input.schemaVersion || _assertGuard_1._assertGuard(_exceptionable, {
793
+ }, _errorFactory)) && _ap26(input, _path, true && _exceptionable);
794
+ const _ao16 = (input, _path, _exceptionable = true) => _ap0(input, _path, true && _exceptionable) && _ap7(input, _path, true && _exceptionable) && _ap2(input, _path, true && _exceptionable) && _ap3(input, _path, true && _exceptionable) && _ap8(input, _path, true && _exceptionable) && _ap1(input, _path, true && _exceptionable) && _ap9(input, _path, true && _exceptionable) && ("number" === typeof input.sequence || _assertGuard_1._assertGuard(_exceptionable, {
702
795
  method: "typia.assert",
703
- path: _path + ".schemaVersion",
796
+ path: _path + ".sequence",
704
797
  expected: "number",
705
- value: input.schemaVersion
706
- }, _errorFactory)) && _ap0(input, _path, true && _exceptionable) && (("object" === typeof input.producer && null !== input.producer || _assertGuard_1._assertGuard(_exceptionable, {
798
+ value: input.sequence
799
+ }, _errorFactory)) && ("string" === typeof input.generation || _assertGuard_1._assertGuard(_exceptionable, {
707
800
  method: "typia.assert",
708
- path: _path + ".producer",
709
- expected: "ITtscGraphDump.IProducer",
710
- value: input.producer
711
- }, _errorFactory)) && _ao3(input.producer, _path + ".producer", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
801
+ path: _path + ".generation",
802
+ expected: "string",
803
+ value: input.generation
804
+ }, _errorFactory)) && (undefined === input.baseSequence || "number" === typeof input.baseSequence || _assertGuard_1._assertGuard(_exceptionable, {
712
805
  method: "typia.assert",
713
- path: _path + ".producer",
714
- expected: "ITtscGraphDump.IProducer",
715
- value: input.producer
716
- }, _errorFactory)) && (("object" === typeof input.universe && null !== input.universe || _assertGuard_1._assertGuard(_exceptionable, {
806
+ path: _path + ".baseSequence",
807
+ expected: "(number | undefined)",
808
+ value: input.baseSequence
809
+ }, _errorFactory)) && (undefined === input.baseGeneration || "string" === typeof input.baseGeneration || _assertGuard_1._assertGuard(_exceptionable, {
717
810
  method: "typia.assert",
718
- path: _path + ".universe",
719
- expected: "ITtscGraphDump.IUniverse",
720
- value: input.universe
721
- }, _errorFactory)) && _ao4(input.universe, _path + ".universe", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
811
+ path: _path + ".baseGeneration",
812
+ expected: "(string | undefined)",
813
+ value: input.baseGeneration
814
+ }, _errorFactory)) && ((Array.isArray(input.upserts) || _assertGuard_1._assertGuard(_exceptionable, {
722
815
  method: "typia.assert",
723
- path: _path + ".universe",
724
- expected: "ITtscGraphDump.IUniverse",
725
- value: input.universe
726
- }, _errorFactory)) && ((Array.isArray(input.sources) || _assertGuard_1._assertGuard(_exceptionable, {
816
+ path: _path + ".upserts",
817
+ expected: "Array<ITtscGraphSnapshot.IShardUpsert>",
818
+ value: input.upserts
819
+ }, _errorFactory)) && input.upserts.every((elem, _index30) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
820
+ method: "typia.assert",
821
+ path: _path + ".upserts[" + _index30 + "]",
822
+ expected: "ITtscGraphSnapshot.IShardUpsert",
823
+ value: elem
824
+ }, _errorFactory)) && _ao17(elem, _path + ".upserts[" + _index30 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
825
+ method: "typia.assert",
826
+ path: _path + ".upserts[" + _index30 + "]",
827
+ expected: "ITtscGraphSnapshot.IShardUpsert",
828
+ value: elem
829
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
830
+ method: "typia.assert",
831
+ path: _path + ".upserts",
832
+ expected: "Array<ITtscGraphSnapshot.IShardUpsert>",
833
+ value: input.upserts
834
+ }, _errorFactory)) && ((Array.isArray(input.deletes) || _assertGuard_1._assertGuard(_exceptionable, {
835
+ method: "typia.assert",
836
+ path: _path + ".deletes",
837
+ expected: "Array<string>",
838
+ value: input.deletes
839
+ }, _errorFactory)) && input.deletes.every((elem, _index31) => "string" === typeof elem || _assertGuard_1._assertGuard(_exceptionable, {
840
+ method: "typia.assert",
841
+ path: _path + ".deletes[" + _index31 + "]",
842
+ expected: "string",
843
+ value: elem
844
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
845
+ method: "typia.assert",
846
+ path: _path + ".deletes",
847
+ expected: "Array<string>",
848
+ value: input.deletes
849
+ }, _errorFactory)) && ((Array.isArray(input.manifest) || _assertGuard_1._assertGuard(_exceptionable, {
850
+ method: "typia.assert",
851
+ path: _path + ".manifest",
852
+ expected: "Array<ITtscGraphSnapshot.IShardReference>",
853
+ value: input.manifest
854
+ }, _errorFactory)) && input.manifest.every((elem, _index32) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
855
+ method: "typia.assert",
856
+ path: _path + ".manifest[" + _index32 + "]",
857
+ expected: "ITtscGraphSnapshot.IShardReference",
858
+ value: elem
859
+ }, _errorFactory)) && _ao19(elem, _path + ".manifest[" + _index32 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
860
+ method: "typia.assert",
861
+ path: _path + ".manifest[" + _index32 + "]",
862
+ expected: "ITtscGraphSnapshot.IShardReference",
863
+ value: elem
864
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
865
+ method: "typia.assert",
866
+ path: _path + ".manifest",
867
+ expected: "Array<ITtscGraphSnapshot.IShardReference>",
868
+ value: input.manifest
869
+ }, _errorFactory));
870
+ const _ao17 = (input, _path, _exceptionable = true) => _ap11(input, _path, true && _exceptionable) && (("object" === typeof input.shard && null !== input.shard || _assertGuard_1._assertGuard(_exceptionable, {
871
+ method: "typia.assert",
872
+ path: _path + ".shard",
873
+ expected: "ITtscGraphSnapshot.IShard",
874
+ value: input.shard
875
+ }, _errorFactory)) && _ao18(input.shard, _path + ".shard", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
876
+ method: "typia.assert",
877
+ path: _path + ".shard",
878
+ expected: "ITtscGraphSnapshot.IShard",
879
+ value: input.shard
880
+ }, _errorFactory));
881
+ const _ao18 = (input, _path, _exceptionable = true) => _ap28(input, _path, true && _exceptionable) && (undefined === input.source || ("object" === typeof input.source && null !== input.source || _assertGuard_1._assertGuard(_exceptionable, {
882
+ method: "typia.assert",
883
+ path: _path + ".source",
884
+ expected: "(ITtscGraphDump.ISourceDigest | undefined)",
885
+ value: input.source
886
+ }, _errorFactory)) && _ao7(input.source, _path + ".source", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
887
+ method: "typia.assert",
888
+ path: _path + ".source",
889
+ expected: "(ITtscGraphDump.ISourceDigest | undefined)",
890
+ value: input.source
891
+ }, _errorFactory)) && (undefined === input.config || ("object" === typeof input.config && null !== input.config || _assertGuard_1._assertGuard(_exceptionable, {
892
+ method: "typia.assert",
893
+ path: _path + ".config",
894
+ expected: "(ITtscGraphDump.IFileDigest | undefined)",
895
+ value: input.config
896
+ }, _errorFactory)) && _ao5(input.config, _path + ".config", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
897
+ method: "typia.assert",
898
+ path: _path + ".config",
899
+ expected: "(ITtscGraphDump.IFileDigest | undefined)",
900
+ value: input.config
901
+ }, _errorFactory)) && _ap5(input, _path, true && _exceptionable) && _ap6(input, _path, true && _exceptionable) && _ap4(input, _path, true && _exceptionable);
902
+ const _ao19 = (input, _path, _exceptionable = true) => _ap28(input, _path, true && _exceptionable) && _ap11(input, _path, true && _exceptionable);
903
+ const _ao2 = (input, _path, _exceptionable = true) => _ap7(input, _path, true && _exceptionable) && _ap1(input, _path, true && _exceptionable) && _ap8(input, _path, true && _exceptionable) && _ap9(input, _path, true && _exceptionable) && ((Array.isArray(input.sources) || _assertGuard_1._assertGuard(_exceptionable, {
727
904
  method: "typia.assert",
728
905
  path: _path + ".sources",
729
906
  expected: "Array<ITtscGraphDump.ISourceDigest>",
730
907
  value: input.sources
731
- }, _errorFactory)) && input.sources.every((elem, _index18) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
908
+ }, _errorFactory)) && input.sources.every((elem, _index21) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
732
909
  method: "typia.assert",
733
- path: _path + ".sources[" + _index18 + "]",
910
+ path: _path + ".sources[" + _index21 + "]",
734
911
  expected: "ITtscGraphDump.ISourceDigest",
735
912
  value: elem
736
- }, _errorFactory)) && _ao7(elem, _path + ".sources[" + _index18 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
913
+ }, _errorFactory)) && _ao7(elem, _path + ".sources[" + _index21 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
737
914
  method: "typia.assert",
738
- path: _path + ".sources[" + _index18 + "]",
915
+ path: _path + ".sources[" + _index21 + "]",
739
916
  expected: "ITtscGraphDump.ISourceDigest",
740
917
  value: elem
741
918
  }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
@@ -765,14 +942,14 @@ class TtscGraphSession {
765
942
  path: _path + ".configs",
766
943
  expected: "Array<ITtscGraphDump.IFileDigest>",
767
944
  value: input.configs
768
- }, _errorFactory)) && input.configs.every((elem, _index19) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
945
+ }, _errorFactory)) && input.configs.every((elem, _index22) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
769
946
  method: "typia.assert",
770
- path: _path + ".configs[" + _index19 + "]",
947
+ path: _path + ".configs[" + _index22 + "]",
771
948
  expected: "ITtscGraphDump.IFileDigest",
772
949
  value: elem
773
- }, _errorFactory)) && _ao5(elem, _path + ".configs[" + _index19 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
950
+ }, _errorFactory)) && _ao5(elem, _path + ".configs[" + _index22 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
774
951
  method: "typia.assert",
775
- path: _path + ".configs[" + _index19 + "]",
952
+ path: _path + ".configs[" + _index22 + "]",
776
953
  expected: "ITtscGraphDump.IFileDigest",
777
954
  value: elem
778
955
  }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
@@ -785,14 +962,14 @@ class TtscGraphSession {
785
962
  path: _path + ".roots",
786
963
  expected: "Array<ITtscGraphDump.IRootFile>",
787
964
  value: input.roots
788
- }, _errorFactory)) && input.roots.every((elem, _index20) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
965
+ }, _errorFactory)) && input.roots.every((elem, _index23) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
789
966
  method: "typia.assert",
790
- path: _path + ".roots[" + _index20 + "]",
967
+ path: _path + ".roots[" + _index23 + "]",
791
968
  expected: "ITtscGraphDump.IRootFile",
792
969
  value: elem
793
- }, _errorFactory)) && _ao6(elem, _path + ".roots[" + _index20 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
970
+ }, _errorFactory)) && _ao6(elem, _path + ".roots[" + _index23 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
794
971
  method: "typia.assert",
795
- path: _path + ".roots[" + _index20 + "]",
972
+ path: _path + ".roots[" + _index23 + "]",
796
973
  expected: "ITtscGraphDump.IRootFile",
797
974
  value: elem
798
975
  }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
@@ -801,19 +978,14 @@ class TtscGraphSession {
801
978
  expected: "Array<ITtscGraphDump.IRootFile>",
802
979
  value: input.roots
803
980
  }, _errorFactory));
804
- const _ao5 = (input, _path, _exceptionable = true) => _ap1(input, _path, true && _exceptionable) && ("string" === typeof input.digest || _assertGuard_1._assertGuard(_exceptionable, {
805
- method: "typia.assert",
806
- path: _path + ".digest",
807
- expected: "string",
808
- value: input.digest
809
- }, _errorFactory));
981
+ const _ao5 = (input, _path, _exceptionable = true) => _ap10(input, _path, true && _exceptionable) && _ap11(input, _path, true && _exceptionable);
810
982
  const _ao6 = (input, _path, _exceptionable = true) => ("string" === typeof input.config || _assertGuard_1._assertGuard(_exceptionable, {
811
983
  method: "typia.assert",
812
984
  path: _path + ".config",
813
985
  expected: "string",
814
986
  value: input.config
815
- }, _errorFactory)) && _ap1(input, _path, true && _exceptionable);
816
- const _ao7 = (input, _path, _exceptionable = true) => _ap1(input, _path, true && _exceptionable) && ("string" === typeof input.checkerDigest || _assertGuard_1._assertGuard(_exceptionable, {
987
+ }, _errorFactory)) && _ap10(input, _path, true && _exceptionable);
988
+ const _ao7 = (input, _path, _exceptionable = true) => _ap10(input, _path, true && _exceptionable) && ("string" === typeof input.checkerDigest || _assertGuard_1._assertGuard(_exceptionable, {
817
989
  method: "typia.assert",
818
990
  path: _path + ".checkerDigest",
819
991
  expected: "string",
@@ -824,7 +996,7 @@ class TtscGraphSession {
824
996
  expected: "string",
825
997
  value: input.diskDigest
826
998
  }, _errorFactory));
827
- const _ao8 = (input, _path, _exceptionable = true) => _ap1(input, _path, true && _exceptionable) && ("number" === typeof input.line || _assertGuard_1._assertGuard(_exceptionable, {
999
+ const _ao8 = (input, _path, _exceptionable = true) => _ap10(input, _path, true && _exceptionable) && ("number" === typeof input.line || _assertGuard_1._assertGuard(_exceptionable, {
828
1000
  method: "typia.assert",
829
1001
  path: _path + ".line",
830
1002
  expected: "number",
@@ -850,23 +1022,27 @@ class TtscGraphSession {
850
1022
  expected: "string",
851
1023
  value: input.message
852
1024
  }, _errorFactory));
853
- const _ao9 = (input, _path, _exceptionable = true) => _ap2(input, _path, true && _exceptionable) && _ap3(input, _path, true && _exceptionable) && _ap4(input, _path, true && _exceptionable) && _ap5(input, _path, true && _exceptionable) && _ap1(input, _path, true && _exceptionable) && _ap6(input, _path, true && _exceptionable) && _ap7(input, _path, true && _exceptionable) && _ap8(input, _path, true && _exceptionable) && _ap9(input, _path, true && _exceptionable) && _ap10(input, _path, true && _exceptionable) && _ap11(input, _path, true && _exceptionable) && _ap12(input, _path, true && _exceptionable) && _ap13(input, _path, true && _exceptionable) && _ap14(input, _path, true && _exceptionable) && _ap15(input, _path, true && _exceptionable) && _ap16(input, _path, true && _exceptionable) && _ap17(input, _path, true && _exceptionable);
854
- const _io0 = input => "number" === typeof input.id && "number" === typeof input.protocolVersion && ("error" === input.mode || "incremental" === input.mode || "initial" === input.mode || "rebuild" === input.mode || "reload" === input.mode || "unchanged" === input.mode) && _ip0(input) && "boolean" === typeof input.changed && (undefined === input.dump || "object" === typeof input.dump && null !== input.dump && _io1(input.dump)) && (undefined === input.error || "string" === typeof input.error);
855
- const _io1 = input => "string" === typeof input.project && "string" === typeof input.tsconfig && ("object" === typeof input.provenance && null !== input.provenance && _io2(input.provenance)) && (Array.isArray(input.diagnostics) && input.diagnostics.every(elem => "object" === typeof elem && null !== elem && _io8(elem))) && (Array.isArray(input.nodes) && input.nodes.every(elem => "object" === typeof elem && null !== elem && _io9(elem))) && (Array.isArray(input.edges) && input.edges.every(elem => "object" === typeof elem && null !== elem && _io15(elem)));
856
- const _io10 = input => _ip4(input) && (undefined === input.value || "string" === typeof input.value);
857
- const _io11 = input => _ip4(input) && ("method" === input.kind || "property" === input.kind) && (undefined === input.line || "number" === typeof input.line) && _ip15(input);
858
- const _io12 = input => _ip4(input) && (Array.isArray(input.arguments) && input.arguments.every(elem => "object" === typeof elem && null !== elem && false === Array.isArray(elem) && _io13(elem)));
1025
+ const _ao9 = (input, _path, _exceptionable = true) => _ap12(input, _path, true && _exceptionable) && _ap13(input, _path, true && _exceptionable) && _ap14(input, _path, true && _exceptionable) && _ap10(input, _path, true && _exceptionable) && _ap15(input, _path, true && _exceptionable) && _ap16(input, _path, true && _exceptionable) && _ap17(input, _path, true && _exceptionable) && _ap18(input, _path, true && _exceptionable) && _ap19(input, _path, true && _exceptionable) && _ap20(input, _path, true && _exceptionable) && _ap21(input, _path, true && _exceptionable) && _ap22(input, _path, true && _exceptionable) && _ap23(input, _path, true && _exceptionable) && _ap24(input, _path, true && _exceptionable) && _ap25(input, _path, true && _exceptionable) && _ap26(input, _path, true && _exceptionable) && _ap27(input, _path, true && _exceptionable);
1026
+ const _io0 = input => "number" === typeof input.id && _ip0(input) && ("error" === input.mode || "incremental" === input.mode || "initial" === input.mode || "rebuild" === input.mode || "reload" === input.mode || "unchanged" === input.mode) && _ip1(input) && "boolean" === typeof input.changed && (undefined === input.dump || "object" === typeof input.dump && null !== input.dump && _io1(input.dump)) && (undefined === input.snapshot || "object" === typeof input.snapshot && null !== input.snapshot && _io16(input.snapshot)) && (undefined === input.error || "string" === typeof input.error);
1027
+ const _io1 = input => _ip2(input) && _ip3(input) && ("object" === typeof input.provenance && null !== input.provenance && _io2(input.provenance)) && _ip4(input) && _ip5(input) && _ip6(input);
1028
+ const _io10 = input => _ip13(input) && (undefined === input.value || "string" === typeof input.value);
1029
+ const _io11 = input => _ip13(input) && ("method" === input.kind || "property" === input.kind) && (undefined === input.line || "number" === typeof input.line) && _ip24(input);
1030
+ const _io12 = input => _ip13(input) && (Array.isArray(input.arguments) && input.arguments.every(elem => "object" === typeof elem && null !== elem && false === Array.isArray(elem) && _io13(elem)));
859
1031
  const _io13 = input => undefined === input.literal || "string" === typeof input.literal || "number" === typeof input.literal || "boolean" === typeof input.literal;
860
1032
  const _io14 = input => (undefined === input.file || "string" === typeof input.file) && "number" === typeof input.startLine && (undefined === input.startCol || "number" === typeof input.startCol) && (undefined === input.endLine || "number" === typeof input.endLine) && (undefined === input.endCol || "number" === typeof input.endCol);
861
- const _io15 = input => "string" === typeof input.from && "string" === typeof input.to && true === _iv2.has(input.kind) && _ip16(input);
862
- const _io2 = input => "number" === typeof input.schemaVersion && _ip0(input) && ("object" === typeof input.producer && null !== input.producer && _io3(input.producer)) && ("object" === typeof input.universe && null !== input.universe && _io4(input.universe)) && (Array.isArray(input.sources) && input.sources.every(elem => "object" === typeof elem && null !== elem && _io7(elem)));
1033
+ const _io15 = input => "string" === typeof input.from && "string" === typeof input.to && ("accesses" === input.kind || "calls" === input.kind || "exports" === input.kind || "extends" === input.kind || "implements" === input.kind || "instantiates" === input.kind || "overrides" === input.kind || "renders" === input.kind || "type_ref" === input.kind) && _ip26(input);
1034
+ const _io16 = input => _ip0(input) && _ip7(input) && _ip2(input) && _ip3(input) && _ip8(input) && _ip1(input) && _ip9(input) && "number" === typeof input.sequence && "string" === typeof input.generation && (undefined === input.baseSequence || "number" === typeof input.baseSequence) && (undefined === input.baseGeneration || "string" === typeof input.baseGeneration) && (Array.isArray(input.upserts) && input.upserts.every(elem => "object" === typeof elem && null !== elem && _io17(elem))) && (Array.isArray(input.deletes) && input.deletes.every(elem => "string" === typeof elem)) && (Array.isArray(input.manifest) && input.manifest.every(elem => "object" === typeof elem && null !== elem && _io19(elem)));
1035
+ const _io17 = input => _ip11(input) && ("object" === typeof input.shard && null !== input.shard && _io18(input.shard));
1036
+ const _io18 = input => _ip28(input) && (undefined === input.source || "object" === typeof input.source && null !== input.source && _io7(input.source)) && (undefined === input.config || "object" === typeof input.config && null !== input.config && _io5(input.config)) && _ip5(input) && _ip6(input) && _ip4(input);
1037
+ const _io19 = input => _ip28(input) && _ip11(input);
1038
+ const _io2 = input => _ip7(input) && _ip1(input) && _ip8(input) && _ip9(input) && (Array.isArray(input.sources) && input.sources.every(elem => "object" === typeof elem && null !== elem && _io7(elem)));
863
1039
  const _io3 = input => "string" === typeof input.tool && "string" === typeof input.version && "string" === typeof input.typescript;
864
1040
  const _io4 = input => Array.isArray(input.configs) && input.configs.every(elem => "object" === typeof elem && null !== elem && _io5(elem)) && (Array.isArray(input.roots) && input.roots.every(elem => "object" === typeof elem && null !== elem && _io6(elem)));
865
- const _io5 = input => _ip1(input) && "string" === typeof input.digest;
866
- const _io6 = input => "string" === typeof input.config && _ip1(input);
867
- const _io7 = input => _ip1(input) && "string" === typeof input.checkerDigest && "string" === typeof input.diskDigest;
868
- const _io8 = input => _ip1(input) && "number" === typeof input.line && "number" === typeof input.column && "number" === typeof input.code && ("error" === input.category || "warning" === input.category) && "string" === typeof input.message;
869
- const _io9 = input => _ip2(input) && _ip3(input) && _ip4(input) && _ip5(input) && _ip1(input) && _ip6(input) && _ip7(input) && _ip8(input) && _ip9(input) && _ip10(input) && _ip11(input) && _ip12(input) && _ip13(input) && _ip14(input) && _ip15(input) && _ip16(input) && _ip17(input);
1041
+ const _io5 = input => _ip10(input) && _ip11(input);
1042
+ const _io6 = input => "string" === typeof input.config && _ip10(input);
1043
+ const _io7 = input => _ip10(input) && "string" === typeof input.checkerDigest && "string" === typeof input.diskDigest;
1044
+ const _io8 = input => _ip10(input) && "number" === typeof input.line && "number" === typeof input.column && "number" === typeof input.code && ("error" === input.category || "warning" === input.category) && "string" === typeof input.message;
1045
+ const _io9 = input => _ip12(input) && _ip13(input) && _ip14(input) && _ip10(input) && _ip15(input) && _ip16(input) && _ip17(input) && _ip18(input) && _ip19(input) && _ip20(input) && _ip21(input) && _ip22(input) && _ip23(input) && _ip24(input) && _ip25(input) && _ip26(input) && _ip27(input);
870
1046
  const __is = input => "object" === typeof input && null !== input && _io0(input);
871
1047
  let _errorFactory;
872
1048
  return (input, errorFactory) => {
@@ -900,11 +1076,14 @@ class TtscGraphSession {
900
1076
  // shape: an older producer resolves no value set, so a union comes back
901
1077
  // looking like a type with no members. Hold the body to its own number too,
902
1078
  // once the frame is understood.
903
- if (response.dump !== undefined &&
904
- response.dump.provenance.schemaVersion !== loadGraph_1.DUMP_SCHEMA_VERSION) {
1079
+ if ((response.dump !== undefined &&
1080
+ response.dump.provenance.schemaVersion !== loadGraph_1.DUMP_SCHEMA_VERSION) ||
1081
+ (response.snapshot !== undefined &&
1082
+ response.snapshot.schemaVersion !== loadGraph_1.DUMP_SCHEMA_VERSION)) {
905
1083
  // Session-wide, for the same reason the protocol mismatch above is: it is
906
1084
  // the wrong binary, not one bad frame.
907
- this.failChild(child, new Error(`@ttsc/graph: ttscgraph sends dump schema v${String(response.dump.provenance.schemaVersion)}, this client reads v${String(loadGraph_1.DUMP_SCHEMA_VERSION)}. ` +
1085
+ this.failChild(child, new Error(`@ttsc/graph: ttscgraph sends dump schema v${String(response.dump?.provenance.schemaVersion ??
1086
+ response.snapshot?.schemaVersion)}, this client reads v${String(loadGraph_1.DUMP_SCHEMA_VERSION)}. ` +
908
1087
  "Install a matching `ttsc` (the binary resolves from the target " +
909
1088
  "project, or from TTSC_GRAPH_BINARY)."));
910
1089
  return;
@@ -919,6 +1098,7 @@ class TtscGraphSession {
919
1098
  return;
920
1099
  this.child = undefined;
921
1100
  this.current = undefined;
1101
+ this.shardStore = new TtscGraphShardStore_1.TtscGraphShardStore();
922
1102
  child.lines.close();
923
1103
  this.failPending(error, child);
924
1104
  if (terminate)
@@ -935,7 +1115,6 @@ class TtscGraphSession {
935
1115
  if (this.pending.get(id) !== pending)
936
1116
  return;
937
1117
  this.pending.delete(id);
938
- clearTimeout(pending.timer);
939
1118
  if (pending.signal !== undefined && pending.abort !== undefined) {
940
1119
  pending.signal.removeEventListener("abort", pending.abort);
941
1120
  }