@graphrefly/graphrefly 0.12.0 → 0.13.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 (67) hide show
  1. package/dist/{chunk-XWMTVV2D.js → chunk-5RN7NBNG.js} +5 -5
  2. package/dist/{chunk-4F2ZFD5L.js → chunk-6B2ZCCNN.js} +39 -39
  3. package/dist/chunk-6B2ZCCNN.js.map +1 -0
  4. package/dist/{chunk-BRPCN2HJ.js → chunk-H4UFM6WD.js} +3 -3
  5. package/dist/{chunk-NULSP7U4.js → chunk-HA6QMDKQ.js} +4 -4
  6. package/dist/{chunk-X732W3QA.js → chunk-KNGOJEYP.js} +2 -2
  7. package/dist/{chunk-6OLNYOGU.js → chunk-PFMXKG4Y.js} +2 -2
  8. package/dist/{chunk-IXTW3BIO.js → chunk-QOGWU5K7.js} +3 -3
  9. package/dist/{chunk-JYRHO63K.js → chunk-UPC5OEB5.js} +17 -17
  10. package/dist/chunk-UPC5OEB5.js.map +1 -0
  11. package/dist/{chunk-VQWLA6XQ.js → chunk-UQI4GAHD.js} +3 -3
  12. package/dist/compat/nestjs/index.cjs +37 -37
  13. package/dist/compat/nestjs/index.cjs.map +1 -1
  14. package/dist/compat/nestjs/index.d.cts +4 -4
  15. package/dist/compat/nestjs/index.d.ts +4 -4
  16. package/dist/compat/nestjs/index.js +7 -7
  17. package/dist/core/index.cjs +39 -39
  18. package/dist/core/index.cjs.map +1 -1
  19. package/dist/core/index.d.cts +2 -2
  20. package/dist/core/index.d.ts +2 -2
  21. package/dist/core/index.js +5 -5
  22. package/dist/extra/index.cjs +37 -37
  23. package/dist/extra/index.cjs.map +1 -1
  24. package/dist/extra/index.d.cts +4 -4
  25. package/dist/extra/index.d.ts +4 -4
  26. package/dist/extra/index.js +3 -3
  27. package/dist/graph/index.cjs +37 -37
  28. package/dist/graph/index.cjs.map +1 -1
  29. package/dist/graph/index.d.cts +3 -3
  30. package/dist/graph/index.d.ts +3 -3
  31. package/dist/graph/index.js +4 -4
  32. package/dist/{graph-DXT95WZ3.d.ts → graph-BXIK5Dq5.d.ts} +1 -1
  33. package/dist/{graph-BE10ujU9.d.cts → graph-BhADtuFU.d.cts} +1 -1
  34. package/dist/{index-QfbXNW1N.d.cts → index-BNB0KjKe.d.ts} +24 -21
  35. package/dist/{index-C0_7g9sj.d.ts → index-BkToATim.d.ts} +1 -1
  36. package/dist/{index-CiAqgfFg.d.ts → index-CKyYg4IP.d.ts} +3 -3
  37. package/dist/{index-CCvzN5GB.d.cts → index-DANO9Gg7.d.cts} +2 -2
  38. package/dist/{index-CthwPnHQ.d.cts → index-DBhLjWSV.d.cts} +3 -3
  39. package/dist/{index-Dzdm20sx.d.ts → index-DKIyo4Bq.d.cts} +24 -21
  40. package/dist/{index-53cDGX7F.d.ts → index-DSp5R3Xq.d.ts} +3 -3
  41. package/dist/{index-aBZ2RoP0.d.cts → index-Dqemj9q0.d.cts} +3 -3
  42. package/dist/{index-nRulwTr-.d.cts → index-Wa8jXne6.d.cts} +1 -1
  43. package/dist/{index-B10Q0sQB.d.ts → index-fYObbpUw.d.ts} +2 -2
  44. package/dist/index.cjs +53 -53
  45. package/dist/index.cjs.map +1 -1
  46. package/dist/index.d.cts +12 -12
  47. package/dist/index.d.ts +12 -12
  48. package/dist/index.js +11 -11
  49. package/dist/{meta-BcuDhtwu.d.cts → meta-CrZUQAJ6.d.cts} +1 -1
  50. package/dist/{meta-BcuDhtwu.d.ts → meta-CrZUQAJ6.d.ts} +1 -1
  51. package/dist/patterns/reactive-layout/index.cjs +50 -50
  52. package/dist/patterns/reactive-layout/index.cjs.map +1 -1
  53. package/dist/patterns/reactive-layout/index.d.cts +3 -3
  54. package/dist/patterns/reactive-layout/index.d.ts +3 -3
  55. package/dist/patterns/reactive-layout/index.js +4 -4
  56. package/dist/{reactive-log-OULQssZg.d.cts → reactive-log-ChbpUrY2.d.cts} +2 -2
  57. package/dist/{reactive-log-Cu0VdqkT.d.ts → reactive-log-DV--7BWd.d.ts} +2 -2
  58. package/package.json +1 -1
  59. package/dist/chunk-4F2ZFD5L.js.map +0 -1
  60. package/dist/chunk-JYRHO63K.js.map +0 -1
  61. /package/dist/{chunk-XWMTVV2D.js.map → chunk-5RN7NBNG.js.map} +0 -0
  62. /package/dist/{chunk-BRPCN2HJ.js.map → chunk-H4UFM6WD.js.map} +0 -0
  63. /package/dist/{chunk-NULSP7U4.js.map → chunk-HA6QMDKQ.js.map} +0 -0
  64. /package/dist/{chunk-X732W3QA.js.map → chunk-KNGOJEYP.js.map} +0 -0
  65. /package/dist/{chunk-6OLNYOGU.js.map → chunk-PFMXKG4Y.js.map} +0 -0
  66. /package/dist/{chunk-IXTW3BIO.js.map → chunk-QOGWU5K7.js.map} +0 -0
  67. /package/dist/{chunk-VQWLA6XQ.js.map → chunk-UQI4GAHD.js.map} +0 -0
@@ -1,3 +1,3 @@
1
- export { D as DeltaCheckpoint, E as EvictedSubgraphInfo, a as EvictionPolicy, G as GraphCodec, J as JsonCodec, L as LazyGraphCodec, W as WALEntry, c as createDagCborCodec, b as createDagCborZstdCodec, n as negotiateCodec, r as replayWAL } from '../index-nRulwTr-.cjs';
2
- export { A as AutoCheckpointAdapter, D as DescribeFilter, d as GRAPH_META_SEGMENT, G as Graph, e as GraphActorOptions, b as GraphAutoCheckpointHandle, c as GraphAutoCheckpointOptions, f as GraphCheckpointRecord, g as GraphDescribeOptions, h as GraphDescribeOutput, i as GraphDiagramDirection, j as GraphDiagramOptions, k as GraphDiffChange, l as GraphDiffResult, m as GraphDumpOptions, n as GraphFactoryContext, o as GraphNodeFactory, p as GraphObserveAll, q as GraphObserveOne, a as GraphOptions, r as GraphPersistSnapshot, s as GraphSpyHandle, t as GraphSpyOptions, u as GraphSpyTheme, v as GraphSpyThemeName, O as ObserveDetail, w as ObserveEvent, x as ObserveOptions, y as ObserveResult, R as ReachableDirection, z as ReachableOptions, T as TraceEntry, B as reachable } from '../graph-BE10ujU9.cjs';
3
- import '../meta-BcuDhtwu.cjs';
1
+ export { D as DeltaCheckpoint, E as EvictedSubgraphInfo, a as EvictionPolicy, G as GraphCodec, J as JsonCodec, L as LazyGraphCodec, W as WALEntry, c as createDagCborCodec, b as createDagCborZstdCodec, n as negotiateCodec, r as replayWAL } from '../index-Wa8jXne6.cjs';
2
+ export { A as AutoCheckpointAdapter, D as DescribeFilter, d as GRAPH_META_SEGMENT, G as Graph, e as GraphActorOptions, b as GraphAutoCheckpointHandle, c as GraphAutoCheckpointOptions, f as GraphCheckpointRecord, g as GraphDescribeOptions, h as GraphDescribeOutput, i as GraphDiagramDirection, j as GraphDiagramOptions, k as GraphDiffChange, l as GraphDiffResult, m as GraphDumpOptions, n as GraphFactoryContext, o as GraphNodeFactory, p as GraphObserveAll, q as GraphObserveOne, a as GraphOptions, r as GraphPersistSnapshot, s as GraphSpyHandle, t as GraphSpyOptions, u as GraphSpyTheme, v as GraphSpyThemeName, O as ObserveDetail, w as ObserveEvent, x as ObserveOptions, y as ObserveResult, R as ReachableDirection, z as ReachableOptions, T as TraceEntry, B as reachable } from '../graph-BhADtuFU.cjs';
3
+ import '../meta-CrZUQAJ6.cjs';
@@ -1,3 +1,3 @@
1
- export { D as DeltaCheckpoint, E as EvictedSubgraphInfo, a as EvictionPolicy, G as GraphCodec, J as JsonCodec, L as LazyGraphCodec, W as WALEntry, c as createDagCborCodec, b as createDagCborZstdCodec, n as negotiateCodec, r as replayWAL } from '../index-C0_7g9sj.js';
2
- export { A as AutoCheckpointAdapter, D as DescribeFilter, d as GRAPH_META_SEGMENT, G as Graph, e as GraphActorOptions, b as GraphAutoCheckpointHandle, c as GraphAutoCheckpointOptions, f as GraphCheckpointRecord, g as GraphDescribeOptions, h as GraphDescribeOutput, i as GraphDiagramDirection, j as GraphDiagramOptions, k as GraphDiffChange, l as GraphDiffResult, m as GraphDumpOptions, n as GraphFactoryContext, o as GraphNodeFactory, p as GraphObserveAll, q as GraphObserveOne, a as GraphOptions, r as GraphPersistSnapshot, s as GraphSpyHandle, t as GraphSpyOptions, u as GraphSpyTheme, v as GraphSpyThemeName, O as ObserveDetail, w as ObserveEvent, x as ObserveOptions, y as ObserveResult, R as ReachableDirection, z as ReachableOptions, T as TraceEntry, B as reachable } from '../graph-DXT95WZ3.js';
3
- import '../meta-BcuDhtwu.js';
1
+ export { D as DeltaCheckpoint, E as EvictedSubgraphInfo, a as EvictionPolicy, G as GraphCodec, J as JsonCodec, L as LazyGraphCodec, W as WALEntry, c as createDagCborCodec, b as createDagCborZstdCodec, n as negotiateCodec, r as replayWAL } from '../index-BkToATim.js';
2
+ export { A as AutoCheckpointAdapter, D as DescribeFilter, d as GRAPH_META_SEGMENT, G as Graph, e as GraphActorOptions, b as GraphAutoCheckpointHandle, c as GraphAutoCheckpointOptions, f as GraphCheckpointRecord, g as GraphDescribeOptions, h as GraphDescribeOutput, i as GraphDiagramDirection, j as GraphDiagramOptions, k as GraphDiffChange, l as GraphDiffResult, m as GraphDumpOptions, n as GraphFactoryContext, o as GraphNodeFactory, p as GraphObserveAll, q as GraphObserveOne, a as GraphOptions, r as GraphPersistSnapshot, s as GraphSpyHandle, t as GraphSpyOptions, u as GraphSpyTheme, v as GraphSpyThemeName, O as ObserveDetail, w as ObserveEvent, x as ObserveOptions, y as ObserveResult, R as ReachableDirection, z as ReachableOptions, T as TraceEntry, B as reachable } from '../graph-BXIK5Dq5.js';
3
+ import '../meta-CrZUQAJ6.js';
@@ -4,14 +4,14 @@ import {
4
4
  createDagCborZstdCodec,
5
5
  negotiateCodec,
6
6
  replayWAL
7
- } from "../chunk-IXTW3BIO.js";
7
+ } from "../chunk-QOGWU5K7.js";
8
8
  import {
9
9
  GRAPH_META_SEGMENT,
10
10
  Graph,
11
11
  reachable
12
- } from "../chunk-VQWLA6XQ.js";
13
- import "../chunk-6OLNYOGU.js";
14
- import "../chunk-4F2ZFD5L.js";
12
+ } from "../chunk-UQI4GAHD.js";
13
+ import "../chunk-PFMXKG4Y.js";
14
+ import "../chunk-6B2ZCCNN.js";
15
15
  export {
16
16
  GRAPH_META_SEGMENT,
17
17
  Graph,
@@ -1,4 +1,4 @@
1
- import { j as DescribeNodeOutput, h as DescribeDetail, i as DescribeField, N as Node, y as VersioningLevel, A as Actor, m as Messages, p as NodeSink } from './meta-BcuDhtwu.js';
1
+ import { j as DescribeNodeOutput, h as DescribeDetail, i as DescribeField, N as Node, y as VersioningLevel, A as Actor, m as Messages, p as NodeSink } from './meta-CrZUQAJ6.js';
2
2
 
3
3
  /**
4
4
  * Reserved segment for meta companion paths: `nodeName::__meta__::metaKey` (GRAPHREFLY-SPEC §3.6).
@@ -1,4 +1,4 @@
1
- import { j as DescribeNodeOutput, h as DescribeDetail, i as DescribeField, N as Node, y as VersioningLevel, A as Actor, m as Messages, p as NodeSink } from './meta-BcuDhtwu.cjs';
1
+ import { j as DescribeNodeOutput, h as DescribeDetail, i as DescribeField, N as Node, y as VersioningLevel, A as Actor, m as Messages, p as NodeSink } from './meta-CrZUQAJ6.cjs';
2
2
 
3
3
  /**
4
4
  * Reserved segment for meta companion paths: `nodeName::__meta__::metaKey` (GRAPHREFLY-SPEC §3.6).
@@ -1,4 +1,4 @@
1
- import { m as Messages, N as Node, n as NodeDescribeKind, o as NodeGuard, a as NodeOptions, a6 as NodeInspectorHook, q as NodeStatus, A as Actor, r as NodeTransportOptions, p as NodeSink, S as SubscribeHints, c as NodeFn, C as CLEANUP_RESULT, d as COMPLETE, e as CleanupResult, D as DATA, f as DEFAULT_ACTOR, g as DIRTY, h as DescribeDetail, i as DescribeField, j as DescribeNodeOutput, E as ERROR, G as GuardAction, k as GuardDenied, l as GuardDeniedDetails, H as HashFn, I as INVALIDATE, M as Message, b as NodeActions, s as NodeVersionInfo, O as OnMessageHandler, P as PAUSE, t as PolicyAllow, u as PolicyDeny, v as PolicyRuleData, R as RESOLVED, w as RESUME, T as TEARDOWN, V as V0, x as V1, y as VersioningLevel, z as VersioningOptions, B as accessHintForGuard, F as advanceVersion, J as cleanupResult, K as createVersioning, L as defaultHash, Q as describeNode, U as isKnownMessageType, W as isPhase2Message, X as isTerminalMessage, Y as isV1, Z as knownMessageTypes, _ as messageTier, $ as metaSnapshot, a0 as node, a1 as normalizeActor, a2 as policy, a3 as policyFromRules, a4 as propagatesToMeta, a5 as resolveDescribeFields } from './meta-BcuDhtwu.cjs';
1
+ import { m as Messages, N as Node, n as NodeDescribeKind, o as NodeGuard, a as NodeOptions, a6 as NodeInspectorHook, q as NodeStatus, A as Actor, r as NodeTransportOptions, p as NodeSink, S as SubscribeHints, c as NodeFn, C as CLEANUP_RESULT, d as COMPLETE, e as CleanupResult, D as DATA, f as DEFAULT_ACTOR, g as DIRTY, h as DescribeDetail, i as DescribeField, j as DescribeNodeOutput, E as ERROR, G as GuardAction, k as GuardDenied, l as GuardDeniedDetails, H as HashFn, I as INVALIDATE, M as Message, b as NodeActions, s as NodeVersionInfo, O as OnMessageHandler, P as PAUSE, t as PolicyAllow, u as PolicyDeny, v as PolicyRuleData, R as RESOLVED, w as RESUME, T as TEARDOWN, V as V0, x as V1, y as VersioningLevel, z as VersioningOptions, B as accessHintForGuard, F as advanceVersion, J as cleanupResult, K as createVersioning, L as defaultHash, Q as describeNode, U as isKnownMessageType, W as isPhase2Message, X as isTerminalMessage, Y as isV1, Z as knownMessageTypes, _ as messageTier, $ as metaSnapshot, a0 as node, a1 as normalizeActor, a2 as policy, a3 as policyFromRules, a4 as propagatesToMeta, a5 as resolveDescribeFields } from './meta-CrZUQAJ6.js';
2
2
 
3
3
  /**
4
4
  * Returns whether the current call stack is inside a batch scope **or** while
@@ -29,15 +29,15 @@ declare function isBatching(): boolean;
29
29
  * error. While the drain loop is running (`flushInProgress`), a nested `batch`
30
30
  * that throws must **not** clear the global queue (cross-language decision A4).
31
31
  *
32
- * During the drain loop, `isBatching()` remains true so nested `emitWithBatch`
32
+ * During the drain loop, `isBatching()` remains true so nested `downWithBatch`
33
33
  * calls still defer phase-2 messages. The drain loop runs until the queue is
34
34
  * quiescent (no pending work remains). Per-emission try/catch ensures one
35
35
  * throwing callback does not orphan remaining emissions; the first error is
36
36
  * re-thrown after all emissions drain. Callbacks that ran before the throw may
37
37
  * have applied phase-2 — partial graph state is intentional (decision C1).
38
38
  *
39
- * @param fn — Synchronous work that may call `emitWithBatch` / `node.down()`.
40
- * @returns `void` — all side-effects happen through `emitWithBatch` and the
39
+ * @param fn — Synchronous work that may call `downWithBatch` / `node.down()`.
40
+ * @returns `void` — all side-effects happen through `downWithBatch` and the
41
41
  * phase-2 drain that runs after `fn` returns.
42
42
  *
43
43
  * @example
@@ -45,7 +45,7 @@ declare function isBatching(): boolean;
45
45
  * import { core } from "@graphrefly/graphrefly-ts";
46
46
  *
47
47
  * core.batch(() => {
48
- * core.emitWithBatch(sink, [[core.DATA, 1]]);
48
+ * core.downWithBatch(sink, [[core.DATA, 1]]);
49
49
  * });
50
50
  * ```
51
51
  *
@@ -80,40 +80,42 @@ declare function partitionForBatch(messages: Messages): {
80
80
  terminal: Messages;
81
81
  };
82
82
  /**
83
- * Delivers messages through `emit`, applying batch semantics and canonical
84
- * tier-based ordering (see `messages.ts`):
83
+ * Delivers messages downstream through `sink`, applying batch semantics and
84
+ * canonical tier-based ordering (see `messages.ts`):
85
85
  *
86
86
  * 1. **Immediate** (tier 0–1, 4): DIRTY, INVALIDATE, PAUSE, RESUME, TEARDOWN,
87
- * unknown — emitted synchronously.
87
+ * unknown — delivered synchronously.
88
88
  * 2. **Phase-2** (tier 2): DATA, RESOLVED — deferred while `isBatching()`.
89
89
  * 3. **Terminal** (tier 3): COMPLETE, ERROR — always delivered after phase-2.
90
90
  * When batching, terminal is queued after deferred phase-2 in the pending list.
91
- * When not batching, terminal is emitted after phase-2 synchronously.
91
+ * When not batching, terminal is delivered after phase-2 synchronously.
92
92
  *
93
93
  * This ordering prevents the "COMPLETE-before-DATA" class of bugs: terminal
94
94
  * signals never make a node terminal before phase-2 values reach sinks,
95
95
  * regardless of how the source assembled the message array.
96
96
  *
97
- * @param emit — Sink callback. May be called up to three times per invocation
97
+ * @param sink — Sink callback. May be called up to three times per invocation
98
98
  * (immediate, deferred, terminal) when not batching.
99
- * @param messages — Full `[[Type, Data?], ...]` array for one emission.
99
+ * @param messages — Full `[[Type, Data?], ...]` array for one downstream delivery.
100
100
  * @param phase — Starting delivery phase (`2` = data, `3` = terminal). Default `2`.
101
101
  * @param options - Optional configuration.
102
102
  * @option strategy | `"partition"` or `"sequential"` | `"partition"` | `"partition"` groups by tier; `"sequential"` preserves message order within each tier using `messageTier()` classification.
103
- * @returns `void` — delivery is performed through `emit` callbacks, synchronously
103
+ * @returns `void` — delivery is performed through `sink` callbacks, synchronously
104
104
  * or deferred into the active batch queue.
105
105
  *
106
106
  * @example
107
107
  * ```ts
108
108
  * import { core } from "@graphrefly/graphrefly-ts";
109
109
  *
110
- * core.emitWithBatch((msgs) => console.log(msgs), [[core.DIRTY], [core.DATA, 42]]);
110
+ * core.downWithBatch((msgs) => console.log(msgs), [[core.DIRTY], [core.DATA, 42]]);
111
111
  * ```
112
112
  *
113
113
  * @category core
114
114
  */
115
- declare function emitWithBatch(emit: (messages: Messages) => void, messages: Messages, phase?: 2 | 3, options?: {
116
- strategy?: "partition" | "sequential";
115
+ /** Delivery strategy for {@link downWithBatch}. Mirrors Python `DownStrategy`. */
116
+ type DownStrategy = "partition" | "sequential";
117
+ declare function downWithBatch(sink: (messages: Messages) => void, messages: Messages, phase?: 2 | 3, options?: {
118
+ strategy?: DownStrategy;
117
119
  }): void;
118
120
 
119
121
  /**
@@ -299,7 +301,7 @@ declare class DynamicNodeImpl<T = unknown> implements Node<T> {
299
301
  private _singleDepSinkCount;
300
302
  private _singleDepSinks;
301
303
  private readonly _actions;
302
- private readonly _boundEmitToSinks;
304
+ private readonly _boundDownToSinks;
303
305
  private _cached;
304
306
  private _status;
305
307
  private _terminal;
@@ -337,11 +339,11 @@ declare class DynamicNodeImpl<T = unknown> implements Node<T> {
337
339
  subscribe(sink: NodeSink, hints?: SubscribeHints): () => void;
338
340
  up(messages: Messages, options?: NodeTransportOptions): void;
339
341
  unsubscribe(): void;
340
- private _emitToSinks;
342
+ private _downToSinks;
341
343
  private _handleLocalLifecycle;
342
344
  /** Propagate a signal to all companion meta nodes (best-effort). */
343
345
  private _propagateToMeta;
344
- private _emitAutoValue;
346
+ private _downAutoValue;
345
347
  private _connect;
346
348
  private _disconnect;
347
349
  private _runFn;
@@ -504,6 +506,7 @@ declare const index_DIRTY: typeof DIRTY;
504
506
  declare const index_DescribeDetail: typeof DescribeDetail;
505
507
  declare const index_DescribeField: typeof DescribeField;
506
508
  declare const index_DescribeNodeOutput: typeof DescribeNodeOutput;
509
+ type index_DownStrategy = DownStrategy;
507
510
  type index_DynGet = DynGet;
508
511
  type index_DynamicNodeFn<T> = DynamicNodeFn<T>;
509
512
  type index_DynamicNodeImpl<T = unknown> = DynamicNodeImpl<T>;
@@ -552,9 +555,9 @@ declare const index_createVersioning: typeof createVersioning;
552
555
  declare const index_defaultHash: typeof defaultHash;
553
556
  declare const index_derived: typeof derived;
554
557
  declare const index_describeNode: typeof describeNode;
558
+ declare const index_downWithBatch: typeof downWithBatch;
555
559
  declare const index_dynamicNode: typeof dynamicNode;
556
560
  declare const index_effect: typeof effect;
557
- declare const index_emitWithBatch: typeof emitWithBatch;
558
561
  declare const index_isBatching: typeof isBatching;
559
562
  declare const index_isKnownMessageType: typeof isKnownMessageType;
560
563
  declare const index_isPhase2Message: typeof isPhase2Message;
@@ -576,7 +579,7 @@ declare const index_resolveDescribeFields: typeof resolveDescribeFields;
576
579
  declare const index_state: typeof state;
577
580
  declare const index_wallClockNs: typeof wallClockNs;
578
581
  declare namespace index {
579
- export { index_Actor as Actor, type index_BridgeOptions as BridgeOptions, index_CLEANUP_RESULT as CLEANUP_RESULT, index_COMPLETE as COMPLETE, index_CleanupResult as CleanupResult, index_DATA as DATA, index_DEFAULT_ACTOR as DEFAULT_ACTOR, index_DEFAULT_DOWN as DEFAULT_DOWN, index_DIRTY as DIRTY, index_DescribeDetail as DescribeDetail, index_DescribeField as DescribeField, index_DescribeNodeOutput as DescribeNodeOutput, type index_DynGet as DynGet, type index_DynamicNodeFn as DynamicNodeFn, index_DynamicNodeImpl as DynamicNodeImpl, type index_DynamicNodeOptions as DynamicNodeOptions, index_ERROR as ERROR, index_GuardAction as GuardAction, index_GuardDenied as GuardDenied, index_GuardDeniedDetails as GuardDeniedDetails, index_HashFn as HashFn, index_INVALIDATE as INVALIDATE, index_Message as Message, index_Messages as Messages, index_Node as Node, index_NodeActions as NodeActions, index_NodeDescribeKind as NodeDescribeKind, index_NodeFn as NodeFn, index_NodeGuard as NodeGuard, index_NodeOptions as NodeOptions, index_NodeSink as NodeSink, index_NodeStatus as NodeStatus, index_NodeTransportOptions as NodeTransportOptions, index_NodeVersionInfo as NodeVersionInfo, index_OnMessageHandler as OnMessageHandler, index_PAUSE as PAUSE, type index_PipeOperator as PipeOperator, index_PolicyAllow as PolicyAllow, index_PolicyDeny as PolicyDeny, index_PolicyRuleData as PolicyRuleData, index_RESOLVED as RESOLVED, index_RESUME as RESUME, index_ResettableTimer as ResettableTimer, index_SubscribeHints as SubscribeHints, index_TEARDOWN as TEARDOWN, index_V0 as V0, index_V1 as V1, index_VersioningLevel as VersioningLevel, index_VersioningOptions as VersioningOptions, index_accessHintForGuard as accessHintForGuard, index_advanceVersion as advanceVersion, index_batch as batch, index_bridge as bridge, index_cleanupResult as cleanupResult, index_createVersioning as createVersioning, index_defaultHash as defaultHash, index_derived as derived, index_describeNode as describeNode, index_dynamicNode as dynamicNode, index_effect as effect, index_emitWithBatch as emitWithBatch, index_isBatching as isBatching, index_isKnownMessageType as isKnownMessageType, index_isPhase2Message as isPhase2Message, index_isTerminalMessage as isTerminalMessage, index_isV1 as isV1, index_knownMessageTypes as knownMessageTypes, index_messageTier as messageTier, index_metaSnapshot as metaSnapshot, index_monotonicNs as monotonicNs, index_node as node, index_normalizeActor as normalizeActor, index_partitionForBatch as partitionForBatch, index_pipe as pipe, index_policy as policy, index_policyFromRules as policyFromRules, index_producer as producer, index_propagatesToMeta as propagatesToMeta, index_resolveDescribeFields as resolveDescribeFields, index_state as state, index_wallClockNs as wallClockNs };
582
+ export { index_Actor as Actor, type index_BridgeOptions as BridgeOptions, index_CLEANUP_RESULT as CLEANUP_RESULT, index_COMPLETE as COMPLETE, index_CleanupResult as CleanupResult, index_DATA as DATA, index_DEFAULT_ACTOR as DEFAULT_ACTOR, index_DEFAULT_DOWN as DEFAULT_DOWN, index_DIRTY as DIRTY, index_DescribeDetail as DescribeDetail, index_DescribeField as DescribeField, index_DescribeNodeOutput as DescribeNodeOutput, type index_DownStrategy as DownStrategy, type index_DynGet as DynGet, type index_DynamicNodeFn as DynamicNodeFn, index_DynamicNodeImpl as DynamicNodeImpl, type index_DynamicNodeOptions as DynamicNodeOptions, index_ERROR as ERROR, index_GuardAction as GuardAction, index_GuardDenied as GuardDenied, index_GuardDeniedDetails as GuardDeniedDetails, index_HashFn as HashFn, index_INVALIDATE as INVALIDATE, index_Message as Message, index_Messages as Messages, index_Node as Node, index_NodeActions as NodeActions, index_NodeDescribeKind as NodeDescribeKind, index_NodeFn as NodeFn, index_NodeGuard as NodeGuard, index_NodeOptions as NodeOptions, index_NodeSink as NodeSink, index_NodeStatus as NodeStatus, index_NodeTransportOptions as NodeTransportOptions, index_NodeVersionInfo as NodeVersionInfo, index_OnMessageHandler as OnMessageHandler, index_PAUSE as PAUSE, type index_PipeOperator as PipeOperator, index_PolicyAllow as PolicyAllow, index_PolicyDeny as PolicyDeny, index_PolicyRuleData as PolicyRuleData, index_RESOLVED as RESOLVED, index_RESUME as RESUME, index_ResettableTimer as ResettableTimer, index_SubscribeHints as SubscribeHints, index_TEARDOWN as TEARDOWN, index_V0 as V0, index_V1 as V1, index_VersioningLevel as VersioningLevel, index_VersioningOptions as VersioningOptions, index_accessHintForGuard as accessHintForGuard, index_advanceVersion as advanceVersion, index_batch as batch, index_bridge as bridge, index_cleanupResult as cleanupResult, index_createVersioning as createVersioning, index_defaultHash as defaultHash, index_derived as derived, index_describeNode as describeNode, index_downWithBatch as downWithBatch, index_dynamicNode as dynamicNode, index_effect as effect, index_isBatching as isBatching, index_isKnownMessageType as isKnownMessageType, index_isPhase2Message as isPhase2Message, index_isTerminalMessage as isTerminalMessage, index_isV1 as isV1, index_knownMessageTypes as knownMessageTypes, index_messageTier as messageTier, index_metaSnapshot as metaSnapshot, index_monotonicNs as monotonicNs, index_node as node, index_normalizeActor as normalizeActor, index_partitionForBatch as partitionForBatch, index_pipe as pipe, index_policy as policy, index_policyFromRules as policyFromRules, index_producer as producer, index_propagatesToMeta as propagatesToMeta, index_resolveDescribeFields as resolveDescribeFields, index_state as state, index_wallClockNs as wallClockNs };
580
583
  }
581
584
 
582
- export { type BridgeOptions as B, DEFAULT_DOWN as D, type PipeOperator as P, ResettableTimer as R, type DynGet as a, type DynamicNodeFn as b, DynamicNodeImpl as c, type DynamicNodeOptions as d, batch as e, bridge as f, derived as g, dynamicNode as h, index as i, effect as j, emitWithBatch as k, isBatching as l, monotonicNs as m, pipe as n, producer as o, partitionForBatch as p, state as s, wallClockNs as w };
585
+ export { type BridgeOptions as B, DEFAULT_DOWN as D, type PipeOperator as P, ResettableTimer as R, type DownStrategy as a, type DynGet as b, type DynamicNodeFn as c, DynamicNodeImpl as d, type DynamicNodeOptions as e, batch as f, bridge as g, derived as h, index as i, downWithBatch as j, dynamicNode as k, effect as l, isBatching as m, monotonicNs as n, pipe as o, partitionForBatch as p, producer as q, state as s, wallClockNs as w };
@@ -1,4 +1,4 @@
1
- import { r as GraphPersistSnapshot, A as AutoCheckpointAdapter, D as DescribeFilter, d as GRAPH_META_SEGMENT, G as Graph, e as GraphActorOptions, b as GraphAutoCheckpointHandle, c as GraphAutoCheckpointOptions, f as GraphCheckpointRecord, g as GraphDescribeOptions, h as GraphDescribeOutput, i as GraphDiagramDirection, j as GraphDiagramOptions, k as GraphDiffChange, l as GraphDiffResult, m as GraphDumpOptions, n as GraphFactoryContext, o as GraphNodeFactory, p as GraphObserveAll, q as GraphObserveOne, a as GraphOptions, s as GraphSpyHandle, t as GraphSpyOptions, u as GraphSpyTheme, v as GraphSpyThemeName, O as ObserveDetail, w as ObserveEvent, x as ObserveOptions, y as ObserveResult, R as ReachableDirection, z as ReachableOptions, T as TraceEntry, B as reachable } from './graph-DXT95WZ3.js';
1
+ import { r as GraphPersistSnapshot, A as AutoCheckpointAdapter, D as DescribeFilter, d as GRAPH_META_SEGMENT, G as Graph, e as GraphActorOptions, b as GraphAutoCheckpointHandle, c as GraphAutoCheckpointOptions, f as GraphCheckpointRecord, g as GraphDescribeOptions, h as GraphDescribeOutput, i as GraphDiagramDirection, j as GraphDiagramOptions, k as GraphDiffChange, l as GraphDiffResult, m as GraphDumpOptions, n as GraphFactoryContext, o as GraphNodeFactory, p as GraphObserveAll, q as GraphObserveOne, a as GraphOptions, s as GraphSpyHandle, t as GraphSpyOptions, u as GraphSpyTheme, v as GraphSpyThemeName, O as ObserveDetail, w as ObserveEvent, x as ObserveOptions, y as ObserveResult, R as ReachableDirection, z as ReachableOptions, T as TraceEntry, B as reachable } from './graph-BXIK5Dq5.js';
2
2
 
3
3
  /**
4
4
  * GraphCodec — pluggable serialization for graph snapshots (Phase 8.6).
@@ -1,6 +1,6 @@
1
- import { N as Node, a as NodeOptions, M as Message, m as Messages } from './meta-BcuDhtwu.js';
2
- import { G as Graph } from './graph-DXT95WZ3.js';
3
- import { V as Versioned, a as ReactiveLogBundle, b as ReactiveLogOptions, R as ReactiveLogSnapshot, l as logSlice, o as observeGraph$, c as observeNode$, r as reactiveLog, t as toMessages$, d as toObservable } from './reactive-log-Cu0VdqkT.js';
1
+ import { N as Node, a as NodeOptions, M as Message, m as Messages } from './meta-CrZUQAJ6.js';
2
+ import { G as Graph } from './graph-BXIK5Dq5.js';
3
+ import { V as Versioned, a as ReactiveLogBundle, b as ReactiveLogOptions, R as ReactiveLogSnapshot, l as logSlice, o as observeGraph$, c as observeNode$, r as reactiveLog, t as toMessages$, d as toObservable } from './reactive-log-DV--7BWd.js';
4
4
 
5
5
  /**
6
6
  * Backoff strategies for {@link retry} (roadmap §3.1). Delays are in **nanoseconds**.
@@ -1,5 +1,5 @@
1
- import { N as Node } from './meta-BcuDhtwu.cjs';
2
- import { G as Graph } from './graph-BE10ujU9.cjs';
1
+ import { N as Node } from './meta-CrZUQAJ6.cjs';
2
+ import { G as Graph } from './graph-BhADtuFU.cjs';
3
3
 
4
4
  /** Pluggable measurement backend. */
5
5
  interface MeasurementAdapter {
@@ -1,6 +1,6 @@
1
- import { N as Node, a as NodeOptions, M as Message, m as Messages } from './meta-BcuDhtwu.cjs';
2
- import { G as Graph } from './graph-BE10ujU9.cjs';
3
- import { V as Versioned, a as ReactiveLogBundle, b as ReactiveLogOptions, R as ReactiveLogSnapshot, l as logSlice, o as observeGraph$, c as observeNode$, r as reactiveLog, t as toMessages$, d as toObservable } from './reactive-log-OULQssZg.cjs';
1
+ import { N as Node, a as NodeOptions, M as Message, m as Messages } from './meta-CrZUQAJ6.cjs';
2
+ import { G as Graph } from './graph-BhADtuFU.cjs';
3
+ import { V as Versioned, a as ReactiveLogBundle, b as ReactiveLogOptions, R as ReactiveLogSnapshot, l as logSlice, o as observeGraph$, c as observeNode$, r as reactiveLog, t as toMessages$, d as toObservable } from './reactive-log-ChbpUrY2.cjs';
4
4
 
5
5
  /**
6
6
  * Backoff strategies for {@link retry} (roadmap §3.1). Delays are in **nanoseconds**.
@@ -1,4 +1,4 @@
1
- import { m as Messages, N as Node, n as NodeDescribeKind, o as NodeGuard, a as NodeOptions, a6 as NodeInspectorHook, q as NodeStatus, A as Actor, r as NodeTransportOptions, p as NodeSink, S as SubscribeHints, c as NodeFn, C as CLEANUP_RESULT, d as COMPLETE, e as CleanupResult, D as DATA, f as DEFAULT_ACTOR, g as DIRTY, h as DescribeDetail, i as DescribeField, j as DescribeNodeOutput, E as ERROR, G as GuardAction, k as GuardDenied, l as GuardDeniedDetails, H as HashFn, I as INVALIDATE, M as Message, b as NodeActions, s as NodeVersionInfo, O as OnMessageHandler, P as PAUSE, t as PolicyAllow, u as PolicyDeny, v as PolicyRuleData, R as RESOLVED, w as RESUME, T as TEARDOWN, V as V0, x as V1, y as VersioningLevel, z as VersioningOptions, B as accessHintForGuard, F as advanceVersion, J as cleanupResult, K as createVersioning, L as defaultHash, Q as describeNode, U as isKnownMessageType, W as isPhase2Message, X as isTerminalMessage, Y as isV1, Z as knownMessageTypes, _ as messageTier, $ as metaSnapshot, a0 as node, a1 as normalizeActor, a2 as policy, a3 as policyFromRules, a4 as propagatesToMeta, a5 as resolveDescribeFields } from './meta-BcuDhtwu.js';
1
+ import { m as Messages, N as Node, n as NodeDescribeKind, o as NodeGuard, a as NodeOptions, a6 as NodeInspectorHook, q as NodeStatus, A as Actor, r as NodeTransportOptions, p as NodeSink, S as SubscribeHints, c as NodeFn, C as CLEANUP_RESULT, d as COMPLETE, e as CleanupResult, D as DATA, f as DEFAULT_ACTOR, g as DIRTY, h as DescribeDetail, i as DescribeField, j as DescribeNodeOutput, E as ERROR, G as GuardAction, k as GuardDenied, l as GuardDeniedDetails, H as HashFn, I as INVALIDATE, M as Message, b as NodeActions, s as NodeVersionInfo, O as OnMessageHandler, P as PAUSE, t as PolicyAllow, u as PolicyDeny, v as PolicyRuleData, R as RESOLVED, w as RESUME, T as TEARDOWN, V as V0, x as V1, y as VersioningLevel, z as VersioningOptions, B as accessHintForGuard, F as advanceVersion, J as cleanupResult, K as createVersioning, L as defaultHash, Q as describeNode, U as isKnownMessageType, W as isPhase2Message, X as isTerminalMessage, Y as isV1, Z as knownMessageTypes, _ as messageTier, $ as metaSnapshot, a0 as node, a1 as normalizeActor, a2 as policy, a3 as policyFromRules, a4 as propagatesToMeta, a5 as resolveDescribeFields } from './meta-CrZUQAJ6.cjs';
2
2
 
3
3
  /**
4
4
  * Returns whether the current call stack is inside a batch scope **or** while
@@ -29,15 +29,15 @@ declare function isBatching(): boolean;
29
29
  * error. While the drain loop is running (`flushInProgress`), a nested `batch`
30
30
  * that throws must **not** clear the global queue (cross-language decision A4).
31
31
  *
32
- * During the drain loop, `isBatching()` remains true so nested `emitWithBatch`
32
+ * During the drain loop, `isBatching()` remains true so nested `downWithBatch`
33
33
  * calls still defer phase-2 messages. The drain loop runs until the queue is
34
34
  * quiescent (no pending work remains). Per-emission try/catch ensures one
35
35
  * throwing callback does not orphan remaining emissions; the first error is
36
36
  * re-thrown after all emissions drain. Callbacks that ran before the throw may
37
37
  * have applied phase-2 — partial graph state is intentional (decision C1).
38
38
  *
39
- * @param fn — Synchronous work that may call `emitWithBatch` / `node.down()`.
40
- * @returns `void` — all side-effects happen through `emitWithBatch` and the
39
+ * @param fn — Synchronous work that may call `downWithBatch` / `node.down()`.
40
+ * @returns `void` — all side-effects happen through `downWithBatch` and the
41
41
  * phase-2 drain that runs after `fn` returns.
42
42
  *
43
43
  * @example
@@ -45,7 +45,7 @@ declare function isBatching(): boolean;
45
45
  * import { core } from "@graphrefly/graphrefly-ts";
46
46
  *
47
47
  * core.batch(() => {
48
- * core.emitWithBatch(sink, [[core.DATA, 1]]);
48
+ * core.downWithBatch(sink, [[core.DATA, 1]]);
49
49
  * });
50
50
  * ```
51
51
  *
@@ -80,40 +80,42 @@ declare function partitionForBatch(messages: Messages): {
80
80
  terminal: Messages;
81
81
  };
82
82
  /**
83
- * Delivers messages through `emit`, applying batch semantics and canonical
84
- * tier-based ordering (see `messages.ts`):
83
+ * Delivers messages downstream through `sink`, applying batch semantics and
84
+ * canonical tier-based ordering (see `messages.ts`):
85
85
  *
86
86
  * 1. **Immediate** (tier 0–1, 4): DIRTY, INVALIDATE, PAUSE, RESUME, TEARDOWN,
87
- * unknown — emitted synchronously.
87
+ * unknown — delivered synchronously.
88
88
  * 2. **Phase-2** (tier 2): DATA, RESOLVED — deferred while `isBatching()`.
89
89
  * 3. **Terminal** (tier 3): COMPLETE, ERROR — always delivered after phase-2.
90
90
  * When batching, terminal is queued after deferred phase-2 in the pending list.
91
- * When not batching, terminal is emitted after phase-2 synchronously.
91
+ * When not batching, terminal is delivered after phase-2 synchronously.
92
92
  *
93
93
  * This ordering prevents the "COMPLETE-before-DATA" class of bugs: terminal
94
94
  * signals never make a node terminal before phase-2 values reach sinks,
95
95
  * regardless of how the source assembled the message array.
96
96
  *
97
- * @param emit — Sink callback. May be called up to three times per invocation
97
+ * @param sink — Sink callback. May be called up to three times per invocation
98
98
  * (immediate, deferred, terminal) when not batching.
99
- * @param messages — Full `[[Type, Data?], ...]` array for one emission.
99
+ * @param messages — Full `[[Type, Data?], ...]` array for one downstream delivery.
100
100
  * @param phase — Starting delivery phase (`2` = data, `3` = terminal). Default `2`.
101
101
  * @param options - Optional configuration.
102
102
  * @option strategy | `"partition"` or `"sequential"` | `"partition"` | `"partition"` groups by tier; `"sequential"` preserves message order within each tier using `messageTier()` classification.
103
- * @returns `void` — delivery is performed through `emit` callbacks, synchronously
103
+ * @returns `void` — delivery is performed through `sink` callbacks, synchronously
104
104
  * or deferred into the active batch queue.
105
105
  *
106
106
  * @example
107
107
  * ```ts
108
108
  * import { core } from "@graphrefly/graphrefly-ts";
109
109
  *
110
- * core.emitWithBatch((msgs) => console.log(msgs), [[core.DIRTY], [core.DATA, 42]]);
110
+ * core.downWithBatch((msgs) => console.log(msgs), [[core.DIRTY], [core.DATA, 42]]);
111
111
  * ```
112
112
  *
113
113
  * @category core
114
114
  */
115
- declare function emitWithBatch(emit: (messages: Messages) => void, messages: Messages, phase?: 2 | 3, options?: {
116
- strategy?: "partition" | "sequential";
115
+ /** Delivery strategy for {@link downWithBatch}. Mirrors Python `DownStrategy`. */
116
+ type DownStrategy = "partition" | "sequential";
117
+ declare function downWithBatch(sink: (messages: Messages) => void, messages: Messages, phase?: 2 | 3, options?: {
118
+ strategy?: DownStrategy;
117
119
  }): void;
118
120
 
119
121
  /**
@@ -299,7 +301,7 @@ declare class DynamicNodeImpl<T = unknown> implements Node<T> {
299
301
  private _singleDepSinkCount;
300
302
  private _singleDepSinks;
301
303
  private readonly _actions;
302
- private readonly _boundEmitToSinks;
304
+ private readonly _boundDownToSinks;
303
305
  private _cached;
304
306
  private _status;
305
307
  private _terminal;
@@ -337,11 +339,11 @@ declare class DynamicNodeImpl<T = unknown> implements Node<T> {
337
339
  subscribe(sink: NodeSink, hints?: SubscribeHints): () => void;
338
340
  up(messages: Messages, options?: NodeTransportOptions): void;
339
341
  unsubscribe(): void;
340
- private _emitToSinks;
342
+ private _downToSinks;
341
343
  private _handleLocalLifecycle;
342
344
  /** Propagate a signal to all companion meta nodes (best-effort). */
343
345
  private _propagateToMeta;
344
- private _emitAutoValue;
346
+ private _downAutoValue;
345
347
  private _connect;
346
348
  private _disconnect;
347
349
  private _runFn;
@@ -504,6 +506,7 @@ declare const index_DIRTY: typeof DIRTY;
504
506
  declare const index_DescribeDetail: typeof DescribeDetail;
505
507
  declare const index_DescribeField: typeof DescribeField;
506
508
  declare const index_DescribeNodeOutput: typeof DescribeNodeOutput;
509
+ type index_DownStrategy = DownStrategy;
507
510
  type index_DynGet = DynGet;
508
511
  type index_DynamicNodeFn<T> = DynamicNodeFn<T>;
509
512
  type index_DynamicNodeImpl<T = unknown> = DynamicNodeImpl<T>;
@@ -552,9 +555,9 @@ declare const index_createVersioning: typeof createVersioning;
552
555
  declare const index_defaultHash: typeof defaultHash;
553
556
  declare const index_derived: typeof derived;
554
557
  declare const index_describeNode: typeof describeNode;
558
+ declare const index_downWithBatch: typeof downWithBatch;
555
559
  declare const index_dynamicNode: typeof dynamicNode;
556
560
  declare const index_effect: typeof effect;
557
- declare const index_emitWithBatch: typeof emitWithBatch;
558
561
  declare const index_isBatching: typeof isBatching;
559
562
  declare const index_isKnownMessageType: typeof isKnownMessageType;
560
563
  declare const index_isPhase2Message: typeof isPhase2Message;
@@ -576,7 +579,7 @@ declare const index_resolveDescribeFields: typeof resolveDescribeFields;
576
579
  declare const index_state: typeof state;
577
580
  declare const index_wallClockNs: typeof wallClockNs;
578
581
  declare namespace index {
579
- export { index_Actor as Actor, type index_BridgeOptions as BridgeOptions, index_CLEANUP_RESULT as CLEANUP_RESULT, index_COMPLETE as COMPLETE, index_CleanupResult as CleanupResult, index_DATA as DATA, index_DEFAULT_ACTOR as DEFAULT_ACTOR, index_DEFAULT_DOWN as DEFAULT_DOWN, index_DIRTY as DIRTY, index_DescribeDetail as DescribeDetail, index_DescribeField as DescribeField, index_DescribeNodeOutput as DescribeNodeOutput, type index_DynGet as DynGet, type index_DynamicNodeFn as DynamicNodeFn, index_DynamicNodeImpl as DynamicNodeImpl, type index_DynamicNodeOptions as DynamicNodeOptions, index_ERROR as ERROR, index_GuardAction as GuardAction, index_GuardDenied as GuardDenied, index_GuardDeniedDetails as GuardDeniedDetails, index_HashFn as HashFn, index_INVALIDATE as INVALIDATE, index_Message as Message, index_Messages as Messages, index_Node as Node, index_NodeActions as NodeActions, index_NodeDescribeKind as NodeDescribeKind, index_NodeFn as NodeFn, index_NodeGuard as NodeGuard, index_NodeOptions as NodeOptions, index_NodeSink as NodeSink, index_NodeStatus as NodeStatus, index_NodeTransportOptions as NodeTransportOptions, index_NodeVersionInfo as NodeVersionInfo, index_OnMessageHandler as OnMessageHandler, index_PAUSE as PAUSE, type index_PipeOperator as PipeOperator, index_PolicyAllow as PolicyAllow, index_PolicyDeny as PolicyDeny, index_PolicyRuleData as PolicyRuleData, index_RESOLVED as RESOLVED, index_RESUME as RESUME, index_ResettableTimer as ResettableTimer, index_SubscribeHints as SubscribeHints, index_TEARDOWN as TEARDOWN, index_V0 as V0, index_V1 as V1, index_VersioningLevel as VersioningLevel, index_VersioningOptions as VersioningOptions, index_accessHintForGuard as accessHintForGuard, index_advanceVersion as advanceVersion, index_batch as batch, index_bridge as bridge, index_cleanupResult as cleanupResult, index_createVersioning as createVersioning, index_defaultHash as defaultHash, index_derived as derived, index_describeNode as describeNode, index_dynamicNode as dynamicNode, index_effect as effect, index_emitWithBatch as emitWithBatch, index_isBatching as isBatching, index_isKnownMessageType as isKnownMessageType, index_isPhase2Message as isPhase2Message, index_isTerminalMessage as isTerminalMessage, index_isV1 as isV1, index_knownMessageTypes as knownMessageTypes, index_messageTier as messageTier, index_metaSnapshot as metaSnapshot, index_monotonicNs as monotonicNs, index_node as node, index_normalizeActor as normalizeActor, index_partitionForBatch as partitionForBatch, index_pipe as pipe, index_policy as policy, index_policyFromRules as policyFromRules, index_producer as producer, index_propagatesToMeta as propagatesToMeta, index_resolveDescribeFields as resolveDescribeFields, index_state as state, index_wallClockNs as wallClockNs };
582
+ export { index_Actor as Actor, type index_BridgeOptions as BridgeOptions, index_CLEANUP_RESULT as CLEANUP_RESULT, index_COMPLETE as COMPLETE, index_CleanupResult as CleanupResult, index_DATA as DATA, index_DEFAULT_ACTOR as DEFAULT_ACTOR, index_DEFAULT_DOWN as DEFAULT_DOWN, index_DIRTY as DIRTY, index_DescribeDetail as DescribeDetail, index_DescribeField as DescribeField, index_DescribeNodeOutput as DescribeNodeOutput, type index_DownStrategy as DownStrategy, type index_DynGet as DynGet, type index_DynamicNodeFn as DynamicNodeFn, index_DynamicNodeImpl as DynamicNodeImpl, type index_DynamicNodeOptions as DynamicNodeOptions, index_ERROR as ERROR, index_GuardAction as GuardAction, index_GuardDenied as GuardDenied, index_GuardDeniedDetails as GuardDeniedDetails, index_HashFn as HashFn, index_INVALIDATE as INVALIDATE, index_Message as Message, index_Messages as Messages, index_Node as Node, index_NodeActions as NodeActions, index_NodeDescribeKind as NodeDescribeKind, index_NodeFn as NodeFn, index_NodeGuard as NodeGuard, index_NodeOptions as NodeOptions, index_NodeSink as NodeSink, index_NodeStatus as NodeStatus, index_NodeTransportOptions as NodeTransportOptions, index_NodeVersionInfo as NodeVersionInfo, index_OnMessageHandler as OnMessageHandler, index_PAUSE as PAUSE, type index_PipeOperator as PipeOperator, index_PolicyAllow as PolicyAllow, index_PolicyDeny as PolicyDeny, index_PolicyRuleData as PolicyRuleData, index_RESOLVED as RESOLVED, index_RESUME as RESUME, index_ResettableTimer as ResettableTimer, index_SubscribeHints as SubscribeHints, index_TEARDOWN as TEARDOWN, index_V0 as V0, index_V1 as V1, index_VersioningLevel as VersioningLevel, index_VersioningOptions as VersioningOptions, index_accessHintForGuard as accessHintForGuard, index_advanceVersion as advanceVersion, index_batch as batch, index_bridge as bridge, index_cleanupResult as cleanupResult, index_createVersioning as createVersioning, index_defaultHash as defaultHash, index_derived as derived, index_describeNode as describeNode, index_downWithBatch as downWithBatch, index_dynamicNode as dynamicNode, index_effect as effect, index_isBatching as isBatching, index_isKnownMessageType as isKnownMessageType, index_isPhase2Message as isPhase2Message, index_isTerminalMessage as isTerminalMessage, index_isV1 as isV1, index_knownMessageTypes as knownMessageTypes, index_messageTier as messageTier, index_metaSnapshot as metaSnapshot, index_monotonicNs as monotonicNs, index_node as node, index_normalizeActor as normalizeActor, index_partitionForBatch as partitionForBatch, index_pipe as pipe, index_policy as policy, index_policyFromRules as policyFromRules, index_producer as producer, index_propagatesToMeta as propagatesToMeta, index_resolveDescribeFields as resolveDescribeFields, index_state as state, index_wallClockNs as wallClockNs };
580
583
  }
581
584
 
582
- export { type BridgeOptions as B, DEFAULT_DOWN as D, type PipeOperator as P, ResettableTimer as R, type DynGet as a, type DynamicNodeFn as b, DynamicNodeImpl as c, type DynamicNodeOptions as d, batch as e, bridge as f, derived as g, dynamicNode as h, index as i, effect as j, emitWithBatch as k, isBatching as l, monotonicNs as m, pipe as n, producer as o, partitionForBatch as p, state as s, wallClockNs as w };
585
+ export { type BridgeOptions as B, DEFAULT_DOWN as D, type PipeOperator as P, ResettableTimer as R, type DownStrategy as a, type DynGet as b, type DynamicNodeFn as c, DynamicNodeImpl as d, type DynamicNodeOptions as e, batch as f, bridge as g, derived as h, index as i, downWithBatch as j, dynamicNode as k, effect as l, isBatching as m, monotonicNs as n, pipe as o, partitionForBatch as p, producer as q, state as s, wallClockNs as w };
@@ -1,8 +1,8 @@
1
- import { R as ReactiveLogSnapshot, o as observeGraph$, c as observeNode$, t as toMessages$, d as toObservable } from './reactive-log-Cu0VdqkT.js';
1
+ import { R as ReactiveLogSnapshot, o as observeGraph$, c as observeNode$, t as toMessages$, d as toObservable } from './reactive-log-DV--7BWd.js';
2
2
  import { OnModuleInit, OnModuleDestroy, ExecutionContext, CanActivate, DynamicModule } from '@nestjs/common';
3
3
  import { ModuleRef } from '@nestjs/core';
4
- import { G as Graph, a as GraphOptions, r as GraphPersistSnapshot } from './graph-DXT95WZ3.js';
5
- import { A as Actor, N as Node } from './meta-BcuDhtwu.js';
4
+ import { G as Graph, a as GraphOptions, r as GraphPersistSnapshot } from './graph-BXIK5Dq5.js';
5
+ import { A as Actor, N as Node } from './meta-CrZUQAJ6.js';
6
6
 
7
7
  /** Class constructor key for decorator registries and Nest `ModuleRef.get()`. */
8
8
  type DecoratorHostConstructor = abstract new (...args: unknown[]) => unknown;
@@ -1,8 +1,8 @@
1
- import { R as ReactiveLogSnapshot, o as observeGraph$, c as observeNode$, t as toMessages$, d as toObservable } from './reactive-log-OULQssZg.cjs';
1
+ import { R as ReactiveLogSnapshot, o as observeGraph$, c as observeNode$, t as toMessages$, d as toObservable } from './reactive-log-ChbpUrY2.cjs';
2
2
  import { OnModuleInit, OnModuleDestroy, ExecutionContext, CanActivate, DynamicModule } from '@nestjs/common';
3
3
  import { ModuleRef } from '@nestjs/core';
4
- import { G as Graph, a as GraphOptions, r as GraphPersistSnapshot } from './graph-BE10ujU9.cjs';
5
- import { A as Actor, N as Node } from './meta-BcuDhtwu.cjs';
4
+ import { G as Graph, a as GraphOptions, r as GraphPersistSnapshot } from './graph-BhADtuFU.cjs';
5
+ import { A as Actor, N as Node } from './meta-CrZUQAJ6.cjs';
6
6
 
7
7
  /** Class constructor key for decorator registries and Nest `ModuleRef.get()`. */
8
8
  type DecoratorHostConstructor = abstract new (...args: unknown[]) => unknown;
@@ -1,4 +1,4 @@
1
- import { r as GraphPersistSnapshot, A as AutoCheckpointAdapter, D as DescribeFilter, d as GRAPH_META_SEGMENT, G as Graph, e as GraphActorOptions, b as GraphAutoCheckpointHandle, c as GraphAutoCheckpointOptions, f as GraphCheckpointRecord, g as GraphDescribeOptions, h as GraphDescribeOutput, i as GraphDiagramDirection, j as GraphDiagramOptions, k as GraphDiffChange, l as GraphDiffResult, m as GraphDumpOptions, n as GraphFactoryContext, o as GraphNodeFactory, p as GraphObserveAll, q as GraphObserveOne, a as GraphOptions, s as GraphSpyHandle, t as GraphSpyOptions, u as GraphSpyTheme, v as GraphSpyThemeName, O as ObserveDetail, w as ObserveEvent, x as ObserveOptions, y as ObserveResult, R as ReachableDirection, z as ReachableOptions, T as TraceEntry, B as reachable } from './graph-BE10ujU9.cjs';
1
+ import { r as GraphPersistSnapshot, A as AutoCheckpointAdapter, D as DescribeFilter, d as GRAPH_META_SEGMENT, G as Graph, e as GraphActorOptions, b as GraphAutoCheckpointHandle, c as GraphAutoCheckpointOptions, f as GraphCheckpointRecord, g as GraphDescribeOptions, h as GraphDescribeOutput, i as GraphDiagramDirection, j as GraphDiagramOptions, k as GraphDiffChange, l as GraphDiffResult, m as GraphDumpOptions, n as GraphFactoryContext, o as GraphNodeFactory, p as GraphObserveAll, q as GraphObserveOne, a as GraphOptions, s as GraphSpyHandle, t as GraphSpyOptions, u as GraphSpyTheme, v as GraphSpyThemeName, O as ObserveDetail, w as ObserveEvent, x as ObserveOptions, y as ObserveResult, R as ReachableDirection, z as ReachableOptions, T as TraceEntry, B as reachable } from './graph-BhADtuFU.cjs';
2
2
 
3
3
  /**
4
4
  * GraphCodec — pluggable serialization for graph snapshots (Phase 8.6).
@@ -1,5 +1,5 @@
1
- import { N as Node } from './meta-BcuDhtwu.js';
2
- import { G as Graph } from './graph-DXT95WZ3.js';
1
+ import { N as Node } from './meta-CrZUQAJ6.js';
2
+ import { G as Graph } from './graph-BXIK5Dq5.js';
3
3
 
4
4
  /** Pluggable measurement backend. */
5
5
  interface MeasurementAdapter {