@graphrefly/graphrefly 0.42.0 → 0.43.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 (143) hide show
  1. package/dist/{chunk-5ST42ESJ.js → chunk-3XDYJRYU.js} +1 -1
  2. package/dist/{chunk-FDZAZNRO.js → chunk-4YAN45KM.js} +1 -1
  3. package/dist/{chunk-ACMJ2ZPS.js → chunk-626TESAC.js} +1 -1
  4. package/dist/{chunk-7B7ELAT2.js → chunk-6HOSXQKF.js} +1 -1
  5. package/dist/{chunk-G5VBJ5K6.js → chunk-CUNIRONA.js} +1 -1
  6. package/dist/chunk-EBW4V6JN.js +1 -0
  7. package/dist/chunk-FDQGFWLF.js +1 -0
  8. package/dist/{chunk-KY2LMAXU.js → chunk-FG4TKHMC.js} +1 -1
  9. package/dist/{chunk-YGL7FPVQ.js → chunk-I7IGYPSL.js} +1 -1
  10. package/dist/{chunk-3K7HA4Y6.js → chunk-INQD2KRQ.js} +1 -1
  11. package/dist/{chunk-AGNM6RS6.js → chunk-JNWRYDJN.js} +1 -1
  12. package/dist/{chunk-LDQ3IUIP.js → chunk-JQFH2DV6.js} +1 -1
  13. package/dist/{chunk-5QRRKBUT.js → chunk-K2Q24F5T.js} +1 -1
  14. package/dist/chunk-KVV66NN2.js +1 -0
  15. package/dist/{chunk-3ERTUW2J.js → chunk-NON4NLIC.js} +4 -4
  16. package/dist/{chunk-IZM3UEH3.js → chunk-O2BLLH7M.js} +1 -1
  17. package/dist/{chunk-FUZ6S2DY.js → chunk-OCKEEPRJ.js} +1 -1
  18. package/dist/{chunk-NWXQIOIB.js → chunk-OFZG3TB3.js} +1 -1
  19. package/dist/{chunk-4QH6VJF4.js → chunk-OYJKFY7V.js} +1 -1
  20. package/dist/{chunk-7ARY3Y3T.js → chunk-P6C4WHZO.js} +1 -1
  21. package/dist/{chunk-Q7QQQA3I.js → chunk-PT7W5FCD.js} +1 -1
  22. package/dist/{chunk-KCACBSJH.js → chunk-Q4U3A3L5.js} +1 -1
  23. package/dist/{chunk-LPRWATHB.js → chunk-QE4IGY7I.js} +1 -1
  24. package/dist/{chunk-WHMUB5QB.js → chunk-QYVXF7GW.js} +1 -1
  25. package/dist/{chunk-DEJTNNQC.js → chunk-S3EEIPO7.js} +1 -1
  26. package/dist/{chunk-KT5DTRBP.js → chunk-SUWT3ZON.js} +1 -1
  27. package/dist/{chunk-CISGGAIF.js → chunk-TPKQW72B.js} +1 -1
  28. package/dist/{chunk-2K5RXLAH.js → chunk-V5A7M7RJ.js} +1 -1
  29. package/dist/{chunk-AS3TV2TV.js → chunk-VNC3TMVY.js} +1 -1
  30. package/dist/{chunk-6YFZMUMR.js → chunk-VOPGGIL7.js} +1 -1
  31. package/dist/{chunk-VRALOYRD.js → chunk-VQ4A6T2A.js} +1 -1
  32. package/dist/{chunk-HZKW2AAB.js → chunk-XG62INFA.js} +1 -1
  33. package/dist/{chunk-7VKFXLZQ.js → chunk-Y4NI3X7O.js} +1 -1
  34. package/dist/compat/index.cjs +5 -5
  35. package/dist/compat/index.d.cts +4 -4
  36. package/dist/compat/index.d.ts +4 -4
  37. package/dist/compat/index.js +1 -1
  38. package/dist/compat/nestjs/index.cjs +5 -5
  39. package/dist/compat/nestjs/index.d.cts +3 -3
  40. package/dist/compat/nestjs/index.d.ts +3 -3
  41. package/dist/compat/nestjs/index.js +1 -1
  42. package/dist/compat/zustand/index.js +1 -1
  43. package/dist/core/index.d.cts +2 -2
  44. package/dist/core/index.d.ts +2 -2
  45. package/dist/extra/index.cjs +11 -11
  46. package/dist/extra/index.d.cts +2 -2
  47. package/dist/extra/index.d.ts +2 -2
  48. package/dist/extra/index.js +1 -1
  49. package/dist/extra/node.js +1 -1
  50. package/dist/extra/operators.js +1 -1
  51. package/dist/extra/reactive.js +1 -1
  52. package/dist/extra/sources.js +1 -1
  53. package/dist/graph/index.cjs +1 -1
  54. package/dist/graph/index.d.cts +1 -1
  55. package/dist/graph/index.d.ts +1 -1
  56. package/dist/graph/index.js +1 -1
  57. package/dist/{index-C0-Jv1kP.d.cts → index-0rKFCVFp.d.cts} +9 -0
  58. package/dist/{index-B11anra4.d.cts → index-B5iz82A3.d.cts} +2 -2
  59. package/dist/{index-BtAsBp8K.d.cts → index-BAOD98JD.d.cts} +1 -1
  60. package/dist/{index-D-Xs74HZ.d.cts → index-BiX1Nkgx.d.cts} +13 -3
  61. package/dist/{index-HoU88d5U.d.cts → index-BojK2fwH.d.cts} +2 -2
  62. package/dist/{index-3NmAfcH0.d.cts → index-BwLvVVsy.d.cts} +1 -1
  63. package/dist/{index-DQo8xBgd.d.ts → index-C59mYFKp.d.ts} +1 -1
  64. package/dist/{index-DBIqYS43.d.cts → index-C9pjcz3l.d.cts} +0 -15
  65. package/dist/{index-CJQm0g38.d.ts → index-CAC_rNzm.d.ts} +1 -1
  66. package/dist/{index-sl4NyzQx.d.cts → index-CDXc9zKM.d.cts} +1 -1
  67. package/dist/{index-2B7u2pVn.d.cts → index-CLon-IWF.d.cts} +1 -1
  68. package/dist/{index-CEMx8n40.d.cts → index-COD1kVoS.d.cts} +1 -1
  69. package/dist/{index-Bn4zHYLj.d.ts → index-CPT7C_f1.d.ts} +1 -1
  70. package/dist/{index-D8l8hNXn.d.ts → index-CQG3D1cp.d.ts} +1 -1
  71. package/dist/{index-DO9XxMzS.d.ts → index-CZQXo5tH.d.ts} +0 -15
  72. package/dist/{index-Bbkgpt5t.d.ts → index-D-AEQVLo.d.ts} +2 -2
  73. package/dist/{index-CZmcDtFn.d.ts → index-D4Y1cMG0.d.ts} +1 -1
  74. package/dist/{index-B3OTH1dV.d.ts → index-DSZ3ZCHF.d.ts} +1 -1
  75. package/dist/{index-BUYXac2c.d.ts → index-Dh_HJ82K.d.ts} +2 -2
  76. package/dist/{index-4Uz-e_fL.d.ts → index-DwigL4lY.d.ts} +13 -3
  77. package/dist/{index-CPNSy-U0.d.cts → index-DyR7eU5S.d.cts} +19 -0
  78. package/dist/{index-BeT2r7sk.d.ts → index-JZUPJIJy.d.ts} +19 -0
  79. package/dist/{index-pT8sCpOJ.d.ts → index-K0_0eR8g.d.ts} +9 -0
  80. package/dist/{index-CJIuLu2f.d.cts → index-O16yXPK4.d.cts} +1 -1
  81. package/dist/{index-LIpQQE9f.d.cts → index-O7fucFrU.d.cts} +1 -1
  82. package/dist/{index-DmAgG5CI.d.cts → index-RV_yDjOX.d.cts} +1 -1
  83. package/dist/{index-D6egPFAL.d.ts → index-cm1GNcWE.d.ts} +1 -1
  84. package/dist/{index-CpyNFqkB.d.ts → index-wAzD9yVj.d.ts} +1 -1
  85. package/dist/index.cjs +39 -39
  86. package/dist/index.d.cts +16 -16
  87. package/dist/index.d.ts +16 -16
  88. package/dist/index.js +1 -1
  89. package/dist/patterns/ai/browser.js +1 -1
  90. package/dist/patterns/ai/index.cjs +15 -15
  91. package/dist/patterns/ai/index.d.cts +5 -5
  92. package/dist/patterns/ai/index.d.ts +5 -5
  93. package/dist/patterns/ai/index.js +1 -1
  94. package/dist/patterns/ai/node.js +1 -1
  95. package/dist/patterns/cqrs/index.cjs +3 -3
  96. package/dist/patterns/cqrs/index.d.cts +2 -2
  97. package/dist/patterns/cqrs/index.d.ts +2 -2
  98. package/dist/patterns/cqrs/index.js +1 -1
  99. package/dist/patterns/demo-shell/index.js +1 -1
  100. package/dist/patterns/domain-templates/index.cjs +2 -2
  101. package/dist/patterns/domain-templates/index.js +1 -1
  102. package/dist/patterns/graphspec/index.cjs +4 -4
  103. package/dist/patterns/graphspec/index.js +1 -1
  104. package/dist/patterns/harness/index.cjs +7 -7
  105. package/dist/patterns/harness/index.d.cts +5 -5
  106. package/dist/patterns/harness/index.d.ts +5 -5
  107. package/dist/patterns/harness/index.js +1 -1
  108. package/dist/patterns/inspect/index.cjs +3 -3
  109. package/dist/patterns/inspect/index.d.cts +1 -1
  110. package/dist/patterns/inspect/index.d.ts +1 -1
  111. package/dist/patterns/inspect/index.js +1 -1
  112. package/dist/patterns/job-queue/index.cjs +3 -3
  113. package/dist/patterns/job-queue/index.d.cts +2 -2
  114. package/dist/patterns/job-queue/index.d.ts +2 -2
  115. package/dist/patterns/job-queue/index.js +1 -1
  116. package/dist/patterns/memory/index.cjs +3 -3
  117. package/dist/patterns/memory/index.d.cts +2 -2
  118. package/dist/patterns/memory/index.d.ts +2 -2
  119. package/dist/patterns/memory/index.js +1 -1
  120. package/dist/patterns/messaging/index.cjs +3 -3
  121. package/dist/patterns/messaging/index.js +1 -1
  122. package/dist/patterns/orchestration/index.cjs +3 -3
  123. package/dist/patterns/orchestration/index.d.cts +3 -3
  124. package/dist/patterns/orchestration/index.d.ts +3 -3
  125. package/dist/patterns/orchestration/index.js +1 -1
  126. package/dist/patterns/process/index.cjs +1 -1
  127. package/dist/patterns/process/index.d.cts +3 -3
  128. package/dist/patterns/process/index.d.ts +3 -3
  129. package/dist/patterns/process/index.js +1 -1
  130. package/dist/patterns/reactive-layout/index.js +1 -1
  131. package/dist/patterns/reduction/index.js +1 -1
  132. package/dist/patterns/surface/index.cjs +3 -3
  133. package/dist/patterns/surface/index.js +1 -1
  134. package/dist/{pipeline-graph-WBlobVhU.d.cts → pipeline-graph-DPqKDk59.d.cts} +2 -2
  135. package/dist/{pipeline-graph-v8fMvqNk.d.ts → pipeline-graph-loP57TBA.d.ts} +2 -2
  136. package/dist/resilience-YIWPK4YC.js +1 -0
  137. package/dist/{sugar-CH-2ZY90.d.ts → sugar-DLwvMr3F.d.ts} +23 -3
  138. package/dist/{sugar-DStZfUEK.d.cts → sugar-DyVGtczU.d.cts} +23 -3
  139. package/package.json +1 -1
  140. package/dist/chunk-3ZZX7M25.js +0 -1
  141. package/dist/chunk-VE5SIZEM.js +0 -1
  142. package/dist/chunk-XLQPNNIC.js +0 -1
  143. package/dist/resilience-445VFFXQ.js +0 -1
@@ -1,10 +1,10 @@
1
1
  import { NodeInput } from './extra/sources.cjs';
2
2
  import { N as Node } from './node-ClS5yC-B.cjs';
3
3
  import { L as LLMAdapter } from './types-B1jDWVsM.cjs';
4
- import { J as JobEnvelope, a as JobFlowGraph, b as JobQueueGraph } from './index-3NmAfcH0.cjs';
4
+ import { J as JobEnvelope, a as JobFlowGraph, b as JobQueueGraph } from './index-BwLvVVsy.cjs';
5
5
  import { T as TopicGraph, M as MessagingHubGraph } from './index-BTQtTb_H.cjs';
6
6
  import { a as GraphOptions, G as Graph, t as GraphProfileResult, s as GraphProfileOptions } from './graph-C4SHb3Ly.cjs';
7
- import { G as GateController } from './pipeline-graph-WBlobVhU.cjs';
7
+ import { G as GateController } from './pipeline-graph-DPqKDk59.cjs';
8
8
 
9
9
  /**
10
10
  * Strategy model and priority scoring (roadmap §9.0).
@@ -1478,7 +1478,17 @@ declare class HarnessGraph<A = unknown> extends Graph {
1478
1478
  * in to priority scoring.
1479
1479
  */
1480
1480
  readonly priorityScores?: ReadonlyMap<QueueRoute, Node<number>>;
1481
- constructor(name: string, queues: MessagingHubGraph, executeFlow: JobFlowGraph<HarnessJobPayload<A>>, queueTopics: Map<QueueRoute, TopicGraph<TriagedItem>>, jobs: Map<QueueRoute, JobQueueGraph<TriagedItem>>, gates: Map<QueueRoute, GateController<TriagedItem>>, strategy: StrategyModelBundle, totalRetries: Node<number>, totalReingestions: Node<number>, priorityScores?: Map<QueueRoute, Node<number>>);
1481
+ /**
1482
+ * REFLECT-stage tick marker — emits one DATA per terminal verdict observed
1483
+ * on `executeFlow.completed`. `equals: () => false` so each completion
1484
+ * produces an observable tick (no Object.is collapse on identical
1485
+ * `null` payloads). Inspection tools (`harnessTrace`, dashboards) can
1486
+ * subscribe directly here instead of resolving by string path
1487
+ * (`harness.node("reflect")`) — the field is the lock against rename
1488
+ * drift.
1489
+ */
1490
+ readonly reflect: Node<null>;
1491
+ constructor(name: string, queues: MessagingHubGraph, executeFlow: JobFlowGraph<HarnessJobPayload<A>>, queueTopics: Map<QueueRoute, TopicGraph<TriagedItem>>, jobs: Map<QueueRoute, JobQueueGraph<TriagedItem>>, gates: Map<QueueRoute, GateController<TriagedItem>>, strategy: StrategyModelBundle, totalRetries: Node<number>, totalReingestions: Node<number>, reflect: Node<null>, priorityScores?: Map<QueueRoute, Node<number>>);
1482
1492
  /** Intake topic — publish items here to enter the loop. */
1483
1493
  get intake(): TopicGraph<IntakeItem>;
1484
1494
  /** Verify results topic — subscribe to see verification outcomes. */
@@ -1,8 +1,8 @@
1
- import { B as BaseAuditRecord } from './index-DBIqYS43.cjs';
1
+ import { B as BaseAuditRecord } from './index-C9pjcz3l.cjs';
2
2
  import { a as ReactiveLogBundle } from './reactive-log-B00laMSQ.cjs';
3
3
  import { NodeInput } from './extra/sources.cjs';
4
4
  import { AppendLogStorageTier } from './extra/storage-tiers.cjs';
5
- import { C as CqrsEventMap, a as CqrsEvent, b as CqrsGraph } from './index-CEMx8n40.cjs';
5
+ import { C as CqrsEventMap, a as CqrsEvent, b as CqrsGraph } from './index-COD1kVoS.cjs';
6
6
 
7
7
  /**
8
8
  * Process Manager pattern (Phase 7 — roadmap §4.6, Audit 3 — locked 2026-04-24).
@@ -1,5 +1,5 @@
1
1
  import { N as Node } from './node-ClS5yC-B.cjs';
2
- import { B as BaseAuditRecord } from './index-DBIqYS43.cjs';
2
+ import { B as BaseAuditRecord } from './index-C9pjcz3l.cjs';
3
3
  import { a as ReactiveLogBundle } from './reactive-log-B00laMSQ.cjs';
4
4
  import { NodeInput } from './extra/sources.cjs';
5
5
  import { AppendLogStorageTier } from './extra/storage-tiers.cjs';
@@ -1,6 +1,6 @@
1
1
  import { i as index$2 } from './index-Dmqp7KjD.js';
2
2
  import { i as index$3 } from './index-CCq87F7t.js';
3
- import { i as index$4 } from './index-D6egPFAL.js';
3
+ import { i as index$4 } from './index-cm1GNcWE.js';
4
4
  import { i as index$5 } from './index-BG0BN3PB.js';
5
5
  import { N as Node } from './node-ClS5yC-B.js';
6
6
  import { i as index$6 } from './index-CJK1JkYy.js';
@@ -106,21 +106,6 @@ type MutationOpts<TArgs extends readonly unknown[], TResult, R extends BaseAudit
106
106
  };
107
107
  type WrapMutationOpts<TArgs extends readonly unknown[], TResult, R extends BaseAuditRecord> = MutationOpts<TArgs, TResult, R>;
108
108
  type LightMutationOpts<TArgs extends readonly unknown[], TResult, R extends BaseAuditRecord> = MutationOpts<TArgs, TResult, R>;
109
- /**
110
- * Advance a cursor node and return the new value. Emits `[DIRTY], [DATA, next]`
111
- * directly on the cursor — atomic outside a batch, rollback-discardable inside.
112
- *
113
- * Resets to `0` if the cursor cache is missing, non-numeric, `NaN`, or
114
- * non-finite (e.g. corrupted by `restore()` from a malformed snapshot, or
115
- * by a misbehaving codec). `??` alone would let `NaN` and `""` pass through
116
- * and silently corrupt audit ordering downstream.
117
- *
118
- * Works whether or not the cursor has any subscribers — `down` updates the
119
- * cache regardless, so primitives that bump before consumers attach (e.g.
120
- * `JobQueueGraph.enqueue`) still see a coherent sequence.
121
- *
122
- * @category internal
123
- */
124
109
  declare function bumpCursor(seq: Node<number>): number;
125
110
  /**
126
111
  * Build a record via the supplied builder, stamp `handlerVersion` if present,
@@ -1,5 +1,5 @@
1
1
  import { N as Node } from './node-ClS5yC-B.js';
2
- import { B as BaseAuditRecord } from './index-DO9XxMzS.js';
2
+ import { B as BaseAuditRecord } from './index-CZQXo5tH.js';
3
3
  import { a as ReactiveLogBundle } from './reactive-log-BezYsbA_.js';
4
4
  import { NodeInput } from './extra/sources.js';
5
5
  import { AppendLogStorageTier } from './extra/storage-tiers.js';
@@ -1,4 +1,4 @@
1
- import { C as CatchOptions, a as ClassifyResult, D as Decision, b as DecisionAction, G as GateController, c as GateOptions, P as PipelineGraph, S as StepRef, T as TerminalCause, d as decisionKeyOf, p as pipelineGraph } from './pipeline-graph-WBlobVhU.cjs';
1
+ import { C as CatchOptions, a as ClassifyResult, D as Decision, b as DecisionAction, G as GateController, c as GateOptions, P as PipelineGraph, S as StepRef, T as TerminalCause, d as decisionKeyOf, p as pipelineGraph } from './pipeline-graph-DPqKDk59.cjs';
2
2
 
3
3
  /**
4
4
  * Orchestration patterns (roadmap §4.1).
@@ -1,5 +1,5 @@
1
1
  import { N as Node } from './node-ClS5yC-B.cjs';
2
- import { B as BaseAuditRecord } from './index-DBIqYS43.cjs';
2
+ import { B as BaseAuditRecord } from './index-C9pjcz3l.cjs';
3
3
  import { a as ReactiveLogBundle } from './reactive-log-B00laMSQ.cjs';
4
4
  import { G as Graph } from './graph-C4SHb3Ly.cjs';
5
5
 
@@ -1,5 +1,5 @@
1
1
  import { N as Node } from './node-ClS5yC-B.cjs';
2
- import { B as BaseAuditRecord } from './index-DBIqYS43.cjs';
2
+ import { B as BaseAuditRecord } from './index-C9pjcz3l.cjs';
3
3
  import { a as ReactiveLogBundle } from './reactive-log-B00laMSQ.cjs';
4
4
  import { AppendLogStorageTier } from './extra/storage-tiers.cjs';
5
5
  import { a as GraphOptions, G as Graph } from './graph-C4SHb3Ly.cjs';
@@ -1,5 +1,5 @@
1
1
  import { N as Node } from './node-ClS5yC-B.js';
2
- import { B as BaseAuditRecord } from './index-DO9XxMzS.js';
2
+ import { B as BaseAuditRecord } from './index-CZQXo5tH.js';
3
3
  import { a as ReactiveLogBundle } from './reactive-log-BezYsbA_.js';
4
4
  import { G as Graph } from './graph-7VguS7a4.js';
5
5
 
@@ -1,5 +1,5 @@
1
1
  import { N as Node } from './node-ClS5yC-B.js';
2
- import { B as BaseAuditRecord } from './index-DO9XxMzS.js';
2
+ import { B as BaseAuditRecord } from './index-CZQXo5tH.js';
3
3
  import { a as ReactiveLogBundle } from './reactive-log-BezYsbA_.js';
4
4
  import { AppendLogStorageTier } from './extra/storage-tiers.js';
5
5
  import { a as GraphOptions, G as Graph } from './graph-7VguS7a4.js';
@@ -106,21 +106,6 @@ type MutationOpts<TArgs extends readonly unknown[], TResult, R extends BaseAudit
106
106
  };
107
107
  type WrapMutationOpts<TArgs extends readonly unknown[], TResult, R extends BaseAuditRecord> = MutationOpts<TArgs, TResult, R>;
108
108
  type LightMutationOpts<TArgs extends readonly unknown[], TResult, R extends BaseAuditRecord> = MutationOpts<TArgs, TResult, R>;
109
- /**
110
- * Advance a cursor node and return the new value. Emits `[DIRTY], [DATA, next]`
111
- * directly on the cursor — atomic outside a batch, rollback-discardable inside.
112
- *
113
- * Resets to `0` if the cursor cache is missing, non-numeric, `NaN`, or
114
- * non-finite (e.g. corrupted by `restore()` from a malformed snapshot, or
115
- * by a misbehaving codec). `??` alone would let `NaN` and `""` pass through
116
- * and silently corrupt audit ordering downstream.
117
- *
118
- * Works whether or not the cursor has any subscribers — `down` updates the
119
- * cache regardless, so primitives that bump before consumers attach (e.g.
120
- * `JobQueueGraph.enqueue`) still see a coherent sequence.
121
- *
122
- * @category internal
123
- */
124
109
  declare function bumpCursor(seq: Node<number>): number;
125
110
  /**
126
111
  * Build a record via the supplied builder, stamp `handlerVersion` if present,
@@ -8,8 +8,8 @@ import { W as WithReplayCacheOptions, F as FallbackAdapterOptions, a as Fallback
8
8
  import { E as Extraction, D as DistillBundle, f as DEFAULT_DECAY_RATE } from './decay-CdEBmDIs.js';
9
9
  import { G as Graph, a as GraphOptions, i as GraphCheckpointRecord, h as GraphAttachStorageOptions } from './graph-7VguS7a4.js';
10
10
  import { T as TopicGraph } from './index-DBHK8O6H.js';
11
- import { G as GateController, c as GateOptions } from './pipeline-graph-v8fMvqNk.js';
12
- import { V as VectorSearchResult, C as CollectionGraph, a as VectorIndexGraph, K as KnowledgeGraph } from './index-Bn4zHYLj.js';
11
+ import { G as GateController, c as GateOptions } from './pipeline-graph-loP57TBA.js';
12
+ import { V as VectorSearchResult, C as CollectionGraph, a as VectorIndexGraph, K as KnowledgeGraph } from './index-CPT7C_f1.js';
13
13
  import { StorageHandle } from './extra/storage-core.js';
14
14
  import { SnapshotStorageTier } from './extra/storage-tiers.js';
15
15
  import { c as GraphSpecCatalog } from './index-BP8a88zx.js';
@@ -1,4 +1,4 @@
1
- import { C as CatchOptions, a as ClassifyResult, D as Decision, b as DecisionAction, G as GateController, c as GateOptions, P as PipelineGraph, S as StepRef, T as TerminalCause, d as decisionKeyOf, p as pipelineGraph } from './pipeline-graph-v8fMvqNk.js';
1
+ import { C as CatchOptions, a as ClassifyResult, D as Decision, b as DecisionAction, G as GateController, c as GateOptions, P as PipelineGraph, S as StepRef, T as TerminalCause, d as decisionKeyOf, p as pipelineGraph } from './pipeline-graph-loP57TBA.js';
2
2
 
3
3
  /**
4
4
  * Orchestration patterns (roadmap §4.1).
@@ -5,7 +5,7 @@ import { AsyncSourceOpts, NodeInput, EventTargetLike, FromCronOptions, ReactiveC
5
5
  import { SnapshotStorageTier, KvStorageTier, AppendCursor, AppendLoadResult, AppendLogStorageOptions, AppendLogStorageTier, BaseStorageTier, Codec, KvStorageOptions, SnapshotStorageOptions, StorageBackend, appendLogStorage, dictKv, dictSnapshot, jsonCodec, jsonCodecFor, kvStorage, memoryAppendLog, memoryBackend, memoryKv, memorySnapshot, snapshotStorage } from './extra/storage-tiers.js';
6
6
  import { D as DistillBundle, a as DistillOptions, E as Extraction, V as VerifiableBundle, b as VerifiableOptions, c as VerifyValue, d as decay, e as distill, v as verifiable } from './decay-CdEBmDIs.js';
7
7
  import { C as ContentAddressedMissError, a as ContentAddressedMode, b as ContentAddressedStorage, c as ContentAddressedStorageOptions, d as canonicalJson, e as contentAddressedStorage } from './content-addressed-storage-DuYMjV7o.js';
8
- import { A as AuditLogOpts, B as BaseAuditRecord, D as DEFAULT_AUDIT_GUARD, F as FailureMeta, L as LightMutationOpts, M as MutationOpts, S as SuccessMeta, W as WrapMutationOpts, a as appendAudit, b as bumpCursor, c as createAuditLog, l as lightMutation, r as registerCursor, d as registerCursorMap, t as tryIncrementBounded, w as wrapMutation } from './index-DO9XxMzS.js';
8
+ import { A as AuditLogOpts, B as BaseAuditRecord, D as DEFAULT_AUDIT_GUARD, F as FailureMeta, L as LightMutationOpts, M as MutationOpts, S as SuccessMeta, W as WrapMutationOpts, a as appendAudit, b as bumpCursor, c as createAuditLog, l as lightMutation, r as registerCursor, d as registerCursorMap, t as tryIncrementBounded, w as wrapMutation } from './index-CZQXo5tH.js';
9
9
  import { T as ToObservableOptions, t as toObservable } from './observable-BsBzUrcI.js';
10
10
  import { MergeMapOptions, TapObserver, ThrottleOptions, audit, buffer, bufferCount, bufferTime, catchError, combine, combineLatest, concat, concatMap, debounce, debounceTime, delay, distinctUntilChanged, elementAt, exhaustMap, filter, find, first, flatMap, interval, last, map, merge, mergeMap, onFirstData, pairwise, pausable, race, reduce, repeat, rescue, sample, scan, skip, switchMap, take, takeUntil, takeWhile, tap, tapFirst, throttle, throttleTime, valve, window, windowCount, windowTime, withLatestFrom, zip } from './extra/operators.js';
11
11
  import { IndexBackend, IndexRow, ListBackend, NativeIndexBackend, NativeListBackend, ReactiveIndexBundle, ReactiveIndexOptions, ReactiveListBundle, ReactiveListOptions, UpsertOptions, reactiveIndex, reactiveList } from './extra/reactive.js';
@@ -1,8 +1,8 @@
1
- import { B as BaseAuditRecord } from './index-DO9XxMzS.js';
1
+ import { B as BaseAuditRecord } from './index-CZQXo5tH.js';
2
2
  import { a as ReactiveLogBundle } from './reactive-log-BezYsbA_.js';
3
3
  import { NodeInput } from './extra/sources.js';
4
4
  import { AppendLogStorageTier } from './extra/storage-tiers.js';
5
- import { C as CqrsEventMap, a as CqrsEvent, b as CqrsGraph } from './index-D8l8hNXn.js';
5
+ import { C as CqrsEventMap, a as CqrsEvent, b as CqrsGraph } from './index-CQG3D1cp.js';
6
6
 
7
7
  /**
8
8
  * Process Manager pattern (Phase 7 — roadmap §4.6, Audit 3 — locked 2026-04-24).
@@ -1,10 +1,10 @@
1
1
  import { NodeInput } from './extra/sources.js';
2
2
  import { N as Node } from './node-ClS5yC-B.js';
3
3
  import { L as LLMAdapter } from './types-DkzUUs0H.js';
4
- import { J as JobEnvelope, a as JobFlowGraph, b as JobQueueGraph } from './index-CJQm0g38.js';
4
+ import { J as JobEnvelope, a as JobFlowGraph, b as JobQueueGraph } from './index-CAC_rNzm.js';
5
5
  import { T as TopicGraph, M as MessagingHubGraph } from './index-DBHK8O6H.js';
6
6
  import { a as GraphOptions, G as Graph, t as GraphProfileResult, s as GraphProfileOptions } from './graph-7VguS7a4.js';
7
- import { G as GateController } from './pipeline-graph-v8fMvqNk.js';
7
+ import { G as GateController } from './pipeline-graph-loP57TBA.js';
8
8
 
9
9
  /**
10
10
  * Strategy model and priority scoring (roadmap §9.0).
@@ -1478,7 +1478,17 @@ declare class HarnessGraph<A = unknown> extends Graph {
1478
1478
  * in to priority scoring.
1479
1479
  */
1480
1480
  readonly priorityScores?: ReadonlyMap<QueueRoute, Node<number>>;
1481
- constructor(name: string, queues: MessagingHubGraph, executeFlow: JobFlowGraph<HarnessJobPayload<A>>, queueTopics: Map<QueueRoute, TopicGraph<TriagedItem>>, jobs: Map<QueueRoute, JobQueueGraph<TriagedItem>>, gates: Map<QueueRoute, GateController<TriagedItem>>, strategy: StrategyModelBundle, totalRetries: Node<number>, totalReingestions: Node<number>, priorityScores?: Map<QueueRoute, Node<number>>);
1481
+ /**
1482
+ * REFLECT-stage tick marker — emits one DATA per terminal verdict observed
1483
+ * on `executeFlow.completed`. `equals: () => false` so each completion
1484
+ * produces an observable tick (no Object.is collapse on identical
1485
+ * `null` payloads). Inspection tools (`harnessTrace`, dashboards) can
1486
+ * subscribe directly here instead of resolving by string path
1487
+ * (`harness.node("reflect")`) — the field is the lock against rename
1488
+ * drift.
1489
+ */
1490
+ readonly reflect: Node<null>;
1491
+ constructor(name: string, queues: MessagingHubGraph, executeFlow: JobFlowGraph<HarnessJobPayload<A>>, queueTopics: Map<QueueRoute, TopicGraph<TriagedItem>>, jobs: Map<QueueRoute, JobQueueGraph<TriagedItem>>, gates: Map<QueueRoute, GateController<TriagedItem>>, strategy: StrategyModelBundle, totalRetries: Node<number>, totalReingestions: Node<number>, reflect: Node<null>, priorityScores?: Map<QueueRoute, Node<number>>);
1482
1492
  /** Intake topic — publish items here to enter the loop. */
1483
1493
  get intake(): TopicGraph<IntakeItem>;
1484
1494
  /** Verify results topic — subscribe to see verification outcomes. */
@@ -58,6 +58,25 @@ interface AuditTrailOptions {
58
58
  declare class AuditTrailGraph extends Graph {
59
59
  readonly entries: Node<readonly AuditEntry[]>;
60
60
  readonly count: Node<number>;
61
+ /**
62
+ * Effective set of event types this trail records (EH-18). Reflects
63
+ * either the caller-supplied `opts.includeTypes` or the default set
64
+ * (`["data", "error", "complete", "teardown"]`). Captured at construction
65
+ * — each instance owns its own clone, so a default-using trail can never
66
+ * leak mutations into the module-level default set.
67
+ *
68
+ * **Mutation contract.** Type-system read-only via `ReadonlySet`. Runtime
69
+ * mutation through an unsafe cast (`(audit.includeTypes as Set<...>)
70
+ * .add(...)`) is unsupported — it would desync the field from the
71
+ * recording closure, which captured the original `Set` reference at
72
+ * construction. The runtime does NOT enforce immutability beyond the
73
+ * type contract; consumers must respect it.
74
+ *
75
+ * Use this to validate that a `complianceSnapshot.fingerprint` was
76
+ * computed against the same recording surface — fingerprints are stable
77
+ * only when the recording set is identical across snapshots.
78
+ */
79
+ readonly includeTypes: ReadonlySet<AuditEntry["type"]>;
61
80
  private readonly _log;
62
81
  private readonly _target;
63
82
  constructor(target: Graph, opts: AuditTrailOptions);
@@ -58,6 +58,25 @@ interface AuditTrailOptions {
58
58
  declare class AuditTrailGraph extends Graph {
59
59
  readonly entries: Node<readonly AuditEntry[]>;
60
60
  readonly count: Node<number>;
61
+ /**
62
+ * Effective set of event types this trail records (EH-18). Reflects
63
+ * either the caller-supplied `opts.includeTypes` or the default set
64
+ * (`["data", "error", "complete", "teardown"]`). Captured at construction
65
+ * — each instance owns its own clone, so a default-using trail can never
66
+ * leak mutations into the module-level default set.
67
+ *
68
+ * **Mutation contract.** Type-system read-only via `ReadonlySet`. Runtime
69
+ * mutation through an unsafe cast (`(audit.includeTypes as Set<...>)
70
+ * .add(...)`) is unsupported — it would desync the field from the
71
+ * recording closure, which captured the original `Set` reference at
72
+ * construction. The runtime does NOT enforce immutability beyond the
73
+ * type contract; consumers must respect it.
74
+ *
75
+ * Use this to validate that a `complianceSnapshot.fingerprint` was
76
+ * computed against the same recording surface — fingerprints are stable
77
+ * only when the recording set is identical across snapshots.
78
+ */
79
+ readonly includeTypes: ReadonlySet<AuditEntry["type"]>;
61
80
  private readonly _log;
62
81
  private readonly _target;
63
82
  constructor(target: Graph, opts: AuditTrailOptions);
@@ -287,6 +287,15 @@ declare function replayWAL(entries: readonly WALEntry[]): GraphPersistSnapshot;
287
287
  * consumers are part of the design. If you have known external-consumer
288
288
  * roots, filter them from `result.orphans` before deciding what to act on.
289
289
  *
290
+ * **Synthetic `__internal__/` paths (EH-9).** Compound factories sometimes
291
+ * surface unnamed helper nodes under the `__internal__/` namespace
292
+ * (auto-generated when a producer / derived is added without a `name` and
293
+ * the registrar falls back to a synthetic prefix). These never represent
294
+ * user-authored topology and should not surface as actionable orphans;
295
+ * `validateNoIslands` filters them out before reporting. If a real factory
296
+ * regression accidentally leaks a user-meaningful node under this prefix,
297
+ * the fix is to give the node a real name — not to remove the filter.
298
+ *
290
299
  * **Non-throwing by default.** Returns a structured result so callers
291
300
  * (dry-run blocks, CI smoke tests) can exit non-zero with a diagnostic
292
301
  * instead of crashing.
@@ -5,7 +5,7 @@ import { AsyncSourceOpts, NodeInput, EventTargetLike, FromCronOptions, ReactiveC
5
5
  import { SnapshotStorageTier, KvStorageTier, AppendCursor, AppendLoadResult, AppendLogStorageOptions, AppendLogStorageTier, BaseStorageTier, Codec, KvStorageOptions, SnapshotStorageOptions, StorageBackend, appendLogStorage, dictKv, dictSnapshot, jsonCodec, jsonCodecFor, kvStorage, memoryAppendLog, memoryBackend, memoryKv, memorySnapshot, snapshotStorage } from './extra/storage-tiers.cjs';
6
6
  import { D as DistillBundle, a as DistillOptions, E as Extraction, V as VerifiableBundle, b as VerifiableOptions, c as VerifyValue, d as decay, e as distill, v as verifiable } from './decay-2ZukgQ4o.cjs';
7
7
  import { C as ContentAddressedMissError, a as ContentAddressedMode, b as ContentAddressedStorage, c as ContentAddressedStorageOptions, d as canonicalJson, e as contentAddressedStorage } from './content-addressed-storage-4-ST1tYk.cjs';
8
- import { A as AuditLogOpts, B as BaseAuditRecord, D as DEFAULT_AUDIT_GUARD, F as FailureMeta, L as LightMutationOpts, M as MutationOpts, S as SuccessMeta, W as WrapMutationOpts, a as appendAudit, b as bumpCursor, c as createAuditLog, l as lightMutation, r as registerCursor, d as registerCursorMap, t as tryIncrementBounded, w as wrapMutation } from './index-DBIqYS43.cjs';
8
+ import { A as AuditLogOpts, B as BaseAuditRecord, D as DEFAULT_AUDIT_GUARD, F as FailureMeta, L as LightMutationOpts, M as MutationOpts, S as SuccessMeta, W as WrapMutationOpts, a as appendAudit, b as bumpCursor, c as createAuditLog, l as lightMutation, r as registerCursor, d as registerCursorMap, t as tryIncrementBounded, w as wrapMutation } from './index-C9pjcz3l.cjs';
9
9
  import { T as ToObservableOptions, t as toObservable } from './observable-DLGPPtb8.cjs';
10
10
  import { MergeMapOptions, TapObserver, ThrottleOptions, audit, buffer, bufferCount, bufferTime, catchError, combine, combineLatest, concat, concatMap, debounce, debounceTime, delay, distinctUntilChanged, elementAt, exhaustMap, filter, find, first, flatMap, interval, last, map, merge, mergeMap, onFirstData, pairwise, pausable, race, reduce, repeat, rescue, sample, scan, skip, switchMap, take, takeUntil, takeWhile, tap, tapFirst, throttle, throttleTime, valve, window, windowCount, windowTime, withLatestFrom, zip } from './extra/operators.cjs';
11
11
  import { IndexBackend, IndexRow, ListBackend, NativeIndexBackend, NativeListBackend, ReactiveIndexBundle, ReactiveIndexOptions, ReactiveListBundle, ReactiveListOptions, UpsertOptions, reactiveIndex, reactiveList } from './extra/reactive.cjs';
@@ -1,6 +1,6 @@
1
1
  import { i as index$2 } from './index-ChOyVLKm.cjs';
2
2
  import { i as index$3 } from './index-C9kSENB4.cjs';
3
- import { i as index$4 } from './index-BtAsBp8K.cjs';
3
+ import { i as index$4 } from './index-BAOD98JD.cjs';
4
4
  import { i as index$5 } from './index-z96luz5O.cjs';
5
5
  import { N as Node } from './node-ClS5yC-B.cjs';
6
6
  import { i as index$6 } from './index-BVpm6noz.cjs';
@@ -1,6 +1,6 @@
1
1
  import { M as Messages, A as Actor, C as COMPLETE, f as COMPLETE_MSG, g as COMPLETE_ONLY_BATCH, D as DATA, h as DEFAULT_ACTOR, i as DIRTY, j as DIRTY_MSG, k as DIRTY_ONLY_BATCH, l as DepRecord, E as ERROR, F as FnCtx, G as GlobalInspectorEvent, m as GlobalInspectorHook, n as GraphReFlyConfig, o as GuardAction, p as GuardDenied, q as GuardDeniedDetails, H as HashFn, I as INVALIDATE, r as INVALIDATE_MSG, s as INVALIDATE_ONLY_BATCH, t as Message, u as MessageContext, v as MessageTypeRegistration, w as MessageTypeRegistrationInput, N as Node, c as NodeActions, x as NodeCtx, e as NodeDescribeKind, y as NodeFn, d as NodeFnCleanup, b as NodeGuard, z as NodeImpl, B as NodeInspectorHook, J as NodeInspectorHookEvent, a as NodeOptions, K as NodeSink, L as NodeStatus, O as NodeTransportOptions, P as NodeVersionInfo, Q as OnMessageHandler, R as OnSubscribeHandler, S as PAUSE, T as PolicyAllow, U as PolicyDeny, W as PolicyRuleData, X as RESOLVED, Y as RESOLVED_MSG, Z as RESOLVED_ONLY_BATCH, _ as RESUME, $ as RigorRecorder, a0 as START, a1 as START_MSG, a2 as SubscribeContext, a3 as TEARDOWN, a4 as TEARDOWN_MSG, a5 as TEARDOWN_ONLY_BATCH, a6 as V0, a7 as V1, V as VersioningLevel, a8 as VersioningOptions, a9 as accessHintForGuard, aa as advanceVersion, ab as configure, ac as createVersioning, ad as defaultConfig, ae as defaultHash, af as isV1, ag as node, ah as normalizeActor, ai as policy, aj as policyFromRules, ak as registerBuiltins } from './node-ClS5yC-B.cjs';
2
2
  import { a as DescribeDetail, b as DescribeField, D as DescribeNodeOutput, f as factoryTag, p as placeholderArgs, r as resolveDescribeFields } from './meta-vE8bxW1E.cjs';
3
- import { A as AutoTrackOptions, D as DerivedFn, a as DynamicFn, E as EffectFn, P as PipeOperator, b as ProducerFn, T as TrackFn, c as autoTrackNode, d as derived, e as dynamicNode, f as effect, p as pipe, g as producer, s as state } from './sugar-DStZfUEK.cjs';
3
+ import { A as AutoTrackOptions, D as DerivedFn, a as DynamicFn, E as EffectFn, P as PipeOperator, b as ProducerFn, T as TrackFn, c as autoTrackNode, d as derived, e as dynamicNode, f as effect, p as pipe, g as producer, s as state } from './sugar-DyVGtczU.cjs';
4
4
 
5
5
  /**
6
6
  * Batch deferral for tier-3+ messages, plus per-node emit coalescing inside
@@ -3,7 +3,7 @@ import { OnModuleInit, OnModuleDestroy, ExecutionContext, CanActivate, DynamicMo
3
3
  import { ModuleRef } from '@nestjs/core';
4
4
  import { G as Graph, r as GraphPersistSnapshot } from './graph-7VguS7a4.js';
5
5
  import { A as Actor } from './node-ClS5yC-B.js';
6
- import { c as CqrsOptions, b as CqrsGraph, a as CqrsEvent } from './index-D8l8hNXn.js';
6
+ import { c as CqrsOptions, b as CqrsGraph, a as CqrsEvent } from './index-CQG3D1cp.js';
7
7
  import { AppendLogStorageTier } from './extra/storage-tiers.js';
8
8
 
9
9
  /** Class constructor key for decorator registries and Nest `ModuleRef.get()`. */
@@ -1,6 +1,6 @@
1
1
  import { M as Messages, A as Actor, C as COMPLETE, f as COMPLETE_MSG, g as COMPLETE_ONLY_BATCH, D as DATA, h as DEFAULT_ACTOR, i as DIRTY, j as DIRTY_MSG, k as DIRTY_ONLY_BATCH, l as DepRecord, E as ERROR, F as FnCtx, G as GlobalInspectorEvent, m as GlobalInspectorHook, n as GraphReFlyConfig, o as GuardAction, p as GuardDenied, q as GuardDeniedDetails, H as HashFn, I as INVALIDATE, r as INVALIDATE_MSG, s as INVALIDATE_ONLY_BATCH, t as Message, u as MessageContext, v as MessageTypeRegistration, w as MessageTypeRegistrationInput, N as Node, c as NodeActions, x as NodeCtx, e as NodeDescribeKind, y as NodeFn, d as NodeFnCleanup, b as NodeGuard, z as NodeImpl, B as NodeInspectorHook, J as NodeInspectorHookEvent, a as NodeOptions, K as NodeSink, L as NodeStatus, O as NodeTransportOptions, P as NodeVersionInfo, Q as OnMessageHandler, R as OnSubscribeHandler, S as PAUSE, T as PolicyAllow, U as PolicyDeny, W as PolicyRuleData, X as RESOLVED, Y as RESOLVED_MSG, Z as RESOLVED_ONLY_BATCH, _ as RESUME, $ as RigorRecorder, a0 as START, a1 as START_MSG, a2 as SubscribeContext, a3 as TEARDOWN, a4 as TEARDOWN_MSG, a5 as TEARDOWN_ONLY_BATCH, a6 as V0, a7 as V1, V as VersioningLevel, a8 as VersioningOptions, a9 as accessHintForGuard, aa as advanceVersion, ab as configure, ac as createVersioning, ad as defaultConfig, ae as defaultHash, af as isV1, ag as node, ah as normalizeActor, ai as policy, aj as policyFromRules, ak as registerBuiltins } from './node-ClS5yC-B.js';
2
2
  import { a as DescribeDetail, b as DescribeField, D as DescribeNodeOutput, f as factoryTag, p as placeholderArgs, r as resolveDescribeFields } from './meta-BgVAsg9j.js';
3
- import { A as AutoTrackOptions, D as DerivedFn, a as DynamicFn, E as EffectFn, P as PipeOperator, b as ProducerFn, T as TrackFn, c as autoTrackNode, d as derived, e as dynamicNode, f as effect, p as pipe, g as producer, s as state } from './sugar-CH-2ZY90.js';
3
+ import { A as AutoTrackOptions, D as DerivedFn, a as DynamicFn, E as EffectFn, P as PipeOperator, b as ProducerFn, T as TrackFn, c as autoTrackNode, d as derived, e as dynamicNode, f as effect, p as pipe, g as producer, s as state } from './sugar-DLwvMr3F.js';
4
4
 
5
5
  /**
6
6
  * Batch deferral for tier-3+ messages, plus per-node emit coalescing inside