@demlik/tea 0.13.0 → 0.15.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.
- package/README.md +11 -9
- package/dist/agent/index.d.ts +638 -45
- package/dist/agent/index.js +9 -19
- package/dist/{chunk-RH5EFRVJ.js → chunk-22POWGFA.js} +31 -5
- package/dist/chunk-22POWGFA.js.map +1 -0
- package/dist/{chunk-DMYGQB4O.js → chunk-3B5X7SBB.js} +23 -6
- package/dist/chunk-3B5X7SBB.js.map +1 -0
- package/dist/chunk-66PY5WYF.js +1816 -0
- package/dist/chunk-66PY5WYF.js.map +1 -0
- package/dist/{chunk-25LBDCBC.js → chunk-6IQPODUF.js} +2 -2
- package/dist/{chunk-25LBDCBC.js.map → chunk-6IQPODUF.js.map} +1 -1
- package/dist/chunk-AYS5N6WY.js +505 -0
- package/dist/chunk-AYS5N6WY.js.map +1 -0
- package/dist/{chunk-EWJP3YYP.js → chunk-HWVW4AXC.js} +3 -3
- package/dist/chunk-HWVW4AXC.js.map +1 -0
- package/dist/{chunk-O4MVQTEJ.js → chunk-L3TND7LA.js} +20 -16
- package/dist/chunk-L3TND7LA.js.map +1 -0
- package/dist/{chunk-J6527VRQ.js → chunk-LFZUK6J2.js} +3 -3
- package/dist/chunk-LFZUK6J2.js.map +1 -0
- package/dist/{chunk-D736QUGF.js → chunk-MYXFNWAJ.js} +4 -5
- package/dist/chunk-MYXFNWAJ.js.map +1 -0
- package/dist/{chunk-K575PT4S.js → chunk-PR6TB3BL.js} +15 -4
- package/dist/chunk-PR6TB3BL.js.map +1 -0
- package/dist/{chunk-YUXP55T2.js → chunk-Q5CQTBFA.js} +57 -7
- package/dist/chunk-Q5CQTBFA.js.map +1 -0
- package/dist/{batch-window/index.js → chunk-QPEVCJ5Q.js} +4 -8
- package/dist/chunk-QPEVCJ5Q.js.map +1 -0
- package/dist/chunk-TCLBCERH.js +1480 -0
- package/dist/chunk-TCLBCERH.js.map +1 -0
- package/dist/{chunk-FV3Z5MBE.js → chunk-TXN2KFHF.js} +14 -4
- package/dist/chunk-TXN2KFHF.js.map +1 -0
- package/dist/{chunk-MUUROGIH.js → chunk-V46HSVCK.js} +62 -12
- package/dist/chunk-V46HSVCK.js.map +1 -0
- package/dist/{chunk-Q2UM7BXU.js → chunk-VBDU4JL6.js} +2 -2
- package/dist/chunk-VBDU4JL6.js.map +1 -0
- package/dist/{chunk-ZVJZ72HY.js → chunk-VTQI2NHP.js} +25 -11
- package/dist/chunk-VTQI2NHP.js.map +1 -0
- package/dist/{core-Co0LWkIA.d.ts → core-DnzqWy6u.d.ts} +72 -23
- package/dist/devtools/index.d.ts +2 -2
- package/dist/devtools/index.js +207 -2
- package/dist/devtools/index.js.map +1 -1
- package/dist/do/index.d.ts +43 -29
- package/dist/do/index.js +36 -25
- package/dist/do/index.js.map +1 -1
- package/dist/{durable-effects-C6uwzjb5.d.ts → durable-effects-CWzA-o2B.d.ts} +2 -2
- package/dist/extension/index.d.ts +300 -3
- package/dist/extension/index.js +596 -5
- package/dist/extension/index.js.map +1 -1
- package/dist/flow/index.d.ts +1284 -0
- package/dist/flow/index.js +732 -0
- package/dist/flow/index.js.map +1 -0
- package/dist/idempotency/index.d.ts +90 -116
- package/dist/idempotency/index.js +4 -1
- package/dist/index-Bc40JWVl.d.ts +131 -0
- package/dist/{batch-window/index.d.ts → index-C2DwkjlP.d.ts} +7 -12
- package/dist/index-CA_7I5g9.d.ts +806 -0
- package/dist/index-CSyMYDAB.d.ts +69 -0
- package/dist/{fan-out/index.d.ts → index-CuNO9m8i.d.ts} +7 -9
- package/dist/{debounce/index.d.ts → index-DHSUmQTR.d.ts} +7 -7
- package/dist/{recorder/index.d.ts → index-DrIRb_Ch.d.ts} +4 -7
- package/dist/index-HSYgG2Yt.d.ts +380 -0
- package/dist/{monitored-run/index.d.ts → index-KXqTRJyb.d.ts} +37 -13
- package/dist/{snapshot/index.d.ts → index-ZCMhnVKN.d.ts} +15 -78
- package/dist/index.d.ts +771 -6
- package/dist/index.js +1 -2
- package/dist/jev/index.d.ts +646 -0
- package/dist/jev/index.js +485 -0
- package/dist/jev/index.js.map +1 -0
- package/dist/machine-DGlPWCWI.d.ts +1781 -0
- package/dist/machine-viz/index.d.ts +1 -1
- package/dist/machine-viz/index.js +12 -5
- package/dist/machine-viz/index.js.map +1 -1
- package/dist/mem/index.d.ts +18 -3
- package/dist/mem/index.js +22 -2
- package/dist/mem/index.js.map +1 -1
- package/dist/node/index.d.ts +104 -6
- package/dist/node/index.js +132 -9
- package/dist/node/index.js.map +1 -1
- package/dist/{paginator → paginate}/index.d.ts +140 -6
- package/dist/paginate/index.js +7 -0
- package/dist/parity/index.d.ts +4 -10
- package/dist/parity/index.js +4 -7
- package/dist/parity/index.js.map +1 -1
- package/dist/pbt/index.d.ts +247 -5
- package/dist/pbt/index.js +124 -5
- package/dist/pbt/index.js.map +1 -1
- package/dist/{trace-replay → persistence}/index.d.ts +7 -5
- package/dist/persistence/index.js +6 -0
- package/dist/{protocol-B5YmJr0d.d.ts → protocol-D8VbH-VH.d.ts} +10 -1
- package/dist/react/index.d.ts +2 -2
- package/dist/react/index.js +1 -2
- package/dist/react/index.js.map +1 -1
- package/dist/resilience/index.d.ts +744 -0
- package/dist/resilience/index.js +657 -0
- package/dist/resilience/index.js.map +1 -0
- package/dist/retry-backoff/index.d.ts +3 -2
- package/dist/retry-backoff/index.js +1 -1
- package/dist/runtime-types-CMF13BBh.d.ts +998 -0
- package/dist/testing/index.d.ts +147 -3
- package/dist/testing/index.js +95 -3
- package/dist/testing/index.js.map +1 -1
- package/dist/{throttled-input → timing}/index.d.ts +143 -12
- package/dist/{throttled-input → timing}/index.js +57 -12
- package/dist/timing/index.js.map +1 -0
- package/dist/{types-XS_miRnB.d.ts → types-BseNPIhr.d.ts} +1 -1
- package/dist/work-queue/index.d.ts +130 -54
- package/dist/work-queue/index.js +3 -2
- package/dist/work-queue/index.js.map +1 -1
- package/package.json +45 -218
- package/dist/authed-call/index.d.ts +0 -120
- package/dist/authed-call/index.js +0 -134
- package/dist/authed-call/index.js.map +0 -1
- package/dist/await-terminal/index.d.ts +0 -101
- package/dist/await-terminal/index.js +0 -76
- package/dist/await-terminal/index.js.map +0 -1
- package/dist/batch-window/index.js.map +0 -1
- package/dist/cache/index.d.ts +0 -152
- package/dist/cache/index.js +0 -8
- package/dist/chart/index.d.ts +0 -218
- package/dist/chart/index.js +0 -16
- package/dist/chart/index.js.map +0 -1
- package/dist/chart/inspect/index.d.ts +0 -86
- package/dist/chart/inspect/index.js +0 -5
- package/dist/chart/inspect/react.d.ts +0 -113
- package/dist/chart/inspect/react.js +0 -11
- package/dist/chart/inspect/react.js.map +0 -1
- package/dist/chart/inspect/styles.css +0 -286
- package/dist/chart/lane/index.d.ts +0 -362
- package/dist/chart/lane/index.js +0 -9
- package/dist/chart/lane/index.js.map +0 -1
- package/dist/chart/lane/react.d.ts +0 -84
- package/dist/chart/lane/react.js +0 -559
- package/dist/chart/lane/react.js.map +0 -1
- package/dist/chart/lane/server.d.ts +0 -148
- package/dist/chart/lane/server.js +0 -209
- package/dist/chart/lane/server.js.map +0 -1
- package/dist/chart/lane/styles.css +0 -498
- package/dist/chart/lane/viewer/assets/abnfDiagram-N423BO3Z-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/architectureDiagram-T3A2C74G-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/blockDiagram-VBNYF7ZC-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/c4Diagram-5PPSVZJV-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/chunk-2GRJ4B5K-HdDf8SI3.js +0 -1
- package/dist/chart/lane/viewer/assets/chunk-5RXB4S5H-CcNtpUd7.js +0 -231
- package/dist/chart/lane/viewer/assets/chunk-5VM5RSS4-BP4fRS_5.js +0 -15
- package/dist/chart/lane/viewer/assets/chunk-KBJHAD2P-DZOw7xU6.js +0 -1
- package/dist/chart/lane/viewer/assets/chunk-NSK5VX7P-CBCyTZMs.js +0 -128
- package/dist/chart/lane/viewer/assets/classDiagram-JCYQIIEL-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/classDiagram-v2-OCEON4UE-D4uAiFr8.js +0 -206
- package/dist/chart/lane/viewer/assets/cose-bilkent-JH36ORCC-DOwCrGXH.js +0 -1
- package/dist/chart/lane/viewer/assets/cynefinDiagram-MW4NZA55-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/dagre-K_PewWfS.js +0 -1
- package/dist/chart/lane/viewer/assets/dagre-VZM6K2ZE-831qZcA8.js +0 -4
- package/dist/chart/lane/viewer/assets/diagram-7IWD3JNH-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/diagram-B4RE2ZJO-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/diagram-LBJQPF4R-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/diagram-Q27KOJAE-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/diagram-UB23O5K3-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/ebnfDiagram-BXEA7PRR-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/erDiagram-JOGREHBK-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/flowDiagram-UKHOOZJN-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/ganttDiagram-PKOTCBZU-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/gitGraphDiagram-DS77QQ5N-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/index-9SkH5NA3.css +0 -1
- package/dist/chart/lane/viewer/assets/index-Bgt4sXpW.js +0 -195
- package/dist/chart/lane/viewer/assets/infoDiagram-6WML65LV-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/ishikawaDiagram-WSZJBQD7-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/journeyDiagram-NVQOT4AX-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/kanban-definition-27J2QSJJ-G7PaPzy-.js +0 -89
- package/dist/chart/lane/viewer/assets/katex-DOwCrGXH.js +0 -1
- package/dist/chart/lane/viewer/assets/mindmap-definition-FAOFIHXS-CGj9nrVk.js +0 -96
- package/dist/chart/lane/viewer/assets/path-fybaL0A-.js +0 -1
- package/dist/chart/lane/viewer/assets/pegDiagram-VL7TDLO6-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/pieDiagram-7S7Q4E2Y-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/quadrantDiagram-CIZ2JOQS-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/railroadDiagram-AXF67PYL-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/requirementDiagram-LRYGKXZP-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/sankeyDiagram-W5VNT64P-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/sequenceDiagram-SI44F4Z6-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/stateDiagram-OKZ733FA-B_88AzBS.js +0 -1
- package/dist/chart/lane/viewer/assets/stateDiagram-v2-UEYNNEHI-CR5gcgq6.js +0 -1
- package/dist/chart/lane/viewer/assets/swimlanes-SLNWSIFB-B4xK-rwg.js +0 -1
- package/dist/chart/lane/viewer/assets/swimlanesDiagram-ULZ7WXOC-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/timeline-definition-Z64GVDOM-CCv52MfY.js +0 -120
- package/dist/chart/lane/viewer/assets/vennDiagram-T6HMQDX7-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/wardleyDiagram-T6FBY63Y-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/assets/xychartDiagram-ELKLHX3M-C729LI31.js +0 -1
- package/dist/chart/lane/viewer/index.html +0 -15
- package/dist/chart/report/index.d.ts +0 -117
- package/dist/chart/report/index.js +0 -32
- package/dist/chart/report/index.js.map +0 -1
- package/dist/chunk-2YFLOCWX.js +0 -15
- package/dist/chunk-2YFLOCWX.js.map +0 -1
- package/dist/chunk-3I52QZZ5.js +0 -519
- package/dist/chunk-3I52QZZ5.js.map +0 -1
- package/dist/chunk-3ZAFFRRB.js +0 -457
- package/dist/chunk-3ZAFFRRB.js.map +0 -1
- package/dist/chunk-4EQZ76JC.js +0 -33
- package/dist/chunk-4EQZ76JC.js.map +0 -1
- package/dist/chunk-4KLG43GY.js +0 -223
- package/dist/chunk-4KLG43GY.js.map +0 -1
- package/dist/chunk-7FRZ2CT2.js +0 -424
- package/dist/chunk-7FRZ2CT2.js.map +0 -1
- package/dist/chunk-AZZLE7XR.js +0 -62
- package/dist/chunk-AZZLE7XR.js.map +0 -1
- package/dist/chunk-BYQUGDD3.js +0 -16
- package/dist/chunk-BYQUGDD3.js.map +0 -1
- package/dist/chunk-CIQG5L42.js +0 -685
- package/dist/chunk-CIQG5L42.js.map +0 -1
- package/dist/chunk-CLM6ERNO.js +0 -61
- package/dist/chunk-CLM6ERNO.js.map +0 -1
- package/dist/chunk-COS5MSTO.js +0 -88
- package/dist/chunk-COS5MSTO.js.map +0 -1
- package/dist/chunk-CRPZJVD2.js +0 -71
- package/dist/chunk-CRPZJVD2.js.map +0 -1
- package/dist/chunk-D62FDQKE.js +0 -53
- package/dist/chunk-D62FDQKE.js.map +0 -1
- package/dist/chunk-D736QUGF.js.map +0 -1
- package/dist/chunk-DGE4PV4A.js +0 -26
- package/dist/chunk-DGE4PV4A.js.map +0 -1
- package/dist/chunk-DMYGQB4O.js.map +0 -1
- package/dist/chunk-EWJP3YYP.js.map +0 -1
- package/dist/chunk-FV3Z5MBE.js.map +0 -1
- package/dist/chunk-HCEVHFJ7.js +0 -54
- package/dist/chunk-HCEVHFJ7.js.map +0 -1
- package/dist/chunk-J6527VRQ.js.map +0 -1
- package/dist/chunk-JELSZN25.js +0 -47
- package/dist/chunk-JELSZN25.js.map +0 -1
- package/dist/chunk-K575PT4S.js.map +0 -1
- package/dist/chunk-L57ZOT5K.js +0 -184
- package/dist/chunk-L57ZOT5K.js.map +0 -1
- package/dist/chunk-MU6MCIAC.js +0 -15
- package/dist/chunk-MU6MCIAC.js.map +0 -1
- package/dist/chunk-MUUROGIH.js.map +0 -1
- package/dist/chunk-NR7BU22N.js +0 -758
- package/dist/chunk-NR7BU22N.js.map +0 -1
- package/dist/chunk-O4MVQTEJ.js.map +0 -1
- package/dist/chunk-OOYD44JI.js +0 -317
- package/dist/chunk-OOYD44JI.js.map +0 -1
- package/dist/chunk-Q2UM7BXU.js.map +0 -1
- package/dist/chunk-RH5EFRVJ.js.map +0 -1
- package/dist/chunk-S2EGRPCM.js +0 -47
- package/dist/chunk-S2EGRPCM.js.map +0 -1
- package/dist/chunk-SINXE47Y.js +0 -55
- package/dist/chunk-SINXE47Y.js.map +0 -1
- package/dist/chunk-UF4MZSLT.js +0 -53
- package/dist/chunk-UF4MZSLT.js.map +0 -1
- package/dist/chunk-UOC2PL46.js +0 -13
- package/dist/chunk-UOC2PL46.js.map +0 -1
- package/dist/chunk-VYFAZN3F.js +0 -372
- package/dist/chunk-VYFAZN3F.js.map +0 -1
- package/dist/chunk-WRAA7GVZ.js +0 -209
- package/dist/chunk-WRAA7GVZ.js.map +0 -1
- package/dist/chunk-XGELA764.js +0 -163
- package/dist/chunk-XGELA764.js.map +0 -1
- package/dist/chunk-YUXP55T2.js.map +0 -1
- package/dist/chunk-YWIKDKHY.js +0 -307
- package/dist/chunk-YWIKDKHY.js.map +0 -1
- package/dist/chunk-ZJ5AOYBH.js +0 -8
- package/dist/chunk-ZJ5AOYBH.js.map +0 -1
- package/dist/chunk-ZSUUOEPL.js +0 -731
- package/dist/chunk-ZSUUOEPL.js.map +0 -1
- package/dist/chunk-ZVJZ72HY.js.map +0 -1
- package/dist/circuit-breaker/index.d.ts +0 -197
- package/dist/circuit-breaker/index.js +0 -3
- package/dist/circuit-breaker/index.js.map +0 -1
- package/dist/deadline/index.d.ts +0 -199
- package/dist/deadline/index.js +0 -6
- package/dist/deadline/index.js.map +0 -1
- package/dist/debounce/index.js +0 -3
- package/dist/debounce/index.js.map +0 -1
- package/dist/extension/react.d.ts +0 -121
- package/dist/extension/react.js +0 -75
- package/dist/extension/react.js.map +0 -1
- package/dist/extension/subs/index.d.ts +0 -45
- package/dist/extension/subs/index.js +0 -80
- package/dist/extension/subs/index.js.map +0 -1
- package/dist/extension/test-utils.d.ts +0 -128
- package/dist/extension/test-utils.js +0 -277
- package/dist/extension/test-utils.js.map +0 -1
- package/dist/fan-out/index.js +0 -5
- package/dist/fan-out/index.js.map +0 -1
- package/dist/fold-BJPdjc9w.d.ts +0 -435
- package/dist/graph-B3L5e0N1.d.ts +0 -923
- package/dist/idempotency/adapter.d.ts +0 -62
- package/dist/idempotency/adapter.js +0 -4
- package/dist/idempotency/adapter.js.map +0 -1
- package/dist/idempotent-intake/index.d.ts +0 -188
- package/dist/idempotent-intake/index.js +0 -7
- package/dist/idempotent-intake/index.js.map +0 -1
- package/dist/journal/index.d.ts +0 -373
- package/dist/journal/index.js +0 -3
- package/dist/journal/index.js.map +0 -1
- package/dist/llm-call/index.d.ts +0 -311
- package/dist/llm-call/index.js +0 -16
- package/dist/llm-call/index.js.map +0 -1
- package/dist/machine-BtFWQmmq.d.ts +0 -804
- package/dist/monitored-run/index.js +0 -10
- package/dist/monitored-run/index.js.map +0 -1
- package/dist/paginated-walk/index.d.ts +0 -235
- package/dist/paginated-walk/index.js +0 -16
- package/dist/paginated-walk/index.js.map +0 -1
- package/dist/paginator/index.js +0 -3
- package/dist/paginator/index.js.map +0 -1
- package/dist/pbt/arbitraries/index.d.ts +0 -136
- package/dist/pbt/arbitraries/index.js +0 -3
- package/dist/pbt/arbitraries/index.js.map +0 -1
- package/dist/pbt/runners/index.d.ts +0 -118
- package/dist/pbt/runners/index.js +0 -5
- package/dist/pbt/runners/index.js.map +0 -1
- package/dist/poller/index.d.ts +0 -352
- package/dist/poller/index.js +0 -115
- package/dist/poller/index.js.map +0 -1
- package/dist/prediction/index.d.ts +0 -131
- package/dist/prediction/index.js +0 -4
- package/dist/prediction/index.js.map +0 -1
- package/dist/pure/index.d.ts +0 -3
- package/dist/pure/index.js +0 -4
- package/dist/pure/index.js.map +0 -1
- package/dist/rate-limit/index.d.ts +0 -115
- package/dist/rate-limit/index.js +0 -3
- package/dist/rate-limit/index.js.map +0 -1
- package/dist/reconciler/index.d.ts +0 -193
- package/dist/reconciler/index.js +0 -164
- package/dist/reconciler/index.js.map +0 -1
- package/dist/recorder/index.js +0 -3
- package/dist/recorder/index.js.map +0 -1
- package/dist/reducer-4GNR6b8B.d.ts +0 -447
- package/dist/resilient-call/index.d.ts +0 -320
- package/dist/resilient-call/index.js +0 -14
- package/dist/resilient-call/index.js.map +0 -1
- package/dist/retry-to-success/index.d.ts +0 -109
- package/dist/retry-to-success/index.js +0 -37
- package/dist/retry-to-success/index.js.map +0 -1
- package/dist/run-pAcmBpah.d.ts +0 -713
- package/dist/runtime-types-CNLmhWif.d.ts +0 -517
- package/dist/saga/index.d.ts +0 -241
- package/dist/saga/index.js +0 -150
- package/dist/saga/index.js.map +0 -1
- package/dist/samples-B3My5oh2.d.ts +0 -59
- package/dist/snapshot/index.js +0 -5
- package/dist/snapshot/index.js.map +0 -1
- package/dist/subs/index.d.ts +0 -472
- package/dist/subs/index.js +0 -7
- package/dist/subs/index.js.map +0 -1
- package/dist/throttle/index.d.ts +0 -134
- package/dist/throttle/index.js +0 -3
- package/dist/throttle/index.js.map +0 -1
- package/dist/throttled-input/index.js.map +0 -1
- package/dist/token-refresh/index.d.ts +0 -216
- package/dist/token-refresh/index.js +0 -6
- package/dist/token-refresh/index.js.map +0 -1
- package/dist/trace-replay/index.js +0 -6
- package/dist/trace-replay/index.js.map +0 -1
- package/dist/with-deadline/index.d.ts +0 -197
- package/dist/with-deadline/index.js +0 -111
- package/dist/with-deadline/index.js.map +0 -1
- package/dist/with-resilience/index.d.ts +0 -225
- package/dist/with-resilience/index.js +0 -240
- package/dist/with-resilience/index.js.map +0 -1
- package/dist/with-telemetry/index.d.ts +0 -150
- package/dist/with-telemetry/index.js +0 -70
- package/dist/with-telemetry/index.js.map +0 -1
- package/dist/work-queue/adapter.d.ts +0 -84
- package/dist/work-queue/adapter.js +0 -4
- package/dist/work-queue/adapter.js.map +0 -1
- package/dist/work-queue/ops.d.ts +0 -71
- package/dist/work-queue/ops.js +0 -3
- package/dist/work-queue/ops.js.map +0 -1
- package/dist/workflow/index.d.ts +0 -485
- package/dist/workflow/index.js +0 -244
- package/dist/workflow/index.js.map +0 -1
- /package/dist/{cache → paginate}/index.js.map +0 -0
- /package/dist/{chart/inspect → persistence}/index.js.map +0 -0
package/dist/fold-BJPdjc9w.d.ts
DELETED
|
@@ -1,435 +0,0 @@
|
|
|
1
|
-
import { k as EventOrigin } from './graph-B3L5e0N1.js';
|
|
2
|
-
|
|
3
|
-
/** `TASK_1.DONE` and `DONE` are the same event; the namespace is presentation. */
|
|
4
|
-
declare const bareEvent: (event: string) => string;
|
|
5
|
-
/** A declarative edge, in the only three forms a lane region can produce. */
|
|
6
|
-
/**
|
|
7
|
-
* `cmd` / `otherwiseCmd` are carried but never AUTHORED here: a `workflow.json`
|
|
8
|
-
* declares no effects, so an imported edge simply has neither. They exist
|
|
9
|
-
* because the TYPED door has them and lowering used to drop them, which left a
|
|
10
|
-
* lane page able to say where a click LANDS and never what it FIRES — a fact
|
|
11
|
-
* the author wrote down, lost in translation.
|
|
12
|
-
*/
|
|
13
|
-
type ImportedCmds = {
|
|
14
|
-
readonly cmd?: string | readonly string[];
|
|
15
|
-
readonly otherwiseCmd?: string | readonly string[];
|
|
16
|
-
};
|
|
17
|
-
type ImportedEdge = ({
|
|
18
|
-
readonly target: string;
|
|
19
|
-
} & ImportedCmds) | ({
|
|
20
|
-
readonly target: string;
|
|
21
|
-
readonly when: string;
|
|
22
|
-
readonly otherwise: string;
|
|
23
|
-
} & ImportedCmds) | ({
|
|
24
|
-
readonly resume: {
|
|
25
|
-
readonly fallback: string;
|
|
26
|
-
};
|
|
27
|
-
} & ImportedCmds);
|
|
28
|
-
interface ImportedNode {
|
|
29
|
-
readonly initial?: true;
|
|
30
|
-
readonly on?: Readonly<Record<string, ImportedEdge>>;
|
|
31
|
-
/** `true` success final, `"error"` the fallthrough final that trips the lane. */
|
|
32
|
-
readonly end?: true | "error";
|
|
33
|
-
}
|
|
34
|
-
/** One task's region, as a chart value. One phase group, named by the phase. */
|
|
35
|
-
interface ImportedChart {
|
|
36
|
-
readonly events: Readonly<Record<string, {
|
|
37
|
-
readonly scope: "edges";
|
|
38
|
-
/**
|
|
39
|
-
* Where this event comes from — the chart's `from`, at runtime.
|
|
40
|
-
*
|
|
41
|
-
* OPTIONAL, and its absence is the document's honest answer:
|
|
42
|
-
* `workflow.json` records the topology and nothing about who sends
|
|
43
|
-
* what, so this is present exactly when the caller supplied it at
|
|
44
|
-
* {@link chartFromWorkflow}.
|
|
45
|
-
*/
|
|
46
|
-
readonly from?: EventOrigin;
|
|
47
|
-
}>>;
|
|
48
|
-
readonly states: Readonly<Record<string, Readonly<Record<string, ImportedNode>>>>;
|
|
49
|
-
/**
|
|
50
|
-
* State name → the events that state ACCEPTS AND DROPS, leaving itself alone.
|
|
51
|
-
*
|
|
52
|
-
* THE THIRD ANSWER. A lane state either routes an event, or refuses it, or
|
|
53
|
-
* cannot replay it — tea's runtime has always had all three (`compile`'s
|
|
54
|
-
* `refused` self-loops a pair the state's `ignore` names or the event's
|
|
55
|
-
* `scope` does not address, and only a LIVE-but-undecided pair throws), and
|
|
56
|
-
* the lowered chart could carry only two. So `stepTask` threw
|
|
57
|
-
* `UnreplayableLogError` on a log `runLane` had accepted without blinking: a
|
|
58
|
-
* run and a report of that run disagreeing, which is the one thing this
|
|
59
|
-
* module promises they cannot do.
|
|
60
|
-
*
|
|
61
|
-
* IT IS ON THE CHART, NOT ON THE NODE, and that is deliberate.
|
|
62
|
-
* {@link ImportedNode} is a MIRROR of the node fabrika's own compiler emits —
|
|
63
|
-
* `golden.test.ts` compares the two — so a field fabrika never produces does
|
|
64
|
-
* not belong inside it. This is our layer's annotation about someone else's
|
|
65
|
-
* shape, and it sits one level out where it reads as one.
|
|
66
|
-
*
|
|
67
|
-
* ABSENT AT THE IMPORTED DOOR, always. A refusal is a fact about a state's
|
|
68
|
-
* `ignore` and an event's `scope`, and `workflow.json` records neither — so
|
|
69
|
-
* `chartFromWorkflow` writes none, an imported chart is the same value it
|
|
70
|
-
* always was, and an imported log naming an unrouted event is still refused
|
|
71
|
-
* loudly. Only `defineLane`'s lowering, which can SEE the two, fills it in.
|
|
72
|
-
*/
|
|
73
|
-
readonly refusals?: Readonly<Record<string, readonly string[]>>;
|
|
74
|
-
}
|
|
75
|
-
interface ImportedPhase {
|
|
76
|
-
readonly name: string;
|
|
77
|
-
readonly tasks: readonly string[];
|
|
78
|
-
}
|
|
79
|
-
interface ImportedLane {
|
|
80
|
-
/** The document's own `id`, when it carries one. */
|
|
81
|
-
readonly id?: string;
|
|
82
|
-
/** What fires this lane — a chore workflow's own field, carried not invented. */
|
|
83
|
-
readonly trigger?: string;
|
|
84
|
-
readonly phases: readonly ImportedPhase[];
|
|
85
|
-
/** The workflow's two terminals, read off the last phase's `onDone` pair. */
|
|
86
|
-
readonly terminals: {
|
|
87
|
-
readonly complete: string;
|
|
88
|
-
readonly tripped: string;
|
|
89
|
-
};
|
|
90
|
-
/** One chart per task id — the ask's `charts`. */
|
|
91
|
-
readonly charts: Readonly<Record<string, ImportedChart>>;
|
|
92
|
-
/**
|
|
93
|
-
* The document's `context` per task, minus the retry bookkeeping the fold
|
|
94
|
-
* owns. `maxRetries` is split out because it is a transition input, not a
|
|
95
|
-
* passenger — the guarded arm reads it.
|
|
96
|
-
*/
|
|
97
|
-
readonly context: Readonly<Record<string, {
|
|
98
|
-
readonly maxRetries: number;
|
|
99
|
-
readonly extras: Readonly<Record<string, unknown>>;
|
|
100
|
-
}>>;
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* THE ONE PLACE PROVENANCE ENTERS.
|
|
104
|
-
*
|
|
105
|
-
* `workflow.json` carries topology and nothing else: it says `queued --WIP-->
|
|
106
|
-
* build` and it does not say, and has never said, who sends a `WIP`. That fact
|
|
107
|
-
* lives in fabrika's CODE, not in fabrika's document — so it cannot be read
|
|
108
|
-
* here and it must not be guessed here.
|
|
109
|
-
*
|
|
110
|
-
* So the caller states it, ONCE, at the seam where their world meets ours, and
|
|
111
|
-
* everything downstream derives from that: the charts carry it, the report
|
|
112
|
-
* groups by it, the inspector reports it. One map, at the boundary the
|
|
113
|
-
* information actually crosses — not a default sprinkled through the readers,
|
|
114
|
-
* and not a table of fabrika's own event names baked in as a fallback, which
|
|
115
|
-
* would put us right back to owning a copy of someone else's vocabulary.
|
|
116
|
-
*
|
|
117
|
-
* ```ts
|
|
118
|
-
* chartFromWorkflow(document, {
|
|
119
|
-
* from: {
|
|
120
|
-
* WIP: { world: "the operator" },
|
|
121
|
-
* BLOCKED: { world: "the operator" },
|
|
122
|
-
* UNBLOCKED: { world: "a human" },
|
|
123
|
-
* DONE: "cmd",
|
|
124
|
-
* PASS: "cmd",
|
|
125
|
-
* FAIL: "cmd",
|
|
126
|
-
* },
|
|
127
|
-
* });
|
|
128
|
-
* ```
|
|
129
|
-
*
|
|
130
|
-
* Omit it and every reader degrades honestly — it says which events a state
|
|
131
|
-
* accepts and refuses to say who they come from.
|
|
132
|
-
*/
|
|
133
|
-
interface WorkflowImportOptions {
|
|
134
|
-
/**
|
|
135
|
-
* Event name → where its Msg comes from. Keyed by the BARE name, so one
|
|
136
|
-
* entry covers every task's namespaced spelling of it (`ISSUE.WIP`,
|
|
137
|
-
* `PARK_SWEEP.WIP`) — the namespace is presentation, the event is the event.
|
|
138
|
-
*
|
|
139
|
-
* A name with no entry is left undeclared rather than defaulted. "I do not
|
|
140
|
-
* know" and "the outside world" are different answers and only one of them
|
|
141
|
-
* is safe to invent.
|
|
142
|
-
*/
|
|
143
|
-
readonly from?: Readonly<Record<string, EventOrigin>>;
|
|
144
|
-
/**
|
|
145
|
-
* Refuse a `from` key that names no event THIS document routes.
|
|
146
|
-
*
|
|
147
|
-
* The silent drop it closes is real: `UNBLOKED: { world: "a human" }` imports
|
|
148
|
-
* clean, and every reader downstream then answers "the chart does not say"
|
|
149
|
-
* for the one event the caller had just taken the trouble to declare. The
|
|
150
|
-
* cross-check needs no list of ours — {@link eventAlphabet} derives the
|
|
151
|
-
* document's own alphabet, which is precisely what that function exists for
|
|
152
|
-
* and what nothing was calling.
|
|
153
|
-
*
|
|
154
|
-
* OPT-IN, because the map is legitimately WIDER than one document. A
|
|
155
|
-
* consumer's cast is a property of their world, not of one template, so one
|
|
156
|
-
* `from` covers every workflow they run — `src/chart/report/__fixtures__/
|
|
157
|
-
* origins.ts` states fabrika's six once and imports two templates with it,
|
|
158
|
-
* and the chore template routes neither `PASS` nor `FAIL`. Defaulting to
|
|
159
|
-
* strict would make sharing a cast an error, which is the wrong half of the
|
|
160
|
-
* trade. So the caller says which of the two they meant: pass this when the
|
|
161
|
-
* map was written FOR this document, and a typo in it stops compiling.
|
|
162
|
-
*/
|
|
163
|
-
readonly strictFrom?: true;
|
|
164
|
-
}
|
|
165
|
-
/**
|
|
166
|
-
* The document does not fit — with EVERY defect named, never a half-import.
|
|
167
|
-
*
|
|
168
|
-
* Same contract as fabrika's `Malformed`: a `workflow.json` that cannot be
|
|
169
|
-
* compiled comes back as a list of reasons rather than as a machine that works
|
|
170
|
-
* for some states. Thrown rather than returned because the chart module's other
|
|
171
|
-
* doors throw too (`initialStateOf`, `CellTargetError`) and an importer that
|
|
172
|
-
* returned a union would be the only one a caller could forget to check.
|
|
173
|
-
*/
|
|
174
|
-
declare class WorkflowImportError extends Error {
|
|
175
|
-
readonly defects: readonly string[];
|
|
176
|
-
readonly name = "WorkflowImportError";
|
|
177
|
-
readonly _tag: "WorkflowImportError";
|
|
178
|
-
constructor(defects: readonly string[]);
|
|
179
|
-
}
|
|
180
|
-
/**
|
|
181
|
-
* `workflow.json` → one chart per task, plus the phase topology around them.
|
|
182
|
-
*
|
|
183
|
-
* WHICH HALF GUARANTEES WHAT — this matters, and it is the whole reason the
|
|
184
|
-
* authored fixture (`src/chart/__fixtures__/lane.ts`) still exists beside this
|
|
185
|
-
* function rather than being deleted in its favour:
|
|
186
|
-
*
|
|
187
|
-
* THIS FUNCTION gives you FIDELITY. It reads bytes that only exist at
|
|
188
|
-
* runtime, so its result is `ImportedChart` — states, events and targets are
|
|
189
|
-
* `string`, and nothing about them is checked before the process starts. What
|
|
190
|
-
* it buys is that the drawing is of THE document the driver is actually
|
|
191
|
-
* folding, including a `workflow.json` this repo has never seen.
|
|
192
|
-
*
|
|
193
|
-
* THE AUTHORED FIXTURE gives you TYPES. `lane.ts` is the same machine written
|
|
194
|
-
* as a literal, so `StateName`, `ResumeTargets`, `Assigns` and the totality
|
|
195
|
-
* obligation are all real there, and `assert.test-d.ts` pins them. What it
|
|
196
|
-
* cannot do is follow a document it was not written against.
|
|
197
|
-
*
|
|
198
|
-
* Neither replaces the other. The golden test is the seam: it asserts this
|
|
199
|
-
* importer's edge set against what fabrika's own compiler produces for the same
|
|
200
|
-
* file, so the runtime-typed half stays honest about the literal-typed one.
|
|
201
|
-
*
|
|
202
|
-
* @param document the PARSED `workflow.json` — `JSON.parse`'s output, not text.
|
|
203
|
-
* @param options {@link WorkflowImportOptions} — the facts the document does
|
|
204
|
-
* not carry, stated once at the boundary they enter through.
|
|
205
|
-
* @throws {WorkflowImportError} with every defect named, never a half-import.
|
|
206
|
-
*/
|
|
207
|
-
declare function chartFromWorkflow(document: unknown, options?: WorkflowImportOptions): ImportedLane;
|
|
208
|
-
/** Parse and import in one step — for a caller holding the document's bytes. */
|
|
209
|
-
declare function chartFromWorkflowText(text: string, options?: WorkflowImportOptions): ImportedLane;
|
|
210
|
-
/** Every state in an imported chart, flattened out of its one phase group. */
|
|
211
|
-
declare function statesOf(chart: ImportedChart): ReadonlyMap<string, ImportedNode>;
|
|
212
|
-
/** The state marked `initial: true`. */
|
|
213
|
-
declare function initialOf(chart: ImportedChart): string;
|
|
214
|
-
/**
|
|
215
|
-
* Every event name this lane declares, in first-declaration order.
|
|
216
|
-
*
|
|
217
|
-
* THE ALPHABET, DERIVED — the answer a caller used to get from a constant in
|
|
218
|
-
* this file listing one consumer's six. It is a fact about the document, so it
|
|
219
|
-
* is read from the document: the bare names its states route, deduplicated
|
|
220
|
-
* across tasks and phases. A consumer that adds an event gets it here the
|
|
221
|
-
* commit it lands, without a release of ours.
|
|
222
|
-
*
|
|
223
|
-
* Use it to build the `from` map at the import boundary and know you covered
|
|
224
|
-
* every name, or to diff two revisions of a workflow for a vocabulary change.
|
|
225
|
-
*/
|
|
226
|
-
declare function eventAlphabet(lane: ImportedLane): readonly string[];
|
|
227
|
-
/**
|
|
228
|
-
* Where `event` comes from, or `undefined` when the chart does not say.
|
|
229
|
-
*
|
|
230
|
-
* The ONE read of provenance, so a reader that wants to group by origin and a
|
|
231
|
-
* reader that wants to label one event cannot disagree about what "undeclared"
|
|
232
|
-
* looks like.
|
|
233
|
-
*/
|
|
234
|
-
declare function originOf(chart: ImportedChart, event: string): EventOrigin | undefined;
|
|
235
|
-
/** `true` success, `"error"` tripped, `false` not a final — the ONE polarity read. */
|
|
236
|
-
declare function endPolarityOf(node: ImportedNode | undefined): true | "error" | false;
|
|
237
|
-
|
|
238
|
-
/**
|
|
239
|
-
* The edge a step DREW, keyed as {@link edgeKey} spells it.
|
|
240
|
-
*
|
|
241
|
-
* ONE DECLARATION SITE for the resume rule, and that is the whole reason it is
|
|
242
|
-
* a function rather than four lines inside {@link timeline}. A resume edge is
|
|
243
|
-
* DRAWN once, to its fallback, and WALKED to wherever `was` pointed — so
|
|
244
|
-
* recovering "which edge lit up" from the observed target lands on an edge the
|
|
245
|
-
* drawing does not have. Any reader that knows `from`/`event`/`to` and wants
|
|
246
|
-
* the drawn edge (a folded log's timeline; a live lane's recorded tape) asks
|
|
247
|
-
* here, so the two cannot disagree about which edge to thicken.
|
|
248
|
-
*/
|
|
249
|
-
declare function walkedEdgeKey(chart: ImportedChart, from: string, event: string, to: string): string;
|
|
250
|
-
/** One appended line of `events.jsonl`: which task, which event, when. */
|
|
251
|
-
interface LogEntry {
|
|
252
|
-
readonly task: string;
|
|
253
|
-
readonly event: string;
|
|
254
|
-
readonly at: string;
|
|
255
|
-
}
|
|
256
|
-
/** One task's folded state: the leaf, the retry budget, and the state it left. */
|
|
257
|
-
interface TaskState {
|
|
258
|
-
readonly type: string;
|
|
259
|
-
readonly retries: number;
|
|
260
|
-
readonly maxRetries: number;
|
|
261
|
-
readonly was?: string;
|
|
262
|
-
}
|
|
263
|
-
/**
|
|
264
|
-
* The derived answer `lane status` prints — reproduced here field for field,
|
|
265
|
-
* because a report that computed its own vocabulary would contradict the driver
|
|
266
|
-
* the moment the two disagreed.
|
|
267
|
-
*/
|
|
268
|
-
interface LaneStatus {
|
|
269
|
-
readonly stateValue: string | Readonly<Record<string, Readonly<Record<string, string>> | string>>;
|
|
270
|
-
readonly status: "active" | "done";
|
|
271
|
-
readonly context: Readonly<Record<string, unknown>>;
|
|
272
|
-
}
|
|
273
|
-
/** The log does not replay against this workflow — with the reason named. */
|
|
274
|
-
declare class UnreplayableLogError extends Error {
|
|
275
|
-
readonly defects: readonly string[];
|
|
276
|
-
readonly name = "UnreplayableLogError";
|
|
277
|
-
readonly _tag: "UnreplayableLogError";
|
|
278
|
-
constructor(defects: readonly string[]);
|
|
279
|
-
}
|
|
280
|
-
/**
|
|
281
|
-
* Parse `events.jsonl`. A line that does not parse is a DEFECT, never a
|
|
282
|
-
* silently skipped event — a report built on a log it half-read is worse than
|
|
283
|
-
* no report.
|
|
284
|
-
*/
|
|
285
|
-
declare function parseEventsJsonl(text: string): readonly LogEntry[];
|
|
286
|
-
/** `lane history`'s stdout — a JSON array of the same entries, verbatim. */
|
|
287
|
-
declare function parseHistoryJson(text: string): readonly LogEntry[];
|
|
288
|
-
/** The initial state of every task — the fold's zero. */
|
|
289
|
-
declare function initialStates(lane: ImportedLane): Readonly<Record<string, TaskState>>;
|
|
290
|
-
/**
|
|
291
|
-
* ONE event applied to ONE task. The three edge forms, and the two ways there
|
|
292
|
-
* can be no edge.
|
|
293
|
-
*
|
|
294
|
-
* THERE ARE THREE ANSWERS, NOT TWO, and this used to give two. tea's runtime
|
|
295
|
-
* has always distinguished a REFUSAL — an event the state accepts and drops,
|
|
296
|
-
* because its `ignore` names the event or the event is broadcast to some other
|
|
297
|
-
* phase — from a pair it cannot replay, which is the only one that throws. The
|
|
298
|
-
* lowered chart could not carry the first, so a log the runtime had happily
|
|
299
|
-
* accepted came back `UnreplayableLogError` here: a run and a report of that
|
|
300
|
-
* run disagreeing about what the machine did. The refusal set now rides on the
|
|
301
|
-
* chart (`ImportedChart.refusals`, written by `lowerRegion` and by nothing
|
|
302
|
-
* else), so both sides refuse the same pairs by construction.
|
|
303
|
-
*
|
|
304
|
-
* `taskId` is for the DIAGNOSTIC only. `stepTask` folds one region and has
|
|
305
|
-
* never needed to know which; a reader staring at `state "queued" holds no cell
|
|
306
|
-
* for "DONE"` on a twelve-task lane needs to know very much, and the callers
|
|
307
|
-
* have it.
|
|
308
|
-
*/
|
|
309
|
-
declare function stepTask(chart: ImportedChart, state: TaskState, event: string, taskId?: string): TaskState;
|
|
310
|
-
/**
|
|
311
|
-
* Fold the whole log into per-task leaf states.
|
|
312
|
-
*
|
|
313
|
-
* PURE OVER A PREFIX: tasks are independent regions, so the global log
|
|
314
|
-
* partitions cleanly and each task folds through its own chart. `foldLane(lane,
|
|
315
|
-
* entries.slice(0, k))` is therefore the exact state after k events, for every
|
|
316
|
-
* k — which is what {@link timeline} spends.
|
|
317
|
-
*/
|
|
318
|
-
declare function foldLane(lane: ImportedLane, entries: readonly LogEntry[]): Readonly<Record<string, TaskState>>;
|
|
319
|
-
/** One row of the timeline: the entry, plus the `from → to` nobody stored. */
|
|
320
|
-
interface TimelineStep {
|
|
321
|
-
readonly index: number;
|
|
322
|
-
readonly at: string;
|
|
323
|
-
readonly task: string;
|
|
324
|
-
/** The event VERBATIM, namespace and all — the log's own spelling. */
|
|
325
|
-
readonly event: string;
|
|
326
|
-
readonly from: string;
|
|
327
|
-
readonly to: string;
|
|
328
|
-
/**
|
|
329
|
-
* The DECLARED edge this step fired, as {@link edgeKey} spells it.
|
|
330
|
-
*
|
|
331
|
-
* Not derivable from `from`/`event`/`to`, and that is the whole reason it is
|
|
332
|
-
* carried: a resume edge is DRAWN once, to its fallback, and WALKED to
|
|
333
|
-
* wherever `was` pointed. Recovering "which edge lit up" from the observed
|
|
334
|
-
* target would land on an edge the drawing does not have — so the step
|
|
335
|
-
* records the edge it took while it still knows.
|
|
336
|
-
*/
|
|
337
|
-
readonly edge: string;
|
|
338
|
-
}
|
|
339
|
-
/**
|
|
340
|
-
* The log with `from → to` recomputed per step.
|
|
341
|
-
*
|
|
342
|
-
* A single left-to-right pass, which is EXACTLY the prefix fold and not an
|
|
343
|
-
* approximation of it: `foldLane` is a left fold over the same entries in the
|
|
344
|
-
* same order, so the state carried into step k here is the state
|
|
345
|
-
* `foldLane(lane, entries.slice(0, k))` returns. `fold.test.ts` asserts that
|
|
346
|
-
* equality rather than asking you to take it on trust — the cheap form and the
|
|
347
|
-
* definitional form, pinned to each other.
|
|
348
|
-
*/
|
|
349
|
-
declare function timeline(lane: ImportedLane, entries: readonly LogEntry[]): readonly TimelineStep[];
|
|
350
|
-
/**
|
|
351
|
-
* Where one phase stands. The four are exhaustive over a phase in a lane whose
|
|
352
|
-
* log has been folded, and they are POSITIONAL rather than local: a phase whose
|
|
353
|
-
* tasks all happen to be final is `"waiting"` if an earlier phase stopped the
|
|
354
|
-
* lane before it could have run.
|
|
355
|
-
*/
|
|
356
|
-
type PhaseStanding = "complete" | "tripped" | "active" | "waiting";
|
|
357
|
-
/** One phase, and where it stands after the fold. */
|
|
358
|
-
interface PhaseStand {
|
|
359
|
-
readonly name: string;
|
|
360
|
-
/** Its position in the sequence — the phase order, as a number. */
|
|
361
|
-
readonly index: number;
|
|
362
|
-
readonly tasks: readonly string[];
|
|
363
|
-
readonly standing: PhaseStanding;
|
|
364
|
-
/** The tasks in this phase that landed on an ERROR final. */
|
|
365
|
-
readonly tripped: readonly string[];
|
|
366
|
-
}
|
|
367
|
-
/**
|
|
368
|
-
* The ONE thing the phase walk reads off a task: which state it is standing in.
|
|
369
|
-
*
|
|
370
|
-
* {@link TaskState} satisfies it, and so does a RUNNING region's own
|
|
371
|
-
* `StateOf<chart>` — which is the whole reason the parameter is spelled this
|
|
372
|
-
* loosely. The fold and the runtime carry different per-task values (the fold's
|
|
373
|
-
* carries `retries`, a region's carries its `ctx`), and the advancement rule
|
|
374
|
-
* reads neither: it reads `type`, looks the node up in the chart, and asks its
|
|
375
|
-
* `end` polarity. Widening the parameter to what the rule ACTUALLY reads is what
|
|
376
|
-
* lets {@link phaseStandings} be called by both without a second copy of it.
|
|
377
|
-
*/
|
|
378
|
-
type LeafStates = Readonly<Record<string, {
|
|
379
|
-
readonly type: string;
|
|
380
|
-
}>>;
|
|
381
|
-
/** Every task at an error final — the `errors` list, one declaration site. */
|
|
382
|
-
declare function trippedTasks(lane: ImportedLane, states: LeafStates): readonly string[];
|
|
383
|
-
/**
|
|
384
|
-
* THE PHASE WALK — the one loop that decides which phase is running, which are
|
|
385
|
-
* behind it, and which never got to start.
|
|
386
|
-
*
|
|
387
|
-
* It is fabrika's `deriveStatus` loop, factored out rather than copied: walk
|
|
388
|
-
* phases in order, the first whose tasks are not ALL final is the active one
|
|
389
|
-
* and the walk stops; a phase that IS all final but holds an error final trips
|
|
390
|
-
* the lane and the walk stops there instead; everything after a stop is
|
|
391
|
-
* `"waiting"`, whatever its tasks happen to read.
|
|
392
|
-
*
|
|
393
|
-
* That last clause is the whole reason this is positional. `foldLane` boots
|
|
394
|
-
* every task of every phase, so a later phase's region can sit in a final
|
|
395
|
-
* before its phase ever ran — a child the board abandoned boots straight into
|
|
396
|
-
* an error final, which is exactly the case fabrika's emitter produces. Read
|
|
397
|
-
* locally, that phase looks "tripped". Read in sequence, it is a phase that
|
|
398
|
-
* never started, and the lane tripped somewhere else.
|
|
399
|
-
*
|
|
400
|
-
* {@link deriveLaneStatus} and the report both read this, so the compound state
|
|
401
|
-
* value and the phase headings cannot disagree about what is running.
|
|
402
|
-
*/
|
|
403
|
-
declare function phaseStandings(lane: ImportedLane, states: LeafStates): readonly PhaseStand[];
|
|
404
|
-
/**
|
|
405
|
-
* THE ADVANCEMENT RULE — has the lane left the phases, and by which door?
|
|
406
|
-
*
|
|
407
|
-
* `undefined` means "still running": some phase is active, so the lane is
|
|
408
|
-
* sitting in it. A terminal name means the walk ran out of phases — every phase
|
|
409
|
-
* completed (`onDone` chained all the way past the last one, which is what the
|
|
410
|
-
* `complete` terminal IS), or one of them completed holding a region at an
|
|
411
|
-
* `end: "error"` final, which trips the lane wherever it had got to.
|
|
412
|
-
*
|
|
413
|
-
* Three lines, and they are pulled out here rather than inlined below because
|
|
414
|
-
* this is the rule the RUNTIME advances by (`runLane`, in `../lane/run`). The
|
|
415
|
-
* runtime does not re-derive it and does not agree with it by inspection: it
|
|
416
|
-
* calls {@link phaseStandings} over its own region states and then this, so
|
|
417
|
-
* "the machine advanced" and "the fold says it advanced" are the same sentence
|
|
418
|
-
* evaluated twice, not two sentences kept in sync.
|
|
419
|
-
*/
|
|
420
|
-
declare function laneTerminalReached(stands: readonly PhaseStand[], terminals: ImportedLane["terminals"]): string | undefined;
|
|
421
|
-
/**
|
|
422
|
-
* The whole "compound machine", as a pure derivation.
|
|
423
|
-
*
|
|
424
|
-
* The active phase is the first whose tasks are not all final; a COMPLETED
|
|
425
|
-
* phase holding a task in an error final trips the workflow. That is fabrika's
|
|
426
|
-
* `noErrors` gate — never a machine event, and here it reads the chart's
|
|
427
|
-
* `end: "error"` polarity, which is the same fact the document's guarded
|
|
428
|
-
* fallthrough declared. The walk itself is {@link phaseStandings}, so the
|
|
429
|
-
* status and the drawing are one derivation seen twice.
|
|
430
|
-
*/
|
|
431
|
-
declare function deriveLaneStatus(lane: ImportedLane, states: Readonly<Record<string, TaskState>>): LaneStatus;
|
|
432
|
-
/** `lane status`'s stdout, parsed back into the shape it was printed from. */
|
|
433
|
-
declare function parseStatusJson(text: string): LaneStatus;
|
|
434
|
-
|
|
435
|
-
export { timeline as A, trippedTasks as B, walkedEdgeKey as C, type ImportedLane as I, type LogEntry as L, type PhaseStanding as P, type TaskState as T, UnreplayableLogError as U, type WorkflowImportOptions as W, type ImportedChart as a, type LaneStatus as b, type ImportedEdge as c, type ImportedNode as d, type ImportedPhase as e, type LeafStates as f, type PhaseStand as g, type TimelineStep as h, WorkflowImportError as i, bareEvent as j, chartFromWorkflow as k, chartFromWorkflowText as l, deriveLaneStatus as m, endPolarityOf as n, eventAlphabet as o, foldLane as p, initialOf as q, initialStates as r, laneTerminalReached as s, originOf as t, parseEventsJsonl as u, parseHistoryJson as v, parseStatusJson as w, phaseStandings as x, statesOf as y, stepTask as z };
|