@nodii/saga 0.8.0 → 0.9.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/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/participant-worker.d.ts.map +1 -1
- package/dist/participant-worker.js +1 -2
- package/dist/participant-worker.js.map +1 -1
- package/dist/reaper.d.ts +66 -1
- package/dist/reaper.d.ts.map +1 -1
- package/dist/reaper.js +111 -0
- package/dist/reaper.js.map +1 -1
- package/package.json +5 -5
package/dist/index.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export type { AdminAuthFields, CancelSagaRequest, ForceCompensateRequest, GetSag
|
|
|
13
13
|
export { PostgresSagaStateStore, type PostgresSagaStateStoreOpts, } from "./state-store/postgres";
|
|
14
14
|
export { DEFAULT_SIGNAL_STREAM_MAXLEN, RedisSignalBus, type RedisSignalBusOpts, } from "./signal-bus/redis-stream";
|
|
15
15
|
export { beginAsyncStep, completeAsyncStep, getCompletedAsyncOutput, SagaPausedSentinel, } from "./async-step";
|
|
16
|
-
export { startSagaReaper } from "./reaper";
|
|
16
|
+
export { DEFAULT_REAPER_LEASE_SCOPE, DEFAULT_REAPER_LEASE_TTL_MS, startSagaReaper, } from "./reaper";
|
|
17
17
|
export type { SagaReaperOpts, SagaReaperHandle } from "./reaper";
|
|
18
18
|
export { createParticipantWorker, ParticipantOutboxTableInvalid, ParticipantWorkerStarted, } from "./participant-worker";
|
|
19
19
|
export type { CreateParticipantWorkerOpts, ParticipantBeginEvent, ParticipantHandler, ParticipantHandlerCtx, ParticipantSqlClient, ParticipantSqlTx, ParticipantWorkerHandle, } from "./participant-worker";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,QAAQ,SAAS,CAAC;AAC/B,eAAO,MAAM,OAAO,UAAU,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACjE,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAEjE,OAAO,EACL,UAAU,EACV,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,MAAM,EACN,WAAW,GACZ,MAAM,QAAQ,CAAC;AAEhB,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,cAAc,EACd,eAAe,EACf,aAAa,EACb,eAAe,EACf,WAAW,GACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,+BAA+B,GAChC,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EACL,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,8BAA8B,EAC9B,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,sBAAsB,EACtB,KAAK,0BAA0B,GAChC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,4BAA4B,EAC5B,cAAc,EACd,KAAK,kBAAkB,GACxB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,QAAQ,SAAS,CAAC;AAC/B,eAAO,MAAM,OAAO,UAAU,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACjE,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAEjE,OAAO,EACL,UAAU,EACV,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,MAAM,EACN,WAAW,GACZ,MAAM,QAAQ,CAAC;AAEhB,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,cAAc,EACd,eAAe,EACf,aAAa,EACb,eAAe,EACf,WAAW,GACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,+BAA+B,GAChC,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EACL,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,8BAA8B,EAC9B,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,sBAAsB,EACtB,KAAK,0BAA0B,GAChC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,4BAA4B,EAC5B,cAAc,EACd,KAAK,kBAAkB,GACxB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,eAAe,GAChB,MAAM,UAAU,CAAC;AAClB,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAGjE,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC7B,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,2BAA2B,EAC3B,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAE7E,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAE1C,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EAEtB,SAAS,EACT,uBAAuB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,mBAAmB,GACpB,MAAM,SAAS,CAAC;AAEjB,YAAY,EACV,oBAAoB,EACpB,cAAc,EACd,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,kBAAkB,EAClB,0BAA0B,EAC1B,UAAU,EACV,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,cAAc,EACd,UAAU,EACV,QAAQ,EACR,qBAAqB,EACrB,cAAc,GACf,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAC1C,YAAY,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -27,7 +27,7 @@ export { PostgresSagaStateStore, } from "./state-store/postgres";
|
|
|
27
27
|
export { DEFAULT_SIGNAL_STREAM_MAXLEN, RedisSignalBus, } from "./signal-bus/redis-stream";
|
|
28
28
|
// Pattern 2 async-step + reaper.
|
|
29
29
|
export { beginAsyncStep, completeAsyncStep, getCompletedAsyncOutput, SagaPausedSentinel, } from "./async-step";
|
|
30
|
-
export { startSagaReaper } from "./reaper";
|
|
30
|
+
export { DEFAULT_REAPER_LEASE_SCOPE, DEFAULT_REAPER_LEASE_TTL_MS, startSagaReaper, } from "./reaper";
|
|
31
31
|
// Pattern 2 participant-worker (consumer-side helper).
|
|
32
32
|
export { createParticipantWorker, ParticipantOutboxTableInvalid, ParticipantWorkerStarted, } from "./participant-worker";
|
|
33
33
|
// Migrations.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,EAAE;AACF,mEAAmE;AACnE,6CAA6C;AAC7C,EAAE;AACF,2CAA2C;AAC3C,uEAAuE;AACvE,+EAA+E;AAC/E,sDAAsD;AACtD,mCAAmC;AACnC,0EAA0E;AAC1E,4EAA4E;AAC5E,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;AAEhF,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC/B,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAGjE,OAAO,EACL,UAAU,EACV,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,MAAM,EACN,WAAW,GACZ,MAAM,QAAQ,CAAC;AAEhB,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,cAAc,EACd,eAAe,EACf,aAAa,EACb,eAAe,EACf,WAAW,GACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,+BAA+B,GAChC,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EACL,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AAczB,6CAA6C;AAC7C,OAAO,EACL,sBAAsB,GAEvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,4BAA4B,EAC5B,cAAc,GAEf,MAAM,2BAA2B,CAAC;AAEnC,iCAAiC;AACjC,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,EAAE;AACF,mEAAmE;AACnE,6CAA6C;AAC7C,EAAE;AACF,2CAA2C;AAC3C,uEAAuE;AACvE,+EAA+E;AAC/E,sDAAsD;AACtD,mCAAmC;AACnC,0EAA0E;AAC1E,4EAA4E;AAC5E,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;AAEhF,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC/B,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAGjE,OAAO,EACL,UAAU,EACV,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,MAAM,EACN,WAAW,GACZ,MAAM,QAAQ,CAAC;AAEhB,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,cAAc,EACd,eAAe,EACf,aAAa,EACb,eAAe,EACf,WAAW,GACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,+BAA+B,GAChC,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EACL,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AAczB,6CAA6C;AAC7C,OAAO,EACL,sBAAsB,GAEvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,4BAA4B,EAC5B,cAAc,GAEf,MAAM,2BAA2B,CAAC;AAEnC,iCAAiC;AACjC,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,eAAe,GAChB,MAAM,UAAU,CAAC;AAGlB,uDAAuD;AACvD,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC7B,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAW9B,cAAc;AACd,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAE7E,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAE1C,OAAO,EACL,uBAAuB,EACvB,sBAAsB;AACtB,yBAAyB;AACzB,SAAS,EACT,uBAAuB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,mBAAmB,GACpB,MAAM,SAAS,CAAC;AAwBjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"participant-worker.d.ts","sourceRoot":"","sources":["../src/participant-worker.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"participant-worker.d.ts","sourceRoot":"","sources":["../src/participant-worker.ts"],"names":[],"mappings":"AA6CA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGrC,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAMtE;;yBAEyB;AACzB,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,gBAAgB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAChE;AAED,MAAM,WAAW,gBAAgB;IAE/B,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CACzD;AAED,uDAAuD;AACvD,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,OAAO;IAChD,oCAAoC;IACpC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;6CACyC;IACzC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,sCAAsC;IACtC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC;;gDAE4C;IAC5C,QAAQ,CAAC,EAAE,EAAE,gBAAgB,CAAC;IAC9B,sEAAsE;IACtE,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC;CACvC;AAED;;sEAEsE;AACtE,MAAM,MAAM,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI,CACrC,KAAK,EAAE,CAAC,EACR,GAAG,EAAE,qBAAqB,KACvB,OAAO,CAAC,CAAC,CAAC,CAAC;AAEhB,MAAM,WAAW,2BAA2B,CAAC,CAAC,EAAE,CAAC;IAC/C;wCACoC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB;uFACmF;IACnF,WAAW,EAAE,MAAM,CAAC;IACpB;yCACqC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;8CAC0C;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8BAA8B;IAC9B,KAAK,EAAE,KAAK,CAAC;IACb;iCAC6B;IAC7B,EAAE,EAAE,oBAAoB,CAAC;IACzB;;0DAEsD;IACtD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;4EAEwE;IACxE,WAAW,EAAE,eAAe,CAAC;IAC7B,yCAAyC;IACzC,OAAO,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAClC;;uCAEmC;IACnC,KAAK,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACrC,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;qDACiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;QAC1D,IAAI,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;KAC5D,CAAC;CACH;AAED,MAAM,WAAW,uBAAuB;IACtC;;mEAE+D;IAC/D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB;sEACkE;IAClE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,2CAA2C;IAC3C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAKD,qBAAa,wBAAyB,SAAQ,KAAK;;CAKlD;AAED,qBAAa,6BAA8B,SAAQ,KAAK;gBAC1C,IAAI,EAAE,MAAM;CAMzB;AAKD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO,EAC9D,IAAI,EAAE,2BAA2B,CAAC,CAAC,EAAE,CAAC,CAAC,GACtC,uBAAuB,CAkLzB"}
|
|
@@ -54,8 +54,7 @@ export class ParticipantWorkerStarted extends Error {
|
|
|
54
54
|
}
|
|
55
55
|
export class ParticipantOutboxTableInvalid extends Error {
|
|
56
56
|
constructor(name) {
|
|
57
|
-
super(`@nodii/saga participant-worker: outboxTable name ${JSON.stringify(name)} is not a safe Postgres identifier.
|
|
58
|
-
"Allowed: [A-Za-z_][A-Za-z0-9_]* (no quoting, no dots, no spaces).");
|
|
57
|
+
super(`@nodii/saga participant-worker: outboxTable name ${JSON.stringify(name)} is not a safe Postgres identifier. Allowed: [A-Za-z_][A-Za-z0-9_]* (no quoting, no dots, no spaces).`);
|
|
59
58
|
this.name = "ParticipantOutboxTableInvalid";
|
|
60
59
|
}
|
|
61
60
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"participant-worker.js","sourceRoot":"","sources":["../src/participant-worker.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,EAAE;AACF,uEAAuE;AACvE,qCAAqC;AACrC,EAAE;AACF,gBAAgB;AAChB,EAAE;AACF,yCAAyC;AACzC,8DAA8D;AAC9D,mEAAmE;AACnE,kEAAkE;AAClE,kEAAkE;AAClE,gDAAgD;AAChD,EAAE;AACF,oCAAoC;AACpC,wEAAwE;AACxE,iEAAiE;AACjE,4CAA4C;AAC5C,mDAAmD;AACnD,sEAAsE;AACtE,iEAAiE;AACjE,oEAAoE;AACpE,8CAA8C;AAC9C,gEAAgE;AAChE,qEAAqE;AACrE,oEAAoE;AACpE,6BAA6B;AAC7B,sCAAsC;AACtC,EAAE;AACF,oEAAoE;AACpE,wEAAwE;AACxE,qEAAqE;AACrE,wEAAwE;AACxE,eAAe;AACf,EAAE;AACF,uBAAuB;AACvB,+DAA+D;AAC/D,uEAAuE;AACvE,qEAAqE;AACrE,kEAAkE;AAClE,oEAAoE;AACpE,sEAAsE;AACtE,qEAAqE;AACrE,iCAAiC;AAIjC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAyGhC,8EAA8E;AAC9E,UAAU;AAEV,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACjD;QACE,KAAK,CAAC,iEAAiE,CAAC,CAAC;QACzE,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,6BAA8B,SAAQ,KAAK;IACtD,YAAY,IAAY;QACtB,KAAK,CACH,oDAAoD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"participant-worker.js","sourceRoot":"","sources":["../src/participant-worker.ts"],"names":[],"mappings":"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"}
|
package/dist/reaper.d.ts
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
|
+
import { type LeaseRedisLike, SingleActiveLease } from "@nodii/telemetry/worker";
|
|
1
2
|
import type { SagaStateRow } from "./types";
|
|
3
|
+
/** Default lease scope segment — pinned for cross-lang parity (TS/Python/Go). */
|
|
4
|
+
export declare const DEFAULT_REAPER_LEASE_SCOPE = "saga-reaper";
|
|
5
|
+
/** Default lease TTL in ms — renew fires at ttl/2. */
|
|
6
|
+
export declare const DEFAULT_REAPER_LEASE_TTL_MS = 30000;
|
|
2
7
|
export interface SagaReaperOpts {
|
|
3
8
|
/** How often to scan; spec default = 5 * 60_000 ms (5 min). */
|
|
4
9
|
intervalMs?: number;
|
|
@@ -16,6 +21,64 @@ export interface SagaReaperOpts {
|
|
|
16
21
|
};
|
|
17
22
|
/** Test hook — fires on every transition so tests can assert. */
|
|
18
23
|
onTransition?: (saga: SagaStateRow) => void;
|
|
24
|
+
/**
|
|
25
|
+
* D402 Phase-2 — OPTIONAL single-active lease (parity: TS/Python/Go).
|
|
26
|
+
*
|
|
27
|
+
* A raw ioredis-shaped handle (`eval`/`get`/`set`/`del`) used purely to drive
|
|
28
|
+
* a {@link SingleActiveLease} so that when N replicas each start a reaper,
|
|
29
|
+
* ONLY the lease holder finalizes stale sagas; the rest SKIP their tick. May
|
|
30
|
+
* be the SAME ioredis handle the service already uses, or a dedicated one.
|
|
31
|
+
*
|
|
32
|
+
* **Absent ⇒ EXACT current behavior** (no lease, every tick reaps). This is
|
|
33
|
+
* the back-compat default and is unchanged.
|
|
34
|
+
*
|
|
35
|
+
* **Present ⇒** a `SingleActiveLease` is constructed with key
|
|
36
|
+
* `nodii:lease:<service>:<scope>`; only the active holder reaps, and
|
|
37
|
+
* `validateFence` is called BEFORE each non-idempotent finalize. The reaper's
|
|
38
|
+
* side effects are NON-idempotent, so the policy is **fail-CLOSED**: a
|
|
39
|
+
* lease-backend outage (acquire THROWS) SKIPS the tick + fires
|
|
40
|
+
* {@link SagaReaperOpts.onLeaseUnavailable} (it does NOT reap without the
|
|
41
|
+
* lease).
|
|
42
|
+
*
|
|
43
|
+
* Named `leaseRedis` for parity with the idempotency sweeper. (`redis` would
|
|
44
|
+
* have been ambiguous with the state-store-backing handle.)
|
|
45
|
+
*/
|
|
46
|
+
leaseRedis?: LeaseRedisLike;
|
|
47
|
+
/**
|
|
48
|
+
* Lease service name — first segment of `nodii:lease:<service>:<scope>`.
|
|
49
|
+
* REQUIRED when `leaseRedis` is provided (the reaper has no service id of its
|
|
50
|
+
* own to default from). Only used when `leaseRedis` is present.
|
|
51
|
+
*/
|
|
52
|
+
service?: string;
|
|
53
|
+
/**
|
|
54
|
+
* Lease scope — second segment of `nodii:lease:<service>:<scope>`. Defaults
|
|
55
|
+
* to {@link DEFAULT_REAPER_LEASE_SCOPE} (`"saga-reaper"`). Only used when
|
|
56
|
+
* `leaseRedis` is present.
|
|
57
|
+
*/
|
|
58
|
+
scope?: string;
|
|
59
|
+
/**
|
|
60
|
+
* Lease TTL in ms; renew fires at ttl/2. Defaults to
|
|
61
|
+
* {@link DEFAULT_REAPER_LEASE_TTL_MS}. Only used when `leaseRedis` is present.
|
|
62
|
+
*/
|
|
63
|
+
leaseTtlMs?: number;
|
|
64
|
+
/**
|
|
65
|
+
* Stable per-instance owner id for the lease (defaults to a fresh uuidv7
|
|
66
|
+
* inside `SingleActiveLease`). Two distinct instances MUST use distinct owner
|
|
67
|
+
* ids to contend correctly. Only used when `leaseRedis` is present.
|
|
68
|
+
*/
|
|
69
|
+
leaseOwnerId?: string;
|
|
70
|
+
/**
|
|
71
|
+
* D402 Phase-2 — fired when a tick is SKIPPED because the lease backend is
|
|
72
|
+
* UNAVAILABLE (acquire threw / fence-check redis read failed). This is the
|
|
73
|
+
* observable fail-CLOSED signal: the reaper deliberately did NOT reap because
|
|
74
|
+
* it could not prove single-active ownership. Distinct from the benign "some
|
|
75
|
+
* other replica holds the lease" skip (which does NOT fire this). Only used
|
|
76
|
+
* when `leaseRedis` is present.
|
|
77
|
+
*/
|
|
78
|
+
onLeaseUnavailable?: (info: {
|
|
79
|
+
phase: "acquire" | "fence";
|
|
80
|
+
error: unknown;
|
|
81
|
+
}) => void;
|
|
19
82
|
}
|
|
20
83
|
export interface SagaReaperHandle {
|
|
21
84
|
/** Run one iteration synchronously (for tests + manual triggers). */
|
|
@@ -23,7 +86,9 @@ export interface SagaReaperHandle {
|
|
|
23
86
|
scanned: number;
|
|
24
87
|
reaped: number;
|
|
25
88
|
}>;
|
|
26
|
-
/**
|
|
89
|
+
/** The wired single-active lease, or null when running lease-free. */
|
|
90
|
+
readonly lease: SingleActiveLease | null;
|
|
91
|
+
/** Stop the periodic loop and (best-effort) release the lease. */
|
|
27
92
|
stop(): void;
|
|
28
93
|
}
|
|
29
94
|
export declare function startSagaReaper(opts?: SagaReaperOpts): SagaReaperHandle;
|
package/dist/reaper.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reaper.d.ts","sourceRoot":"","sources":["../src/reaper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reaper.d.ts","sourceRoot":"","sources":["../src/reaper.ts"],"names":[],"mappings":"AAuCA,OAAO,EAGL,KAAK,cAAc,EACnB,iBAAiB,EAClB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,iFAAiF;AACjF,eAAO,MAAM,0BAA0B,gBAAgB,CAAC;AAExD,sDAAsD;AACtD,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAElD,MAAM,WAAW,cAAc;IAC7B,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;0EAIsE;IACtE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;iCAC6B;IAC7B,SAAS,CAAC,EAAE;QACV,WAAW,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;QACtD,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;KACrC,CAAC;IACF,iEAAiE;IACjE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IAC5C;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE;QAC1B,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC;QAC3B,KAAK,EAAE,OAAO,CAAC;KAChB,KAAK,IAAI,CAAC;CACZ;AAED,MAAM,WAAW,gBAAgB;IAC/B,qEAAqE;IACrE,OAAO,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACxD,sEAAsE;IACtE,QAAQ,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACzC,kEAAkE;IAClE,IAAI,IAAI,IAAI,CAAC;CACd;AAED,wBAAgB,eAAe,CAAC,IAAI,GAAE,cAAmB,GAAG,gBAAgB,CAgK3E"}
|
package/dist/reaper.js
CHANGED
|
@@ -8,7 +8,40 @@
|
|
|
8
8
|
// `startSagaReaper` returns a `stop()` handle. Tests use a tight
|
|
9
9
|
// `intervalMs` (e.g. 50) so the loop runs deterministically; production
|
|
10
10
|
// uses the spec default of 5 min.
|
|
11
|
+
//
|
|
12
|
+
// ── D402 Phase-2 — OPTIONAL single-active lease + fence (NON-idempotent worker)
|
|
13
|
+
//
|
|
14
|
+
// The reaper's per-row work is NON-IDEMPOTENT and OBSERVABLE:
|
|
15
|
+
// - `stateStore.updateSagaStatus(id, {status:"technical_failure", ...})` — a
|
|
16
|
+
// status transition (re-running it is a status-transition race), AND
|
|
17
|
+
// - `telemetryAudit.emit({action:"saga_reaper_grace_expired", ...})` — an
|
|
18
|
+
// audit row (re-running it duplicates the audit/alert).
|
|
19
|
+
// With N replicas each running a reaper, every replica would finalize every
|
|
20
|
+
// stale saga → duplicate audit rows + transition races. So the reaper composes
|
|
21
|
+
// the canonical `SingleActiveLease` (`@nodii/telemetry/worker`) to gate the
|
|
22
|
+
// whole tick to ONE replica AND `validateFence` BEFORE each non-idempotent side
|
|
23
|
+
// effect so a reaper that LOST the lease mid-run cannot finalize a row the
|
|
24
|
+
// successor now owns.
|
|
25
|
+
//
|
|
26
|
+
// FAIL-CLOSED policy (per hub decision e7eec3aa — policy is per-worker by
|
|
27
|
+
// idempotency): because the side effect is non-idempotent, a lease-backend
|
|
28
|
+
// OUTAGE means we must NOT reap (acting without the lease risks the exact
|
|
29
|
+
// double-finalize the lease exists to prevent). This is the OPPOSITE of the
|
|
30
|
+
// idempotency sweeper, whose SCAN+DEL is idempotent so it fail-OPENs. On a
|
|
31
|
+
// lease-backend outage the reaper SKIPS the tick + fires `onLeaseUnavailable`;
|
|
32
|
+
// the halt is observable and resumes automatically when the backend recovers.
|
|
33
|
+
//
|
|
34
|
+
// Back-compat: absent lease config ⇒ EXACT prior behavior (no lease; every tick
|
|
35
|
+
// reaps). No `legacyKey` is used — the reaper had no prior lease key, so there
|
|
36
|
+
// is nothing to mutually-exclude. The one-time deploy-window exposure where an
|
|
37
|
+
// OLD unleased replica co-runs with a NEW leased one is inherent to a first-time
|
|
38
|
+
// lease backfill and is covered by e7eec3aa; do NOT shim it here.
|
|
39
|
+
import { FenceCheckUnavailableError, FenceLostError, SingleActiveLease, } from "@nodii/telemetry/worker";
|
|
11
40
|
import { requireSaga } from "./init";
|
|
41
|
+
/** Default lease scope segment — pinned for cross-lang parity (TS/Python/Go). */
|
|
42
|
+
export const DEFAULT_REAPER_LEASE_SCOPE = "saga-reaper";
|
|
43
|
+
/** Default lease TTL in ms — renew fires at ttl/2. */
|
|
44
|
+
export const DEFAULT_REAPER_LEASE_TTL_MS = 30_000;
|
|
12
45
|
export function startSagaReaper(opts = {}) {
|
|
13
46
|
const intervalMs = opts.intervalMs ?? 5 * 60_000;
|
|
14
47
|
const gracePeriodMs = opts.gracePeriodMs ?? 24 * 60 * 60_000;
|
|
@@ -21,12 +54,47 @@ export function startSagaReaper(opts = {}) {
|
|
|
21
54
|
clearInterval(token);
|
|
22
55
|
},
|
|
23
56
|
};
|
|
57
|
+
// D402 Phase-2 — single-active lease (optional, back-compat absent).
|
|
58
|
+
const lease = opts.leaseRedis
|
|
59
|
+
? new SingleActiveLease({
|
|
60
|
+
redis: opts.leaseRedis,
|
|
61
|
+
service: opts.service ?? "saga",
|
|
62
|
+
scope: opts.scope ?? DEFAULT_REAPER_LEASE_SCOPE,
|
|
63
|
+
ttlMs: opts.leaseTtlMs ?? DEFAULT_REAPER_LEASE_TTL_MS,
|
|
64
|
+
ownerId: opts.leaseOwnerId,
|
|
65
|
+
})
|
|
66
|
+
: null;
|
|
24
67
|
let running = false;
|
|
25
68
|
const runOnce = async () => {
|
|
26
69
|
if (running)
|
|
27
70
|
return { scanned: 0, reaped: 0 };
|
|
28
71
|
running = true;
|
|
29
72
|
try {
|
|
73
|
+
// D402 Phase-2 — single-active gate. Lease-free ⇒ always reap (back-compat).
|
|
74
|
+
if (lease !== null) {
|
|
75
|
+
if (!lease.leaseAcquired) {
|
|
76
|
+
try {
|
|
77
|
+
await lease.acquire();
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
// FAIL-CLOSED: the lease backend is DOWN (acquire's redis eval
|
|
81
|
+
// threw). The side effect is NON-idempotent, so we must NOT reap
|
|
82
|
+
// without proof of single-active ownership — that risks the exact
|
|
83
|
+
// double-finalize the lease exists to prevent. SKIP this tick + fire
|
|
84
|
+
// the observable hook; the reaper resumes when the backend recovers.
|
|
85
|
+
// (Contrast: the idempotency sweeper fail-OPENs because its SCAN+DEL
|
|
86
|
+
// is idempotent — per hub decision e7eec3aa.)
|
|
87
|
+
opts.onLeaseUnavailable?.({ phase: "acquire", error });
|
|
88
|
+
return { scanned: 0, reaped: 0 };
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
if (!lease.leaseAcquired) {
|
|
92
|
+
// CLEAN not-acquired — another replica holds the lease. This is the
|
|
93
|
+
// benign single-active skip (NOT a backend outage); do NOT fire
|
|
94
|
+
// onLeaseUnavailable. The holder reaps; we idle this tick.
|
|
95
|
+
return { scanned: 0, reaped: 0 };
|
|
96
|
+
}
|
|
97
|
+
}
|
|
30
98
|
const cfg = requireSaga();
|
|
31
99
|
if (!cfg.stateStore.listStalePaused) {
|
|
32
100
|
cfg.logger.warn("saga reaper: configured state store does not implement listStalePaused; reaper is a no-op", {});
|
|
@@ -41,12 +109,36 @@ export function startSagaReaper(opts = {}) {
|
|
|
41
109
|
let reaped = 0;
|
|
42
110
|
for (const row of stale) {
|
|
43
111
|
try {
|
|
112
|
+
// D402 Phase-2 — fence BEFORE the non-idempotent finalize. If we LOST
|
|
113
|
+
// the lease since acquiring (a successor took over), this throws
|
|
114
|
+
// FenceLostError and we abort the row cleanly — finalizing it is now
|
|
115
|
+
// the successor's job. A transient fence-check redis failure throws
|
|
116
|
+
// FenceCheckUnavailableError → fail-CLOSED (we could not prove
|
|
117
|
+
// ownership, so we do NOT finalize without the lease).
|
|
118
|
+
if (lease !== null) {
|
|
119
|
+
const token = lease.fencingToken;
|
|
120
|
+
if (token === null) {
|
|
121
|
+
throw new FenceLostError({
|
|
122
|
+
leaseKey: lease.key,
|
|
123
|
+
expectedToken: -1,
|
|
124
|
+
current: null,
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
await lease.validateFence(token);
|
|
128
|
+
}
|
|
44
129
|
await cfg.stateStore.updateSagaStatus(row.id, {
|
|
45
130
|
status: "technical_failure",
|
|
46
131
|
failure_reason: "resume_signal_timeout",
|
|
47
132
|
completed_at: new Date().toISOString(),
|
|
48
133
|
});
|
|
49
134
|
if (cfg.telemetryAudit) {
|
|
135
|
+
// Re-fence right before the SECOND non-idempotent side effect: the
|
|
136
|
+
// updateSagaStatus above could have raced a lease takeover. Without
|
|
137
|
+
// this a lease-lost reaper that squeaked the status write through
|
|
138
|
+
// would still duplicate the audit row.
|
|
139
|
+
if (lease !== null) {
|
|
140
|
+
await lease.validateFence(lease.fencingToken ?? -1);
|
|
141
|
+
}
|
|
50
142
|
await cfg.telemetryAudit.emit({
|
|
51
143
|
action: "saga_reaper_grace_expired",
|
|
52
144
|
target_kind: "saga",
|
|
@@ -61,6 +153,20 @@ export function startSagaReaper(opts = {}) {
|
|
|
61
153
|
reaped += 1;
|
|
62
154
|
}
|
|
63
155
|
catch (err) {
|
|
156
|
+
if (err instanceof FenceLostError) {
|
|
157
|
+
// A successor took over the lease mid-run — STOP reaping entirely.
|
|
158
|
+
// We are no longer the single-active reaper; the remaining rows are
|
|
159
|
+
// the successor's to finalize. This is NOT a failure to log per-row.
|
|
160
|
+
cfg.logger.warn("saga reaper: lease lost mid-run; ceding remaining sagas to successor", { saga_id: row.id });
|
|
161
|
+
break;
|
|
162
|
+
}
|
|
163
|
+
if (err instanceof FenceCheckUnavailableError) {
|
|
164
|
+
// The fence-check redis read failed transiently — we cannot prove
|
|
165
|
+
// ownership. FAIL-CLOSED: stop reaping this tick + surface the
|
|
166
|
+
// unavailability. The reaper retries on the next tick after recovery.
|
|
167
|
+
opts.onLeaseUnavailable?.({ phase: "fence", error: err });
|
|
168
|
+
break;
|
|
169
|
+
}
|
|
64
170
|
cfg.logger.warn("saga reaper: failed to finalize paused saga", {
|
|
65
171
|
saga_id: row.id,
|
|
66
172
|
error: err instanceof Error ? err.message : String(err),
|
|
@@ -78,8 +184,13 @@ export function startSagaReaper(opts = {}) {
|
|
|
78
184
|
}, intervalMs);
|
|
79
185
|
return {
|
|
80
186
|
runOnce,
|
|
187
|
+
lease,
|
|
81
188
|
stop() {
|
|
82
189
|
scheduler.clearInterval(token);
|
|
190
|
+
// Best-effort lease release on drain so a successor can take over fast.
|
|
191
|
+
if (lease !== null) {
|
|
192
|
+
void lease.release();
|
|
193
|
+
}
|
|
83
194
|
},
|
|
84
195
|
};
|
|
85
196
|
}
|
package/dist/reaper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reaper.js","sourceRoot":"","sources":["../src/reaper.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,EAAE;AACF,mEAAmE;AACnE,uEAAuE;AACvE,qEAAqE;AACrE,6BAA6B;AAC7B,EAAE;AACF,iEAAiE;AACjE,wEAAwE;AACxE,kCAAkC;
|
|
1
|
+
{"version":3,"file":"reaper.js","sourceRoot":"","sources":["../src/reaper.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nodii/saga",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"description": "Saga orchestration library for the Nodii microservice stack — createSaga + step + stepParallel + cross-saga signals + sagaContext interceptor + SagaAdminService factory + @sagaCallable discipline tag + real PostgresSagaStateStore + RedisSignalBus + Pattern 2 async-step + reaper. Polyglot per D159 (TS + Python + Go).",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"ioredis": "^5.4.0",
|
|
34
34
|
"postgres": "^3.4.0",
|
|
35
35
|
"@nodii/grpc-auth": ">=0.5.1 <1.0.0",
|
|
36
|
-
"@nodii/telemetry": ">=0.
|
|
36
|
+
"@nodii/telemetry": ">=0.14.0 <1.0.0"
|
|
37
37
|
},
|
|
38
38
|
"peerDependenciesMeta": {
|
|
39
39
|
"ioredis": {
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
}
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@nodii/db-rls": "0.8.
|
|
48
|
-
"@nodii/grpc-auth": "0.
|
|
49
|
-
"@nodii/telemetry": "0.
|
|
47
|
+
"@nodii/db-rls": "0.8.3",
|
|
48
|
+
"@nodii/grpc-auth": "0.11.0",
|
|
49
|
+
"@nodii/telemetry": "0.16.0",
|
|
50
50
|
"@types/bun": "^1.3.13",
|
|
51
51
|
"ioredis": "^5.4.0",
|
|
52
52
|
"postgres": "^3.4.0",
|