@rotorsoft/act 1.31.12 → 1.31.14
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/dist/.tsbuildinfo +1 -1
- package/dist/@types/act.d.ts +5 -2
- package/dist/@types/act.d.ts.map +1 -1
- package/dist/@types/internal/circuit-breaker.d.ts +7 -0
- package/dist/@types/internal/circuit-breaker.d.ts.map +1 -1
- package/dist/@types/internal/correlate-cycle.d.ts +20 -3
- package/dist/@types/internal/correlate-cycle.d.ts.map +1 -1
- package/dist/@types/internal/drain-cycle.d.ts +3 -1
- package/dist/@types/internal/drain-cycle.d.ts.map +1 -1
- package/dist/index.cjs +49 -17
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +49 -17
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/@types/act.d.ts
CHANGED
|
@@ -105,8 +105,11 @@ export type ActLifecycleEvents<_TSchemaReg extends SchemaRegister<TActions>, TEv
|
|
|
105
105
|
/**
|
|
106
106
|
* Options for {@link Act} construction (passed via {@link ActBuilder.build}).
|
|
107
107
|
*
|
|
108
|
-
* @property maxSubscribedStreams - Cap for the LRU
|
|
109
|
-
*
|
|
108
|
+
* @property maxSubscribedStreams - Cap for the LRU tracking what each
|
|
109
|
+
* dynamically resolved reaction target was last subscribed at. Statically
|
|
110
|
+
* declared targets are held outside it and never evicted, so their lane
|
|
111
|
+
* and priority stay owned by the build-time subscribe (#1582).
|
|
112
|
+
* Default: {@link DEFAULT_MAX_SUBSCRIBED_STREAMS}.
|
|
110
113
|
* @property settleDebounceMs - Debounce window (ms) used by `settle()` when
|
|
111
114
|
* the caller doesn't pass `SettleOptions.debounceMs`. Tune this once per
|
|
112
115
|
* Act instance instead of threading the value through every call site.
|
package/dist/@types/act.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"act.d.ts","sourceRoot":"","sources":["../../src/act.ts"],"names":[],"mappings":"AAWA,OAAO,EAOL,KAAK,qBAAqB,EAC1B,KAAK,YAAY,EAYjB,KAAK,OAAO,EAUb,MAAM,qBAAqB,CAAC;AAQ7B,YAAY,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAE/E,OAAO,EAAc,KAAK,MAAM,EAA0B,MAAM,YAAY,CAAC;AAC7E,OAAO,KAAK,EACV,KAAK,EACL,IAAI,EACJ,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,EACX,SAAS,EACT,UAAU,EACV,SAAS,EACT,KAAK,EACL,YAAY,EACZ,SAAS,EACT,WAAW,EACX,IAAI,EACJ,UAAU,EACV,KAAK,EACL,UAAU,EAEV,KAAK,EACL,QAAQ,EACR,WAAW,EACX,UAAU,EACV,MAAM,EACN,cAAc,EACd,OAAO,EACP,aAAa,EACb,eAAe,EACf,QAAQ,EACR,KAAK,EAEL,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,MAAM,EACP,MAAM,kBAAkB,CAAC;AAE1B;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,OAAO,CAAC;AAenD;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAO7C,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,+BAA+B,EAC/B,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAE7B;;;;;;;;;GASG;AACH,MAAM,MAAM,kBAAkB,CAC5B,WAAW,SAAS,cAAc,CAAC,QAAQ,CAAC,EAC5C,OAAO,SAAS,OAAO,EACvB,QAAQ,SAAS,OAAO,IACtB;IACF,SAAS,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACvC,KAAK,EAAE,KAAK,EAAE,CAAC;IACf,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACxB,MAAM,EAAE,WAAW,CAAC;IACpB;;;;;;;;;;;;OAYG;IACH,QAAQ,EAAE,iBAAiB,CAAC;IAC5B;;;;;;;;;;OAUG;IACH,SAAS,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,IAAI,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D;;;;;;;;OAQG;IACH,KAAK,EAAE;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,YAAY,CAAA;KAAE,CAAC;CAClD,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"act.d.ts","sourceRoot":"","sources":["../../src/act.ts"],"names":[],"mappings":"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"}
|
|
@@ -42,6 +42,13 @@ export declare class CircuitBreaker {
|
|
|
42
42
|
private readonly _cooldown_ms;
|
|
43
43
|
private readonly _hooks;
|
|
44
44
|
constructor(config: CircuitBreakerConfig, hooks?: CircuitBreakerHooks);
|
|
45
|
+
/**
|
|
46
|
+
* True when the store has failed at least once since the last pass that
|
|
47
|
+
* went all the way through. The breaker can still read "closed" here: it
|
|
48
|
+
* only opens after several failures in a row, so this catches the first
|
|
49
|
+
* one, which `state()` cannot.
|
|
50
|
+
*/
|
|
51
|
+
get failing(): boolean;
|
|
45
52
|
/** Current state given the wall-clock `now`. */
|
|
46
53
|
state(now: number): CircuitState;
|
|
47
54
|
/** A store op passed — reset to closed and cancel any pending retry. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circuit-breaker.d.ts","sourceRoot":"","sources":["../../../src/internal/circuit-breaker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD,6BAA6B;AAC7B,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAM3D;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,+EAA+E;IAC/E,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IACpE;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CAChC,CAAC;AAEF,qBAAa,cAAc;IACzB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,KAAK,CAA4C;IACzD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAE7C,YAAY,MAAM,EAAE,oBAAoB,EAAE,KAAK,GAAE,mBAAwB,EAIxE;IAED,gDAAgD;IAChD,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAG/B;IAED,wEAAwE;IACxE,MAAM,IAAI,IAAI,CAIb;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,YAAY,CAKjD;IAED,oEAAoE;IACpE,IAAI,IAAI,IAAI,CAEX;IAED;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,WAAW;IAOnB,6DAA6D;IAC7D,OAAO,CAAC,QAAQ;CAcjB"}
|
|
1
|
+
{"version":3,"file":"circuit-breaker.d.ts","sourceRoot":"","sources":["../../../src/internal/circuit-breaker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD,6BAA6B;AAC7B,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAM3D;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,+EAA+E;IAC/E,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IACpE;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CAChC,CAAC;AAEF,qBAAa,cAAc;IACzB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,KAAK,CAA4C;IACzD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAE7C,YAAY,MAAM,EAAE,oBAAoB,EAAE,KAAK,GAAE,mBAAwB,EAIxE;IAED;;;;;OAKG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,gDAAgD;IAChD,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAG/B;IAED,wEAAwE;IACxE,MAAM,IAAI,IAAI,CAIb;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,YAAY,CAKjD;IAED,oEAAoE;IACpE,IAAI,IAAI,IAAI,CAEX;IAED;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,WAAW;IAOnB,6DAA6D;IAC7D,OAAO,CAAC,QAAQ;CAcjB"}
|
|
@@ -111,7 +111,23 @@ export declare class CorrelateCycle<TSchemaReg extends SchemaRegister<TActions>,
|
|
|
111
111
|
/** In-flight init, memoized for single-flight and cleared on failure. */
|
|
112
112
|
private _init_promise;
|
|
113
113
|
private _timer;
|
|
114
|
-
private readonly
|
|
114
|
+
private readonly _dynamic_subscriptions;
|
|
115
|
+
/**
|
|
116
|
+
* What each static target was subscribed at by `init`. A plain map, never
|
|
117
|
+
* evicted: the collection is the build-time `_static_targets` list, so it
|
|
118
|
+
* is already bounded by the registry and costs nothing the registry does
|
|
119
|
+
* not already hold.
|
|
120
|
+
*
|
|
121
|
+
* Keeping these out of the LRU is what makes the `+Infinity` floor an
|
|
122
|
+
* invariant rather than a race (#1582). Sharing the bounded map meant a
|
|
123
|
+
* churn of dynamic targets could evict a static record, and the next
|
|
124
|
+
* dynamic resolution to that target found no record, took the
|
|
125
|
+
* first-discovery branch, and re-subscribed the target with its own
|
|
126
|
+
* priority and lane — silently re-laning a stream whose lane the
|
|
127
|
+
* build-time subscribe owns, and starving it wherever `onlyLanes` had
|
|
128
|
+
* provisioned a worker for the declared lane.
|
|
129
|
+
*/
|
|
130
|
+
private readonly _static_subscriptions;
|
|
115
131
|
/** Compiled pattern sources, bounded by {@link PATTERN_CACHE_SIZE}. */
|
|
116
132
|
private readonly _patterns;
|
|
117
133
|
private readonly _registry;
|
|
@@ -182,8 +198,9 @@ export declare class CorrelateCycle<TSchemaReg extends SchemaRegister<TActions>,
|
|
|
182
198
|
* the documented per-aggregate shape `.to(e => ({target: e.stream}))`
|
|
183
199
|
* makes those two namespaces collide by construction (#1398).
|
|
184
200
|
*
|
|
185
|
-
* Static targets are left alone:
|
|
186
|
-
*
|
|
201
|
+
* Static targets are left alone: their record lives in
|
|
202
|
+
* `_static_subscriptions`, which this never touches, so they stay pinned
|
|
203
|
+
* at +Infinity and the dynamic path never re-opens them.
|
|
187
204
|
*/
|
|
188
205
|
forget_subscribed(streams: Iterable<string>): void;
|
|
189
206
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"correlate-cycle.d.ts","sourceRoot":"","sources":["../../../src/internal/correlate-cycle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAEV,KAAK,EACL,QAAQ,EACR,cAAc,EACd,OAAO,EAER,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"correlate-cycle.d.ts","sourceRoot":"","sources":["../../../src/internal/correlate-cycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -113,7 +113,9 @@ export type DrainCycle<TEvents extends Schemas> = {
|
|
|
113
113
|
*
|
|
114
114
|
* @internal
|
|
115
115
|
*/
|
|
116
|
-
export declare function run_drain_cycle<TEvents extends Schemas, TActions extends Schemas, TSchemaReg extends SchemaRegister<TActions>>(ops: DrainOps<TEvents>, registry: Registry<TSchemaReg, TEvents, TActions>, batch_handlers: Map<string, BatchHandler<TEvents>>, misrouted: Set<string>,
|
|
116
|
+
export declare function run_drain_cycle<TEvents extends Schemas, TActions extends Schemas, TSchemaReg extends SchemaRegister<TActions>>(ops: DrainOps<TEvents>, registry: Registry<TSchemaReg, TEvents, TActions>, batch_handlers: Map<string, BatchHandler<TEvents>>, misrouted: Set<string>,
|
|
117
|
+
/** The store failed on the previous pass — see {@link budget_exhausted}. */
|
|
118
|
+
store_failing: boolean, handle: Handle<TEvents>, handle_batch: HandleBatch<TEvents>, lagging: number, leading: number, eventLimit: number, leaseMillis: number,
|
|
117
119
|
/**
|
|
118
120
|
* Emitted as soon as `block` confirms, BEFORE the `ack` that follows.
|
|
119
121
|
* A block is terminal: every adapter gates `block` on `blocked = false`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drain-cycle.d.ts","sourceRoot":"","sources":["../../../src/internal/drain-cycle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,KAAK,EACL,YAAY,EACZ,KAAK,EACL,KAAK,EACL,MAAM,EACN,eAAe,EACf,QAAQ,EACR,cAAc,EACd,OAAO,EACR,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAK3C;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC;IAClC,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;;OAMG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;OAUG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,MAAM,MAAM,CAAC,OAAO,SAAS,OAAO,IAAI,CAC5C,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,KACjC,OAAO,CAAC,YAAY,CAAC,CAAC;AAE3B;;;GAGG;AACH,MAAM,MAAM,WAAW,CAAC,OAAO,SAAS,OAAO,IAAI,CACjD,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,EACpC,YAAY,EAAE,YAAY,CAAC,OAAO,CAAC,KAChC,OAAO,CAAC,YAAY,CAAC,CAAC;AAE3B;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,CAAC,OAAO,SAAS,OAAO,IAAI;IAChD,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;IACjC,kFAAkF;IAClF,QAAQ,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC;CACnC,CAAC;
|
|
1
|
+
{"version":3,"file":"drain-cycle.d.ts","sourceRoot":"","sources":["../../../src/internal/drain-cycle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,KAAK,EACL,YAAY,EACZ,KAAK,EACL,KAAK,EACL,MAAM,EACN,eAAe,EACf,QAAQ,EACR,cAAc,EACd,OAAO,EACR,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAK3C;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC;IAClC,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;;OAMG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;OAUG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,MAAM,MAAM,CAAC,OAAO,SAAS,OAAO,IAAI,CAC5C,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,KACjC,OAAO,CAAC,YAAY,CAAC,CAAC;AAE3B;;;GAGG;AACH,MAAM,MAAM,WAAW,CAAC,OAAO,SAAS,OAAO,IAAI,CACjD,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,EACpC,YAAY,EAAE,YAAY,CAAC,OAAO,CAAC,KAChC,OAAO,CAAC,YAAY,CAAC,CAAC;AAE3B;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,CAAC,OAAO,SAAS,OAAO,IAAI;IAChD,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;IACjC,kFAAkF;IAClF,QAAQ,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC;CACnC,CAAC;AA6EF;;;;;;;;;;;;GAYG;AACH,wBAAsB,eAAe,CACnC,OAAO,SAAS,OAAO,EACvB,QAAQ,SAAS,OAAO,EACxB,UAAU,SAAS,cAAc,CAAC,QAAQ,CAAC,EAE3C,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,EACtB,QAAQ,EAAE,QAAQ,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,EACjD,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,EAClD,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC;AACtB,4EAA4E;AAC5E,aAAa,EAAE,OAAO,EACtB,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,EACvB,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC,EAClC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM;AACnB;;;;;;GAMG;AACH,UAAU,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,IAAI,EAC7C,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,CAiL1C;AAgBD;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,CAC7B,OAAO,SAAS,OAAO,EACvB,QAAQ,SAAS,OAAO,EACxB,UAAU,SAAS,cAAc,CAAC,QAAQ,CAAC,IACzC;IACF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC3D,QAAQ,CAAC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5D,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC5C,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,IAAI,CAAC;IAC5C,QAAQ,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,IAAI,CAAC;IACvD;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7D,2FAA2F;IAC3F,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,+EAA+E;IAC/E,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAClB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;KAC/B,CAAC;CACH,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,qBAAa,eAAe,CAC1B,OAAO,SAAS,OAAO,EACvB,QAAQ,SAAS,OAAO,EACxB,UAAU,SAAS,cAAc,CAAC,QAAQ,CAAC;IAE3C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAO;IACrB;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAEpB;IACH,kFAAkF;IAClF,OAAO,CAAC,OAAO,CAA4C;IAC3D;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAChD,OAAO,CAAC,QAAQ,CAAS;IACzB;;;;;;;OAOG;IACH,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,cAAc,CAA2B;IAEjD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAqD;IAE3E,YAAY,IAAI,EAAE,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,EAEnE;IAED;;;;OAIG;IACH,GAAG,IAAI,IAAI,CAEV;IAED;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAG3C;IAED,mEAAmE;IACnE,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED;;;;;OAKG;IACH,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAExC;IAED;;;;;OAKG;IACH,IAAI,YAAY,IAAI,MAAM,GAAG,SAAS,CAErC;IAED,yEAAyE;IACzE,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAE7B;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAiB3B;IAED,4CAA4C;IAC5C,IAAI,IAAI,IAAI,CASX;IAED,4EAA4E;IACtE,KAAK,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAkI/D;CACF"}
|
package/dist/index.cjs
CHANGED
|
@@ -2547,6 +2547,15 @@ var CircuitBreaker = class {
|
|
|
2547
2547
|
this._cooldown_ms = config2.cooldownMs;
|
|
2548
2548
|
this._hooks = hooks;
|
|
2549
2549
|
}
|
|
2550
|
+
/**
|
|
2551
|
+
* True when the store has failed at least once since the last pass that
|
|
2552
|
+
* went all the way through. The breaker can still read "closed" here: it
|
|
2553
|
+
* only opens after several failures in a row, so this catches the first
|
|
2554
|
+
* one, which `state()` cannot.
|
|
2555
|
+
*/
|
|
2556
|
+
get failing() {
|
|
2557
|
+
return this._failures > 0;
|
|
2558
|
+
}
|
|
2550
2559
|
/** Current state given the wall-clock `now`. */
|
|
2551
2560
|
state(now) {
|
|
2552
2561
|
if (this._opened_at === void 0) return "closed";
|
|
@@ -3111,13 +3120,33 @@ var CorrelateCycle = class {
|
|
|
3111
3120
|
/** In-flight init, memoized for single-flight and cleared on failure. */
|
|
3112
3121
|
_init_promise;
|
|
3113
3122
|
_timer = void 0;
|
|
3114
|
-
//
|
|
3123
|
+
// Dynamically discovered targets → what each was last subscribed at,
|
|
3124
|
+
// bounded by `maxSubscribedStreams`. The static half lives in
|
|
3125
|
+
// `_static_subscriptions` below, which is deliberately not evictable.
|
|
3126
|
+
//
|
|
3127
|
+
// Every scan re-subscribes the
|
|
3115
3128
|
// targets it resolved (that is how the work mark lands), so this no longer
|
|
3116
3129
|
// decides *whether* a target is sent — it decides *what* is sent with it:
|
|
3117
3130
|
// a resolution raises priority/lane only when it beats the recorded floor,
|
|
3118
3131
|
// and otherwise re-sends the row's own values so the mark changes nothing
|
|
3119
3132
|
// else. See {@link Subscription}.
|
|
3120
|
-
|
|
3133
|
+
_dynamic_subscriptions;
|
|
3134
|
+
/**
|
|
3135
|
+
* What each static target was subscribed at by `init`. A plain map, never
|
|
3136
|
+
* evicted: the collection is the build-time `_static_targets` list, so it
|
|
3137
|
+
* is already bounded by the registry and costs nothing the registry does
|
|
3138
|
+
* not already hold.
|
|
3139
|
+
*
|
|
3140
|
+
* Keeping these out of the LRU is what makes the `+Infinity` floor an
|
|
3141
|
+
* invariant rather than a race (#1582). Sharing the bounded map meant a
|
|
3142
|
+
* churn of dynamic targets could evict a static record, and the next
|
|
3143
|
+
* dynamic resolution to that target found no record, took the
|
|
3144
|
+
* first-discovery branch, and re-subscribed the target with its own
|
|
3145
|
+
* priority and lane — silently re-laning a stream whose lane the
|
|
3146
|
+
* build-time subscribe owns, and starving it wherever `onlyLanes` had
|
|
3147
|
+
* provisioned a worker for the declared lane.
|
|
3148
|
+
*/
|
|
3149
|
+
_static_subscriptions = /* @__PURE__ */ new Map();
|
|
3121
3150
|
/** Compiled pattern sources, bounded by {@link PATTERN_CACHE_SIZE}. */
|
|
3122
3151
|
_patterns = new LruMap(PATTERN_CACHE_SIZE);
|
|
3123
3152
|
_registry;
|
|
@@ -3170,7 +3199,7 @@ var CorrelateCycle = class {
|
|
|
3170
3199
|
}) {
|
|
3171
3200
|
this._lease_millis = lease_millis;
|
|
3172
3201
|
this._key = registry_key(registry.events);
|
|
3173
|
-
this.
|
|
3202
|
+
this._dynamic_subscriptions = new LruMap(max_subscribed_streams);
|
|
3174
3203
|
this._registry = registry;
|
|
3175
3204
|
this._declared_lanes = declared_lanes;
|
|
3176
3205
|
this._static_targets = static_targets;
|
|
@@ -3220,7 +3249,7 @@ var CorrelateCycle = class {
|
|
|
3220
3249
|
this._checkpoint = correlated_at >= 0 ? correlated_at : Math.max(-1, watermark - this._cold_start_back_scan);
|
|
3221
3250
|
this._on_init?.();
|
|
3222
3251
|
for (const { stream, priority = 0, lane } of this._static_targets) {
|
|
3223
|
-
this.
|
|
3252
|
+
this._static_subscriptions.set(stream, {
|
|
3224
3253
|
floor: Number.POSITIVE_INFINITY,
|
|
3225
3254
|
priority,
|
|
3226
3255
|
lane
|
|
@@ -3239,14 +3268,12 @@ var CorrelateCycle = class {
|
|
|
3239
3268
|
* the documented per-aggregate shape `.to(e => ({target: e.stream}))`
|
|
3240
3269
|
* makes those two namespaces collide by construction (#1398).
|
|
3241
3270
|
*
|
|
3242
|
-
* Static targets are left alone:
|
|
3243
|
-
*
|
|
3271
|
+
* Static targets are left alone: their record lives in
|
|
3272
|
+
* `_static_subscriptions`, which this never touches, so they stay pinned
|
|
3273
|
+
* at +Infinity and the dynamic path never re-opens them.
|
|
3244
3274
|
*/
|
|
3245
3275
|
forget_subscribed(streams) {
|
|
3246
|
-
const
|
|
3247
|
-
for (const stream of streams) {
|
|
3248
|
-
if (!statics.has(stream)) this._subscribed.delete(stream);
|
|
3249
|
-
}
|
|
3276
|
+
for (const stream of streams) this._dynamic_subscriptions.delete(stream);
|
|
3250
3277
|
}
|
|
3251
3278
|
/**
|
|
3252
3279
|
* Would an event from `stream` be fetched for a target subscribed with
|
|
@@ -3322,7 +3349,7 @@ var CorrelateCycle = class {
|
|
|
3322
3349
|
);
|
|
3323
3350
|
lane = void 0;
|
|
3324
3351
|
}
|
|
3325
|
-
const recorded = this.
|
|
3352
|
+
const recorded = this._static_subscriptions.get(resolved.target) ?? this._dynamic_subscriptions.get(resolved.target);
|
|
3326
3353
|
const priority = resolved.priority ?? 0;
|
|
3327
3354
|
const upgraded = !recorded || priority > recorded.floor;
|
|
3328
3355
|
const carried = upgraded ? { priority, lane } : { priority: recorded.priority, lane: recorded.lane };
|
|
@@ -3381,7 +3408,7 @@ var CorrelateCycle = class {
|
|
|
3381
3408
|
this._checkpoint = last_id;
|
|
3382
3409
|
for (const { stream, priority, lane } of streams) {
|
|
3383
3410
|
if (correlated.get(stream)?.upgraded)
|
|
3384
|
-
this.
|
|
3411
|
+
this._dynamic_subscriptions.set(stream, {
|
|
3385
3412
|
floor: priority,
|
|
3386
3413
|
priority,
|
|
3387
3414
|
lane
|
|
@@ -4236,10 +4263,10 @@ function trace_cycle(logger, leased, fetched, handled, acked, blocked) {
|
|
|
4236
4263
|
}
|
|
4237
4264
|
|
|
4238
4265
|
// src/internal/drain-cycle.ts
|
|
4239
|
-
function budget_exhausted(lease, options) {
|
|
4240
|
-
if (!options?.blockOnError || lease.retry <= options.maxRetries)
|
|
4266
|
+
function budget_exhausted(lease, options, store_failing) {
|
|
4267
|
+
if (store_failing || !options?.blockOnError || lease.retry <= options.maxRetries)
|
|
4241
4268
|
return void 0;
|
|
4242
|
-
const error = `Blocking ${lease.stream} after ${lease.retry} claims with no acknowledged progress \u2014 the
|
|
4269
|
+
const error = `Blocking ${lease.stream} after ${lease.retry} claims with no acknowledged progress \u2014 the retry budget (${options.maxRetries}) was spent without the handler ever reporting an error. That means every attempt lost its lease before it could ack: raise leaseMillis for this handler, then unblock the stream.`;
|
|
4243
4270
|
log().error(error);
|
|
4244
4271
|
return { lease, handled: 0, acked_at: lease.at, error, block: true };
|
|
4245
4272
|
}
|
|
@@ -4250,7 +4277,7 @@ function warn_misrouted(seen, stream, handler, event) {
|
|
|
4250
4277
|
`Reaction "${handler}" on "${event}" resolved to target "${stream}", which a projection already serves. A target is served by one batch handler or one state projection, so this reaction can never run \u2014 and delivering to it would hand the projection an aggregate from another stream. Skipping it. The equivalent static \`.to({ target })\` is rejected at build; a dynamic resolver's target is only knowable here.`
|
|
4251
4278
|
);
|
|
4252
4279
|
}
|
|
4253
|
-
async function run_drain_cycle(ops, registry, batch_handlers, misrouted, handle, handle_batch, lagging, leading, eventLimit, leaseMillis, on_blocked, lane) {
|
|
4280
|
+
async function run_drain_cycle(ops, registry, batch_handlers, misrouted, store_failing, handle, handle_batch, lagging, leading, eventLimit, leaseMillis, on_blocked, lane) {
|
|
4254
4281
|
const leased = await ops.claim(
|
|
4255
4282
|
lagging,
|
|
4256
4283
|
leading,
|
|
@@ -4292,7 +4319,11 @@ async function run_drain_cycle(ops, registry, batch_handlers, misrouted, handle,
|
|
|
4292
4319
|
const entry = fetch_map.get(lease.stream);
|
|
4293
4320
|
const at = entry.fetch.events.at(-1)?.id || fetch_window_at;
|
|
4294
4321
|
const { payloads } = entry;
|
|
4295
|
-
const exhausted = budget_exhausted(
|
|
4322
|
+
const exhausted = budget_exhausted(
|
|
4323
|
+
lease,
|
|
4324
|
+
payloads[0]?.options,
|
|
4325
|
+
store_failing
|
|
4326
|
+
);
|
|
4296
4327
|
if (exhausted) return Promise.resolve(exhausted);
|
|
4297
4328
|
const batchHandler = batch_handlers.get(lease.stream);
|
|
4298
4329
|
if (batchHandler && payloads.length > 0) {
|
|
@@ -4464,6 +4495,7 @@ var DrainController = class {
|
|
|
4464
4495
|
this._deps.registry,
|
|
4465
4496
|
this._deps.batch_handlers,
|
|
4466
4497
|
this._misrouted,
|
|
4498
|
+
this._deps.breaker.failing,
|
|
4467
4499
|
this._deps.handle,
|
|
4468
4500
|
this._deps.handle_batch,
|
|
4469
4501
|
lagging,
|