@graphrefly/ts 0.0.0 → 0.0.1
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.
- package/README.md +135 -0
- package/dist/adapters/index.cjs +105 -66
- package/dist/adapters/index.cjs.map +1 -1
- package/dist/adapters/index.d.cts +11 -136
- package/dist/adapters/index.d.ts +11 -136
- package/dist/adapters/index.js +27 -225
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/observe-storage.d.cts +4 -4
- package/dist/adapters/observe-storage.d.ts +4 -4
- package/dist/adapters/observe-storage.js +1 -0
- package/dist/adapters/observe-storage.js.map +1 -1
- package/dist/adapters/react.cjs +166 -0
- package/dist/adapters/react.cjs.map +1 -0
- package/dist/adapters/react.d.cts +31 -0
- package/dist/adapters/react.d.ts +31 -0
- package/dist/adapters/react.js +51 -0
- package/dist/adapters/react.js.map +1 -0
- package/dist/adapters/solid.cjs +157 -0
- package/dist/adapters/solid.cjs.map +1 -0
- package/dist/adapters/solid.d.cts +26 -0
- package/dist/adapters/solid.d.ts +26 -0
- package/dist/adapters/solid.js +48 -0
- package/dist/adapters/solid.js.map +1 -0
- package/dist/adapters/svelte.cjs +148 -0
- package/dist/adapters/svelte.cjs.map +1 -0
- package/dist/adapters/svelte.d.cts +31 -0
- package/dist/adapters/svelte.d.ts +31 -0
- package/dist/adapters/svelte.js +46 -0
- package/dist/adapters/svelte.js.map +1 -0
- package/dist/adapters/vue.cjs +155 -0
- package/dist/adapters/vue.cjs.map +1 -0
- package/dist/adapters/vue.d.cts +26 -0
- package/dist/adapters/vue.d.ts +26 -0
- package/dist/adapters/vue.js +46 -0
- package/dist/adapters/vue.js.map +1 -0
- package/dist/agent-runtime-BesGDZcB.d.ts +555 -0
- package/dist/agent-runtime-DZTJ3C-p.d.cts +555 -0
- package/dist/agentic-memory-BmRCvh0d.d.ts +517 -0
- package/dist/agentic-memory-DfuVZ-lY.d.cts +517 -0
- package/dist/capability-admission-B0BzqAm5.d.cts +102 -0
- package/dist/capability-admission-g0mn9hpq.d.ts +102 -0
- package/dist/{chunk-JR4IKCR2.js → chunk-2747WN4Y.js} +5 -5
- package/dist/{chunk-2ILL7HQI.js → chunk-3JR3EDB2.js} +17 -17
- package/dist/{chunk-2ILL7HQI.js.map → chunk-3JR3EDB2.js.map} +1 -1
- package/dist/{chunk-GDL26N2T.js → chunk-3KN7NJDR.js} +2 -2
- package/dist/{chunk-DJC4CHLQ.js → chunk-43BKLFZU.js} +9 -9
- package/dist/chunk-6XAIOL3X.js +2407 -0
- package/dist/chunk-6XAIOL3X.js.map +1 -0
- package/dist/{chunk-SCRFRCGR.js → chunk-BSQGE5PS.js} +1 -1
- package/dist/{chunk-Y3ZLRGHC.js → chunk-CZNV3VXM.js} +16 -16
- package/dist/chunk-DGUM43GV.js +11 -0
- package/dist/chunk-DGUM43GV.js.map +1 -0
- package/dist/{chunk-JIMUDQN3.js → chunk-FBUU43PM.js} +2 -2
- package/dist/chunk-H75VXTGT.js +219 -0
- package/dist/chunk-H75VXTGT.js.map +1 -0
- package/dist/{chunk-RIIOUTGM.js → chunk-HKK2JD7Z.js} +12 -9
- package/dist/chunk-HKK2JD7Z.js.map +1 -0
- package/dist/{chunk-D6BG7U6A.js → chunk-IXZBUWSP.js} +3 -3
- package/dist/chunk-PC3BTTBE.js +3217 -0
- package/dist/chunk-PC3BTTBE.js.map +1 -0
- package/dist/chunk-QFY4AFY4.js +879 -0
- package/dist/chunk-QFY4AFY4.js.map +1 -0
- package/dist/{chunk-DK554R7P.js → chunk-S6HXABGL.js} +2 -1
- package/dist/chunk-S6HXABGL.js.map +1 -0
- package/dist/{chunk-PKVBHGBM.js → chunk-SS2A464I.js} +7 -7
- package/dist/chunk-UT3MHJCW.js +49 -0
- package/dist/chunk-UT3MHJCW.js.map +1 -0
- package/dist/{chunk-G4M3NHRJ.js → chunk-V7CIJE4B.js} +3 -3
- package/dist/{chunk-TEW47IVR.js → chunk-VPEFSDME.js} +2 -2
- package/dist/chunk-VTHLCFN4.js +368 -0
- package/dist/chunk-VTHLCFN4.js.map +1 -0
- package/dist/{chunk-SWTLEQL6.js → chunk-WQIA3GFB.js} +2 -2
- package/dist/chunk-WQIA3GFB.js.map +1 -0
- package/dist/{chunk-I3IHOHCJ.js → chunk-XKXWK2KP.js} +108 -64
- package/dist/chunk-XKXWK2KP.js.map +1 -0
- package/dist/{chunk-COHO25CZ.js → chunk-YDSIVHRR.js} +553 -7
- package/dist/chunk-YDSIVHRR.js.map +1 -0
- package/dist/chunk-YXMZ2N6J.js +1884 -0
- package/dist/chunk-YXMZ2N6J.js.map +1 -0
- package/dist/composition/index.cjs +102 -57
- package/dist/composition/index.cjs.map +1 -1
- package/dist/composition/index.d.cts +4 -4
- package/dist/composition/index.d.ts +4 -4
- package/dist/composition/index.js +6 -5
- package/dist/core/index.cjs +102 -57
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.cts +2 -2
- package/dist/core/index.d.ts +2 -2
- package/dist/core/index.js +5 -4
- package/dist/cqrs/index.cjs.map +1 -1
- package/dist/cqrs/index.d.cts +4 -4
- package/dist/cqrs/index.d.ts +4 -4
- package/dist/cqrs/index.js +3 -2
- package/dist/cqrs/index.js.map +1 -1
- package/dist/cqrs/messaging.cjs +312 -0
- package/dist/cqrs/messaging.cjs.map +1 -0
- package/dist/cqrs/messaging.d.cts +57 -0
- package/dist/cqrs/messaging.d.ts +57 -0
- package/dist/cqrs/messaging.js +274 -0
- package/dist/cqrs/messaging.js.map +1 -0
- package/dist/cqrs/work-queue.cjs +329 -0
- package/dist/cqrs/work-queue.cjs.map +1 -0
- package/dist/cqrs/work-queue.d.cts +90 -0
- package/dist/cqrs/work-queue.d.ts +90 -0
- package/dist/cqrs/work-queue.js +292 -0
- package/dist/cqrs/work-queue.js.map +1 -0
- package/dist/data/index.cjs +19 -0
- package/dist/data/index.cjs.map +1 -0
- package/dist/data/index.d.cts +36 -0
- package/dist/data/index.d.ts +36 -0
- package/dist/data/index.js +1 -0
- package/dist/data/index.js.map +1 -0
- package/dist/data-structures/index.cjs +105 -57
- package/dist/data-structures/index.cjs.map +1 -1
- package/dist/data-structures/index.d.cts +8 -8
- package/dist/data-structures/index.d.ts +8 -8
- package/dist/data-structures/index.js +7 -6
- package/dist/{describe-BZb7AS2y.d.ts → describe-BpyJuWkw.d.ts} +1 -1
- package/dist/{describe-Ciu8SUnN.d.cts → describe-DYMw_l1C.d.cts} +1 -1
- package/dist/executors/work-queue.cjs +342 -0
- package/dist/executors/work-queue.cjs.map +1 -0
- package/dist/executors/work-queue.d.cts +90 -0
- package/dist/executors/work-queue.d.ts +90 -0
- package/dist/executors/work-queue.js +306 -0
- package/dist/executors/work-queue.js.map +1 -0
- package/dist/graph/index.cjs +112 -58
- package/dist/graph/index.cjs.map +1 -1
- package/dist/graph/index.d.cts +9 -9
- package/dist/graph/index.d.ts +9 -9
- package/dist/graph/index.js +18 -17
- package/dist/{graph-DfdF9zy4.d.ts → graph-D-1-SQeC.d.ts} +3 -3
- package/dist/{graph-s23RbbFO.d.cts → graph-DCEWh4T2.d.cts} +3 -3
- package/dist/{index-CAEmLCYF.d.cts → index-72VZC0-E.d.cts} +2 -2
- package/dist/{index-SnzZu3x7.d.ts → index-Bmxeu0nK.d.ts} +2 -2
- package/dist/index.cjs +112 -58
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +11 -10
- package/dist/index.d.ts +11 -10
- package/dist/index.js +118 -113
- package/dist/inspection/boundary.cjs +98 -0
- package/dist/inspection/boundary.cjs.map +1 -0
- package/dist/inspection/boundary.d.cts +61 -0
- package/dist/inspection/boundary.d.ts +61 -0
- package/dist/inspection/boundary.js +75 -0
- package/dist/inspection/boundary.js.map +1 -0
- package/dist/{messages-BZqrGGm1.d.ts → messages-CAzUPPJM.d.cts} +10 -5
- package/dist/{messages-BZqrGGm1.d.cts → messages-CAzUPPJM.d.ts} +10 -5
- package/dist/messaging/index.cjs +744 -613
- package/dist/messaging/index.cjs.map +1 -1
- package/dist/messaging/index.d.cts +216 -160
- package/dist/messaging/index.d.ts +216 -160
- package/dist/messaging/index.js +19 -749
- package/dist/messaging/index.js.map +1 -1
- package/dist/operators/index.cjs +102 -57
- package/dist/operators/index.cjs.map +1 -1
- package/dist/operators/index.d.cts +6 -6
- package/dist/operators/index.d.ts +6 -6
- package/dist/operators/index.js +8 -7
- package/dist/orchestration/index.cjs +3333 -59
- package/dist/orchestration/index.cjs.map +1 -1
- package/dist/orchestration/index.d.cts +7 -4
- package/dist/orchestration/index.d.ts +7 -4
- package/dist/orchestration/index.js +49 -8
- package/dist/orchestration/index.js.map +1 -1
- package/dist/orchestration/messaging.cjs +314 -0
- package/dist/orchestration/messaging.cjs.map +1 -0
- package/dist/orchestration/messaging.d.cts +59 -0
- package/dist/orchestration/messaging.d.ts +59 -0
- package/dist/orchestration/messaging.js +276 -0
- package/dist/orchestration/messaging.js.map +1 -0
- package/dist/orchestration/work-queue.cjs +262 -0
- package/dist/orchestration/work-queue.cjs.map +1 -0
- package/dist/orchestration/work-queue.d.cts +85 -0
- package/dist/orchestration/work-queue.d.ts +85 -0
- package/dist/orchestration/work-queue.js +226 -0
- package/dist/orchestration/work-queue.js.map +1 -0
- package/dist/patterns/event-flow.cjs +447 -0
- package/dist/patterns/event-flow.cjs.map +1 -0
- package/dist/patterns/event-flow.d.cts +115 -0
- package/dist/patterns/event-flow.d.ts +115 -0
- package/dist/patterns/event-flow.js +14 -0
- package/dist/patterns/event-flow.js.map +1 -0
- package/dist/patterns/index.cjs +423 -18
- package/dist/patterns/index.cjs.map +1 -1
- package/dist/patterns/index.d.cts +8 -5
- package/dist/patterns/index.d.ts +8 -5
- package/dist/patterns/index.js +13 -4
- package/dist/{reactive-collection-Cb1II1Fi.d.ts → reactive-collection-BAmfrGjd.d.ts} +9 -9
- package/dist/{reactive-collection-BxBqtIOE.d.cts → reactive-collection-DNV0-gFi.d.cts} +9 -9
- package/dist/{reactive-collection-storage-D-KmjE0J.d.cts → reactive-collection-storage-BNEldDyi.d.cts} +5 -5
- package/dist/{reactive-collection-storage-BNiEc-Gd.d.ts → reactive-collection-storage-YZsAQsWK.d.ts} +5 -5
- package/dist/{reactive-map-D-g3dv8I.d.cts → reactive-map-DRD1LJ2H.d.cts} +6 -6
- package/dist/{reactive-map-BcB4KsQR.d.ts → reactive-map-EsDiCmJk.d.ts} +6 -6
- package/dist/render/index.d.cts +3 -3
- package/dist/render/index.d.ts +3 -3
- package/dist/render/index.js +1 -0
- package/dist/{semantic-memory-graph-BYoIlP35.d.cts → semantic-memory-graph-DKuNzuWw.d.cts} +2 -2
- package/dist/{semantic-memory-graph-CxyXLms3.d.ts → semantic-memory-graph-uwbwJdhe.d.ts} +2 -2
- package/dist/solutions/index.cjs +4478 -2
- package/dist/solutions/index.cjs.map +1 -1
- package/dist/solutions/index.d.cts +13 -519
- package/dist/solutions/index.d.ts +13 -519
- package/dist/solutions/index.js +90 -6
- package/dist/solutions/reactive-layout/browser/index.cjs +449 -0
- package/dist/solutions/reactive-layout/browser/index.cjs.map +1 -0
- package/dist/solutions/reactive-layout/browser/index.d.cts +44 -0
- package/dist/solutions/reactive-layout/browser/index.d.ts +44 -0
- package/dist/solutions/reactive-layout/browser/index.js +69 -0
- package/dist/solutions/reactive-layout/browser/index.js.map +1 -0
- package/dist/solutions/reactive-layout/index.cjs +4266 -0
- package/dist/solutions/reactive-layout/index.cjs.map +1 -0
- package/dist/solutions/reactive-layout/index.d.cts +581 -0
- package/dist/solutions/reactive-layout/index.d.ts +581 -0
- package/dist/solutions/reactive-layout/index.js +86 -0
- package/dist/solutions/reactive-layout/index.js.map +1 -0
- package/dist/solutions/reactive-layout/node-canvas/index.cjs +545 -0
- package/dist/solutions/reactive-layout/node-canvas/index.cjs.map +1 -0
- package/dist/solutions/reactive-layout/node-canvas/index.d.cts +54 -0
- package/dist/solutions/reactive-layout/node-canvas/index.d.ts +54 -0
- package/dist/solutions/reactive-layout/node-canvas/index.js +131 -0
- package/dist/solutions/reactive-layout/node-canvas/index.js.map +1 -0
- package/dist/solutions/reactive-layout/react-native/index.cjs +494 -0
- package/dist/solutions/reactive-layout/react-native/index.cjs.map +1 -0
- package/dist/solutions/reactive-layout/react-native/index.d.cts +51 -0
- package/dist/solutions/reactive-layout/react-native/index.d.ts +51 -0
- package/dist/solutions/reactive-layout/react-native/index.js +77 -0
- package/dist/solutions/reactive-layout/react-native/index.js.map +1 -0
- package/dist/solutions/reactive-layout/skia/index.cjs +547 -0
- package/dist/solutions/reactive-layout/skia/index.cjs.map +1 -0
- package/dist/solutions/reactive-layout/skia/index.d.cts +64 -0
- package/dist/solutions/reactive-layout/skia/index.d.ts +64 -0
- package/dist/solutions/reactive-layout/skia/index.js +70 -0
- package/dist/solutions/reactive-layout/skia/index.js.map +1 -0
- package/dist/solutions/work-item/actions.cjs +2164 -0
- package/dist/solutions/work-item/actions.cjs.map +1 -0
- package/dist/solutions/work-item/actions.d.cts +201 -0
- package/dist/solutions/work-item/actions.d.ts +201 -0
- package/dist/solutions/work-item/actions.js +1454 -0
- package/dist/solutions/work-item/actions.js.map +1 -0
- package/dist/solutions/work-item/scheduling.cjs +2454 -0
- package/dist/solutions/work-item/scheduling.cjs.map +1 -0
- package/dist/solutions/work-item/scheduling.d.cts +433 -0
- package/dist/solutions/work-item/scheduling.d.ts +433 -0
- package/dist/solutions/work-item/scheduling.js +32 -0
- package/dist/solutions/work-item/scheduling.js.map +1 -0
- package/dist/solutions/work-item/work-queue.cjs +306 -0
- package/dist/solutions/work-item/work-queue.cjs.map +1 -0
- package/dist/solutions/work-item/work-queue.d.cts +71 -0
- package/dist/solutions/work-item/work-queue.d.ts +71 -0
- package/dist/solutions/work-item/work-queue.js +270 -0
- package/dist/solutions/work-item/work-queue.js.map +1 -0
- package/dist/sources/browser.cjs +169 -57
- package/dist/sources/browser.cjs.map +1 -1
- package/dist/sources/browser.d.cts +33 -6
- package/dist/sources/browser.d.ts +33 -6
- package/dist/sources/browser.js +73 -6
- package/dist/sources/browser.js.map +1 -1
- package/dist/sources/index.cjs +102 -57
- package/dist/sources/index.cjs.map +1 -1
- package/dist/sources/index.d.cts +5 -5
- package/dist/sources/index.d.ts +5 -5
- package/dist/sources/index.js +6 -5
- package/dist/sources/node.cjs.map +1 -1
- package/dist/sources/node.d.cts +4 -4
- package/dist/sources/node.d.ts +4 -4
- package/dist/sources/node.js +2 -1
- package/dist/sources/node.js.map +1 -1
- package/dist/storage/browser.js +1 -0
- package/dist/storage/browser.js.map +1 -1
- package/dist/storage/index.d.cts +5 -5
- package/dist/storage/index.d.ts +5 -5
- package/dist/storage/index.js +5 -4
- package/dist/storage/node.js +1 -0
- package/dist/storage/node.js.map +1 -1
- package/dist/store-C-joM4gh.d.ts +123 -0
- package/dist/store-CNJwmT-h.d.cts +123 -0
- package/dist/testing/index.cjs +1 -0
- package/dist/testing/index.cjs.map +1 -1
- package/dist/testing/index.d.cts +1 -1
- package/dist/testing/index.d.ts +1 -1
- package/dist/testing/index.js +3 -2
- package/dist/{types-h12mNYbq.d.ts → types-BsJvElYZ.d.ts} +31 -31
- package/dist/{types-bNMSWKqF.d.cts → types-CcPIn7sy.d.cts} +31 -31
- package/dist/work-item-runtime-C3M79vE9.d.ts +228 -0
- package/dist/work-item-runtime-qaVgsL0T.d.cts +228 -0
- package/dist/work-queue/index.cjs +1132 -0
- package/dist/work-queue/index.cjs.map +1 -0
- package/dist/work-queue/index.d.cts +369 -0
- package/dist/work-queue/index.d.ts +369 -0
- package/dist/work-queue/index.js +1078 -0
- package/dist/work-queue/index.js.map +1 -0
- package/package.json +266 -2
- package/dist/chunk-COHO25CZ.js.map +0 -1
- package/dist/chunk-DK554R7P.js.map +0 -1
- package/dist/chunk-I3IHOHCJ.js.map +0 -1
- package/dist/chunk-RIIOUTGM.js.map +0 -1
- package/dist/chunk-SWTLEQL6.js.map +0 -1
- /package/dist/{chunk-JR4IKCR2.js.map → chunk-2747WN4Y.js.map} +0 -0
- /package/dist/{chunk-GDL26N2T.js.map → chunk-3KN7NJDR.js.map} +0 -0
- /package/dist/{chunk-DJC4CHLQ.js.map → chunk-43BKLFZU.js.map} +0 -0
- /package/dist/{chunk-SCRFRCGR.js.map → chunk-BSQGE5PS.js.map} +0 -0
- /package/dist/{chunk-Y3ZLRGHC.js.map → chunk-CZNV3VXM.js.map} +0 -0
- /package/dist/{chunk-JIMUDQN3.js.map → chunk-FBUU43PM.js.map} +0 -0
- /package/dist/{chunk-D6BG7U6A.js.map → chunk-IXZBUWSP.js.map} +0 -0
- /package/dist/{chunk-PKVBHGBM.js.map → chunk-SS2A464I.js.map} +0 -0
- /package/dist/{chunk-G4M3NHRJ.js.map → chunk-V7CIJE4B.js.map} +0 -0
- /package/dist/{chunk-TEW47IVR.js.map → chunk-VPEFSDME.js.map} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { N as Node, n as NodeOptions } from '../types-
|
|
2
|
-
import { a as DescribeNode, c as DescribeSnapshot } from '../describe-
|
|
3
|
-
import { L as Operator, Q as StateNode, T as SugarOpts, d as Graph } from '../graph-
|
|
4
|
-
import '../messages-
|
|
1
|
+
import { N as Node, n as NodeOptions } from '../types-CcPIn7sy.cjs';
|
|
2
|
+
import { a as DescribeNode, c as DescribeSnapshot } from '../describe-DYMw_l1C.cjs';
|
|
3
|
+
import { L as Operator, Q as StateNode, T as SugarOpts, d as Graph } from '../graph-DCEWh4T2.cjs';
|
|
4
|
+
import '../messages-CAzUPPJM.cjs';
|
|
5
5
|
import '../core/index.cjs';
|
|
6
6
|
import '../codec-BB7p8fJc.cjs';
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { N as Node, n as NodeOptions } from '../types-
|
|
2
|
-
import { a as DescribeNode, c as DescribeSnapshot } from '../describe-
|
|
3
|
-
import { L as Operator, Q as StateNode, T as SugarOpts, d as Graph } from '../graph-
|
|
4
|
-
import '../messages-
|
|
1
|
+
import { N as Node, n as NodeOptions } from '../types-BsJvElYZ.js';
|
|
2
|
+
import { a as DescribeNode, c as DescribeSnapshot } from '../describe-BpyJuWkw.js';
|
|
3
|
+
import { L as Operator, Q as StateNode, T as SugarOpts, d as Graph } from '../graph-D-1-SQeC.js';
|
|
4
|
+
import '../messages-CAzUPPJM.js';
|
|
5
5
|
import '../core/index.js';
|
|
6
6
|
import '../codec-BB7p8fJc.js';
|
|
7
7
|
|
|
@@ -4,12 +4,13 @@ import {
|
|
|
4
4
|
stratify,
|
|
5
5
|
stratifyBranch,
|
|
6
6
|
topologyDiff
|
|
7
|
-
} from "../chunk-
|
|
8
|
-
import "../chunk-
|
|
9
|
-
import "../chunk-
|
|
7
|
+
} from "../chunk-IXZBUWSP.js";
|
|
8
|
+
import "../chunk-SS2A464I.js";
|
|
9
|
+
import "../chunk-XKXWK2KP.js";
|
|
10
|
+
import "../chunk-WQIA3GFB.js";
|
|
11
|
+
import "../chunk-S6HXABGL.js";
|
|
10
12
|
import "../chunk-4VLAQHZI.js";
|
|
11
|
-
import "../chunk-
|
|
12
|
-
import "../chunk-DK554R7P.js";
|
|
13
|
+
import "../chunk-DGUM43GV.js";
|
|
13
14
|
export {
|
|
14
15
|
pipe,
|
|
15
16
|
stratify,
|
package/dist/core/index.cjs
CHANGED
|
@@ -210,6 +210,7 @@ var TIER = {
|
|
|
210
210
|
START: TIER_START,
|
|
211
211
|
PAUSE: TIER_CONTROL,
|
|
212
212
|
RESUME: TIER_CONTROL,
|
|
213
|
+
PULL: TIER_CONTROL,
|
|
213
214
|
DIRTY: TIER_NOTIFICATION,
|
|
214
215
|
DATA: TIER_VALUE,
|
|
215
216
|
RESOLVED: TIER_VALUE,
|
|
@@ -1001,6 +1002,17 @@ function notifyTopologyDepsChanged(node2, prevDeps, deps) {
|
|
|
1001
1002
|
function terminalView(t) {
|
|
1002
1003
|
return t === void 0 ? false : t;
|
|
1003
1004
|
}
|
|
1005
|
+
function normalizePullDemand(demand) {
|
|
1006
|
+
if (typeof demand !== "object" || demand === null || Array.isArray(demand)) {
|
|
1007
|
+
throw new Error("ctx.up: PULL requires { pullId, params? } demand payload (D269)");
|
|
1008
|
+
}
|
|
1009
|
+
const pullId = demand.pullId;
|
|
1010
|
+
if (typeof pullId !== "string" && typeof pullId !== "symbol") {
|
|
1011
|
+
throw new Error("ctx.up: PULL demand requires a string or symbol pullId (D269)");
|
|
1012
|
+
}
|
|
1013
|
+
const params = demand.params;
|
|
1014
|
+
return params === void 0 ? { pullId } : { pullId, params };
|
|
1015
|
+
}
|
|
1004
1016
|
function validateDownPayloads(msgs) {
|
|
1005
1017
|
for (const m of msgs) {
|
|
1006
1018
|
if (m[0] === "DATA" && m[1] === void 0) {
|
|
@@ -1044,7 +1056,7 @@ var Node = class {
|
|
|
1044
1056
|
const pull = opts.pullId !== void 0;
|
|
1045
1057
|
if (pull && pausable === false)
|
|
1046
1058
|
throw new Error(
|
|
1047
|
-
"node: pullId is incompatible with pausable:false \u2014 a pull node
|
|
1059
|
+
"node: pullId is incompatible with pausable:false \u2014 a pull node uses the pausable delivery-content axis (R-pull / R-pause-modes / D55,D269)"
|
|
1048
1060
|
);
|
|
1049
1061
|
let handle;
|
|
1050
1062
|
if (handleOrFn === null) handle = null;
|
|
@@ -1067,7 +1079,6 @@ var Node = class {
|
|
|
1067
1079
|
value.status = "settled";
|
|
1068
1080
|
}
|
|
1069
1081
|
const pauseLockset = /* @__PURE__ */ new Set();
|
|
1070
|
-
if (pull) pauseLockset.add(pullLock);
|
|
1071
1082
|
this._core = core ?? new NodeCore();
|
|
1072
1083
|
const created = this._core.createSlot(
|
|
1073
1084
|
{
|
|
@@ -1108,7 +1119,9 @@ var Node = class {
|
|
|
1108
1119
|
pauseLockset,
|
|
1109
1120
|
pausedDepWaveOccurred: false,
|
|
1110
1121
|
pauseBuffer: [],
|
|
1111
|
-
demandOwed:
|
|
1122
|
+
demandOwed: void 0,
|
|
1123
|
+
activePull: void 0,
|
|
1124
|
+
pullDirtyOwed: false,
|
|
1112
1125
|
inDeliverDemand: false
|
|
1113
1126
|
},
|
|
1114
1127
|
privateState: { value: SENTINEL, persist: false },
|
|
@@ -1165,10 +1178,11 @@ var Node = class {
|
|
|
1165
1178
|
this._wave.batchDirtyOwed = false;
|
|
1166
1179
|
this._control.pauseBuffer = [];
|
|
1167
1180
|
this._control.pausedDepWaveOccurred = false;
|
|
1168
|
-
this._control.demandOwed =
|
|
1181
|
+
this._control.demandOwed = void 0;
|
|
1182
|
+
this._control.activePull = void 0;
|
|
1183
|
+
this._control.pullDirtyOwed = false;
|
|
1169
1184
|
this._control.inDeliverDemand = false;
|
|
1170
1185
|
this._control.pauseLockset.clear();
|
|
1171
|
-
if (this._slot.pull) this._control.pauseLockset.add(this._slot.pullLock);
|
|
1172
1186
|
this._privateState.value = state.ctxState.value;
|
|
1173
1187
|
this._privateState.persist = state.ctxState.persist;
|
|
1174
1188
|
if (state.version === false) {
|
|
@@ -1207,17 +1221,16 @@ var Node = class {
|
|
|
1207
1221
|
subscriberCountReaders.set(this, () => this._subscriberCount());
|
|
1208
1222
|
activationReaders.set(this, () => this._lifecycle.activated);
|
|
1209
1223
|
}
|
|
1210
|
-
/** R-pull (D55): true while a pull node is
|
|
1224
|
+
/** R-pull (D55/D272): true while a pull node is not serving a PULL demand pulse. */
|
|
1211
1225
|
_isPullQuiet() {
|
|
1212
|
-
return this._slot.pull && this._control.
|
|
1226
|
+
return this._slot.pull && this._control.activePull === void 0;
|
|
1213
1227
|
}
|
|
1214
1228
|
/**
|
|
1215
|
-
* R-pull (
|
|
1216
|
-
* triggers computation). A consumer demands one delivery by cone-routing
|
|
1217
|
-
* reference): `ctx.up([["
|
|
1218
|
-
* `ctx.upNext([["
|
|
1219
|
-
*
|
|
1220
|
-
* for inspection/describe; routing matches by the pullId value carried in the RESUME, by identity.
|
|
1229
|
+
* R-pull (D269/D272): this pull node's pullId (pure data, like {@link cache}/{@link handle} —
|
|
1230
|
+
* never triggers computation). A consumer demands one delivery by cone-routing PULL of it (no
|
|
1231
|
+
* node reference): `ctx.up([["PULL", { pullId }]])` (immediate; loops back → D37 for a self-read
|
|
1232
|
+
* dep) or `ctx.upNext([["PULL", { pullId }]])` (boundary-deferred self-demand). Undefined for a
|
|
1233
|
+
* non-pull node. The author writes the pullId verbatim; routing matches by identity.
|
|
1221
1234
|
*/
|
|
1222
1235
|
get pullId() {
|
|
1223
1236
|
return this._slot.pullLock;
|
|
@@ -1324,10 +1337,10 @@ var Node = class {
|
|
|
1324
1337
|
});
|
|
1325
1338
|
}
|
|
1326
1339
|
/**
|
|
1327
|
-
* Enqueue a deferred up-going control wave (R-up-routing / R-pull /
|
|
1340
|
+
* Enqueue a deferred up-going control/demand wave (R-up-routing / R-pull / D269): at the committed wave
|
|
1328
1341
|
* boundary, route `msgs` up from THIS node (broadcast, or up the single `towardDep` edge). The
|
|
1329
|
-
* deferred form of `ctx.up` — the SELF-demand path: a consumer issues `ctx.upNext([[
|
|
1330
|
-
* pullId]])` to demand a dep it ALSO reads; the demand applies at the boundary (not mid-fn), so
|
|
1342
|
+
* deferred form of `ctx.up` — the SELF-demand path: a consumer issues `ctx.upNext([[PULL,
|
|
1343
|
+
* { pullId }]])` to demand a dep it ALSO reads; the demand applies at the boundary (not mid-fn), so
|
|
1331
1344
|
* the pull node's delivery loops back as a FRESH wave rather than re-entering the consumer (D37 /
|
|
1332
1345
|
* R-reentrancy). Rides the same R-rewire-deferred (D47) drain as ctx.rewireNext.
|
|
1333
1346
|
*/
|
|
@@ -1542,7 +1555,6 @@ var Node = class {
|
|
|
1542
1555
|
this._lifecycle.activated = true;
|
|
1543
1556
|
const seedRestoredDeps = this._restoredActivationPending;
|
|
1544
1557
|
this._restoredActivationPending = false;
|
|
1545
|
-
if (this._slot.pull) this._control.pauseLockset.add(this._slot.pullLock);
|
|
1546
1558
|
this._dep.unsubs = new Array(this._slot.deps.length);
|
|
1547
1559
|
this._dep.idxBoxes = new Array(this._slot.deps.length);
|
|
1548
1560
|
for (const dep of this._slot.deps)
|
|
@@ -1614,7 +1626,9 @@ var Node = class {
|
|
|
1614
1626
|
this._control.pauseLockset.clear();
|
|
1615
1627
|
this._control.pauseBuffer = [];
|
|
1616
1628
|
this._control.pausedDepWaveOccurred = false;
|
|
1617
|
-
this._control.demandOwed =
|
|
1629
|
+
this._control.demandOwed = void 0;
|
|
1630
|
+
this._control.activePull = void 0;
|
|
1631
|
+
this._control.pullDirtyOwed = false;
|
|
1618
1632
|
this._value.replayRing = [];
|
|
1619
1633
|
if (!this._privateState.persist) this._privateState.value = SENTINEL;
|
|
1620
1634
|
}
|
|
@@ -1626,8 +1640,7 @@ var Node = class {
|
|
|
1626
1640
|
return this._lifecycle.subscribers.size;
|
|
1627
1641
|
}
|
|
1628
1642
|
_isRuntimeQuiescentForRelease() {
|
|
1629
|
-
|
|
1630
|
-
return !this._released && this._value.status !== "dirty" && this._value.status !== "pending" && this._wave.pending === 0 && !this._wave.insideRunWave && !this._wave.inDepMutation && !this._wave.rewireRunPending && !this._wave.batchDirtyOwed && this._dep.dirty.every((dirty) => !dirty) && this._control.pauseBuffer.length === 0 && !this._control.pausedDepWaveOccurred && !this._control.demandOwed && !this._control.inDeliverDemand && (this._control.pauseLockset.size === 0 || allowedPullQuietLock);
|
|
1643
|
+
return !this._released && this._value.status !== "dirty" && this._value.status !== "pending" && this._wave.pending === 0 && !this._wave.insideRunWave && !this._wave.inDepMutation && !this._wave.rewireRunPending && !this._wave.batchDirtyOwed && this._dep.dirty.every((dirty) => !dirty) && this._control.pauseBuffer.length === 0 && !this._control.pausedDepWaveOccurred && this._control.demandOwed === void 0 && this._control.activePull === void 0 && !this._control.inDeliverDemand && this._control.pauseLockset.size === 0;
|
|
1631
1644
|
}
|
|
1632
1645
|
_releaseRuntime() {
|
|
1633
1646
|
if (this._released) return;
|
|
@@ -1683,7 +1696,9 @@ var Node = class {
|
|
|
1683
1696
|
this._control.pauseLockset.clear();
|
|
1684
1697
|
this._control.pauseBuffer = [];
|
|
1685
1698
|
this._control.pausedDepWaveOccurred = false;
|
|
1686
|
-
this._control.demandOwed =
|
|
1699
|
+
this._control.demandOwed = void 0;
|
|
1700
|
+
this._control.activePull = void 0;
|
|
1701
|
+
this._control.pullDirtyOwed = false;
|
|
1687
1702
|
this._restoredActivationPending = false;
|
|
1688
1703
|
checkpointReaders.delete(this);
|
|
1689
1704
|
restoreWriters.delete(this);
|
|
@@ -1865,7 +1880,7 @@ var Node = class {
|
|
|
1865
1880
|
this._wave.rewireRunPending = true;
|
|
1866
1881
|
return;
|
|
1867
1882
|
}
|
|
1868
|
-
if (this._slot.pausable === true && this._isPaused()) {
|
|
1883
|
+
if (this._slot.pausable === true && (this._isPaused() || this._isPullQuiet())) {
|
|
1869
1884
|
this._control.pausedDepWaveOccurred = true;
|
|
1870
1885
|
return;
|
|
1871
1886
|
}
|
|
@@ -2005,10 +2020,11 @@ var Node = class {
|
|
|
2005
2020
|
unsubscribeDep: (dep, fn) => this._requestRewireNext({ kind: "remove", dep, fn }),
|
|
2006
2021
|
replaceDeps: (deps, fn) => this._requestRewireNext({ kind: "set", deps, fn })
|
|
2007
2022
|
},
|
|
2008
|
-
// R-up-routing / R-pull (
|
|
2009
|
-
//
|
|
2023
|
+
// R-up-routing / R-pull (D269): deferred up — route a control/demand wave (e.g. PULL)
|
|
2024
|
+
// up the declared cone at the committed boundary. The SELF-demand path: an
|
|
2010
2025
|
// immediate ctx.up whose delivery loops back re-enters this fn (D37 / R-reentrancy).
|
|
2011
2026
|
upNext: (msgs, towardDep) => this._requestUpNext(msgs, towardDep),
|
|
2027
|
+
...this._control.activePull === void 0 ? {} : { pull: this._control.activePull },
|
|
2012
2028
|
[CTX_DEP_CACHE]: { latest: snapshot?.latest ?? this._dep.prev },
|
|
2013
2029
|
[CTX_NODE_BINDING]: {
|
|
2014
2030
|
dispatcher: this._slot.dispatcher,
|
|
@@ -2023,6 +2039,11 @@ var Node = class {
|
|
|
2023
2039
|
_refreshCtx(ctx) {
|
|
2024
2040
|
ctx.waveData = this._dep.waveData;
|
|
2025
2041
|
ctx.terminal = this._dep.terminalInput.map(terminalView);
|
|
2042
|
+
if (this._control.activePull === void 0) {
|
|
2043
|
+
delete ctx.pull;
|
|
2044
|
+
} else {
|
|
2045
|
+
ctx.pull = this._control.activePull;
|
|
2046
|
+
}
|
|
2026
2047
|
ctx[CTX_DEP_CACHE] = { latest: this._dep.prev };
|
|
2027
2048
|
}
|
|
2028
2049
|
_makeState() {
|
|
@@ -2115,7 +2136,7 @@ var Node = class {
|
|
|
2115
2136
|
plannedVersions[i] = plannedVersion;
|
|
2116
2137
|
}
|
|
2117
2138
|
}
|
|
2118
|
-
if (hasTier3 && !this._wave.insideRunWave && !this._wave.emittedDirtyThisWave) {
|
|
2139
|
+
if (hasTier3 && (!this._wave.insideRunWave || this._control.pullDirtyOwed) && !this._wave.emittedDirtyThisWave) {
|
|
2119
2140
|
this._wave.emittedDirtyThisWave = true;
|
|
2120
2141
|
this._value.status = "dirty";
|
|
2121
2142
|
this._emitToSubs(["DIRTY"], { wave: deliveryWave, last: false });
|
|
@@ -2195,13 +2216,18 @@ var Node = class {
|
|
|
2195
2216
|
if (m[0] === "PAUSE") {
|
|
2196
2217
|
this._pauseAcquire(m[1]);
|
|
2197
2218
|
} else if (m[0] === "RESUME") {
|
|
2198
|
-
if (this.
|
|
2199
|
-
if (!this._markDemandRouted(m[1], routeState)) this._onDemand();
|
|
2200
|
-
} else if (this._control.pauseLockset.has(m[1])) {
|
|
2219
|
+
if (this._control.pauseLockset.has(m[1])) {
|
|
2201
2220
|
this._pauseRelease(m[1]);
|
|
2202
2221
|
} else {
|
|
2203
2222
|
this._forwardUp(m, towardDep, routeState);
|
|
2204
2223
|
}
|
|
2224
|
+
} else if (m[0] === "PULL") {
|
|
2225
|
+
const demand = normalizePullDemand(m[1]);
|
|
2226
|
+
if (this._slot.pull && demand.pullId === this._slot.pullLock) {
|
|
2227
|
+
if (!this._markDemandRouted(demand.pullId, routeState)) this._onDemand(demand);
|
|
2228
|
+
} else {
|
|
2229
|
+
this._forwardUp(["PULL", demand], towardDep, routeState);
|
|
2230
|
+
}
|
|
2205
2231
|
} else if (this._slot.deps.length === 0) {
|
|
2206
2232
|
if (m[0] === "INVALIDATE") this._down([["INVALIDATE"]]);
|
|
2207
2233
|
} else {
|
|
@@ -2223,7 +2249,7 @@ var Node = class {
|
|
|
2223
2249
|
* Forward one up-going control message toward deps (R-up-routing): up the single declared edge
|
|
2224
2250
|
* `towardDep` (directed — prunes other branches; only meaningful on the issuer's FIRST hop) or
|
|
2225
2251
|
* broadcast up ALL deps. A depless source has no deps → the message DROPS here (the terminus —
|
|
2226
|
-
* e.g. a cone-routed
|
|
2252
|
+
* e.g. a cone-routed PULL whose pullId no node up this cone holds, R-up-at-source). Recursive
|
|
2227
2253
|
* forwarding carries the same per-wave route state and no `towardDep` → broadcast beyond the
|
|
2228
2254
|
* first hop.
|
|
2229
2255
|
*/
|
|
@@ -2242,9 +2268,7 @@ var Node = class {
|
|
|
2242
2268
|
}
|
|
2243
2269
|
_hasBoundaryPauseLock() {
|
|
2244
2270
|
if (this._slot.pausable === false) return false;
|
|
2245
|
-
|
|
2246
|
-
if (this._slot.pull && this._control.pauseLockset.has(this._slot.pullLock)) locks--;
|
|
2247
|
-
return locks > 0;
|
|
2271
|
+
return this._control.pauseLockset.size > 0;
|
|
2248
2272
|
}
|
|
2249
2273
|
_isAsyncPool() {
|
|
2250
2274
|
return this._slot.handle !== null && this._slot.dispatcher.poolKind(this._slot.handle.poolId) === "async";
|
|
@@ -2255,17 +2279,19 @@ var Node = class {
|
|
|
2255
2279
|
_pauseRelease(lockId) {
|
|
2256
2280
|
if (!this._control.pauseLockset.has(lockId)) return;
|
|
2257
2281
|
this._control.pauseLockset.delete(lockId);
|
|
2258
|
-
if (this._slot.pull && this._control.demandOwed) this._fireOwedDemandIfReady();
|
|
2282
|
+
if (this._slot.pull && this._control.demandOwed !== void 0) this._fireOwedDemandIfReady();
|
|
2259
2283
|
if (this._hasBoundaryPauseLock()) return;
|
|
2260
2284
|
scheduleBoundaryDrain(this._core);
|
|
2261
|
-
if (this.
|
|
2285
|
+
if (this._slot.pull) return;
|
|
2262
2286
|
this._onResume();
|
|
2263
2287
|
}
|
|
2264
2288
|
_onResume() {
|
|
2265
2289
|
if (this._value.terminal !== void 0) {
|
|
2266
2290
|
this._control.pauseBuffer = [];
|
|
2267
2291
|
this._control.pausedDepWaveOccurred = false;
|
|
2268
|
-
this._control.demandOwed =
|
|
2292
|
+
this._control.demandOwed = void 0;
|
|
2293
|
+
this._control.activePull = void 0;
|
|
2294
|
+
this._control.pullDirtyOwed = false;
|
|
2269
2295
|
return;
|
|
2270
2296
|
}
|
|
2271
2297
|
if (this._control.pauseBuffer.length > 0) {
|
|
@@ -2279,41 +2305,38 @@ var Node = class {
|
|
|
2279
2305
|
}
|
|
2280
2306
|
}
|
|
2281
2307
|
/**
|
|
2282
|
-
* R-pull (
|
|
2308
|
+
* R-pull (D269): can this pull node fire a demand NOW? — not terminal, settle-ready (_pending===0),
|
|
2283
2309
|
* and no OTHER (non-pullId) lock holds it paused. The gate that decides fire-now vs OWE.
|
|
2284
2310
|
*/
|
|
2285
2311
|
_canFireDemand() {
|
|
2286
2312
|
if (this._value.terminal !== void 0 || this._wave.pending > 0) return false;
|
|
2287
|
-
|
|
2288
|
-
return this._control.pauseLockset.size <= own;
|
|
2313
|
+
return this._control.pauseLockset.size === 0;
|
|
2289
2314
|
}
|
|
2290
2315
|
/**
|
|
2291
|
-
* R-pull (
|
|
2292
|
-
*
|
|
2293
|
-
* `finally` so a throwing pull fn (graph-less node, no D30 catch) cannot leave the node
|
|
2294
|
-
* permanently non-quiet (the wedge-fix silently disabled) — QA-found robustness fix.
|
|
2316
|
+
* R-pull (D269/D272): deliver ONE demand pulse — install activePull so the demand wave may
|
|
2317
|
+
* emit, fire it, then clear activePull so the node is quiet again (1:1).
|
|
2295
2318
|
*/
|
|
2296
|
-
_deliverPullDemand() {
|
|
2297
|
-
this._control.demandOwed =
|
|
2319
|
+
_deliverPullDemand(demand) {
|
|
2320
|
+
this._control.demandOwed = void 0;
|
|
2321
|
+
this._control.activePull = demand;
|
|
2298
2322
|
this._control.inDeliverDemand = true;
|
|
2299
|
-
this._control.pauseLockset.delete(this._slot.pullLock);
|
|
2300
2323
|
try {
|
|
2301
2324
|
this._firePullDemand();
|
|
2302
2325
|
} finally {
|
|
2303
|
-
this._control.
|
|
2326
|
+
this._control.activePull = void 0;
|
|
2304
2327
|
this._control.inDeliverDemand = false;
|
|
2305
2328
|
}
|
|
2306
2329
|
}
|
|
2307
2330
|
/**
|
|
2308
|
-
* R-pull (
|
|
2331
|
+
* R-pull (D269): a cone-routed PULL of THIS node's pullId arrived (R-up-routing) = a DEMAND.
|
|
2309
2332
|
* Fire immediately if able; else OWE it — pin-5 (a dep DIRTY in flight, _pending>0) or F4/F5 (an
|
|
2310
2333
|
* external PAUSE lock co-holds the node) — and fire when the node next becomes able. A demand
|
|
2311
2334
|
* arriving WHILE a delivery is in flight (synchronous re-entry) is DROPPED (1:1, QA guard).
|
|
2312
2335
|
*/
|
|
2313
|
-
_onDemand() {
|
|
2336
|
+
_onDemand(demand) {
|
|
2314
2337
|
if (this._control.inDeliverDemand) return;
|
|
2315
|
-
if (this._canFireDemand()) this._deliverPullDemand();
|
|
2316
|
-
else this._control.demandOwed =
|
|
2338
|
+
if (this._canFireDemand()) this._deliverPullDemand(demand);
|
|
2339
|
+
else this._control.demandOwed = demand;
|
|
2317
2340
|
}
|
|
2318
2341
|
/**
|
|
2319
2342
|
* R-pull (D55): service ONE demand. Delivery content = the orthogonal pausable mode:
|
|
@@ -2326,33 +2349,53 @@ var Node = class {
|
|
|
2326
2349
|
* `_markDirty` relays the leading DIRTY (not absorbed).
|
|
2327
2350
|
*/
|
|
2328
2351
|
_firePullDemand() {
|
|
2352
|
+
let drainedBuffer = false;
|
|
2329
2353
|
if (this._control.pauseBuffer.length > 0) {
|
|
2330
2354
|
const buf = this._control.pauseBuffer;
|
|
2331
2355
|
this._control.pauseBuffer = [];
|
|
2332
2356
|
for (const wave of buf) this._down(wave);
|
|
2357
|
+
drainedBuffer = true;
|
|
2333
2358
|
}
|
|
2359
|
+
if (drainedBuffer) return;
|
|
2334
2360
|
if (this._control.pausedDepWaveOccurred) {
|
|
2335
2361
|
const gated = this._slot.handle !== null && !this._wave.hasCalledFnOnce && !(this._slot.partial || this._allDepsSettled());
|
|
2336
2362
|
if (this._wave.pending > 0 || gated) return;
|
|
2337
2363
|
this._control.pausedDepWaveOccurred = false;
|
|
2338
|
-
this.
|
|
2339
|
-
this.
|
|
2364
|
+
this._wave.emittedDirtyThisWave = false;
|
|
2365
|
+
this._control.pullDirtyOwed = true;
|
|
2366
|
+
try {
|
|
2367
|
+
this._tryRun();
|
|
2368
|
+
} finally {
|
|
2369
|
+
this._control.pullDirtyOwed = false;
|
|
2370
|
+
}
|
|
2371
|
+
return;
|
|
2372
|
+
}
|
|
2373
|
+
if (this._slot.handle !== null) {
|
|
2374
|
+
if (!this._wave.hasCalledFnOnce && !(this._slot.partial || this._allDepsSettled())) return;
|
|
2375
|
+
this._wave.emittedDirtyThisWave = false;
|
|
2376
|
+
this._control.pullDirtyOwed = true;
|
|
2377
|
+
try {
|
|
2378
|
+
this._runWave();
|
|
2379
|
+
} finally {
|
|
2380
|
+
this._control.pullDirtyOwed = false;
|
|
2381
|
+
}
|
|
2340
2382
|
}
|
|
2341
2383
|
}
|
|
2342
2384
|
/**
|
|
2343
|
-
* R-pull (
|
|
2385
|
+
* R-pull (D269): fire a demand that was OWED (deferred at demand time) once the node becomes
|
|
2344
2386
|
* able — called from the dep-settle arms (DATA/RESOLVED/INVALIDATE/terminal drain _pending, pin-5
|
|
2345
2387
|
* + B1/F6) and from `_pauseRelease` (an external PAUSE lock releases, F4/F5).
|
|
2346
2388
|
*/
|
|
2347
2389
|
_fireOwedDemandIfReady() {
|
|
2348
2390
|
if (this._control.inDeliverDemand) return;
|
|
2349
|
-
if (this._slot.pull && this._control.demandOwed && this._canFireDemand())
|
|
2350
|
-
this._deliverPullDemand();
|
|
2391
|
+
if (this._slot.pull && this._control.demandOwed !== void 0 && this._canFireDemand()) {
|
|
2392
|
+
this._deliverPullDemand(this._control.demandOwed);
|
|
2393
|
+
}
|
|
2351
2394
|
}
|
|
2352
2395
|
/** Should an outgoing settle slice be deferred into the pause buffer? */
|
|
2353
2396
|
_shouldBufferOnPause() {
|
|
2354
2397
|
if (this._slot.pausable === false) return false;
|
|
2355
|
-
if (!this._isPaused()) return false;
|
|
2398
|
+
if (!this._isPaused() && !this._isPullQuiet()) return false;
|
|
2356
2399
|
if (this._slot.pausable === "resumeAll") return true;
|
|
2357
2400
|
if (!this._wave.insideRunWave && this._isAsyncPool() && this._slot.deps.length > 0) return true;
|
|
2358
2401
|
return false;
|
|
@@ -2392,7 +2435,9 @@ var Node = class {
|
|
|
2392
2435
|
this._control.pauseLockset.clear();
|
|
2393
2436
|
this._control.pauseBuffer = [];
|
|
2394
2437
|
this._control.pausedDepWaveOccurred = false;
|
|
2395
|
-
this._control.demandOwed =
|
|
2438
|
+
this._control.demandOwed = void 0;
|
|
2439
|
+
this._control.activePull = void 0;
|
|
2440
|
+
this._control.pullDirtyOwed = false;
|
|
2396
2441
|
this._value.replayRing = [];
|
|
2397
2442
|
const isCompute = this._slot.handle !== null || this._slot.deps.length > 0;
|
|
2398
2443
|
if (isCompute) {
|