@fnndsc/cumin 3.8.0 → 3.9.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 (60) hide show
  1. package/README.md +2 -2
  2. package/dist/cache/index.d.ts +5 -1
  3. package/dist/cache/index.js +9 -1
  4. package/dist/cache/index.js.map +1 -1
  5. package/dist/cache/listCache.d.ts +11 -0
  6. package/dist/cache/listCache.js +19 -0
  7. package/dist/cache/listCache.js.map +1 -1
  8. package/dist/cache/procCache.d.ts +156 -6
  9. package/dist/cache/procCache.js +244 -7
  10. package/dist/cache/procCache.js.map +1 -1
  11. package/dist/cache/procCheckpoint.d.ts +47 -0
  12. package/dist/cache/procCheckpoint.js +217 -0
  13. package/dist/cache/procCheckpoint.js.map +1 -0
  14. package/dist/cache/procPrompt.d.ts +34 -0
  15. package/dist/cache/procPrompt.js +25 -0
  16. package/dist/cache/procPrompt.js.map +1 -0
  17. package/dist/chrisapi/adapter.d.ts +12 -1
  18. package/dist/chrisapi/adapter.js +25 -0
  19. package/dist/chrisapi/adapter.js.map +1 -1
  20. package/dist/connect/chrisConnection.d.ts +20 -0
  21. package/dist/connect/chrisConnection.js +33 -0
  22. package/dist/connect/chrisConnection.js.map +1 -1
  23. package/dist/feeds/chrisFeed.js +2 -1
  24. package/dist/feeds/chrisFeed.js.map +1 -1
  25. package/dist/groups/chrisGroups.d.ts +67 -1
  26. package/dist/groups/chrisGroups.js +171 -1
  27. package/dist/groups/chrisGroups.js.map +1 -1
  28. package/dist/index.d.ts +2 -0
  29. package/dist/index.js +2 -0
  30. package/dist/index.js.map +1 -1
  31. package/dist/io/chrisIO.d.ts +14 -0
  32. package/dist/io/chrisIO.js +32 -2
  33. package/dist/io/chrisIO.js.map +1 -1
  34. package/dist/jobs/chrisJob.js +4 -0
  35. package/dist/jobs/chrisJob.js.map +1 -1
  36. package/dist/output/runtimeOutput.d.ts +49 -0
  37. package/dist/output/runtimeOutput.js +51 -0
  38. package/dist/output/runtimeOutput.js.map +1 -0
  39. package/dist/pacs/chrisPACS.d.ts +28 -0
  40. package/dist/pacs/chrisPACS.js +40 -21
  41. package/dist/pacs/chrisPACS.js.map +1 -1
  42. package/dist/path/chrisPath.js +3 -3
  43. package/dist/path/chrisPath.js.map +1 -1
  44. package/dist/pipelines/chrisPipeline.d.ts +4 -0
  45. package/dist/pipelines/chrisPipeline.js.map +1 -1
  46. package/dist/plugins/chrisPlugins.d.ts +8 -1
  47. package/dist/plugins/chrisPlugins.js +8 -1
  48. package/dist/plugins/chrisPlugins.js.map +1 -1
  49. package/dist/resources/chrisObjContext.d.ts +11 -0
  50. package/dist/resources/chrisObjContext.js +38 -2
  51. package/dist/resources/chrisObjContext.js.map +1 -1
  52. package/dist/resources/chrisResources.js +4 -0
  53. package/dist/resources/chrisResources.js.map +1 -1
  54. package/dist/users/chrisUsers.d.ts +56 -10
  55. package/dist/users/chrisUsers.js +149 -20
  56. package/dist/users/chrisUsers.js.map +1 -1
  57. package/dist/utils/retry.d.ts +29 -0
  58. package/dist/utils/retry.js +44 -0
  59. package/dist/utils/retry.js.map +1 -0
  60. package/package.json +19 -8
@@ -3,11 +3,11 @@
3
3
  * @file Process Cache
4
4
  *
5
5
  * Session-scoped cache of ChRIS feed topology. Separates permanent data
6
- * (instance DAG structure) from volatile data (status — never stored).
6
+ * (instance DAG structure and terminal status) from volatile active status.
7
7
  *
8
8
  * Design decisions:
9
9
  * - Topology (id, feedID, parentID, pluginName) is permanent once written.
10
- * - Status is always fetched live from the API — never stored here.
10
+ * - Terminal status is immutable and checkpointed; active status refreshes live.
11
11
  * - Feed job counters (finishedJobs etc.) give aggregate feed status
12
12
  * without per-instance API calls.
13
13
  * - topologyLoaded distinguishes "loaded but 0 instances" from "not yet loaded".
@@ -21,6 +21,23 @@ Object.defineProperty(exports, "__esModule", { value: true });
21
21
  exports.ProcCache = exports.PROC_TERMINAL_STATUSES = void 0;
22
22
  exports.status_isTerminal = status_isTerminal;
23
23
  exports.procCache_get = procCache_get;
24
+ /** Feed counters whose changes can alter a feed's plugin-instance topology. */
25
+ const FEED_TOPOLOGY_COUNTERS = [
26
+ 'finishedJobs',
27
+ 'erroredJobs',
28
+ 'startedJobs',
29
+ 'scheduledJobs',
30
+ 'cancelledJobs',
31
+ 'createdJobs',
32
+ ];
33
+ /** Reports whether a feed has work which can still change after checkpointing. */
34
+ function feed_isActive(feed) {
35
+ return feed.startedJobs > 0 || feed.scheduledJobs > 0 || feed.createdJobs > 0;
36
+ }
37
+ /** Reports whether two feed summaries indicate different instance topology. */
38
+ function feedTopology_changed(previous, current) {
39
+ return FEED_TOPOLOGY_COUNTERS.some((counter) => previous[counter] !== current[counter]);
40
+ }
24
41
  /**
25
42
  * Job statuses that never change once reached. An instance in one of these states
26
43
  * is settled — its status can be cached permanently rather than re-fetched.
@@ -40,8 +57,7 @@ function status_isTerminal(status) {
40
57
  return status != null && exports.PROC_TERMINAL_STATUSES.has(status);
41
58
  }
42
59
  /**
43
- * Session-scoped cache of feed and instance topology.
44
- * Status is never stored — always fetched live from the API.
60
+ * Session-scoped cache of feed and instance topology with restorable terminal state.
45
61
  */
46
62
  class ProcCache {
47
63
  constructor() {
@@ -58,6 +74,8 @@ class ProcCache {
58
74
  this._warmupProgress = { loaded: 0, total: 0, active: false };
59
75
  /** Whether initial feed index has been built. */
60
76
  this._built = false;
77
+ this.lifecycle = { state: 'empty' };
78
+ this.listeners = new Set();
61
79
  }
62
80
  static instance_get() {
63
81
  if (!ProcCache._instance) {
@@ -67,6 +85,36 @@ class ProcCache {
67
85
  }
68
86
  get built() { return this._built; }
69
87
  get warmupComplete() { return this._warmupComplete; }
88
+ /**
89
+ * Returns a copy of the current cache lifecycle metadata.
90
+ *
91
+ * @returns Current cache state and checkpoint timestamp.
92
+ */
93
+ lifecycle_get() { return { ...this.lifecycle }; }
94
+ /**
95
+ * Changes the cache freshness state.
96
+ *
97
+ * @param state - New lifecycle state.
98
+ * @returns Nothing.
99
+ */
100
+ lifecycle_set(state) {
101
+ this.lifecycle = { ...this.lifecycle, state };
102
+ this.change_emit();
103
+ }
104
+ /**
105
+ * Registers a callback for checkpoint-worthy cache mutations.
106
+ *
107
+ * @param listener - Callback invoked after a cache mutation.
108
+ * @returns Function that unregisters the callback.
109
+ */
110
+ changeListener_add(listener) {
111
+ this.listeners.add(listener);
112
+ return () => { this.listeners.delete(listener); };
113
+ }
114
+ change_emit() {
115
+ for (const listener of this.listeners)
116
+ listener();
117
+ }
70
118
  // ── Feed ──────────────────────────────────────────────────────────────────
71
119
  /**
72
120
  * Adds or updates a feed entry.
@@ -76,6 +124,7 @@ class ProcCache {
76
124
  if (!this.feedRoots.has(feed.id)) {
77
125
  this.feedRoots.set(feed.id, []);
78
126
  }
127
+ this.change_emit();
79
128
  }
80
129
  feed_get(feedID) {
81
130
  return this.feeds.get(feedID);
@@ -83,6 +132,27 @@ class ProcCache {
83
132
  feedIDs_get() {
84
133
  return Array.from(this.feeds.keys());
85
134
  }
135
+ /**
136
+ * Counts visible feeds in exclusive ownership, sharing, and public buckets.
137
+ *
138
+ * Ownership takes precedence over public visibility so the buckets sum to
139
+ * the unique feed total.
140
+ *
141
+ * @param username - Authenticated username whose owned feeds form `user`.
142
+ * @returns Exclusive scope counts whose components sum to `total`.
143
+ */
144
+ feedScopeCounts_get(username) {
145
+ const counts = { user: 0, public: 0, shared: 0, total: this.feeds.size };
146
+ for (const feed of this.feeds.values()) {
147
+ if (feed.ownerUsername === username)
148
+ counts.user++;
149
+ else if (feed.public)
150
+ counts.public++;
151
+ else
152
+ counts.shared++;
153
+ }
154
+ return counts;
155
+ }
86
156
  feedRoots_get(feedID) {
87
157
  return this.feedRoots.get(feedID) ?? [];
88
158
  }
@@ -98,6 +168,30 @@ class ProcCache {
98
168
  this.instance_remove(inst.id);
99
169
  }
100
170
  this.feedRoots.delete(feedID);
171
+ this.change_emit();
172
+ }
173
+ /**
174
+ * Replaces the visible feed set while preserving topology for retained feeds.
175
+ *
176
+ * @param feeds - Authoritative feeds visible to the current identity.
177
+ * @returns IDs requiring topology reconciliation because they are new, their
178
+ * aggregate job counts changed, or they still have active work.
179
+ */
180
+ feeds_reconcile(feeds) {
181
+ const reconciliationTargets = [];
182
+ const visible = new Set(feeds.map((feed) => feed.id));
183
+ for (const feedID of this.feedIDs_get()) {
184
+ if (!visible.has(feedID))
185
+ this.feed_remove(feedID);
186
+ }
187
+ for (const feed of feeds) {
188
+ const previous = this.feed_get(feed.id);
189
+ if (!previous || feedTopology_changed(previous, feed) || feed_isActive(feed)) {
190
+ reconciliationTargets.push(feed.id);
191
+ }
192
+ this.feed_add(feed);
193
+ }
194
+ return reconciliationTargets;
101
195
  }
102
196
  // ── Instance ──────────────────────────────────────────────────────────────
103
197
  /**
@@ -119,6 +213,7 @@ class ProcCache {
119
213
  this.children.set(inst.parentID, kids);
120
214
  }
121
215
  }
216
+ this.change_emit();
122
217
  }
123
218
  instance_get(id) {
124
219
  return this.instances.get(id);
@@ -170,6 +265,22 @@ class ProcCache {
170
265
  const kids = this.children.get(inst.parentID) ?? [];
171
266
  this.children.set(inst.parentID, kids.filter((k) => k !== id));
172
267
  }
268
+ this.change_emit();
269
+ }
270
+ /**
271
+ * Removes instances absent from an authoritative topology sweep.
272
+ *
273
+ * @param instanceIDs - Instance IDs returned by the completed CUBE sweep.
274
+ * @returns Nothing.
275
+ */
276
+ topology_reconcile(instanceIDs) {
277
+ for (const id of Array.from(this.instances.keys())) {
278
+ if (!instanceIDs.has(id))
279
+ this.instance_remove(id);
280
+ }
281
+ for (const feedID of this.feedIDs_get())
282
+ this.topologyLoaded.add(feedID);
283
+ this.change_emit();
173
284
  }
174
285
  /**
175
286
  * Updates cached params for an instance (on first cat).
@@ -179,6 +290,46 @@ class ProcCache {
179
290
  if (inst)
180
291
  inst.params = params;
181
292
  }
293
+ /**
294
+ * Stores the lazily resolved CUBE output path for one instance.
295
+ *
296
+ * @param id - Plugin-instance ID whose output location was resolved.
297
+ * @param outputPath - Absolute CFS output directory, or null when absent.
298
+ * @returns Nothing.
299
+ */
300
+ outputPath_update(id, outputPath) {
301
+ const inst = this.instances.get(id);
302
+ if (inst)
303
+ inst.outputPath = outputPath;
304
+ }
305
+ /**
306
+ * Finds the closest cached job output containing a CFS path.
307
+ *
308
+ * An output path is a directory boundary: `/home/alice/run` contains
309
+ * `/home/alice/run/result.txt`, but not `/home/alice/run-old`.
310
+ *
311
+ * @param cfsPath - Absolute CFS path to resolve against live-session outputs.
312
+ * @returns The closest producing instance, or undefined when no output path
313
+ * known in this session contains the path.
314
+ */
315
+ outputPath_match(cfsPath) {
316
+ const cleanPath = cfsPath.length > 1 && cfsPath.endsWith('/')
317
+ ? cfsPath.slice(0, -1)
318
+ : cfsPath;
319
+ let closest;
320
+ for (const inst of this.instances.values()) {
321
+ const outputPath = inst.outputPath;
322
+ if (!outputPath)
323
+ continue;
324
+ const isAncestor = outputPath === '/'
325
+ ? cleanPath.startsWith('/')
326
+ : cleanPath === outputPath || cleanPath.startsWith(`${outputPath}/`);
327
+ if (isAncestor && (!closest || outputPath.length > (closest.outputPath?.length ?? 0))) {
328
+ closest = inst;
329
+ }
330
+ }
331
+ return closest;
332
+ }
182
333
  /**
183
334
  * Updates the cached status for an instance. Terminal (settled) statuses are
184
335
  * never overwritten — once finished, a job's status is immutable.
@@ -192,7 +343,10 @@ class ProcCache {
192
343
  return;
193
344
  if (status_isTerminal(inst.status))
194
345
  return;
195
- inst.status = status;
346
+ if (inst.status !== status) {
347
+ inst.status = status;
348
+ this.change_emit();
349
+ }
196
350
  }
197
351
  /**
198
352
  * Records the resolved topological-join parent IDs for a `ts` instance. Immutable
@@ -203,8 +357,10 @@ class ProcCache {
203
357
  */
204
358
  joinParents_update(id, ids) {
205
359
  const inst = this.instances.get(id);
206
- if (inst)
360
+ if (inst) {
207
361
  inst.joinParentIDs = ids;
362
+ this.change_emit();
363
+ }
208
364
  }
209
365
  /**
210
366
  * Returns the resolved join parent IDs for an instance, or an empty array when the
@@ -219,6 +375,7 @@ class ProcCache {
219
375
  // ── Topology loaded tracking ───────────────────────────────────────────────
220
376
  topologyLoaded_mark(feedID) {
221
377
  this.topologyLoaded.add(feedID);
378
+ this.change_emit();
222
379
  }
223
380
  topologyLoaded_has(feedID) {
224
381
  return this.topologyLoaded.has(feedID);
@@ -236,7 +393,20 @@ class ProcCache {
236
393
  // ── Warm-up state ─────────────────────────────────────────────────────────
237
394
  warmup_complete() {
238
395
  this._warmupComplete = true;
239
- this._warmupProgress = { loaded: this._warmupProgress.loaded, total: 0, active: false };
396
+ this._warmupProgress = { ...this._warmupProgress, active: false };
397
+ this.lifecycle = { ...this.lifecycle, state: 'current' };
398
+ this.change_emit();
399
+ }
400
+ /**
401
+ * Stops an unsuccessful warm-up without marking its topology complete.
402
+ *
403
+ * @returns Nothing.
404
+ */
405
+ warmup_abort() {
406
+ this._warmupComplete = false;
407
+ this._warmupProgress = { ...this._warmupProgress, active: false };
408
+ this.lifecycle = { ...this.lifecycle, state: 'failed' };
409
+ this.change_emit();
240
410
  }
241
411
  warmup_progress(loaded, total) {
242
412
  this._warmupProgress = { loaded, total, active: true };
@@ -244,6 +414,19 @@ class ProcCache {
244
414
  warmupProgress_get() {
245
415
  return { ...this._warmupProgress };
246
416
  }
417
+ /**
418
+ * Resets reconciliation progress while retaining restored topology.
419
+ *
420
+ * @returns Nothing.
421
+ */
422
+ warmup_reset() {
423
+ this._warmupComplete = false;
424
+ this._warmupProgress = { loaded: this.instances.size, total: this.instances.size, active: false };
425
+ this.lifecycle = this.lifecycle.checkpointAt
426
+ ? { ...this.lifecycle, state: 'restored' }
427
+ : { state: 'empty' };
428
+ this.change_emit();
429
+ }
247
430
  // ── Path reconstruction ───────────────────────────────────────────────────
248
431
  /**
249
432
  * Reconstructs the full /proc/jobs path for a given instance ID.
@@ -297,6 +480,58 @@ class ProcCache {
297
480
  built_set() {
298
481
  this._built = true;
299
482
  }
483
+ /**
484
+ * Creates a persistence-safe snapshot without parameters or active statuses.
485
+ *
486
+ * @returns Serializable feed and terminal-topology state.
487
+ */
488
+ snapshot_create() {
489
+ const instances = Array.from(this.instances.values()).map((inst) => {
490
+ const { outputPath: _outputPath, ...persistent } = inst;
491
+ return {
492
+ ...persistent,
493
+ params: null,
494
+ status: status_isTerminal(inst.status) ? inst.status : null,
495
+ joinParentIDs: inst.joinParentIDs ? [...inst.joinParentIDs] : undefined,
496
+ };
497
+ });
498
+ return {
499
+ feeds: Array.from(this.feeds.values()).map((feed) => ({ ...feed })),
500
+ instances,
501
+ topologyLoaded: Array.from(this.topologyLoaded),
502
+ };
503
+ }
504
+ /**
505
+ * Replaces in-memory topology with a validated persistent snapshot.
506
+ *
507
+ * @param snapshot - Previously validated snapshot data.
508
+ * @param checkpointAt - ISO timestamp when the checkpoint was written.
509
+ * @returns Nothing.
510
+ */
511
+ snapshot_restore(snapshot, checkpointAt) {
512
+ this.cache_clear();
513
+ for (const feed of snapshot.feeds) {
514
+ this.feeds.set(feed.id, { ...feed });
515
+ this.feedRoots.set(feed.id, []);
516
+ }
517
+ for (const inst of snapshot.instances) {
518
+ const { outputPath: _outputPath, ...restored } = inst;
519
+ this.instance_add({ ...restored, params: null, status: status_isTerminal(inst.status) ? inst.status : null });
520
+ }
521
+ this.topologyLoaded = new Set(snapshot.topologyLoaded.filter((id) => this.feeds.has(id)));
522
+ this._warmupProgress = { loaded: this.instances.size, total: this.instances.size, active: false };
523
+ this.lifecycle = { state: 'restored', checkpointAt };
524
+ this.change_emit();
525
+ }
526
+ /**
527
+ * Records the timestamp of a successful durable save.
528
+ *
529
+ * @param checkpointAt - ISO timestamp written into the checkpoint.
530
+ * @returns Nothing.
531
+ */
532
+ checkpoint_mark(checkpointAt) {
533
+ this.lifecycle = { ...this.lifecycle, checkpointAt };
534
+ }
300
535
  /**
301
536
  * Clears all cache data. Called before a full rebuild.
302
537
  */
@@ -310,6 +545,8 @@ class ProcCache {
310
545
  this._warmupComplete = false;
311
546
  this._warmupProgress = { loaded: 0, total: 0, active: false };
312
547
  this._built = false;
548
+ this.lifecycle = { state: 'empty' };
549
+ this.change_emit();
313
550
  }
314
551
  }
315
552
  exports.ProcCache = ProcCache;
@@ -1 +1 @@
1
- {"version":3,"file":"procCache.js","sourceRoot":"","sources":["../../src/cache/procCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"procCache.js","sourceRoot":"","sources":["../../src/cache/procCache.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;AAsHH,8CAEC;AAskBD,sCAEC;AA3pBD,+EAA+E;AAC/E,MAAM,sBAAsB,GAEvB;IACH,cAAc;IACd,aAAa;IACb,aAAa;IACb,eAAe;IACf,eAAe;IACf,aAAa;CACd,CAAC;AAEF,kFAAkF;AAClF,SAAS,aAAa,CAAC,IAAc;IACnC,OAAO,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;AAChF,CAAC;AAED,+EAA+E;AAC/E,SAAS,oBAAoB,CAAC,QAAkB,EAAE,OAAiB;IACjE,OAAO,sBAAsB,CAAC,IAAI,CAChC,CAAC,OAEA,EAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CACtD,CAAC;AACJ,CAAC;AAyCD;;;GAGG;AACU,QAAA,sBAAsB,GAAwB,IAAI,GAAG,CAAS;IACzE,sBAAsB;IACtB,mBAAmB;IACnB,WAAW;CACZ,CAAC,CAAC;AAEH;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAC,MAAiC;IACjE,OAAO,MAAM,IAAI,IAAI,IAAI,8BAAsB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC9D,CAAC;AA0CD;;GAEG;AACH,MAAa,SAAS;IAyBpB;QAtBQ,UAAK,GAA0B,IAAI,GAAG,EAAE,CAAC;QACzC,cAAS,GAA8B,IAAI,GAAG,EAAE,CAAC;QACjD,cAAS,GAA0B,IAAI,GAAG,EAAE,CAAC;QAC7C,aAAQ,GAA0B,IAAI,GAAG,EAAE,CAAC;QAEpD,+DAA+D;QACvD,mBAAc,GAAgB,IAAI,GAAG,EAAE,CAAC;QAEhD,wEAAwE;QAChE,YAAO,GAA+B,IAAI,GAAG,EAAE,CAAC;QAExD,2DAA2D;QACnD,oBAAe,GAAY,KAAK,CAAC;QAEjC,oBAAe,GAAuB,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAErF,iDAAiD;QACzC,WAAM,GAAY,KAAK,CAAC;QAExB,cAAS,GAAuB,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QACnD,cAAS,GAAoB,IAAI,GAAG,EAAE,CAAC;IAExB,CAAC;IAExB,MAAM,CAAC,YAAY;QACjB,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;YACzB,SAAS,CAAC,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;QACxC,CAAC;QACD,OAAO,SAAS,CAAC,SAAS,CAAC;IAC7B,CAAC;IAED,IAAI,KAAK,KAAc,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5C,IAAI,cAAc,KAAc,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IAE9D;;;;OAIG;IACH,aAAa,KAAyB,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IAErE;;;;;OAKG;IACH,aAAa,CAAC,KAAqB;QACjC,IAAI,CAAC,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC;QAC9C,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,QAAoB;QACrC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7B,OAAO,GAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC;IAEO,WAAW;QACjB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS;YAAE,QAAQ,EAAE,CAAC;IACpD,CAAC;IAED,6EAA6E;IAE7E;;OAEG;IACH,QAAQ,CAAC,IAAc;QACrB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,MAAc;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,WAAW;QACT,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;IAED;;;;;;;;OAQG;IACH,mBAAmB,CAAC,QAAgB;QAClC,MAAM,MAAM,GAAwB,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC9F,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;YACvC,IAAI,IAAI,CAAC,aAAa,KAAK,QAAQ;gBAAE,MAAM,CAAC,IAAI,EAAE,CAAC;iBAC9C,IAAI,IAAI,CAAC,MAAM;gBAAE,MAAM,CAAC,MAAM,EAAE,CAAC;;gBACjC,MAAM,CAAC,MAAM,EAAE,CAAC;QACvB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,MAAc;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,MAAc;QACxB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC1B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACnC,MAAM,YAAY,GAAmB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;aACrE,MAAM,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;QACpD,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YAChC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED;;;;;;OAMG;IACH,eAAe,CAAC,KAAiB;QAC/B,MAAM,qBAAqB,GAAa,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAgB,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAc,EAAU,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACrF,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACrD,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAyB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9D,IAAI,CAAC,QAAQ,IAAI,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7E,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtC,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,6EAA6E;IAE7E;;OAEG;IACH,YAAY,CAAC,IAAkB;QAC7B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAa,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC9D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC7B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACpB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAa,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC9D,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACnB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,YAAY,CAAC,EAAU;QACrB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChC,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;IAC7B,CAAC;IAED,sBAAsB,CAAC,MAAc;QACnC,IAAI,CAAC,GAAW,CAAC,CAAC;QAClB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;gBAAE,CAAC,EAAE,CAAC;QAClC,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,YAAY,CAAC,QAAgB;QAC3B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACH,mBAAmB,CAAC,MAAc;QAChC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAa,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;QACxD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,EAAE,GAAW,KAAK,CAAC,KAAK,EAAG,CAAC;YAClC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,EAAU;QACxB,MAAM,IAAI,GAA6B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAa,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC9D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAa,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC9D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,WAAwB;QACzC,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE;YAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzE,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,EAAU,EAAE,MAA+B;QACvD,MAAM,IAAI,GAA6B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9D,IAAI,IAAI;YAAE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACjC,CAAC;IAED;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAU,EAAE,UAAyB;QACrD,MAAM,IAAI,GAA6B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9D,IAAI,IAAI;YAAE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACzC,CAAC;IAED;;;;;;;;;OASG;IACH,gBAAgB,CAAC,OAAe;QAC9B,MAAM,SAAS,GAAW,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;YACnE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACtB,CAAC,CAAC,OAAO,CAAC;QACZ,IAAI,OAAiC,CAAC;QACtC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3C,MAAM,UAAU,GAA8B,IAAI,CAAC,UAAU,CAAC;YAC9D,IAAI,CAAC,UAAU;gBAAE,SAAS;YAC1B,MAAM,UAAU,GAAY,UAAU,KAAK,GAAG;gBAC5C,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC;gBAC3B,CAAC,CAAC,SAAS,KAAK,UAAU,IAAI,SAAS,CAAC,UAAU,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC;YACvE,IAAI,UAAU,IAAI,CAAC,CAAC,OAAO,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtF,OAAO,GAAG,IAAI,CAAC;YACjB,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CAAC,EAAU,EAAE,MAAc;QACtC,MAAM,IAAI,GAA6B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC;YAAE,OAAO;QAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAAC,CAAC;IAC3E,CAAC;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAU,EAAE,GAAa;QAC1C,MAAM,IAAI,GAA6B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9D,IAAI,IAAI,EAAE,CAAC;YAAC,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC;YAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAAC,CAAC;IAC7D,CAAC;IAED;;;;;;OAMG;IACH,eAAe,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,aAAa,IAAI,EAAE,CAAC;IACrD,CAAC;IAED,8EAA8E;IAE9E,mBAAmB,CAAC,MAAc;QAChC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,kBAAkB,CAAC,MAAc;QAC/B,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,6EAA6E;IAE7E,WAAW,CAAC,MAAc,EAAE,OAAsB;QAChD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC;IAED,WAAW,CAAC,MAAc;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED,aAAa,CAAC,MAAc;QAC1B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,6EAA6E;IAE7E,eAAe;QACb,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAClE,IAAI,CAAC,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QACzD,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,YAAY;QACV,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAClE,IAAI,CAAC,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;QACxD,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,eAAe,CAAC,MAAc,EAAE,KAAa;QAC3C,IAAI,CAAC,eAAe,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACzD,CAAC;IAED,kBAAkB;QAChB,OAAO,EAAE,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,YAAY;QACV,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAClG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY;YAC1C,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE;YAC1C,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,6EAA6E;IAE7E;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,EAAU;QACnB,MAAM,IAAI,GAA6B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,OAAO,GAA6B,IAAI,CAAC;QAC7C,OAAO,OAAO,EAAE,CAAC;YACf,QAAQ,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;YACxD,IAAI,OAAO,CAAC,QAAQ,KAAK,IAAI;gBAAE,MAAM;YACrC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,mBAAmB,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,IAAY;QACrB,MAAM,KAAK,GAAW,IAAI,CAAC,WAAW,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;aACnC,MAAM,CAAC,CAAC,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,IAAY;QACzB,MAAM,OAAO,GAAW,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAY,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;QAClE,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,GAAG,GAA6B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAClE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1B,CAAC;QACD,MAAM,KAAK,GAAW,IAAI,CAAC,WAAW,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;aACvC,MAAM,CAAC,CAAC,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,6EAA6E;IAE7E,SAAS;QACP,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,eAAe;QACb,MAAM,SAAS,GAAmB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAkB,EAAgB,EAAE;YAC7G,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,UAAU,EAAE,GAAiB,IAAI,CAAC;YACtE,OAAO;gBACL,GAAG,UAAU;gBACb,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;gBAC3D,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS;aACxE,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAc,EAAY,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;YACvF,SAAS;YACT,cAAc,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;SAChD,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,CAAC,QAA2B,EAAE,YAAoB;QAChE,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YAClC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAClC,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;YACtC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,QAAQ,EAAE,GAAiB,IAAI,CAAC;YACpE,IAAI,CAAC,YAAY,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAChH,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,EAAU,EAAW,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3G,IAAI,CAAC,eAAe,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAClG,IAAI,CAAC,SAAS,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,eAAe,CAAC,YAAoB;QAClC,IAAI,CAAC,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,WAAW;QACT,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAC9D,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QACpC,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;;AA5gBH,8BA6gBC;AA5gBgB,mBAAS,GAAqB,IAAI,AAAzB,CAA0B;AA8gBpD;;;;;;;;;GASG;AACH,SAAgB,aAAa;IAC3B,OAAO,SAAS,CAAC,YAAY,EAAE,CAAC;AAClC,CAAC"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Outcome of attempting to restore a local process-cache checkpoint.
3
+ *
4
+ * @property restored - Whether validated snapshot data replaced the cache.
5
+ * @property count - Number of restored plugin instances.
6
+ * @property writtenAt - Checkpoint creation time when restoration succeeded.
7
+ * @property reason - Human-readable reason when restoration was skipped.
8
+ */
9
+ export interface ProcCheckpointRestoreResult {
10
+ restored: boolean;
11
+ count: number;
12
+ writtenAt?: string;
13
+ reason?: string;
14
+ }
15
+ /**
16
+ * Builds the identity-keyed checkpoint path without exposing the identity.
17
+ *
18
+ * @param identity - Canonical ChRIS identity string.
19
+ * @param root - Checkpoint directory override.
20
+ * @returns Versioned checkpoint path.
21
+ */
22
+ export declare function procCheckpointPath_get(identity: string, root?: string): string;
23
+ /**
24
+ * Restores a matching, fully validated checkpoint into the process cache.
25
+ *
26
+ * @param identity - Canonical ChRIS identity string.
27
+ * @param root - Checkpoint directory override.
28
+ * @returns Restoration outcome without throwing for absent or invalid files.
29
+ */
30
+ export declare function procCheckpoint_restore(identity: string, root?: string): Promise<ProcCheckpointRestoreResult>;
31
+ /**
32
+ * Atomically saves the current persistence-safe process-cache snapshot.
33
+ *
34
+ * @param identity - Canonical ChRIS identity string.
35
+ * @param root - Checkpoint directory override.
36
+ * @returns Promise resolved after the mode-0600 file is durable in place.
37
+ */
38
+ export declare function procCheckpoint_save(identity: string, root?: string): Promise<void>;
39
+ /**
40
+ * Starts a debounced checkpoint writer for mutations to a current cache.
41
+ *
42
+ * @param identity - Canonical ChRIS identity string.
43
+ * @param root - Checkpoint directory override.
44
+ * @param delayMs - Debounce interval in milliseconds.
45
+ * @returns Function that stops watching and cancels a pending save.
46
+ */
47
+ export declare function procCheckpoint_watch(identity: string, root?: string, delayMs?: number): () => void;