@adonis-agora/durable 1.0.0-rc.1 → 1.0.0-rc.11
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/CHANGELOG.md +131 -0
- package/dist/assets/spa/assets/index-B2kIfzsc.css +1 -0
- package/dist/assets/spa/assets/index-Bgf_8IJ0.js +16 -0
- package/dist/assets/spa/assets/index-Bgf_8IJ0.js.map +1 -0
- package/dist/assets/spa/index.html +2 -2
- package/dist/commands/durable_worker.d.ts +3 -3
- package/dist/commands/durable_worker.js +7 -7
- package/dist/commands/durable_worker.js.map +1 -1
- package/dist/commands/runs.d.ts.map +1 -1
- package/dist/commands/runs.js +4 -2
- package/dist/commands/runs.js.map +1 -1
- package/dist/providers/dashboard_provider.d.ts +20 -54
- package/dist/providers/dashboard_provider.d.ts.map +1 -1
- package/dist/providers/dashboard_provider.js +87 -262
- package/dist/providers/dashboard_provider.js.map +1 -1
- package/dist/providers/durable_provider.d.ts.map +1 -1
- package/dist/providers/durable_provider.js +38 -33
- package/dist/providers/durable_provider.js.map +1 -1
- package/dist/src/commands/runs.js +1 -1
- package/dist/src/commands/runs.js.map +1 -1
- package/dist/src/concurrency.d.ts.map +1 -1
- package/dist/src/concurrency.js +1 -0
- package/dist/src/concurrency.js.map +1 -1
- package/dist/src/config_types.d.ts +12 -12
- package/dist/src/config_types.d.ts.map +1 -1
- package/dist/src/control-flow-signal.d.ts +5 -4
- package/dist/src/control-flow-signal.d.ts.map +1 -1
- package/dist/src/control-flow-signal.js +5 -4
- package/dist/src/control-flow-signal.js.map +1 -1
- package/dist/src/dashboard/access_denied_page.d.ts +5 -7
- package/dist/src/dashboard/access_denied_page.d.ts.map +1 -1
- package/dist/src/dashboard/access_denied_page.js +2 -6
- package/dist/src/dashboard/access_denied_page.js.map +1 -1
- package/dist/src/dashboard/console_authorize.d.ts +76 -0
- package/dist/src/dashboard/console_authorize.d.ts.map +1 -0
- package/dist/src/dashboard/console_authorize.js +101 -0
- package/dist/src/dashboard/console_authorize.js.map +1 -0
- package/dist/src/dashboard/define_config.d.ts +44 -81
- package/dist/src/dashboard/define_config.d.ts.map +1 -1
- package/dist/src/dashboard/define_config.js +16 -112
- package/dist/src/dashboard/define_config.js.map +1 -1
- package/dist/src/dashboard/diagnostics-recorder.d.ts +1 -1
- package/dist/src/dashboard/diagnostics-recorder.js +1 -1
- package/dist/src/dashboard/gateway-adapter.d.ts +6 -6
- package/dist/src/dashboard/gateway-adapter.d.ts.map +1 -1
- package/dist/src/dashboard/gateway-adapter.js +5 -5
- package/dist/src/dashboard/gateway-adapter.js.map +1 -1
- package/dist/src/dashboard/handlers.d.ts +4 -4
- package/dist/src/dashboard/handlers.d.ts.map +1 -1
- package/dist/src/dashboard/handlers.js +11 -7
- package/dist/src/dashboard/handlers.js.map +1 -1
- package/dist/src/dashboard/index.d.ts +6 -9
- package/dist/src/dashboard/index.d.ts.map +1 -1
- package/dist/src/dashboard/index.js +5 -7
- package/dist/src/dashboard/index.js.map +1 -1
- package/dist/src/dashboard/openapi.d.ts.map +1 -1
- package/dist/src/dashboard/openapi.js +12 -2
- package/dist/src/dashboard/openapi.js.map +1 -1
- package/dist/src/dashboard/run-filter.d.ts.map +1 -1
- package/dist/src/dashboard/run-filter.js +1 -0
- package/dist/src/dashboard/run-filter.js.map +1 -1
- package/dist/src/define_config.d.ts +10 -12
- package/dist/src/define_config.d.ts.map +1 -1
- package/dist/src/define_config.js +9 -4
- package/dist/src/define_config.js.map +1 -1
- package/dist/src/diagnostics/index.d.ts +11 -0
- package/dist/src/diagnostics/index.d.ts.map +1 -0
- package/dist/src/diagnostics/index.js +6 -0
- package/dist/src/diagnostics/index.js.map +1 -0
- package/dist/src/diagnostics/transport.d.ts +71 -0
- package/dist/src/diagnostics/transport.d.ts.map +1 -0
- package/dist/src/diagnostics/transport.js +188 -0
- package/dist/src/diagnostics/transport.js.map +1 -0
- package/dist/src/diagnostics-bridge.d.ts +2 -1
- package/dist/src/diagnostics-bridge.d.ts.map +1 -1
- package/dist/src/diagnostics-bridge.js +7 -1
- package/dist/src/diagnostics-bridge.js.map +1 -1
- package/dist/src/engine.d.ts +14 -9
- package/dist/src/engine.d.ts.map +1 -1
- package/dist/src/engine.js +137 -52
- package/dist/src/engine.js.map +1 -1
- package/dist/src/errors.d.ts +9 -0
- package/dist/src/errors.d.ts.map +1 -1
- package/dist/src/errors.js +13 -0
- package/dist/src/errors.js.map +1 -1
- package/dist/src/event-trigger-bridge.d.ts +5 -14
- package/dist/src/event-trigger-bridge.d.ts.map +1 -1
- package/dist/src/event-trigger-bridge.js +11 -99
- package/dist/src/event-trigger-bridge.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/interfaces.d.ts +24 -8
- package/dist/src/interfaces.d.ts.map +1 -1
- package/dist/src/interfaces.js +8 -0
- package/dist/src/interfaces.js.map +1 -1
- package/dist/src/origin.js +3 -3
- package/dist/src/role_bindings.d.ts +8 -8
- package/dist/src/role_bindings.js +8 -8
- package/dist/src/run-gateway/interface.d.ts +4 -3
- package/dist/src/run-gateway/interface.d.ts.map +1 -1
- package/dist/src/run-gateway/proxy-run-gateway.d.ts +1 -1
- package/dist/src/run-gateway/proxy-run-gateway.js +1 -1
- package/dist/src/run-gateway/run-request-responder.d.ts +1 -1
- package/dist/src/run-gateway/store-run-gateway.d.ts +4 -4
- package/dist/src/run-gateway/store-run-gateway.d.ts.map +1 -1
- package/dist/src/run-gateway/store-run-gateway.js +4 -4
- package/dist/src/run-gateway/store-run-gateway.js.map +1 -1
- package/dist/src/scheduler.d.ts.map +1 -1
- package/dist/src/scheduler.js +2 -1
- package/dist/src/scheduler.js.map +1 -1
- package/dist/src/services/main.d.ts +3 -3
- package/dist/src/services/main.js +6 -6
- package/dist/src/services/main.js.map +1 -1
- package/dist/src/singleton-admission.d.ts.map +1 -1
- package/dist/src/singleton-admission.js +2 -0
- package/dist/src/singleton-admission.js.map +1 -1
- package/dist/src/singleton-gate.d.ts +1 -1
- package/dist/src/singleton-gate.d.ts.map +1 -1
- package/dist/src/singleton-gate.js +4 -3
- package/dist/src/singleton-gate.js.map +1 -1
- package/dist/src/stores/lucid-pg-hot-path.d.ts +6 -2
- package/dist/src/stores/lucid-pg-hot-path.d.ts.map +1 -1
- package/dist/src/stores/lucid-pg-hot-path.js +7 -3
- package/dist/src/stores/lucid-pg-hot-path.js.map +1 -1
- package/dist/src/stores/lucid.d.ts +15 -2
- package/dist/src/stores/lucid.d.ts.map +1 -1
- package/dist/src/stores/lucid.js +191 -49
- package/dist/src/stores/lucid.js.map +1 -1
- package/dist/src/testing/in-memory-state-store.js +3 -3
- package/dist/src/testing/in-memory-state-store.js.map +1 -1
- package/dist/src/testing-kit/state-store-conformance.d.ts.map +1 -1
- package/dist/src/testing-kit/state-store-conformance.js +13 -0
- package/dist/src/testing-kit/state-store-conformance.js.map +1 -1
- package/dist/src/testing-kit/transport-conformance.d.ts.map +1 -1
- package/dist/src/testing-kit/transport-conformance.js +5 -1
- package/dist/src/testing-kit/transport-conformance.js.map +1 -1
- package/dist/src/transports/bullmq/bullmq-transport.d.ts +1 -1
- package/dist/src/transports/bullmq/bullmq-transport.d.ts.map +1 -1
- package/dist/src/transports/bullmq/bullmq-transport.js +14 -3
- package/dist/src/transports/bullmq/bullmq-transport.js.map +1 -1
- package/dist/src/transports/db.d.ts.map +1 -1
- package/dist/src/transports/db.js +42 -3
- package/dist/src/transports/db.js.map +1 -1
- package/dist/src/transports/queue.d.ts +2 -2
- package/dist/src/transports/queue.d.ts.map +1 -1
- package/dist/src/transports/queue.js +49 -8
- package/dist/src/transports/queue.js.map +1 -1
- package/dist/src/workflow-discovery.d.ts +1 -1
- package/dist/src/workflow-discovery.d.ts.map +1 -1
- package/dist/src/workflow-discovery.js +4 -7
- package/dist/src/workflow-discovery.js.map +1 -1
- package/dist/src/workflow-events.d.ts +20 -51
- package/dist/src/workflow-events.d.ts.map +1 -1
- package/dist/src/workflow-events.js +12 -30
- package/dist/src/workflow-events.js.map +1 -1
- package/dist/src/workflow-ref.d.ts +1 -1
- package/dist/src/workflow-turn.d.ts.map +1 -1
- package/dist/src/workflow-turn.js +18 -1
- package/dist/src/workflow-turn.js.map +1 -1
- package/dist/stubs/config/durable_dashboard.stub +9 -29
- package/package.json +12 -2
- package/skills/durable-cluster/SKILL.md +34 -22
- package/skills/durable-reliability/SKILL.md +2 -2
- package/dist/assets/spa/assets/index-70hGzOnT.css +0 -1
- package/dist/assets/spa/assets/index-CJjMAUau.js +0 -16
- package/dist/assets/spa/assets/index-CJjMAUau.js.map +0 -1
- package/dist/src/dashboard/auth.d.ts +0 -134
- package/dist/src/dashboard/auth.d.ts.map +0 -1
- package/dist/src/dashboard/auth.js +0 -156
- package/dist/src/dashboard/auth.js.map +0 -1
- package/dist/src/dashboard/login_page.d.ts +0 -36
- package/dist/src/dashboard/login_page.d.ts.map +0 -1
- package/dist/src/dashboard/login_page.js +0 -158
- package/dist/src/dashboard/login_page.js.map +0 -1
- package/dist/src/dashboard/session_cookie.d.ts +0 -45
- package/dist/src/dashboard/session_cookie.d.ts.map +0 -1
- package/dist/src/dashboard/session_cookie.js +0 -97
- package/dist/src/dashboard/session_cookie.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../../src/transports/db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../../src/transports/db.ts"],"names":[],"mappings":"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"}
|
|
@@ -223,14 +223,14 @@ export declare class QueueTransport implements Transport, ControlPlane {
|
|
|
223
223
|
readonly groupHealth?: (group: string) => Promise<GroupHealth>;
|
|
224
224
|
constructor(options: QueueTransportOptions);
|
|
225
225
|
/** The writer a worker runtime's registry advertises its descriptor and heartbeat through: the key
|
|
226
|
-
* store when this instance has one. A store-less tenant pod (see {@link
|
|
226
|
+
* store when this instance has one. A store-less tenant pod (see {@link useTenantTopology}) with no key
|
|
227
227
|
* store forwards it to the control plane instead, which records it in its own — so the control plane
|
|
228
228
|
* still sees the pod's workers. Otherwise, with no store, nothing is advertised. */
|
|
229
229
|
createDescriptorRedis(): DescriptorRedis;
|
|
230
230
|
/** Declare that this transport backs a store-less `tenant` pod (the provider calls it): worker
|
|
231
231
|
* advertisement is then forwarded to the control plane when this instance has no key store. Only a
|
|
232
232
|
* tenant pod is guaranteed a control plane that records the forwarded keys. */
|
|
233
|
-
|
|
233
|
+
useTenantTopology(): void;
|
|
234
234
|
/** The live worker descriptors advertised on `token`. */
|
|
235
235
|
listWorkerDescriptors(token: string, opts?: {
|
|
236
236
|
fresh?: boolean | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/transports/queue.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAW,MAAM,uBAAuB,CAAC;AAClF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,SAAS,EAGd,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAClB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAkB,KAAK,WAAW,EAAqB,MAAM,gBAAgB,CAAC;AAErF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAkB,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAsB,KAAK,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAkBvF,OAAO,EAKL,KAAK,cAAc,EAEpB,MAAM,kBAAkB,CAAC;AAE1B;;;;;;GAMG;AAEH,iGAAiG;AACjG,wBAAgB,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAErC;AAED,wEAAwE;AACxE,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,CAO7C;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC;AACrC,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC;AACvC,MAAM,MAAM,gBAAgB,GAAG,SAAS,CAAC;AACzC,MAAM,MAAM,cAAc,GAAG,cAAc,CAAC;AAC5C;;qGAEqG;AACrG,MAAM,MAAM,iBAAiB,GAAG,UAAU,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAClE,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAuCrE;;;;;GAKG;AACH,UAAU,YAAY;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;CACpB;
|
|
1
|
+
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/transports/queue.ts"],"names":[],"mappings":"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"}
|
|
@@ -205,7 +205,7 @@ export class QueueTransport {
|
|
|
205
205
|
#runReplyHandler;
|
|
206
206
|
#tenantEventsLoop = false;
|
|
207
207
|
#registrationsLoop = false;
|
|
208
|
-
#
|
|
208
|
+
#tenantTopology = false;
|
|
209
209
|
/** Control-plane side: correlation id (requestId, or a start-run's runId) → the requester's instance
|
|
210
210
|
* id, held while the request's handler runs so {@link publishRunReply} knows whose inbox to target. */
|
|
211
211
|
#replyRoutes = new Map();
|
|
@@ -284,11 +284,11 @@ export class QueueTransport {
|
|
|
284
284
|
});
|
|
285
285
|
}
|
|
286
286
|
/** The writer a worker runtime's registry advertises its descriptor and heartbeat through: the key
|
|
287
|
-
* store when this instance has one. A store-less tenant pod (see {@link
|
|
287
|
+
* store when this instance has one. A store-less tenant pod (see {@link useTenantTopology}) with no key
|
|
288
288
|
* store forwards it to the control plane instead, which records it in its own — so the control plane
|
|
289
289
|
* still sees the pod's workers. Otherwise, with no store, nothing is advertised. */
|
|
290
290
|
createDescriptorRedis() {
|
|
291
|
-
if (this.#workerKeys === NO_WORKER_KEYS && this.#
|
|
291
|
+
if (this.#workerKeys === NO_WORKER_KEYS && this.#tenantTopology) {
|
|
292
292
|
return this.#inboxes.remoteKeyWriter();
|
|
293
293
|
}
|
|
294
294
|
return workerKeyWriter(this.#workerKeys, Date.now);
|
|
@@ -296,8 +296,8 @@ export class QueueTransport {
|
|
|
296
296
|
/** Declare that this transport backs a store-less `tenant` pod (the provider calls it): worker
|
|
297
297
|
* advertisement is then forwarded to the control plane when this instance has no key store. Only a
|
|
298
298
|
* tenant pod is guaranteed a control plane that records the forwarded keys. */
|
|
299
|
-
|
|
300
|
-
this.#
|
|
299
|
+
useTenantTopology() {
|
|
300
|
+
this.#tenantTopology = true;
|
|
301
301
|
}
|
|
302
302
|
/** The live worker descriptors advertised on `token`. */
|
|
303
303
|
async listWorkerDescriptors(token, opts) {
|
|
@@ -351,6 +351,17 @@ export class QueueTransport {
|
|
|
351
351
|
return;
|
|
352
352
|
this.#namespace = namespace;
|
|
353
353
|
}
|
|
354
|
+
/**
|
|
355
|
+
* The partition this instance serves (the `@<partition>` suffix of the routing tokens it consumes):
|
|
356
|
+
* the explicit `partition`, else its namespace when that is set and not `default`. A namespaced
|
|
357
|
+
* engine stamps its runs with its namespace and dispatches their steps to `<name>@<namespace>`, so
|
|
358
|
+
* it serves those tokens by default, as nestjs-durable's `servingPartition()` does.
|
|
359
|
+
*/
|
|
360
|
+
#servingPartition() {
|
|
361
|
+
if (this.#partition !== undefined)
|
|
362
|
+
return this.#partition;
|
|
363
|
+
return this.#namespace && this.#namespace !== 'default' ? this.#namespace : undefined;
|
|
364
|
+
}
|
|
354
365
|
/**
|
|
355
366
|
* The prefix every queue name is built from, folding in the namespace: a set, non-`"default"`
|
|
356
367
|
* namespace appends `-<namespace>`; otherwise the bare prefix (so the un-namespaced and `"default"`
|
|
@@ -450,7 +461,7 @@ export class QueueTransport {
|
|
|
450
461
|
*/
|
|
451
462
|
handle(name, fn) {
|
|
452
463
|
this.#handlers.set(name, fn);
|
|
453
|
-
this.#ensureTaskLoop(tenantGroup(sanitizeQueueToken(name), this.#
|
|
464
|
+
this.#ensureTaskLoop(tenantGroup(sanitizeQueueToken(name), this.#servingPartition()));
|
|
454
465
|
}
|
|
455
466
|
/**
|
|
456
467
|
* Register a WORKFLOW turn consumer (worker side). Shares the step task loop of the workflow name's
|
|
@@ -460,7 +471,7 @@ export class QueueTransport {
|
|
|
460
471
|
*/
|
|
461
472
|
handleWorkflow(name, turn) {
|
|
462
473
|
this.#workflowTurns.set(name, turn);
|
|
463
|
-
this.#ensureTaskLoop(tenantGroup(sanitizeQueueToken(name), this.#
|
|
474
|
+
this.#ensureTaskLoop(tenantGroup(sanitizeQueueToken(name), this.#servingPartition()));
|
|
464
475
|
}
|
|
465
476
|
/** Start (once per routing token) the task loop shared by {@link handle} and {@link handleWorkflow}. */
|
|
466
477
|
#ensureTaskLoop(token) {
|
|
@@ -733,6 +744,7 @@ export class QueueTransport {
|
|
|
733
744
|
const stop = () => {
|
|
734
745
|
stopped ??= (async () => {
|
|
735
746
|
loop.stop();
|
|
747
|
+
await loop.settled();
|
|
736
748
|
await Promise.allSettled([...running]);
|
|
737
749
|
})();
|
|
738
750
|
return stopped;
|
|
@@ -962,6 +974,9 @@ export class QueueTransport {
|
|
|
962
974
|
cancelled = true;
|
|
963
975
|
live?.stop();
|
|
964
976
|
},
|
|
977
|
+
settled: async () => {
|
|
978
|
+
await live?.settled();
|
|
979
|
+
},
|
|
965
980
|
};
|
|
966
981
|
}
|
|
967
982
|
return this.#reallyStartLoop(queue, onJob, opts);
|
|
@@ -974,7 +989,14 @@ export class QueueTransport {
|
|
|
974
989
|
// slots cost ONE poll loop, not N. A live (adaptive) limit is re-read on every tick.
|
|
975
990
|
const limit = typeof concurrency === 'function' ? concurrency : () => concurrency;
|
|
976
991
|
const inFlight = new Set();
|
|
977
|
-
|
|
992
|
+
// A pop already past the loop's stop check when this loop (or the whole transport) stops must not
|
|
993
|
+
// run what it popped after the stop: it re-delivers the job at once instead, and `settled()` (what
|
|
994
|
+
// a loop's own stop waits for) resolves once that pop is done.
|
|
995
|
+
let stopping = false;
|
|
996
|
+
let polling;
|
|
997
|
+
const poll = async () => {
|
|
998
|
+
if (stopping || this.#pollers.closed)
|
|
999
|
+
return false;
|
|
978
1000
|
if (inFlight.size >= limit()) {
|
|
979
1001
|
// Every slot busy: wait for one to free (or the limit to move), then report work so the
|
|
980
1002
|
// loop re-ticks at once.
|
|
@@ -991,6 +1013,12 @@ export class QueueTransport {
|
|
|
991
1013
|
}
|
|
992
1014
|
if (!job)
|
|
993
1015
|
return false;
|
|
1016
|
+
if (stopping || this.#pollers.closed) {
|
|
1017
|
+
await this.#adapter
|
|
1018
|
+
.retryJob(jobHandle(job), queue, new Date())
|
|
1019
|
+
.catch((err) => this.#onError(err));
|
|
1020
|
+
return false;
|
|
1021
|
+
}
|
|
994
1022
|
const run = this.#runJob(queue, job, onJob);
|
|
995
1023
|
if (concurrency === 1) {
|
|
996
1024
|
await run;
|
|
@@ -999,7 +1027,20 @@ export class QueueTransport {
|
|
|
999
1027
|
inFlight.add(run);
|
|
1000
1028
|
void run.finally(() => inFlight.delete(run));
|
|
1001
1029
|
return true;
|
|
1030
|
+
};
|
|
1031
|
+
const inner = this.#pollers.start(() => {
|
|
1032
|
+
polling = poll();
|
|
1033
|
+
return polling;
|
|
1002
1034
|
}, idleBackoffMax === undefined ? undefined : { idleBackoffMax });
|
|
1035
|
+
return {
|
|
1036
|
+
stop: () => {
|
|
1037
|
+
stopping = true;
|
|
1038
|
+
inner.stop();
|
|
1039
|
+
},
|
|
1040
|
+
settled: async () => {
|
|
1041
|
+
await polling?.catch(() => false);
|
|
1042
|
+
},
|
|
1043
|
+
};
|
|
1003
1044
|
}
|
|
1004
1045
|
/** Resolve when one of `inFlight` settles or the adaptive controller moves the limit. */
|
|
1005
1046
|
async #slotFreed(inFlight) {
|