@sensigo/realm 0.31.2 → 0.33.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/engine/abandon-run.d.ts.map +1 -1
- package/dist/engine/abandon-run.js +17 -9
- package/dist/engine/abandon-run.js.map +1 -1
- package/dist/engine/apply-resume.d.ts +43 -0
- package/dist/engine/apply-resume.d.ts.map +1 -0
- package/dist/engine/apply-resume.js +80 -0
- package/dist/engine/apply-resume.js.map +1 -0
- package/dist/engine/defaulted-steps.d.ts +17 -0
- package/dist/engine/defaulted-steps.d.ts.map +1 -0
- package/dist/engine/defaulted-steps.js +26 -0
- package/dist/engine/defaulted-steps.js.map +1 -0
- package/dist/engine/eligibility.d.ts +20 -2
- package/dist/engine/eligibility.d.ts.map +1 -1
- package/dist/engine/eligibility.js +46 -24
- package/dist/engine/eligibility.js.map +1 -1
- package/dist/engine/execution-loop.d.ts +38 -3
- package/dist/engine/execution-loop.d.ts.map +1 -1
- package/dist/engine/execution-loop.js +1500 -112
- package/dist/engine/execution-loop.js.map +1 -1
- package/dist/engine/lifecycle.d.ts +14 -0
- package/dist/engine/lifecycle.d.ts.map +1 -1
- package/dist/engine/lifecycle.js +14 -0
- package/dist/engine/lifecycle.js.map +1 -1
- package/dist/engine/run-health.d.ts +1 -1
- package/dist/engine/run-health.d.ts.map +1 -1
- package/dist/engine/run-health.js +88 -4
- package/dist/engine/run-health.js.map +1 -1
- package/dist/engine/settlement.d.ts +38 -0
- package/dist/engine/settlement.d.ts.map +1 -0
- package/dist/engine/settlement.js +825 -0
- package/dist/engine/settlement.js.map +1 -0
- package/dist/index.d.ts +8 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -2
- package/dist/index.js.map +1 -1
- package/dist/store/json-file-store.d.ts +56 -3
- package/dist/store/json-file-store.d.ts.map +1 -1
- package/dist/store/json-file-store.js +178 -22
- package/dist/store/json-file-store.js.map +1 -1
- package/dist/store/store-interface.d.ts +50 -1
- package/dist/store/store-interface.d.ts.map +1 -1
- package/dist/types/run-record.d.ts +90 -0
- package/dist/types/run-record.d.ts.map +1 -1
- package/dist/types/settlement.d.ts +248 -0
- package/dist/types/settlement.d.ts.map +1 -0
- package/dist/types/settlement.js +2 -0
- package/dist/types/settlement.js.map +1 -0
- package/dist/types/workflow-error.d.ts +1 -1
- package/dist/types/workflow-error.d.ts.map +1 -1
- package/dist/types/workflow-error.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settlement.js","sourceRoot":"","sources":["../../src/engine/settlement.ts"],"names":[],"mappings":"AA4BA,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAQjD,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E;4EAC4E;AAC5E,SAAS,UAAU,CAAC,KAAgB;IAClC,OAAO,KAAK,CAAC,cAAc,KAAK,IAAI,CAAC;AACvC,CAAC;AAED;mGACmG;AACnG,SAAS,IAAI,CAAC,CAA4B;IACxC,OAAO,CAAC,IAAI,IAAI,CAAC;AACnB,CAAC;AAED,iDAAiD;AACjD,SAAS,WAAW,CAAC,CAA4B,EAAE,CAA4B;IAC7E,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;AAC7B,CAAC;AAED;;;6FAG6F;AAC7F,SAAS,aAAa,CAAC,KAAgB,EAAE,OAAgC;IACvE,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,UAAU,CAAC;QAChB,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,eAAe,CAAC;QAC/B,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,YAAY,CAAC;QAC5B,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,aAAa,CAAC;IAC/B,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,OAAO,CAAC,KAAgB,EAAE,IAAY;IAC7C,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACtC,OAAO,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACxE,CAAC;AAED,8EAA8E;AAC9E,SAAS,gBAAgB,CAAC,OAA0B;IAClD,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,UAAU;YACb,OAAO,UAAU,CAAC;QACpB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,MAAM,CAAC;IAClB,CAAC;AACH,CAAC;AAED;iGACiG;AACjG,SAAS,qBAAqB,CAAC,MAAmC;IAChE,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACpC,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SAC1B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC;SACzC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;SACvC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED,8EAA8E;AAC9E,uFAAuF;AACvF,kGAAkG;AAClG,gGAAgG;AAChG,0DAA0D;AAC1D,8EAA8E;AAE9E;yDACyD;AACzD,SAAS,iBAAiB,CAAC,OAE1B;IACC,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC;IAC/B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,GAAG,EAAE,CAAC;IACxC,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAC9B,UAA8B,EAC9B,gBAAqC,EACrC,OAA0B;IAE1B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5D,IAAI,IAAI,CAAC,SAAS,KAAK,WAAW;YAAE,SAAS;QAC7C,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS,CAAC,kDAAkD;QAC5F,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACxC,IAAI,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC;AAChC,CAAC;AAED,8EAA8E;AAC9E,kEAAkE;AAClE,8EAA8E;AAE9E;;;;;;;;;;;GAWG;AACH,SAAS,SAAS,CAChB,MAAiB,EACjB,UAA8B,EAC9B,OAA0B;IAE1B,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,eAAe,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IACtF,MAAM,QAAQ,GAAG,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;IACzE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC,gBAAgB,CAAC;IAE1D,MAAM,MAAM,GAAoB,EAAE,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;IAC/D,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,KAAK,EAAE,MAAM,KAAK,WAAW,IAAI,KAAK,EAAE,MAAM,KAAK,QAAQ;YAAE,SAAS,CAAC,kBAAkB;QAC7F,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,6CAA6C;IACnG,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8EAA8E;AAC9E,iGAAiG;AACjG,8FAA8F;AAC9F,4FAA4F;AAC5F,6FAA6F;AAC7F,4FAA4F;AAC5F,kGAAkG;AAClG,uDAAuD;AACvD,8EAA8E;AAE9E;;;;;;;GAOG;AACH,SAAS,2BAA2B,CAClC,MAAiB,EACjB,UAA8B,EAC9B,WAA8B,EAC9B,cAAuB;IAEvB,MAAM,YAAY,GAAG,MAAM,CAAC,cAAc,KAAK,IAAI,CAAC;IACpD,IAAI,MAAM,GAAG,MAAM,CAAC;IACpB,IAAI,YAAY,EAAE,CAAC;QACjB,oEAAoE;QACpE,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAC1D,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QACtF,8FAA8F;QAC9F,iDAAiD;QACjD,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,cAAc,GAAG,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC7D,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC;QACzF,CAAC;IACH,CAAC;IACD,MAAM,SAAS,GAAc,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;IAC9E,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;AAC1C,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E,SAAS,eAAe,CACtB,KAAgB,EAChB,KAAsB,EACtB,UAA8B,EAC9B,GAAS;IAET,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAE7E,mDAAmD;IACnD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACtC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;YAC7C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,0BAA0B,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QAC5E,CAAC;QACD,IAAI,gBAAgB,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,OAAO,EAAE,CAAC;YACnD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,mBAAmB;QACvF,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,4BAA4B,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAC9E,CAAC;IAED,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAChE,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;QACjE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAC9D,CAAC;IAED,IAAI,KAAK,CAAC,YAAY,EAAE,SAAS,KAAK,IAAI,EAAE,CAAC;QAC3C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,gCAAgC;IAClG,CAAC;IAED,IAAI,OAAO,KAAK,OAAO,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/C,qFAAqF;QACrF,MAAM,IAAI,KAAK,CACb,mEAAmE,IAAI,QAAQ;YAC7E,wCAAwC,CAC3C,CAAC;IACJ,CAAC;IAED,uEAAuE;IACvE,MAAM,cAAc,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACjD,MAAM,cAAc,GAAc;QAChC,GAAG,KAAK;QACR,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;QACpE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC;QACrC,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,QAAQ,CAAC;QAC1C,OAAO,EAAE,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE;QAC3F,GAAG,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,GAAG,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxF,GAAG,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,GAAG,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,GAAG,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClF,CAAC;IAEF,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,cAAc,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,KAAM,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,uBAAuB,CAAC,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;AAC5F,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CACrB,KAAgB,EAChB,cAAyB,EACzB,IAAY,EACZ,KAA4C,EAC5C,UAA8B,EAC9B,GAAS;IAET,MAAM,UAAU,GAAG,cAAc,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAc;QAC7B,GAAG,cAAc;QACjB,aAAa,EAAE,UAAU,CAAC,OAAO;QACjC,YAAY,EAAE,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE;KAC3E,CAAC;IACF,IAAI,OAAO,GAAc;QACvB,GAAG,WAAW;QACd,cAAc,EAAE,IAAI;QACpB,eAAe,EAAE,YAAY,IAAI,sBAAsB,KAAK,CAAC,YAAY,EAAE;QAC3E,UAAU,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,YAAY,EAAE;KACzE,CAAC;IAEF,6FAA6F;IAC7F,6FAA6F;IAC7F,+FAA+F;IAC/F,iGAAiG;IACjG,gCAAgC;IAChC,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,KAAK,CAAC,YAAY,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;QAC9E,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC;QAClD,MAAM,eAAe,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC;QACnD,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,WAAW,EAAE,GAAG,OAAO,CAAC;QAC/D,OAAO,GAAG;YACR,GAAG,WAAW;YACd,iBAAiB,EAAE,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,YAAY,CAAC;YAClF,MAAM,EAAE,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC;YACnD,aAAa,EAAE,CAAC,GAAG,WAAW,CAAC,aAAa,EAAE,YAAY,CAAC;YAC3D,YAAY,EAAE;gBACZ,GAAG,WAAW,CAAC,YAAY;gBAC3B,oFAAoF;gBACpF,gEAAgE;gBAChE,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,eAAe,EAAE;aAC9E;YACD,QAAQ,EAAE;gBACR,GAAG,WAAW,CAAC,QAAQ;gBACvB,eAAe,CAAC;oBACd,MAAM,EAAE,YAAY;oBACpB,SAAS,EAAE,GAAG;oBACd,WAAW,EAAE,GAAG;oBAChB,KAAK,EAAE,EAAE;oBACT,MAAM,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,eAAe,EAAE;iBACtF,CAAC;aACH;SACF,CAAC;IACJ,CAAC;IAED,+FAA+F;IAC/F,yFAAyF;IACzF,wEAAwE;IACxE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,2BAA2B,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/F,OAAO;QACL,OAAO,EAAE,IAAI;QACb,GAAG;QACH,YAAY;QACZ,iBAAiB,EAAE,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,CAAC;KAC/D,CAAC;AACJ,CAAC;AAED;wCACwC;AACxC,SAAS,uBAAuB,CAC9B,cAAyB,EACzB,IAAY,EACZ,OAA4B,EAC5B,cAAkC,EAClC,UAA8B;IAE9B,MAAM,UAAU,GAAG,cAAc,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAc;QAC7B,GAAG,cAAc;QACjB,aAAa,EAAE,UAAU,CAAC,OAAO;QACjC,YAAY,EAAE,UAAU,CAAC,OAAO;KACjC,CAAC;IACF,MAAM,UAAU,GACd,kBAAkB,CAAC,WAAW,EAAE,UAAU,CAAC;QAC3C,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC;YACzC,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,MAAM,KAAK,CAAC;YACvD,sBAAsB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IAElE,MAAM,KAAK,GAAc;QACvB,GAAG,WAAW;QACd,cAAc,EAAE,UAAU;QAC1B,GAAG,CAAC,UAAU;YACZ,CAAC,CAAC;gBACE,eAAe,EACb,OAAO,KAAK,UAAU;oBACpB,CAAC,CAAC,qBAAqB,CAAC,8DAA8D;oBACtF,CAAC,CAAC,SAAS,IAAI,aAAa,cAAc,IAAI,eAAe,EAAE;aACpE;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IAEF,gGAAgG;IAChG,8CAA8C;IAC9C,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,2BAA2B,CACvD,KAAK,EACL,UAAU,EACV,OAAO,EACP,OAAO,KAAK,UAAU,IAAI,UAAU,CACrC,CAAC;IACF,OAAO;QACL,OAAO,EAAE,IAAI;QACb,GAAG;QACH,YAAY;QACZ,iBAAiB,EAAE,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,CAAC;KAC/D,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,2FAA2F;AAC3F,6BAA6B;AAC7B,8EAA8E;AAE9E,SAAS,aAAa,CAAC,KAAgB,EAAE,KAAoB;IAC3D,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAE1D,yFAAyF;IACzF,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACtC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,QAAQ,CAAC,OAAO,KAAK,MAAM,IAAI,QAAQ,CAAC,KAAK,KAAK,WAAW,CAAC,OAAO,EAAE,CAAC;YAC1E,sFAAsF;YACtF,gEAAgE;YAChE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QACnE,CAAC;QACD,uFAAuF;QACvF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,0BAA0B,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAC5E,CAAC;IAED,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAChE,CAAC;IAED,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,KAAK,CAAC,YAAY,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC1C,IAAI,KAAK,CAAC,YAAY,CAAC,OAAO,KAAK,WAAW,CAAC,OAAO,EAAE,CAAC;gBACvD,wEAAwE;gBACxE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;YACnE,CAAC;YACD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,KAAK,KAAK,SAAS,IAAI,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;gBAChE,mFAAmF;gBACnF,oFAAoF;gBACpF,kEAAkE;gBAClE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;YAC1F,CAAC;YACD,wFAAwF;YACxF,4DAA4D;YAC5D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QAC9D,CAAC;QACD,sFAAsF;QACtF,sFAAsF;QACtF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IACjE,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;QACjE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAC9D,CAAC;IAED,gGAAgG;IAChG,4FAA4F;IAC5F,iGAAiG;IACjG,MAAM,QAAQ,GAAc;QAC1B,GAAG,KAAK;QACR,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,QAAQ,CAAC;QAC1C,YAAY,EAAE,WAAW;KAC1B,CAAC;IACF,MAAM,GAAG,GAAc,EAAE,GAAG,QAAQ,EAAE,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC5E,OAAO;QACL,OAAO,EAAE,IAAI;QACb,GAAG;QACH,YAAY,EAAE,KAAK;QACnB,iBAAiB,EAAE,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,CAAC;KAC/D,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,kGAAkG;AAClG,8EAA8E;AAE9E;;;;;;;;;;GAUG;AACH,SAAS,oBAAoB,CAC3B,KAAgB,EAChB,MAAc;IAEd,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC;QAChE,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,IAAI,KAAK,CAAC,KAAK,KAAK,MAAM;YAAE,SAAS;QACjE,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,SAAS,CAAC,cAAc;QACjF,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IACxC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CACtB,KAAgB,EAChB,KAAsB,EACtB,UAA8B;IAE9B,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAE3C,6FAA6F;IAC7F,qBAAqB;IACrB,MAAM,GAAG,GAAG,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAChD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC1B,mFAAmF;YACnF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QACnE,CAAC;QACD,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,sBAAsB;YAC9B,GAAG,EAAE,KAAK;YACV,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;IACJ,CAAC;IAED,0FAA0F;IAC1F,gGAAgG;IAChG,+FAA+F;IAC/F,iDAAiD;IACjD,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAChE,CAAC;IAED,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,KAAK,CAAC,YAAY,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC9E,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,qBAAqB;gBAC7B,GAAG,EAAE,KAAK;gBACV,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,OAAO;aACpC,CAAC;QACJ,CAAC;QAED,mFAAmF;QACnF,oFAAoF;QACpF,0FAA0F;QAC1F,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC;QAC9C,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;QAC7C,MAAM,cAAc,GAAc;YAChC,GAAG,IAAI;YACP,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC;YACvE,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC;YACxC,eAAe,EAAE,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC;YACpD,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,QAAQ,CAAC;YACzC,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;SACrF,CAAC;QACF,MAAM,UAAU,GAAG,cAAc,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAC9D,MAAM,WAAW,GAAc;YAC7B,GAAG,cAAc;YACjB,aAAa,EAAE,UAAU,CAAC,OAAO;YACjC,YAAY,EAAE,UAAU,CAAC,OAAO;SACjC,CAAC;QACF,MAAM,UAAU,GACd,kBAAkB,CAAC,WAAW,EAAE,UAAU,CAAC;YAC3C,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC;gBACzC,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,MAAM,KAAK,CAAC;gBACvD,sBAAsB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QAClE,MAAM,KAAK,GAAc;YACvB,GAAG,WAAW;YACd,cAAc,EAAE,UAAU;YAC1B,4EAA4E;YAC5E,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClE,CAAC;QACF,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,2BAA2B,CACvD,KAAK,EACL,UAAU,EACV,UAAU,EACV,UAAU,CACX,CAAC;QACF,OAAO;YACL,OAAO,EAAE,IAAI;YACb,GAAG;YACH,YAAY;YACZ,iBAAiB,EAAE,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,CAAC;SAC/D,CAAC;IACJ,CAAC;IAED,2CAA2C;IAC3C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;AACjE,CAAC;AAED,8EAA8E;AAC9E,4FAA4F;AAC5F,uDAAuD;AACvD,8EAA8E;AAE9E,SAAS,gBAAgB,CACvB,KAAgB,EAChB,OAAoC;IAEpC,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,eAAe,CAAC;QAC/B,KAAK,kBAAkB;YACrB,OAAO,KAAK,CAAC,YAAY,CAAC;QAC5B,KAAK,OAAO;YACV,OAAO,KAAK,CAAC,aAAa,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,KAAgB,EAChB,KAAuB,EACvB,UAA8B;IAE9B,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAElE,IAAI,OAAO,KAAK,kBAAkB,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QACpE,2FAA2F;QAC3F,MAAM,IAAI,KAAK,CACb,oEAAoE,IAAI,QAAQ;YAC9E,6DAA6D,CAChE,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CACb,oEAAoE,IAAI,QAAQ;YAC9E,wCAAwC,CAC3C,CAAC;IACJ,CAAC;IAED,kGAAkG;IAClG,IAAI,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpD,IAAI,OAAO,KAAK,OAAO,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,KAAK,aAAa,EAAE,CAAC;YAC9E,mFAAmF;YACnF,wFAAwF;YACxF,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,4BAA4B;gBACpC,GAAG,EAAE,KAAK;gBACV,SAAS,EAAE,gBAAgB;aAC5B,CAAC;QACJ,CAAC;QACD,iEAAiE;QACjE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IACnE,CAAC;IAED,sFAAsF;IACtF,6EAA6E;IAC7E,IAAI,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,4BAA4B;YACpC,GAAG,EAAE,KAAK;YACV,SAAS,EAAE,UAAU;SACtB,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,4BAA4B,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IACjG,CAAC;IACD,IAAI,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,4BAA4B,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IACjG,CAAC;IAED,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,oBAAoB;IACrF,CAAC;IAED,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QAC3D,yFAAyF;QACzF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAClE,CAAC;IAED,eAAe;IACf,IAAI,OAAO,KAAK,kBAAkB,EAAE,CAAC;QACnC,MAAM,UAAU,GAAc;YAC5B,GAAG,KAAK;YACR,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;YACvC,YAAY,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,EAAE,IAAI,CAAC;SAC5C,CAAC;QACF,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAc;YAC7B,GAAG,UAAU;YACb,aAAa,EAAE,UAAU,CAAC,OAAO;YACjC,YAAY,EAAE,UAAU,CAAC,OAAO;SACjC,CAAC;QACF,MAAM,KAAK,GAAc;YACvB,GAAG,WAAW;YACd,cAAc,EAAE,IAAI;YACpB,iCAAiC;YACjC,eAAe,EAAE,eAAe,IAAI,gCAAgC,eAAgB,CAAC,iBAAiB,GAAG;SAC1G,CAAC;QACF,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,2BAA2B,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5F,OAAO;YACL,OAAO,EAAE,IAAI;YACb,GAAG;YACH,YAAY;YACZ,iBAAiB,EAAE,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,CAAC;SAC/D,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,MAAM,eAAe,GAAc;YACjC,GAAG,KAAK;YACR,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;YACvC,aAAa,EAAE,CAAC,GAAG,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;SAC9C,CAAC;QACF,MAAM,UAAU,GAAG,cAAc,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAc;YAC7B,GAAG,eAAe;YAClB,aAAa,EAAE,UAAU,CAAC,OAAO;YACjC,0FAA0F;YAC1F,yEAAyE;YACzE,YAAY,EAAE,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE;SACzE,CAAC;QACF,MAAM,KAAK,GAAc;YACvB,GAAG,WAAW;YACd,cAAc,EAAE,IAAI;YACpB,+EAA+E;YAC/E,UAAU,EAAE;gBACV,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,KAAM,CAAC,UAAU;gBAC7B,GAAG,CAAC,KAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvF;SACF,CAAC;QACF,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,2BAA2B,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAC7F,OAAO;YACL,OAAO,EAAE,IAAI;YACb,GAAG;YACH,YAAY;YACZ,iBAAiB,EAAE,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,CAAC;SAC/D,CAAC;IACJ,CAAC;IAED,gFAAgF;IAChF,MAAM,aAAa,GAAc;QAC/B,GAAG,KAAK;QACR,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;QACvC,eAAe,EAAE,CAAC,GAAG,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC;KAClD,CAAC;IACF,MAAM,UAAU,GAAG,cAAc,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAc;QAC7B,GAAG,aAAa;QAChB,aAAa,EAAE,UAAU,CAAC,OAAO;QACjC,YAAY,EAAE,UAAU,CAAC,OAAO;KACjC,CAAC;IACF,MAAM,UAAU,GACd,kBAAkB,CAAC,WAAW,EAAE,UAAU,CAAC;QAC3C,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC;YACzC,iBAAiB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,MAAM,KAAK,CAAC;YACvD,sBAAsB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IAClE,MAAM,KAAK,GAAc;QACvB,GAAG,WAAW;QACd,cAAc,EAAE,UAAU;QAC1B,6FAA6F;QAC7F,qBAAqB;QACrB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClE,CAAC;IACF,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,2BAA2B,CACvD,KAAK,EACL,UAAU,EACV,UAAU,EACV,UAAU,CACX,CAAC;IACF,OAAO;QACL,OAAO,EAAE,IAAI;QACb,GAAG;QACH,YAAY;QACZ,iBAAiB,EAAE,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,CAAC;KAC/D,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,kGAAkG;AAClG,mDAAmD;AACnD,8EAA8E;AAE9E,SAAS,gBAAgB,CAAC,KAAgB,EAAE,KAAuB,EAAE,GAAS;IAC5E,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAE9D,IAAI,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;QACvC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,0BAA0B,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAC5E,CAAC;IAED,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAChE,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,0FAA0F;QAC1F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IACpE,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;QAC1C,sEAAsE;QACtE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,EAAE,SAAS,KAAK,IAAI,EAAE,CAAC;QAC3C,0FAA0F;QAC1F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IACjE,CAAC;IAED,+EAA+E;IAC/E,2FAA2F;IAC3F,iGAAiG;IACjG,MAAM,WAAW,GAAc;QAC7B,GAAG,KAAK;QACR,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;QACpE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC;QACrC,GAAG,CAAC,eAAe,KAAK,SAAS;YAC/B,CAAC,CAAC;gBACE,iBAAiB,EAAE;oBACjB,GAAG,KAAK,CAAC,iBAAiB;oBAC1B,CAAC,IAAI,CAAC,EAAE;wBACN,WAAW,EAAE,eAAe,CAAC,WAAW;wBACxC,IAAI,EAAE,eAAe,CAAC,IAAI;wBAC1B,EAAE,EAAE,GAAG,CAAC,WAAW,EAAE;qBACtB;iBACF;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClF,CAAC;IACF,MAAM,GAAG,GAAc,EAAE,GAAG,WAAW,EAAE,SAAS,EAAE,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;IAClF,OAAO;QACL,OAAO,EAAE,IAAI;QACb,GAAG;QACH,YAAY,EAAE,KAAK;QACnB,iBAAiB,EAAE,qBAAqB,CAAC,GAAG,CAAC,gBAAgB,CAAC;KAC/D,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,2DAA2D;AAC3D,8EAA8E;AAE9E,SAAS,mBAAmB,CAC1B,KAAgB,EAChB,KAA0B,EAC1B,GAAS;IAET,6FAA6F;IAC7F,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IACpE,CAAC;IACD,MAAM,CAAC,GAAG,KAAK,CAAC,gBAAgB,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,sCAAsC;IACvG,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,qCAAqC;IAC5G,CAAC;IAED,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;IAC5B,MAAM,WAAW,GACf,CAAC,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACpF,IACE,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC;QAC5C,WAAW,KAAK,SAAS;QACzB,WAAW,GAAG,KAAK,EACnB,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,4BAA4B;IAC/F,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,IAAI,CAC/D,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAC7D,CAAC;IACF,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAChE,CAAC;IACD,IAAI,CAAC,CAAC,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,GAAG,KAAK,EAAE,CAAC;QACpF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAC9D,CAAC;IAED,sGAAsG;IACtG,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IACrE,MAAM,aAAa,GAAG,IAAI,IAAI,CAAC,KAAK,GAAG,cAAc,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5E,MAAM,MAAM,GAAoB;QAC9B,GAAG,KAAK,CAAC,gBAAgB;QACzB,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE;KAC1F,CAAC;IACF,MAAM,GAAG,GAAc,EAAE,GAAG,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC9D,OAAO;QACL,OAAO,EAAE,IAAI;QACb,GAAG;QACH,YAAY,EAAE,KAAK;QACnB,iBAAiB,EAAE,qBAAqB,CAAC,MAAM,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E,SAAS,kBAAkB,CAAC,KAAgB,EAAE,KAAyB;IACrE,MAAM,CAAC,GAAG,KAAK,CAAC,gBAAgB,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAChE,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;YAC9E,mEAAmE;YACnE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;QAClE,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,gCAAgC;IACvG,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QAClD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAC9D,CAAC;IACD,2FAA2F;IAC3F,gEAAgE;IAChE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IACpE,CAAC;IAED,wFAAwF;IACxF,sBAAsB;IACtB,MAAM,MAAM,GAAoB;QAC9B,GAAG,KAAK,CAAC,gBAAgB;QACzB,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE;KAClD,CAAC;IACF,MAAM,qBAAqB,GACzB,KAAK,CAAC,MAAM,KAAK,WAAW;QAC1B,CAAC,CAAC;YACE,GAAG,KAAK;YACR,gBAAgB,EAAE,MAAM;YACxB,eAAe,EAAE,CAAC,GAAG,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC;YAC5D,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC;SAC9C;QACH,CAAC,CAAC;YACE,GAAG,KAAK;YACR,gBAAgB,EAAE,MAAM;YACxB,YAAY,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC;YACtD,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC;SAC9C,CAAC;IACR,MAAM,GAAG,GAAc;QACrB,GAAG,qBAAqB;QACxB,SAAS,EAAE,cAAc,CAAC,qBAAqB,CAAC;KACjD,CAAC;IACF,OAAO;QACL,OAAO,EAAE,IAAI;QACb,GAAG;QACH,YAAY,EAAE,KAAK;QACnB,iBAAiB,EAAE,qBAAqB,CAAC,MAAM,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAC7B,KAAgB,EAChB,KAAsB,EACtB,UAA8B,EAC9B,OAAwB;IAExB,MAAM,GAAG,GAAG,OAAO,EAAE,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;IACvC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,aAAa;YAChB,OAAO,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;QACxD,KAAK,iBAAiB;YACpB,OAAO,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QAChD,KAAK,gBAAgB;YACnB,OAAO,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC1C,KAAK,WAAW;YACd,OAAO,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACrC,KAAK,aAAa;YAChB,OAAO,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QACnD,KAAK,cAAc;YACjB,OAAO,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QACpD,KAAK,cAAc;YACjB,OAAO,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,yBAAyB,GACpC,qHAAqH,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -27,7 +27,13 @@ export type { SubmitGateOptions, ExecuteChainOptions } from './engine/execution-
|
|
|
27
27
|
export { findEligibleSteps, isWorkflowComplete, deriveRunPhase, buildEvidenceByStep, buildSettlementNamespace, propagateSkips, isStepSettledOrInFlight, } from './engine/eligibility.js';
|
|
28
28
|
export { adoptsLine, partitionBufferedEntries } from './engine/trace-adoption.js';
|
|
29
29
|
export type { BufferedEntryPartition } from './engine/trace-adoption.js';
|
|
30
|
-
export {
|
|
30
|
+
export { deriveDefaultedSteps } from './engine/defaulted-steps.js';
|
|
31
|
+
export { applySettlement, selectFinalizers, RECLAIM_REFUSES_GATE_STEP, } from './engine/settlement.js';
|
|
32
|
+
export { applyResume } from './engine/apply-resume.js';
|
|
33
|
+
export type { ApplyResumeResult, ApplyResumeVoidedFinalizer } from './engine/apply-resume.js';
|
|
34
|
+
export { drainFinalizers } from './engine/execution-loop.js';
|
|
35
|
+
export type { SettlementDelta, SettleStepDelta, SettleStepOutcome, LeaseFinalizerDelta, MarkFinalizerDelta, MarkFinalizerResult, SettlementResult, SettlementRefusalReason, SettlementNoopReason, } from './types/settlement.js';
|
|
36
|
+
export { TERMINAL_PHASES, RESUMABLE_PHASES, WAITING_PHASES, isTerminalPhase, TERMINAL_STATES, RESUMABLE_STATES, WAITING_STATES, isTerminalState, DRAIN_LEASE_MAX, } from './engine/lifecycle.js';
|
|
31
37
|
export { computeClaimDeadline, classifyClaim, classifyInProgressClaims, omitClaim, DEFAULT_STEP_TIMEOUT_SECONDS, DEFAULT_EXECUTION_TIMEOUT_SECONDS, RECLAIM_MARGIN_SECONDS, RECLAIM_FLOOR_SECONDS, shouldEnforceTimeout, worstCaseScheduleSeconds, resolveCapMs, } from './engine/claim-liveness.js';
|
|
32
38
|
export type { ClaimState, InProgressClaimInfo } from './engine/claim-liveness.js';
|
|
33
39
|
export { reclaimStep } from './engine/reclaim-step.js';
|
|
@@ -39,7 +45,7 @@ export type { Requirement, CapabilityBlockInfo } from './engine/capability.js';
|
|
|
39
45
|
export { evaluatePrecondition, checkPreconditions, evaluateAllPreconditions, } from './engine/precondition.js';
|
|
40
46
|
export type { PreconditionResult } from './engine/precondition.js';
|
|
41
47
|
export type { StepDiagnostics } from './types/run-record.js';
|
|
42
|
-
export declare const VERSION = "0.
|
|
48
|
+
export declare const VERSION = "0.33.0";
|
|
43
49
|
export type { ToolCallRecord, McpServerConfig } from './types/mcp-types.js';
|
|
44
50
|
export type { ServiceAdapter, ServiceResponse } from './extensions/service-adapter.js';
|
|
45
51
|
export type { StepHandler, StepHandlerInputs, StepContext, StepHandlerResult, } from './extensions/step-handler.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAC9E,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,YAAY,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,YAAY,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,YAAY,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EACL,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,wBAAwB,EACxB,yBAAyB,EACzB,2BAA2B,EAC3B,SAAS,EACT,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,YAAY,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EACL,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,0CAA0C,CAAC;AAClD,YAAY,EACV,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,kBAAkB,EAClB,gCAAgC,GACjC,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC/E,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrF,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,8BAA8B,EAC9B,uCAAuC,GACxC,MAAM,4BAA4B,CAAC;AACpC,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACzF,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,wBAAwB,EACxB,cAAc,EACd,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,UAAU,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAClF,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -20,13 +20,22 @@ export { findEligibleSteps, isWorkflowComplete, deriveRunPhase, buildEvidenceByS
|
|
|
20
20
|
// The unified writer partition (issue #197 PR-2) — the ONE authoritative adoption predicate;
|
|
21
21
|
// see trace-adoption.ts's own module doc for the full contract.
|
|
22
22
|
export { adoptsLine, partitionBufferedEntries } from './engine/trace-adoption.js';
|
|
23
|
-
|
|
23
|
+
// The shared default-settled-step derivation (issue #232) — the ONE authoritative scan of
|
|
24
|
+
// `evidence[].diagnostics.settled_by_default`; see defaulted-steps.ts's own module doc.
|
|
25
|
+
export { deriveDefaultedSteps } from './engine/defaulted-steps.js';
|
|
26
|
+
// Atomic settlement (issue #279, increment 1, PR-A) — the pure transform + finalizer selection.
|
|
27
|
+
// DORMANT: no engine/mcp call site constructs a SettlementDelta or calls settleStep in this
|
|
28
|
+
// release (enforced by an in-repo source-text guard — see its own test for the exact scope).
|
|
29
|
+
export { applySettlement, selectFinalizers, RECLAIM_REFUSES_GATE_STEP, } from './engine/settlement.js';
|
|
30
|
+
export { applyResume } from './engine/apply-resume.js';
|
|
31
|
+
export { drainFinalizers } from './engine/execution-loop.js';
|
|
32
|
+
export { TERMINAL_PHASES, RESUMABLE_PHASES, WAITING_PHASES, isTerminalPhase, TERMINAL_STATES, RESUMABLE_STATES, WAITING_STATES, isTerminalState, DRAIN_LEASE_MAX, } from './engine/lifecycle.js';
|
|
24
33
|
export { computeClaimDeadline, classifyClaim, classifyInProgressClaims, omitClaim, DEFAULT_STEP_TIMEOUT_SECONDS, DEFAULT_EXECUTION_TIMEOUT_SECONDS, RECLAIM_MARGIN_SECONDS, RECLAIM_FLOOR_SECONDS, shouldEnforceTimeout, worstCaseScheduleSeconds, resolveCapMs, } from './engine/claim-liveness.js';
|
|
25
34
|
export { reclaimStep } from './engine/reclaim-step.js';
|
|
26
35
|
export { classifyRunHealth, DEFAULT_IDLE_THRESHOLD_MS } from './engine/run-health.js';
|
|
27
36
|
export { requirementForStep, unmetCapabilities, findCapabilityBlockedSteps, capabilityWarning, } from './engine/capability.js';
|
|
28
37
|
export { evaluatePrecondition, checkPreconditions, evaluateAllPreconditions, } from './engine/precondition.js';
|
|
29
|
-
export const VERSION = '0.
|
|
38
|
+
export const VERSION = '0.33.0';
|
|
30
39
|
export { ExtensionRegistry } from './extensions/registry.js';
|
|
31
40
|
export { createDefaultRegistry } from './extensions/default-registry.js';
|
|
32
41
|
export { validateDeploymentManifest, collectManifestSecretRefs, DEPLOYMENT_MANIFEST_JSON_SCHEMA, } from './manifest/deployment-manifest.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,41 @@
|
|
|
1
1
|
import type { RunRecord } from '../types/run-record.js';
|
|
2
2
|
import type { WorkflowDefinition } from '../types/workflow-definition.js';
|
|
3
|
+
import type { SettlementDelta, SettlementResult } from '../types/settlement.js';
|
|
3
4
|
import type { RunStore, CreateRunOptions, LoadBearingRunRecordField } from './store-interface.js';
|
|
4
5
|
import type { PerRunArtifactStore } from './per-run-artifact-store.js';
|
|
6
|
+
/**
|
|
7
|
+
* Shared `proper-lockfile` retry policy for EVERY lock this store takes — the 4 run-file
|
|
8
|
+
* critical-section locks (`update`/`claimStep`/`save`/`deleteAllForRun`) and the 3 per-key locks
|
|
9
|
+
* (`create`'s resolve-or-claim section, `registerImportedKey`, `deleteAllForRun`'s pointer delete)
|
|
10
|
+
* (issue #191).
|
|
11
|
+
*
|
|
12
|
+
* `proper-lockfile` forwards this object VERBATIM to the `retry` package
|
|
13
|
+
* (`retry.operation(options.retries)` — see `node_modules/proper-lockfile/lib/lockfile.js`), which
|
|
14
|
+
* reads every field below itself (`node_modules/retry/lib/retry.js` + `retry_operation.js`) — no
|
|
15
|
+
* filtering at either layer.
|
|
16
|
+
*
|
|
17
|
+
* - `randomize: true` — the LOAD-BEARING fix: without it (the `retry` package's own default),
|
|
18
|
+
* every contender computes the IDENTICAL deterministic backoff schedule and re-collides in
|
|
19
|
+
* lockstep under fan-out (a thundering herd). With it, `retry`'s `createTimeout` multiplies each
|
|
20
|
+
* attempt's delay by a fresh `Math.random() + 1` draw — contenders de-synchronize.
|
|
21
|
+
* - `maxTimeout: 1000` — caps any SINGLE attempt's sleep (also closes the OLD per-key retry
|
|
22
|
+
* policy's latent worst-case: uncapped, its 10th attempt alone could sleep up to 25.6s).
|
|
23
|
+
* - `maxRetryTime: 5000` — a TOTAL-TIME budget (the SQLite `busy_timeout` model): `retry`'s
|
|
24
|
+
* `RetryOperation.retry()` checks elapsed wall-time against this on every failed attempt and
|
|
25
|
+
* gives up once exceeded, REGARDLESS of `retries` remaining — so contention degrades gracefully
|
|
26
|
+
* into one retryable `STATE_RUN_BUSY` (Fix C) at a bounded ~5s, rather than either a hard count
|
|
27
|
+
* bound (~6.5s+ worst case with 10 retries × up to 1s each, uncapped further by jitter) or (pre-
|
|
28
|
+
* #191) failing fatally. Confirmed forwarding (not just by the source read above): a live check
|
|
29
|
+
* in this file's test suite holds a lock and asserts a SMALL-scale `maxRetryTime` cuts off well
|
|
30
|
+
* before the count-bound worst case would.
|
|
31
|
+
*/
|
|
32
|
+
export declare const LOCK_RETRIES: {
|
|
33
|
+
readonly retries: 10;
|
|
34
|
+
readonly minTimeout: 50;
|
|
35
|
+
readonly maxTimeout: 1000;
|
|
36
|
+
readonly randomize: true;
|
|
37
|
+
readonly maxRetryTime: 5000;
|
|
38
|
+
};
|
|
5
39
|
/** Summary returned by {@link JsonFileStore.reconcileKeys}. */
|
|
6
40
|
export interface ReconcileSummary {
|
|
7
41
|
/** Number of distinct (workflow_id, idempotency_key) groups encountered. */
|
|
@@ -89,6 +123,21 @@ export declare class JsonFileStore implements RunStore, PerRunArtifactStore {
|
|
|
89
123
|
get(runId: string): Promise<RunRecord>;
|
|
90
124
|
update(record: RunRecord): Promise<RunRecord>;
|
|
91
125
|
claimStep(runId: string, stepName: string, definition: WorkflowDefinition): Promise<RunRecord>;
|
|
126
|
+
/**
|
|
127
|
+
* Atomically applies one `SettlementDelta` to this run's fresh state (issue #279). LIVE since
|
|
128
|
+
* v0.32.0 for `settle_step`/`lease_finalizer`/`mark_finalizer` — see the JSDoc on
|
|
129
|
+
* `RunStore.settleStep` for the full contract (the increment-2 gate/guard/release kinds stay
|
|
130
|
+
* engine-inert until PR-D; write-surface obligations, atomicity, infra-throws/predicate-returns
|
|
131
|
+
* apply uniformly regardless of kind). Same lock/fresh-read shape as `update()` (ENOENT/ELOCKED
|
|
132
|
+
* mapping identical): LOCK_RETRIES lock → fresh read →
|
|
133
|
+
* `applySettlement` → a refusal returns WITHOUT any write (fresh state, version unchanged) → an
|
|
134
|
+
* apply writes the transform's own output with the write-tail `{version: fresh.version+1,
|
|
135
|
+
* updated_at}` (run_phase is already transform-derived; this store's own re-derivation below is
|
|
136
|
+
* idempotent on that already-correct value, exactly like `update()`'s own write-tail).
|
|
137
|
+
*/
|
|
138
|
+
settleStep(runId: string, delta: SettlementDelta, definition: WorkflowDefinition, options?: {
|
|
139
|
+
now?: Date;
|
|
140
|
+
}): Promise<SettlementResult>;
|
|
92
141
|
/**
|
|
93
142
|
* Writes a run record with its existing ID to local storage.
|
|
94
143
|
* Used for importing records fetched from a remote store.
|
|
@@ -135,9 +184,13 @@ export declare class JsonFileStore implements RunStore, PerRunArtifactStore {
|
|
|
135
184
|
listRunIds(): Promise<ReadonlySet<string>>;
|
|
136
185
|
/**
|
|
137
186
|
* Builds the `STATE_RUN_BUSY` error thrown when `deleteAllForRun` cannot proceed because
|
|
138
|
-
* another writer holds the run-file (or key) lock,
|
|
139
|
-
* (issue #184)
|
|
140
|
-
*
|
|
187
|
+
* another writer holds the run-file (or key) lock, because the run is no longer terminal
|
|
188
|
+
* (issue #184), or because a finalizer ledger entry is still `'pending'` (issue #279, increment
|
|
189
|
+
* 1, PR-B: `drain_pending` — R11). Retryable: a live writer self-heals (the lock is released), a
|
|
190
|
+
* genuinely stale lock is eventually stolen by the next contender, and a pending finalizer is
|
|
191
|
+
* eventually drained or voided by an operator — but `drain_pending` is deliberately NOT
|
|
192
|
+
* force-bypassable at the CLI layer (residual R11, owner-ratified): the escape is `realm run
|
|
193
|
+
* drain` or `--void`, never `purge --force`.
|
|
141
194
|
*/
|
|
142
195
|
private runBusyError;
|
|
143
196
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-file-store.d.ts","sourceRoot":"","sources":["../../src/store/json-file-store.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"json-file-store.d.ts","sourceRoot":"","sources":["../../src/store/json-file-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,14 +10,49 @@ import lockfile from 'proper-lockfile';
|
|
|
10
10
|
import { WorkflowError } from '../types/workflow-error.js';
|
|
11
11
|
import { findEligibleSteps, deriveRunPhase, isStepSettledOrInFlight, } from '../engine/eligibility.js';
|
|
12
12
|
import { computeClaimDeadline } from '../engine/claim-liveness.js';
|
|
13
|
+
import { applySettlement } from '../engine/settlement.js';
|
|
13
14
|
import { TERMINAL_PHASES } from '../engine/lifecycle.js';
|
|
14
15
|
import { hashParams } from './params-hash.js';
|
|
15
16
|
import { decideIdempotencyPolicy } from './idempotency-policy.js';
|
|
16
17
|
import { atomicWriteFile } from './atomic-write.js';
|
|
17
18
|
import { readIfExists, deleteIfExists, toArtifactDeleteFailedError } from './fs-io.js';
|
|
18
19
|
const DEFAULT_RUNS_DIR = join(homedir(), '.realm', 'runs');
|
|
19
|
-
/**
|
|
20
|
-
|
|
20
|
+
/**
|
|
21
|
+
* Shared `proper-lockfile` retry policy for EVERY lock this store takes — the 4 run-file
|
|
22
|
+
* critical-section locks (`update`/`claimStep`/`save`/`deleteAllForRun`) and the 3 per-key locks
|
|
23
|
+
* (`create`'s resolve-or-claim section, `registerImportedKey`, `deleteAllForRun`'s pointer delete)
|
|
24
|
+
* (issue #191).
|
|
25
|
+
*
|
|
26
|
+
* `proper-lockfile` forwards this object VERBATIM to the `retry` package
|
|
27
|
+
* (`retry.operation(options.retries)` — see `node_modules/proper-lockfile/lib/lockfile.js`), which
|
|
28
|
+
* reads every field below itself (`node_modules/retry/lib/retry.js` + `retry_operation.js`) — no
|
|
29
|
+
* filtering at either layer.
|
|
30
|
+
*
|
|
31
|
+
* - `randomize: true` — the LOAD-BEARING fix: without it (the `retry` package's own default),
|
|
32
|
+
* every contender computes the IDENTICAL deterministic backoff schedule and re-collides in
|
|
33
|
+
* lockstep under fan-out (a thundering herd). With it, `retry`'s `createTimeout` multiplies each
|
|
34
|
+
* attempt's delay by a fresh `Math.random() + 1` draw — contenders de-synchronize.
|
|
35
|
+
* - `maxTimeout: 1000` — caps any SINGLE attempt's sleep (also closes the OLD per-key retry
|
|
36
|
+
* policy's latent worst-case: uncapped, its 10th attempt alone could sleep up to 25.6s).
|
|
37
|
+
* - `maxRetryTime: 5000` — a TOTAL-TIME budget (the SQLite `busy_timeout` model): `retry`'s
|
|
38
|
+
* `RetryOperation.retry()` checks elapsed wall-time against this on every failed attempt and
|
|
39
|
+
* gives up once exceeded, REGARDLESS of `retries` remaining — so contention degrades gracefully
|
|
40
|
+
* into one retryable `STATE_RUN_BUSY` (Fix C) at a bounded ~5s, rather than either a hard count
|
|
41
|
+
* bound (~6.5s+ worst case with 10 retries × up to 1s each, uncapped further by jitter) or (pre-
|
|
42
|
+
* #191) failing fatally. Confirmed forwarding (not just by the source read above): a live check
|
|
43
|
+
* in this file's test suite holds a lock and asserts a SMALL-scale `maxRetryTime` cuts off well
|
|
44
|
+
* before the count-bound worst case would.
|
|
45
|
+
*/
|
|
46
|
+
// Exported ONLY for this file's own test (issue #191) — a direct assertion, against the REAL
|
|
47
|
+
// `retry` package proper-lockfile itself delegates to, that `randomize`/`maxTimeout` genuinely
|
|
48
|
+
// reach it (not re-exported from `index.ts`, so this stays off the `@sensigo/realm` public API).
|
|
49
|
+
export const LOCK_RETRIES = {
|
|
50
|
+
retries: 10,
|
|
51
|
+
minTimeout: 50,
|
|
52
|
+
maxTimeout: 1000,
|
|
53
|
+
randomize: true,
|
|
54
|
+
maxRetryTime: 5000,
|
|
55
|
+
};
|
|
21
56
|
/**
|
|
22
57
|
* Newest-first comparator: by `created_at` descending, tie-broken by lexicographically
|
|
23
58
|
* greatest `id`. Used to deterministically pick a canonical run for a key.
|
|
@@ -69,6 +104,10 @@ export class JsonFileStore {
|
|
|
69
104
|
'extension_identity',
|
|
70
105
|
'validation_rejections',
|
|
71
106
|
'defaulted_steps',
|
|
107
|
+
// issue #279 (increment 1, PR-A): declared alongside settleStep — declaration-coherence
|
|
108
|
+
// (a store declaring settleStep MUST declare both; TCK-asserted).
|
|
109
|
+
'settled',
|
|
110
|
+
'finalizer_ledger',
|
|
72
111
|
]);
|
|
73
112
|
constructor(runsDir) {
|
|
74
113
|
this.runsDir = runsDir ?? DEFAULT_RUNS_DIR;
|
|
@@ -172,7 +211,7 @@ export class JsonFileStore {
|
|
|
172
211
|
// realpath:false lets us lock a key path whose pointer file does not exist yet.
|
|
173
212
|
const release = await lockfile.lock(keyPath, {
|
|
174
213
|
realpath: false,
|
|
175
|
-
retries:
|
|
214
|
+
retries: LOCK_RETRIES,
|
|
176
215
|
});
|
|
177
216
|
try {
|
|
178
217
|
const pointer = await this.readPointer(keyPath);
|
|
@@ -187,7 +226,12 @@ export class JsonFileStore {
|
|
|
187
226
|
// (b') Apply the re-encounter policy to the matched run (PR 2). decideIdempotencyPolicy
|
|
188
227
|
// is called directly here (not inside a nested async helper) so a `reject`/`fail` throw
|
|
189
228
|
// is synchronous within this try — avoiding a transiently-orphaned rejected promise.
|
|
190
|
-
|
|
229
|
+
// issue #279 (increment 2, PR-C — D-3 leg v): derive at the CALL SITE, never trust the
|
|
230
|
+
// persisted run_phase — decideIdempotencyPolicy's own exported `Pick<>` signature stays
|
|
231
|
+
// untouched (a public-API break otherwise); this makes its `terminal_state`/`run_phase`
|
|
232
|
+
// branch AND its own error messages render the derived value automatically.
|
|
233
|
+
if (decideIdempotencyPolicy({ ...target, run_phase: deriveRunPhase(target) }, options) ===
|
|
234
|
+
'reuse') {
|
|
191
235
|
return { run: target, created: false };
|
|
192
236
|
}
|
|
193
237
|
return await this.supersede(options, keyPath, key);
|
|
@@ -199,8 +243,9 @@ export class JsonFileStore {
|
|
|
199
243
|
// recovers run-written-but-pointer-not crash orphans, which still carry the field).
|
|
200
244
|
const canonical = await this.findCanonicalLegacyRun(options.workflowId, key);
|
|
201
245
|
if (canonical !== undefined) {
|
|
202
|
-
// A legacy match runs through the same policy.
|
|
203
|
-
|
|
246
|
+
// A legacy match runs through the same policy. Derives (issue #279, increment 2, PR-C
|
|
247
|
+
// — D-3 leg v) — same rationale as the pointer-present branch above.
|
|
248
|
+
if (decideIdempotencyPolicy({ ...canonical, run_phase: deriveRunPhase(canonical) }, options) === 'reuse') {
|
|
204
249
|
// Migrate the adopted run into the pointer index (PR 1 behavior).
|
|
205
250
|
await this.writePointer(keyPath, canonical, key);
|
|
206
251
|
return { run: canonical, created: false };
|
|
@@ -274,11 +319,17 @@ export class JsonFileStore {
|
|
|
274
319
|
// the file between the existsSync check above and the lock/read below.
|
|
275
320
|
let release;
|
|
276
321
|
try {
|
|
277
|
-
release = await lockfile.lock(path, { retries:
|
|
322
|
+
release = await lockfile.lock(path, { retries: LOCK_RETRIES });
|
|
278
323
|
}
|
|
279
324
|
catch (err) {
|
|
280
325
|
if (err.code === 'ENOENT')
|
|
281
326
|
throw this.runNotFoundError(record.id);
|
|
327
|
+
// issue #191 (Fix C): an exhausted lock acquisition is contention, not corruption — the SAME
|
|
328
|
+
// classification deleteAllForRun already uses (see runBusyError's own doc). Retryable: the
|
|
329
|
+
// other writer's lock is released eventually, or a genuinely stale lock is stolen by the
|
|
330
|
+
// next contender.
|
|
331
|
+
if (err.code === 'ELOCKED')
|
|
332
|
+
throw this.runBusyError(record.id, 'locked');
|
|
282
333
|
throw err;
|
|
283
334
|
}
|
|
284
335
|
try {
|
|
@@ -330,7 +381,17 @@ export class JsonFileStore {
|
|
|
330
381
|
details: { runId },
|
|
331
382
|
});
|
|
332
383
|
}
|
|
333
|
-
|
|
384
|
+
// issue #191 (Fix C): the lock acquisition itself now has its own try/catch (mirroring
|
|
385
|
+
// update()'s shape) — an exhausted acquisition is contention, not a fatal stop.
|
|
386
|
+
let release;
|
|
387
|
+
try {
|
|
388
|
+
release = await lockfile.lock(path, { retries: LOCK_RETRIES });
|
|
389
|
+
}
|
|
390
|
+
catch (err) {
|
|
391
|
+
if (err.code === 'ELOCKED')
|
|
392
|
+
throw this.runBusyError(runId, 'locked');
|
|
393
|
+
throw err;
|
|
394
|
+
}
|
|
334
395
|
try {
|
|
335
396
|
// Re-read the freshest version under lock.
|
|
336
397
|
let raw;
|
|
@@ -369,10 +430,13 @@ export class JsonFileStore {
|
|
|
369
430
|
// `S ∈ in_progress` with no claims[S] would silently re-create the permanent wedge.
|
|
370
431
|
// OVERWRITE (not add-if-absent) so a missed settle-site delete self-heals on re-claim.
|
|
371
432
|
const deadline = computeClaimDeadline(definition, stepName, new Date());
|
|
433
|
+
// issue #279 (increment 1, PR-A): mint an acquirer-minted fencing token alongside the
|
|
434
|
+
// deadline, in the SAME write — dormant until PR-B's settleStep migration reads it.
|
|
435
|
+
const token = uuidv4();
|
|
372
436
|
const claimed = {
|
|
373
437
|
...run,
|
|
374
438
|
in_progress_steps: [...run.in_progress_steps, stepName],
|
|
375
|
-
claims: { ...run.claims, [stepName]: { deadline } },
|
|
439
|
+
claims: { ...run.claims, [stepName]: { deadline, token } },
|
|
376
440
|
run_phase: deriveRunPhase(run),
|
|
377
441
|
version: run.version + 1,
|
|
378
442
|
updated_at: new Date().toISOString(),
|
|
@@ -384,6 +448,63 @@ export class JsonFileStore {
|
|
|
384
448
|
await release();
|
|
385
449
|
}
|
|
386
450
|
}
|
|
451
|
+
/**
|
|
452
|
+
* Atomically applies one `SettlementDelta` to this run's fresh state (issue #279). LIVE since
|
|
453
|
+
* v0.32.0 for `settle_step`/`lease_finalizer`/`mark_finalizer` — see the JSDoc on
|
|
454
|
+
* `RunStore.settleStep` for the full contract (the increment-2 gate/guard/release kinds stay
|
|
455
|
+
* engine-inert until PR-D; write-surface obligations, atomicity, infra-throws/predicate-returns
|
|
456
|
+
* apply uniformly regardless of kind). Same lock/fresh-read shape as `update()` (ENOENT/ELOCKED
|
|
457
|
+
* mapping identical): LOCK_RETRIES lock → fresh read →
|
|
458
|
+
* `applySettlement` → a refusal returns WITHOUT any write (fresh state, version unchanged) → an
|
|
459
|
+
* apply writes the transform's own output with the write-tail `{version: fresh.version+1,
|
|
460
|
+
* updated_at}` (run_phase is already transform-derived; this store's own re-derivation below is
|
|
461
|
+
* idempotent on that already-correct value, exactly like `update()`'s own write-tail).
|
|
462
|
+
*/
|
|
463
|
+
async settleStep(runId, delta, definition, options) {
|
|
464
|
+
await this.ensureDir();
|
|
465
|
+
const path = this.filePath(runId);
|
|
466
|
+
if (!existsSync(path)) {
|
|
467
|
+
throw this.runNotFoundError(runId);
|
|
468
|
+
}
|
|
469
|
+
let release;
|
|
470
|
+
try {
|
|
471
|
+
release = await lockfile.lock(path, { retries: LOCK_RETRIES });
|
|
472
|
+
}
|
|
473
|
+
catch (err) {
|
|
474
|
+
if (err.code === 'ENOENT')
|
|
475
|
+
throw this.runNotFoundError(runId);
|
|
476
|
+
if (err.code === 'ELOCKED')
|
|
477
|
+
throw this.runBusyError(runId, 'locked');
|
|
478
|
+
throw err;
|
|
479
|
+
}
|
|
480
|
+
try {
|
|
481
|
+
let raw;
|
|
482
|
+
try {
|
|
483
|
+
raw = await readFile(path, 'utf8');
|
|
484
|
+
}
|
|
485
|
+
catch (err) {
|
|
486
|
+
if (err.code === 'ENOENT')
|
|
487
|
+
throw this.runNotFoundError(runId);
|
|
488
|
+
throw err;
|
|
489
|
+
}
|
|
490
|
+
const fresh = JSON.parse(raw);
|
|
491
|
+
const outcome = applySettlement(fresh, delta, definition, options);
|
|
492
|
+
if (!outcome.applied) {
|
|
493
|
+
return outcome; // refusal/noop — fresh state, NO write (version unchanged)
|
|
494
|
+
}
|
|
495
|
+
const updated = {
|
|
496
|
+
...outcome.run,
|
|
497
|
+
run_phase: deriveRunPhase(outcome.run),
|
|
498
|
+
version: fresh.version + 1,
|
|
499
|
+
updated_at: new Date().toISOString(),
|
|
500
|
+
};
|
|
501
|
+
await atomicWriteFile(path, JSON.stringify(updated, null, 2));
|
|
502
|
+
return { ...outcome, run: updated };
|
|
503
|
+
}
|
|
504
|
+
finally {
|
|
505
|
+
await release();
|
|
506
|
+
}
|
|
507
|
+
}
|
|
387
508
|
/**
|
|
388
509
|
* Writes a run record with its existing ID to local storage.
|
|
389
510
|
* Used for importing records fetched from a remote store.
|
|
@@ -403,10 +524,20 @@ export class JsonFileStore {
|
|
|
403
524
|
// realpath: false (like create()'s key lock) — save()'s whole point is create-if-absent,
|
|
404
525
|
// so the target file legitimately may not exist yet; the default realpath resolution
|
|
405
526
|
// would throw ENOENT locking a path with nothing there.
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
527
|
+
// issue #191 (Fix C): same ELOCKED→runBusyError mapping as update()/claimStep() — an exhausted
|
|
528
|
+
// acquisition here is contention on the read-check-write section, not a fatal stop.
|
|
529
|
+
let release;
|
|
530
|
+
try {
|
|
531
|
+
release = await lockfile.lock(path, {
|
|
532
|
+
realpath: false,
|
|
533
|
+
retries: LOCK_RETRIES,
|
|
534
|
+
});
|
|
535
|
+
}
|
|
536
|
+
catch (err) {
|
|
537
|
+
if (err.code === 'ELOCKED')
|
|
538
|
+
throw this.runBusyError(record.id, 'locked');
|
|
539
|
+
throw err;
|
|
540
|
+
}
|
|
410
541
|
try {
|
|
411
542
|
if (existsSync(path)) {
|
|
412
543
|
const raw = await readFile(path, 'utf8');
|
|
@@ -426,7 +557,13 @@ export class JsonFileStore {
|
|
|
426
557
|
});
|
|
427
558
|
}
|
|
428
559
|
// Run file FIRST (consistent with create()), then register the key pointer.
|
|
429
|
-
|
|
560
|
+
// issue #279 (increment 2, PR-C — D-3 leg vii): derive run_phase before the write — an
|
|
561
|
+
// imported record (e.g. from a remote store, or a hand-authored fixture) could carry a
|
|
562
|
+
// stale/foreign run_phase value; this store must never persist one that disagrees with its
|
|
563
|
+
// own derivation. `pending_gate` itself is NOT stripped here (save() is a verbatim import,
|
|
564
|
+
// not a resume) — only the derived render field is corrected.
|
|
565
|
+
const withDerivedPhase = { ...record, run_phase: deriveRunPhase(record) };
|
|
566
|
+
await atomicWriteFile(path, JSON.stringify(withDerivedPhase, null, 2));
|
|
430
567
|
}
|
|
431
568
|
finally {
|
|
432
569
|
await release();
|
|
@@ -444,7 +581,7 @@ export class JsonFileStore {
|
|
|
444
581
|
await this.ensureKeysDir();
|
|
445
582
|
const key = record.idempotency_key;
|
|
446
583
|
const keyPath = this.keyPath(record.workflow_id, key);
|
|
447
|
-
const release = await lockfile.lock(keyPath, { realpath: false, retries:
|
|
584
|
+
const release = await lockfile.lock(keyPath, { realpath: false, retries: LOCK_RETRIES });
|
|
448
585
|
try {
|
|
449
586
|
const pointer = await this.readPointer(keyPath);
|
|
450
587
|
if (pointer !== undefined && pointer.run_id !== record.id) {
|
|
@@ -594,14 +731,21 @@ export class JsonFileStore {
|
|
|
594
731
|
}
|
|
595
732
|
/**
|
|
596
733
|
* Builds the `STATE_RUN_BUSY` error thrown when `deleteAllForRun` cannot proceed because
|
|
597
|
-
* another writer holds the run-file (or key) lock,
|
|
598
|
-
* (issue #184)
|
|
599
|
-
*
|
|
734
|
+
* another writer holds the run-file (or key) lock, because the run is no longer terminal
|
|
735
|
+
* (issue #184), or because a finalizer ledger entry is still `'pending'` (issue #279, increment
|
|
736
|
+
* 1, PR-B: `drain_pending` — R11). Retryable: a live writer self-heals (the lock is released), a
|
|
737
|
+
* genuinely stale lock is eventually stolen by the next contender, and a pending finalizer is
|
|
738
|
+
* eventually drained or voided by an operator — but `drain_pending` is deliberately NOT
|
|
739
|
+
* force-bypassable at the CLI layer (residual R11, owner-ratified): the escape is `realm run
|
|
740
|
+
* drain` or `--void`, never `purge --force`.
|
|
600
741
|
*/
|
|
601
742
|
runBusyError(runId, reason) {
|
|
602
743
|
const message = reason === 'locked'
|
|
603
744
|
? `Run '${runId}' is locked by another writer`
|
|
604
|
-
:
|
|
745
|
+
: reason === 'no_longer_terminal'
|
|
746
|
+
? `Run '${runId}' is no longer terminal — refusing to delete (it may have been resumed)`
|
|
747
|
+
: `Run '${runId}' has a pending finalizer — refusing to delete until it is drained or ` +
|
|
748
|
+
`voided (realm run drain ${runId} / --void <finalizer>)`;
|
|
605
749
|
return new WorkflowError(message, {
|
|
606
750
|
code: 'STATE_RUN_BUSY',
|
|
607
751
|
category: 'STATE',
|
|
@@ -633,7 +777,7 @@ export class JsonFileStore {
|
|
|
633
777
|
try {
|
|
634
778
|
release = await lockfile.lock(path, {
|
|
635
779
|
realpath: false,
|
|
636
|
-
retries:
|
|
780
|
+
retries: LOCK_RETRIES,
|
|
637
781
|
});
|
|
638
782
|
}
|
|
639
783
|
catch (err) {
|
|
@@ -661,9 +805,21 @@ export class JsonFileStore {
|
|
|
661
805
|
// refuse to delete a run that is (now) live, regardless of what the caller believed at
|
|
662
806
|
// selection. This is a sound store-level invariant, not just a purge-specific patch:
|
|
663
807
|
// `deleteAllForRun` never deletes a non-terminal run, full stop.
|
|
664
|
-
|
|
808
|
+
// Derives (issue #279, increment 2, PR-C — D-3 leg iii): never trust the persisted
|
|
809
|
+
// run_phase — a grandfathered terminal-with-stale-gate record (the #282 class) must still
|
|
810
|
+
// be recognized as terminal here.
|
|
811
|
+
if (!TERMINAL_PHASES.has(deriveRunPhase(record)) || record.terminal_state !== true) {
|
|
665
812
|
throw this.runBusyError(runId, 'no_longer_terminal');
|
|
666
813
|
}
|
|
814
|
+
// issue #279 (increment 1, PR-B), R11: any finalizer ledger entry still 'pending' refuses
|
|
815
|
+
// deletion — deleting the run out from under an undrained finalizer would silently destroy
|
|
816
|
+
// the record a later `realm run drain`/`--void` needs to act on. Unconditional (no --force
|
|
817
|
+
// bypass at this layer — purge.ts's single-id --force path routes through this SAME
|
|
818
|
+
// under-lock throw, so it inherits the refusal automatically); the escape is the drain verb.
|
|
819
|
+
const pendingFinalizer = Object.entries(record.finalizer_ledger ?? {}).find(([, entry]) => entry.status === 'pending');
|
|
820
|
+
if (pendingFinalizer !== undefined) {
|
|
821
|
+
throw this.runBusyError(runId, 'drain_pending');
|
|
822
|
+
}
|
|
667
823
|
const deleted = [];
|
|
668
824
|
// Conditional pointer delete: only when this run actually owns an idempotency key. A
|
|
669
825
|
// `rerun`/supersede may have repointed the key to a NEWER run since this run was minted —
|
|
@@ -680,7 +836,7 @@ export class JsonFileStore {
|
|
|
680
836
|
const keyPath = this.keyPath(record.workflow_id, record.idempotency_key);
|
|
681
837
|
let keyRelease;
|
|
682
838
|
try {
|
|
683
|
-
keyRelease = await lockfile.lock(keyPath, { realpath: false, retries:
|
|
839
|
+
keyRelease = await lockfile.lock(keyPath, { realpath: false, retries: LOCK_RETRIES });
|
|
684
840
|
}
|
|
685
841
|
catch (err) {
|
|
686
842
|
if (err.code === 'ELOCKED') {
|