@oh-my-matrix/autopilot 2.1.1
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/LICENSE +21 -0
- package/README.md +36 -0
- package/dist/index.d.ts +28 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1034 -0
- package/dist/index.js.map +1 -0
- package/dist/src/audit-persister.d.ts +25 -0
- package/dist/src/audit-persister.d.ts.map +1 -0
- package/dist/src/audit-persister.js +162 -0
- package/dist/src/audit-persister.js.map +1 -0
- package/dist/src/autopilot-state.d.ts +35 -0
- package/dist/src/autopilot-state.d.ts.map +1 -0
- package/dist/src/autopilot-state.js +121 -0
- package/dist/src/autopilot-state.js.map +1 -0
- package/dist/src/command-runner.d.ts +13 -0
- package/dist/src/command-runner.d.ts.map +1 -0
- package/dist/src/command-runner.js +148 -0
- package/dist/src/command-runner.js.map +1 -0
- package/dist/src/completion-detector.d.ts +21 -0
- package/dist/src/completion-detector.d.ts.map +1 -0
- package/dist/src/completion-detector.js +104 -0
- package/dist/src/completion-detector.js.map +1 -0
- package/dist/src/continuation-engine.d.ts +9 -0
- package/dist/src/continuation-engine.d.ts.map +1 -0
- package/dist/src/continuation-engine.js +76 -0
- package/dist/src/continuation-engine.js.map +1 -0
- package/dist/src/effort-injection.d.ts +9 -0
- package/dist/src/effort-injection.d.ts.map +1 -0
- package/dist/src/effort-injection.js +17 -0
- package/dist/src/effort-injection.js.map +1 -0
- package/dist/src/evidence-gate.d.ts +24 -0
- package/dist/src/evidence-gate.d.ts.map +1 -0
- package/dist/src/evidence-gate.js +86 -0
- package/dist/src/evidence-gate.js.map +1 -0
- package/dist/src/goal-manager.d.ts +5 -0
- package/dist/src/goal-manager.d.ts.map +1 -0
- package/dist/src/goal-manager.js +22 -0
- package/dist/src/goal-manager.js.map +1 -0
- package/dist/src/logger.d.ts +27 -0
- package/dist/src/logger.d.ts.map +1 -0
- package/dist/src/logger.js +90 -0
- package/dist/src/logger.js.map +1 -0
- package/dist/src/orchestrator.d.ts +16 -0
- package/dist/src/orchestrator.d.ts.map +1 -0
- package/dist/src/orchestrator.js +252 -0
- package/dist/src/orchestrator.js.map +1 -0
- package/dist/src/permission-policy.d.ts +36 -0
- package/dist/src/permission-policy.d.ts.map +1 -0
- package/dist/src/permission-policy.js +265 -0
- package/dist/src/permission-policy.js.map +1 -0
- package/dist/src/project-detector.d.ts +8 -0
- package/dist/src/project-detector.d.ts.map +1 -0
- package/dist/src/project-detector.js +130 -0
- package/dist/src/project-detector.js.map +1 -0
- package/dist/src/projection.d.ts +47 -0
- package/dist/src/projection.d.ts.map +1 -0
- package/dist/src/projection.js +58 -0
- package/dist/src/projection.js.map +1 -0
- package/dist/src/retry-queue.d.ts +25 -0
- package/dist/src/retry-queue.d.ts.map +1 -0
- package/dist/src/retry-queue.js +77 -0
- package/dist/src/retry-queue.js.map +1 -0
- package/dist/src/stall-detector.d.ts +22 -0
- package/dist/src/stall-detector.d.ts.map +1 -0
- package/dist/src/stall-detector.js +26 -0
- package/dist/src/stall-detector.js.map +1 -0
- package/dist/src/tool-error-tracker.d.ts +4 -0
- package/dist/src/tool-error-tracker.d.ts.map +1 -0
- package/dist/src/tool-error-tracker.js +18 -0
- package/dist/src/tool-error-tracker.js.map +1 -0
- package/dist/src/types.d.ts +223 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +55 -0
- package/dist/src/types.js.map +1 -0
- package/dist/src/workflow-config.d.ts +13 -0
- package/dist/src/workflow-config.d.ts.map +1 -0
- package/dist/src/workflow-config.js +422 -0
- package/dist/src/workflow-config.js.map +1 -0
- package/openclaw.plugin.json +62 -0
- package/package.json +56 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAsGA,sCASC;AAGD,0DAKC;AAED,4DAOC;AAOD,8DAqDC;AA0DD,sDAEC;AAMD,4BAwyBC;AAtiCD,mEAAsF;AACtF,iEAA0D;AAC1D,yDAAkD;AAClD,6DAA8D;AAC9D,yCAAgE;AAChE,2DAW+B;AAC/B,qDAA2G;AAC3G,iDAAgD;AAChD,uCAAiE;AAGjE,qDAAyD;AACzD,uEAAoH;AACpH,2DAAoF;AACpF,uDAAuD;AACvD,yDAA6D;AAC7D,6DAAkE;AAClE,uEAA2F;AAC3F,2BAA8B;AAC9B,+BAAkC;AAElC;;;;;;;;;;GAUG;AACH,SAAS,qBAAqB,CAAC,CAAqB;IAClD,IAAI,CAAC,CAAC,IAAI,CAAC,IAAA,iBAAU,EAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,IAAI,CAAC;QACH,OAAO,IAAA,aAAQ,EAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAEY,QAAA,EAAE,GAAG,WAAW,CAAC;AACjB,QAAA,IAAI,GAAG,2BAA2B,CAAC;AACnC,QAAA,OAAO,GAAG,OAAO,CAAC;AAE/B,+EAA+E;AAC/E,MAAM,cAAc,GAAG,EAAE,CAAC;AAE1B,8EAA8E;AAC9E,MAAM,mBAAmB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEhD,IAAI,UAAU,GAAG,IAAI,GAAG,EAA0B,CAAC;AACnD,IAAI,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;AAC/C,IAAI,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAClD,IAAI,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;AACpC,IAAI,aAAa,GAA0C,IAAI,CAAC;AAEhE;;;;GAIG;AACH,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAErC,sGAAsG;AACtG,gFAAgF;AAChF,IAAI,aAAa,GAA8D,IAAI,CAAC;AACpF,IAAI,CAAC;IACH,sHAAsH;IACtH,MAAM,WAAW,GAAY,OAAO,CAAC,iCAAiC,CAAC,CAAC;IACxE,IACE,OAAO,WAAW,KAAK,QAAQ;QAC/B,WAAW,KAAK,IAAI;QACpB,eAAe,IAAI,WAAW;QAC9B,OAAQ,WAAuC,CAAC,aAAa,KAAK,UAAU,EAC5E,CAAC;QACD,aAAa,GAAI,WAAuC,CAAC,aAAiE,CAAC;IAC7H,CAAC;AACH,CAAC;AAAC,MAAM,CAAC;IACP,IAAA,aAAI,EAAC,6EAA6E,CAAC,CAAC;AACtF,CAAC;AAED,SAAS,YAAY,CAAC,IAAsC;IAC1D,IAAI,CAAC;QACH,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;QACtB,IAAA,YAAG,EAAC,6BAA6B,IAAI,GAAG,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAA,aAAI,EAAC,4BAA4B,IAAI,yBAAyB,GAAG,EAAE,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED,SAAgB,aAAa;IAC3B,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;IACvB,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;IAC3B,iBAAiB,GAAG,IAAI,GAAG,EAAE,CAAC;IAC9B,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;IACxB,IAAI,aAAa,EAAE,CAAC;QAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAAC,aAAa,GAAG,IAAI,CAAC;IAAC,CAAC;AAC5E,CAAC;AAED,wGAAwG;AACxG,SAAgB,uBAAuB,CAAC,EAA6D;IACnG,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IACD,aAAa,GAAG,EAAE,CAAC;AACrB,CAAC;AAED,SAAgB,wBAAwB;IACtC,OAAO;QACL,cAAc,EAAE,UAAU,CAAC,IAAI;QAC/B,kBAAkB,EAAE,cAAc,CAAC,IAAI;QACvC,qBAAqB,EAAE,iBAAiB,CAAC,IAAI;QAC7C,eAAe,EAAE,WAAW,CAAC,IAAI;KAClC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAgB,yBAAyB,CAAC,SAIzC;IACC,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAExD,2DAA2D;IAC3D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,GAAG,YAAY,SAAS,CAAC,UAAU,EAAE,CAAC;QAC3C,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAEvC,0EAA0E;IAC1E,MAAM,IAAI,GAAmB,QAAQ,IAAI;QACvC,UAAU,EAAE,SAAS,CAAC,UAAU;QAChC,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,kBAAkB,EAAE,CAAC;QACrB,YAAY,EAAE,CAAC;QACf,eAAe,EAAE,CAAC;QAClB,QAAQ,EAAE,KAAK;QACf,oBAAoB,EAAE,KAAK;KACV,CAAC;IAEpB,MAAM,QAAQ,GAAmB;QAC/B,GAAG,IAAI;QACP,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;QAChD,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,OAAO,EAAE,IAAI;KACd,CAAC;IACF,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAE1B,0DAA0D;IAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;IACrC,IACE,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,kBAAkB,KAAK,cAAc;QAC3C,KAAK,CAAC,KAAK,EAAE,WAAW,IAAI,IAAI;QAChC,KAAK,CAAC,KAAK,CAAC,WAAW,IAAI,GAAG,EAC9B,CAAC;QACD,MAAM,OAAO,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QAC9E,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,OAAO,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED,gEAAgE;AAChE,SAAS,eAAe;IACtB,OAAO,UAAU,CAAC,IAAI,GAAG,cAAc,EAAE,CAAC;QACxC,2DAA2D;QAC3D,IAAI,WAAW,GAAkB,IAAI,CAAC;QACtC,IAAI,QAAQ,GAAG,QAAQ,CAAC;QACxB,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,UAAU,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,GAAG,QAAQ,EAAE,CAAC;gBAC7C,QAAQ,GAAG,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC;gBACvC,WAAW,GAAG,KAAK,CAAC;YACtB,CAAC;QACH,CAAC;QACD,IAAI,WAAW,IAAI,IAAI;YAAE,MAAM;QAC/B,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAChD,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC/B,IAAI,WAAW,EAAE,CAAC;YAChB,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YACjD,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAC3C,4EAA4E;YAC5E,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,cAAc,EAAE,CAAC;gBACzC,IAAI,IAAI,KAAK,WAAW,CAAC,UAAU,EAAE,CAAC;oBACpC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC3B,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa,EAAE,KAAqB;IACpD,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7B,IAAI,UAAU,CAAC,IAAI,GAAG,cAAc;QAAE,eAAe,EAAE,CAAC;AAC1D,CAAC;AAED,4CAA4C;AAC5C,SAAS,UAAU;IACjB,6EAA6E;IAC7E,gGAAgG;IAChG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,YAAY,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC;IACD,UAAU,CAAC,KAAK,EAAE,CAAC;IACnB,cAAc,CAAC,KAAK,EAAE,CAAC;IACvB,iBAAiB,CAAC,KAAK,EAAE,CAAC;IAC1B,WAAW,CAAC,KAAK,EAAE,CAAC;IACpB,IAAI,aAAa,EAAE,CAAC;QAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAAC,aAAa,GAAG,IAAI,CAAC;IAAC,CAAC;AAC5E,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAkB;IAC1C,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5C,CAAC;AAED,+EAA+E;AAC/E,SAAgB,qBAAqB;IACnC,OAAO,OAAO,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;AACtC,CAAC;AAED,SAAS,aAAa;IACpB,OAAO,qBAAqB,EAAE,CAAC;AACjC,CAAC;AAED,SAAgB,QAAQ,CAAC,GAAsB;IAC7C,sDAAsD;IACtD,4EAA4E;IAC5E,MAAM,EAAE,GAAG,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;IAClC,MAAM,cAAc,GAAG,CAAC,CAAU,EAAsB,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjG,MAAM,MAAM,GAAoB;QAC9B,GAAG,sBAAc;QACjB,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,cAAc,CAAC,EAAE,CAAC,kBAAkB,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxH,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,qBAAqB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,cAAc,CAAC,EAAE,CAAC,qBAAqB,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjI,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,cAAc,CAAC,EAAE,CAAC,kBAAkB,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxH,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,CAAC,cAA0B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,CAAC,aAAyB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3F,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,cAAc,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClG,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,sBAAsB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,cAAc,CAAC,EAAE,CAAC,sBAAsB,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrI,CAAC;IACF,IAAA,YAAG,EAAC,0CAA0C,MAAM,CAAC,kBAAkB,0BAA0B,MAAM,CAAC,qBAAqB,uBAAuB,MAAM,CAAC,kBAAkB,mBAAmB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,gBAAgB,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IAEjU,sFAAsF;IACtF,MAAM,YAAY,GAAG,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IACtE,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,IAAA,cAAK,EAAC,4GAA4G,CAAC,CAAC;QACpH,OAAO;IACT,CAAC;IAED,YAAY,CAAC,uBAAuB,EAAE,KAAK,EAAE,KAAU,EAAE,EAAE;QACzD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC3E,IAAI,UAAU;YAAE,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,UAAU;YAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAE/C,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAE1C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC;QAEhC,uFAAuF;QACvF,8FAA8F;QAC9F,MAAM,KAAK,GAAG,QAAQ,CAAC,oBAAoB;YACzC,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE;YAC9C,CAAC,CAAC,QAAQ,CAAC;QACb,IAAI,QAAQ,CAAC,oBAAoB;YAAE,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAE1D,MAAM,QAAQ,GAAG,IAAA,wCAAkB,EAAC,KAAK,EAAE;YACzC,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;YAChD,cAAc,EAAE,KAAK,CAAC,cAAc;SACrC,CAAC,CAAC;QAEH,IAAA,YAAG,EAAC,8CAA8C,UAAU,WAAW,QAAQ,CAAC,MAAM,SAAS,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,kBAAkB,UAAU,KAAK,CAAC,kBAAkB,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC;QAElN,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,OAAO,GAAG,IAAA,gCAAc,EAAC,IAAA,+BAAa,EAAC,KAAK,CAAC,CAAC,CAAC;gBACrD,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACzB,OAAO;oBACL,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE;wBACL,WAAW,EAAE,QAAQ,CAAC,gBAAiB;wBACvC,cAAc,EAAE,aAAa,KAAK,IAAI,OAAO,CAAC,kBAAkB,EAAE;wBAClE,WAAW,EAAE,KAAK,CAAC,kBAAkB,GAAG,OAAO,CAAC,YAAY;qBAC7D;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,wBAAwB,CAAC;gBAChE,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;oBAClC,MAAM,OAAO,GAAG,EAAE,GAAG,IAAA,gCAAc,EAAC,KAAK,CAAC,EAAE,oBAAoB,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;oBAC1F,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;4BAC3B,UAAU;4BACV,IAAI,EAAE,QAAQ,CAAC,gBAAgB,IAAI,mCAAmC;4BACtE,cAAc,EAAE,mBAAmB,UAAU,IAAI,OAAO,CAAC,kBAAkB,EAAE;4BAC7E,SAAS,EAAE,iBAAiB;4BAC5B,KAAK,EAAE,MAAM;yBACd,CAAC,CAAC;wBACH,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;4BACtE,IAAA,aAAI,EAAC,6DAA6D,UAAU,0BAA0B,CAAC,CAAC;4BACxG,MAAM,aAAa,GAAG,EAAE,GAAG,IAAA,gCAAc,EAAC,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;4BACpE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;4BAC/B,OAAO;gCACL,MAAM,EAAE,QAAQ;gCAChB,KAAK,EAAE;oCACL,WAAW,EAAE,QAAQ,CAAC,gBAAgB,IAAI,mCAAmC;oCAC7E,cAAc,EAAE,aAAa,KAAK,IAAI,aAAa,CAAC,kBAAkB,EAAE;oCACxE,WAAW,EAAE,aAAa,CAAC,kBAAkB;iCAC9C;6BACF,CAAC;wBACJ,CAAC;wBACD,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;wBACzB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;oBAChC,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,IAAA,aAAI,EAAC,2DAA2D,UAAU,KAAK,GAAG,0BAA0B,CAAC,CAAC;wBAC9G,MAAM,aAAa,GAAG,EAAE,GAAG,IAAA,gCAAc,EAAC,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;wBACpE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;wBAC/B,OAAO;4BACL,MAAM,EAAE,QAAQ;4BAChB,KAAK,EAAE;gCACL,WAAW,EAAE,QAAQ,CAAC,gBAAgB,IAAI,gBAAgB;gCAC1D,cAAc,EAAE,aAAa,KAAK,IAAI,aAAa,CAAC,kBAAkB,EAAE;gCACxE,WAAW,EAAE,aAAa,CAAC,kBAAkB;6BAC9C;yBACF,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,oEAAoE;gBACpE,MAAM,aAAa,GAAG,EAAE,GAAG,IAAA,gCAAc,EAAC,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;gBACpE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;gBAC/B,OAAO;oBACL,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE;wBACL,WAAW,EAAE,QAAQ,CAAC,gBAAgB,IAAI,gBAAgB;wBAC1D,cAAc,EAAE,aAAa,KAAK,IAAI,aAAa,CAAC,kBAAkB,EAAE;wBACxE,WAAW,EAAE,aAAa,CAAC,kBAAkB;qBAC9C;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,QAAQ,CAAC,KAAK,EAAE,IAAA,uBAAK,EAAC,KAAK,EAAE,QAAQ,CAAC,WAAY,CAAC,CAAC,CAAC;gBACrD,sFAAsF;gBACtF,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACvB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;YAChC,CAAC;YACD,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACvB,oDAAoD;gBACpD,yFAAyF;gBACzF,IAAI,eAAe,CAAC;gBACpB,IAAI,CAAC;oBACH,MAAM,gBAAgB,GAAG,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,IAAI,EAAE,CAAC;oBACnE,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC;wBACjD,CAAC,CAAC,MAAM,IAAA,sCAAqB,EAAC,gBAAgB,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC;wBACtE,CAAC,CAAC,EAAE,CAAC;oBACP,eAAe,GAAG,IAAA,gCAAgB,EAAC;wBACjC,QAAQ,EAAE,gBAAgB;wBAC1B,OAAO,EAAE,eAAe;wBACxB,WAAW,EAAE,EAAE;wBACf,GAAG;qBACJ,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,sFAAsF;oBACtF,IAAA,aAAI,EAAC,mDAAmD,GAAG,YAAY,UAAU,EAAE,CAAC,CAAC;oBACrF,eAAe,GAAG,EAAE,MAAM,EAAE,SAAkB,EAAE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,aAAa,EAAE,kBAAkB,EAAE,CAAC;gBACvI,CAAC;gBACD,4FAA4F;gBAC5F,IAAI,OAAO,GAAG,KAAK,CAAC;gBACpB,IAAI,KAAK,CAAC,kBAAkB,KAAK,UAAU,EAAE,CAAC;oBAC5C,OAAO,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;oBAC/E,OAAO,GAAG,IAAA,kCAAmB,EAAC,OAAO,EAAE;wBACrC,IAAI,EAAE,mBAAmB;wBACzB,KAAK;wBACL,GAAG;wBACH,QAAQ,EAAE,eAAe;qBAC1B,CAAC,CAAC;gBACL,CAAC;gBACD,uCAAuC;gBACvC,8FAA8F;gBAC9F,8FAA8F;gBAC9F,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,KAAK,MAAM;oBACvC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE;oBAC3C,CAAC,CAAC,IAAA,0BAAQ,EAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;gBACzD,IAAA,uBAAc,EAAC,MAAM,EAAE,sBAAsB,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC9G,0FAA0F;gBAC1F,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACvB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;YAChC,CAAC;YACD;gBACE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAClC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,iBAAiB,EAAE,CAAC,KAAU,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC3E,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO;QAChC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAE7B,8EAA8E;QAC9E,iFAAiF;QACjF,MAAM,aAAa,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE;YAC/C,IAAI,EAAE,gBAAgB;YACtB,KAAK;YACL,QAAQ,EAAE,aAAa;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;SAChB,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACjB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;YAC/B,OAAO;QACT,CAAC;QACD,MAAM,SAAS,GAAG,IAAA,mCAAc,EAAC,aAAa,EAAE;YAC9C,IAAI,EAAE,KAAK,CAAC,QAAQ;YACpB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;YAC1D,KAAK,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;SAC7C,CAAC,CAAC;QACH,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC3B,IAAA,YAAG,EAAC,8CAA8C,UAAU,SAAS,KAAK,CAAC,QAAQ,aAAa,SAAS,CAAC,cAAc,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAC1J,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,mBAAmB,EAAE,CAAC,KAAU,EAAE,EAAE;QAC/C,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC3E,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YACvB,IAAA,YAAG,EAAC,0CAA0C,UAAU,kBAAkB,CAAC,CAAC;YAC5E,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAA,2CAA4B,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,kBAAkB,EAAE,CAAC,KAAU,EAAE,EAAE;QAC9C,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC3E,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YACvB,IAAA,YAAG,EAAC,yCAAyC,UAAU,iBAAiB,CAAC,CAAC;YAC1E,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAA,yCAA0B,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,oBAAoB,EAAE,CAAC,KAAU,EAAE,GAAQ,EAAE,EAAE;QAC1D,MAAM,UAAU,GAAG,GAAG,EAAE,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC;QACvD,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO;QAEhC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAC7B,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,oEAAoE;QACpE,OAAO,GAAG,IAAA,kCAAmB,EAAC,OAAO,EAAE;YACrC,IAAI,EAAE,oBAAoB;YAC1B,KAAK;YACL,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;SAChB,CAAC,CAAC;QAEH,yDAAyD;QACzD,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YAClC,OAAO,GAAG,IAAA,0BAAW,EAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACzB,IAAA,YAAG,EAAC,kDAAkD,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YAC1F,CAAC;QACH,CAAC;QAED,sEAAsE;QACtE,8EAA8E;QAC9E,yFAAyF;QACzF,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACzB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC;gBAC/E,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACzB,IAAA,aAAI,EAAC,0EAA0E,UAAU,EAAE,CAAC,CAAC;YAC/F,CAAC;iBAAM,CAAC;gBACN,OAAO;YACT,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,iFAAiF;QACjF,6EAA6E;QAC7E,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,6BAA6B,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,gCAAgC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAE/B,uEAAuE;QACvE,MAAM,SAAS,GAAG,IAAA,uCAAoB,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvD,IAAI,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAErC,mCAAmC;QACnC,KAAK,CAAC,IAAI,CAAC,kFAAkF,CAAC,CAAC;QAE/F,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,8DAA8D;IAC9D,YAAY,CAAC,kBAAkB,EAAE,CAAC,MAAW,EAAE,GAAQ,EAAO,EAAE;QAC9D,MAAM,UAAU,GAAG,GAAG,EAAE,UAAU,CAAC;QACnC,IAAI,CAAC,UAAU;YAAE,OAAO,EAAE,OAAO,EAAE,MAAe,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO,EAAE,OAAO,EAAE,MAAe,EAAE,CAAC;QAE7D,MAAM,OAAO,GAAG,GAAG,EAAE,OAAO,CAAC;QAC7B,IAAI,OAAO,IAAI,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACxD,IAAA,YAAG,EAAC,+CAA+C,OAAO,YAAY,UAAU,aAAa,CAAC,CAAC;YAC/F,OAAO;gBACL,OAAO,EAAE,OAAgB;gBACzB,MAAM,EAAE,6BAA6B,OAAO,EAAE;gBAC9C,OAAO,EAAE,2CAA2C,OAAO,GAAG;aAC/D,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,MAAe,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,kBAAkB,EAAE,CAAC,KAAU,EAAE,GAAQ,EAAE,EAAE;QACxD,MAAM,UAAU,GAAG,GAAG,EAAE,UAAU,CAAC;QACnC,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAE3C,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO;QAEhC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAkB,CAAC;QAE1C,4EAA4E;QAC5E,yFAAyF;QACzF,MAAM,YAAY,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE;YAC9C,IAAI,EAAE,gBAAgB;YACtB,KAAK;YACL,QAAQ,EAAE,WAAW;YACrB,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;SAChB,CAAC,CAAC;QAEH,mFAAmF;QACnF,iFAAiF;QACjF,kDAAkD;QAClD,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,IAAA,0CAAsB,EAAC,KAAK,CAAC,CAAC;QACxD,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5G,MAAM,QAAQ,GAAG,oBAAoB;YACnC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAgB,EAAE,MAAM,EAAE,GAAG,QAAQ,kCAAkC,EAAE,OAAO,EAAE,SAAS,QAAQ,iDAAiD,EAAE,CAAC;YACrK,CAAC,CAAC,IAAA,4CAAwB,EAAC,KAAK,EAAE;gBAC9B,GAAG,EAAE,QAAQ,IAAI,KAAK,CAAC,SAAS,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE;gBACvD,aAAa,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI;gBACpC,aAAa,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE;gBACrD,4BAA4B,EAAE,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,IAAI,KAAK;gBAC5E,uEAAuE;aACxE,CAAC,CAAC;QAEP,4EAA4E;QAC5E,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,IAAI,IAAA,mCAAe,EAAC,QAAQ,CAAC,CAAC;QACxE,MAAM,UAAU,GAA+C;YAC7D,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,KAAK;YACL,QAAQ;YACR,YAAY;YACZ,OAAO,EAAE,QAAQ,CAAC,OAAiD;YACnE,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC;QACF,MAAM,SAAS,GAAG,GAAG,CAAC;QACtB,MAAM,SAAS,GAAG,YAAY,CAAC,eAAe,IAAI,EAAE,CAAC;QACrD,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,IAAI,SAAS;YAC7C,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC;YACpD,CAAC,CAAC,CAAC,GAAG,SAAS,EAAE,UAAU,CAAC,CAAC;QAC/B,QAAQ,CAAC,KAAK,EAAE;YACd,GAAG,YAAY;YACf,eAAe,EAAE,SAAS;SAC3B,CAAC,CAAC;QACH,4CAA4C;QAC5C,IAAA,oCAAgB,EAAC,UAAU,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAErE,IAAI,QAAQ,CAAC,OAAO,KAAK,OAAO;YAAE,OAAO;QAEzC,2EAA2E;QAC3E,+EAA+E;QAC/E,8EAA8E;QAC9E,2EAA2E;QAC3E,IAAI,QAAQ,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YACjC,IAAA,uBAAc,EAAC,MAAM,EAAE,0BAA0B,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YAC7G,OAAO;gBACL,KAAK,EAAE,IAAI;gBACX,WAAW,EAAG,QAAkE,CAAC,OAAO;aACzF,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,EAAE,QAAQ,EAAE,yBAAyB,EAAE,CAAC,CAAC;IAE5C,YAAY,CAAC,YAAY,EAAE,CAAC,KAAU,EAAE,GAAQ,EAAE,EAAE;QAClD,MAAM,UAAU,GAAG,GAAG,EAAE,UAAU,CAAC;QACnC,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO;QAEhC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,KAAK,EAAE,KAAK;YAAE,OAAO;QAE1B,6DAA6D;QAC7D,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC;YAC/F,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAEpB,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAC7B,IAAI,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,GAAG,KAAK,EAAE,CAAC;QAC3E,gEAAgE;QAChE,0FAA0F;QAC1F,OAAO,GAAG,IAAA,kCAAmB,EAAC,OAAO,EAAE;YACrC,IAAI,EAAE,gBAAgB;YACtB,KAAK;YACL,QAAQ,EAAE,YAAY;YACtB,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;YACf,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE;SACnE,CAAC,CAAC;QACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACzB,IAAA,YAAG,EAAC,mCAAmC,UAAU,YAAY,KAAK,UAAU,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChK,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,eAAe,EAAE,CAAC,KAAU,EAAE,EAAE;QAC3C,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACxC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YACtD,IAAA,YAAG,EAAC,8BAA8B,KAAK,CAAC,SAAS,MAAM,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,aAAa,EAAE,CAAC,KAAU,EAAE,EAAE;QACzC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC3E,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;YACtB,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACzB,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACrC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACjC,CAAC;QACD,IAAA,YAAG,EAAC,oCAAoC,UAAU,mBAAmB,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,WAAW,EAAE,KAAK,EAAE,KAAU,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC3E,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO;QAC9B,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAE7B,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5C,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAE/B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC7C,kFAAkF;YAClF,8EAA8E;YAC9E,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,kBAAkB,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;gBAC1F,QAAQ,CAAC,KAAK,EAAE,IAAA,uBAAK,EAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC;gBACrD,IAAA,aAAI,EAAC,yEAAyE,UAAU,EAAE,CAAC,CAAC;gBAC5F,OAAO;YACT,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,kBAAkB,GAAG,KAAK,CAAC,qBAAqB,EAAE,CAAC;gBACzF,MAAM,SAAS,GAAG,IAAA,gCAAc,EAAC,IAAA,mCAAiB,EAAC,OAAO,CAAC,CAAC,CAAC;gBAC7D,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,wBAAwB,CAAC;gBAChE,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;oBAClC,IAAI,CAAC;wBACH,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC;4BACjC,UAAU;4BACV,IAAI,EAAE,IAAA,2CAAqB,EAAC,SAAS,CAAC;4BACtC,cAAc,EAAE,sBAAsB,UAAU,IAAI,SAAS,CAAC,kBAAkB,EAAE;4BAClF,SAAS,EAAE,iBAAiB;4BAC5B,KAAK,EAAE,MAAM;yBACd,CAAC,CAAC;wBACH,IAAI,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,CAAC,QAAQ,KAAK,KAAK,EAAE,CAAC;4BACxF,IAAA,aAAI,EAAC,yEAAyE,UAAU,EAAE,CAAC,CAAC;wBAC9F,CAAC;6BAAM,CAAC;4BACN,mFAAmF;4BACnF,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;4BACtC,IAAI,OAAO,EAAE,CAAC;gCACZ,QAAQ,CAAC,KAAK,EAAE;oCACd,GAAG,OAAO;oCACV,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,GAAG,CAAC;oCAClD,oBAAoB,EAAE,IAAI;oCAC1B,YAAY,EAAE,CAAC;oCACf,QAAQ,EAAE,IAAI;iCACf,CAAC,CAAC;4BACL,CAAC;iCAAM,CAAC;gCACN,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;4BAC7B,CAAC;4BACD,IAAA,aAAI,EAAC,mEAAmE,UAAU,EAAE,CAAC,CAAC;4BACtF,OAAO;wBACT,CAAC;oBACH,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,IAAA,aAAI,EAAC,8DAA8D,GAAG,EAAE,CAAC,CAAC;oBAC5E,CAAC;gBACH,CAAC;YACH,CAAC;YACD,QAAQ,CAAC,KAAK,EAAE,EAAE,GAAG,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5D,IAAA,aAAI,EAAC,0DAA0D,UAAU,4DAA4D,CAAC,CAAC;YACvI,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QAC3F,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,IAAA,uBAAK,EAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC9E,+EAA+E;QAC/E,MAAM,kBAAkB,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;QACrF,qEAAqE;QACrE,MAAM,iBAAiB,GAAG,IAAA,kCAAmB,EAAC,IAAA,mCAAiB,EAAC,kBAAkB,CAAC,EAAE;YACnF,IAAI,EAAE,qBAAqB;YAC3B,KAAK;YACL,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,KAAK;YAChC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;SAChB,CAAC,CAAC;QACH,8CAA8C;QAC9C,MAAM,aAAa,GAAmB;YACpC,GAAG,iBAAiB;YACpB,QAAQ,EAAE,QAAQ,iBAAiB,CAAC,kBAAkB,IAAI,iBAAiB,CAAC,qBAAqB,YAAY;SAC9G,CAAC;QACF,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAC/B,IAAA,uBAAc,EAAC,MAAM,EAAE,WAAW,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,kBAAkB,IAAI,KAAK,EAAE,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxL,CAAC,CAAC,CAAC;IAEH,4BAA4B;IAC5B,MAAM,kBAAkB,GAAG,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,wBAAwB,CAAC;IACxE,IAAI,OAAO,kBAAkB,KAAK,UAAU,EAAE,CAAC;QAC7C,IAAA,cAAK,EAAC,6HAA6H,CAAC,CAAC;IACvI,CAAC;SAAM,CAAC;QACR,kBAAkB,CAAC;YACjB,SAAS,EAAE,WAAW;YACtB,WAAW,EAAE,4CAA4C;YACzD,mBAAmB,EAAE,WAAW;YAChC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACf,IAAI,CAAC,GAAG,CAAC,UAAU;oBAAE,OAAO,SAAS,CAAC;gBACtC,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAC/C,IAAI,KAAK;oBAAE,OAAO,IAAA,yBAAY,EAAC,KAAK,CAAC,CAAC,CAAC,CAA+B,CAAC;gBACvE,OAAO;oBACL,MAAM,EAAE,MAAe;oBACvB,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,CAAC;oBACf,kBAAkB,EAAE,CAAC;oBACrB,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;oBAC7C,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;oBACnD,sBAAsB,EAAE,MAAM,CAAC,sBAAsB,IAAI,CAAC;oBAC1D,oBAAoB,EAAE,KAAK;oBAC3B,OAAO,EAAE,KAAK;oBACd,eAAe,EAAE,CAAC;oBAClB,QAAQ,EAAE,KAAK;iBACc,CAAC;YAClC,CAAC;YACD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACf,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;oBACnB,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBAC/C,IAAI,KAAK;wBAAE,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,CAAC;YACH,CAAC;SACF,CAAC,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,IAAI,OAAO,GAAG,CAAC,qBAAqB,KAAK,UAAU,EAAE,CAAC;QACpD,IAAA,cAAK,EAAC,oFAAoF,CAAC,CAAC;IAC9F,CAAC;SAAM,CAAC;QAER,GAAG,CAAC,qBAAqB,CAAC,oBAAoB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAc,EAAE,EAAE;YAC3F,MAAM,UAAU,GAAG,GAAG,CAAC,UAAgC,CAAC;YACxD,IAAA,YAAG,EAAC,2CAA2C,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAC7F,IAAI,CAAC,UAAU,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAEnH,8EAA8E;YAC9E,MAAM,WAAW,GAAuB,GAAG,CAAC,IAA0B,CAAC;YACvE,MAAM,uBAAuB,GAAuB,GAAG,CAAC,qBAA2C,CAAC;YACpG,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,GAAG,CAAC,aAAmC,CAAC,CAAC;YAC5F,MAAM,kBAAkB,GACtB,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,IAAI,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YAE3F,8DAA8D;YAC9D,MAAM,aAAa,GAAG,MAAM,CAAC,sBAAsB,IAAI,CAAC,CAAC;YACzD,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;YAChG,0HAA0H;YAC1H,MAAM,YAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,gBAAgB,GAAG,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC;YAChE,IAAI,CAAC,gBAAgB,IAAI,YAAY,IAAI,aAAa,EAAE,CAAC;gBACvD,IAAA,aAAI,EAAC,kEAAkE,YAAY,QAAQ,aAAa,GAAG,CAAC,CAAC;gBAC7G,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC;gBAC1F,OAAO;YACT,CAAC;YAED,sDAAsD;YACtD,MAAM,YAAY,GAAG,CAAC,CAAiB,EAAkB,EAAE;gBACzD,MAAM,IAAI,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;gBACtB,IAAI,uBAAuB,IAAI,IAAI;oBAAE,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;gBAClI,IAAI,kBAAkB,IAAI,IAAI;oBAAE,IAAI,CAAC,WAAW,GAAG,kBAAkB,CAAC;gBACtE,OAAO,IAAI,CAAC;YACd,CAAC,CAAC;YAEF,+CAA+C;YAC/C,MAAM,mBAAmB,GAAG,CAAC,CAAiB,EAAkB,EAAE;gBAChE,IAAI,CAAC;oBACH,2FAA2F;oBAC3F,sFAAsF;oBACtF,MAAM,MAAM,GAAG,IAAA,oCAAkB,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,oBAAoB,CAAC,CAAC;oBACvE,gEAAgE;oBAChE,kFAAkF;oBAClF,4EAA4E;oBAC5E,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,oBAAoB;wBACzF,CAAC,CAAC,IAAA,2CAAwB,EAAC,oBAAoB,CAAC;wBAChD,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;oBACtC,OAAO;wBACL,GAAG,CAAC;wBACJ,QAAQ,EAAE;4BACR,GAAG,MAAM,CAAC,MAAM;4BAChB,UAAU,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE;yBACpE;wBACD,qBAAqB,EAAE,CAAC,CAAC,qBAAqB;qBAC/C,CAAC;gBACJ,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,mCAAmC;oBACnC,OAAO;wBACL,GAAG,CAAC;wBACJ,QAAQ,EAAE,EAAE,GAAG,yCAAuB,EAAE;wBACxC,mBAAmB,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;qBACtE,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,YAAY,CAAC;gBACvC,sEAAsE;gBACtE,yEAAyE;gBACzE,oEAAoE;gBACpE,sEAAsE;gBACtE,wEAAwE;gBACxE,MAAM,aAAa,GAAG,IAAA,4BAAU,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBAC5F,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,aAAa,EAAE,CAAC;oBACxE,IAAI,aAAa,EAAE,CAAC;wBAClB,IAAA,aAAI,EAAC,kDAAkD,UAAU,YAAY,KAAK,CAAC,MAAM,eAAe,KAAK,CAAC,kBAAkB,IAAI,MAAM,4BAA4B,QAAQ,EAAE,CAAC,CAAC;oBACpL,CAAC;oBACD,8DAA8D;oBAC9D,YAAY,CAAC,QAAQ,CAAC,CAAC;oBACvB,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC5B,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBACrC,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;oBAC9B,IAAI,QAAQ,GAAG,IAAA,0BAAQ,EAAC,IAAA,0BAAkB,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;oBACvE,iEAAiE;oBACjE,MAAM,YAAY,GAAG,WAAW,IAAI,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC;oBAChE,QAAQ,GAAG,IAAA,kCAAmB,EAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBAC1H,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;oBAClC,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;oBACzC,QAAQ,GAAG,IAAA,kCAAmB,EAAC,QAAQ,EAAE;wBACvC,IAAI,EAAE,iBAAiB;wBACvB,KAAK;wBACL,SAAS,EAAE,EAAE,IAAI,EAAE,oBAAoB,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,oBAAoB,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE;wBACnM,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;qBAChB,CAAC,CAAC;oBACH,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBAC1B,iBAAiB,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;oBACzC,IAAA,YAAG,EAAC,iCAAiC,UAAU,YAAY,KAAK,SAAS,KAAK,CAAC,MAAM,UAAU,YAAY,IAAI,MAAM,GAAG,CAAC,CAAC;gBAC5H,CAAC;qBAAM,CAAC;oBACN,IAAA,aAAI,EAAC,0CAA0C,UAAU,WAAW,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;oBACpF,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,gCAAgC,KAAK,CAAC,MAAM,6BAA6B,EAAE,CAAC,CAAC;oBAC3I,OAAO;gBACT,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;gBAC/D,IAAI,KAAK,GAAG,IAAA,0BAAQ,EAAC,IAAA,0BAAkB,EAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBACpE,KAAK,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACnH,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;gBAC5B,KAAK,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;gBACnC,KAAK,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE;oBACjC,IAAI,EAAE,iBAAiB;oBACvB,KAAK;oBACL,SAAS,EAAE,EAAE,IAAI,EAAE,oBAAoB,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,oBAAoB,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE;oBACnM,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE;iBAChB,CAAC,CAAC;gBACH,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBACvB,iBAAiB,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBACzC,IAAA,YAAG,EAAC,iCAAiC,UAAU,YAAY,KAAK,UAAU,WAAW,IAAI,MAAM,GAAG,CAAC,CAAC;YACtG,CAAC;YAED,6DAA6D;YAC7D,YAAY,CAAC,SAAS,CAAC,CAAC;YAExB,IAAA,YAAG,EAAC,4CAA4C,EAAE,UAAU,CAAC,CAAC;YAC9D,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAc,EAAE,EAAE;YACzF,MAAM,UAAU,GAAG,GAAG,CAAC,UAAgC,CAAC;YACxD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAEnH,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAErH,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;YAC7B,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,8BAA8B,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAE1J,6DAA6D;YAC7D,MAAM,YAAY,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACtG,QAAQ,CAAC,KAAK,EAAE,IAAA,wBAAM,EAAC,YAAY,CAAC,CAAC,CAAC;YACtC,IAAA,YAAG,EAAC,+BAA+B,UAAU,+BAA+B,CAAC,CAAC;YAC9E,2CAA2C;YAC3C,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAc,EAAE,EAAE;YACvF,MAAM,UAAU,GAAG,GAAG,CAAC,UAAgC,CAAC;YACxD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAEnH,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;gBAAC,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAEpD,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;YAC7B,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACvF,iFAAiF;gBACjF,MAAM,YAAY,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACpG,QAAQ,CAAC,KAAK,EAAE,IAAA,4BAAU,EAAC,YAAY,CAAC,CAAC,CAAC;gBAC1C,IAAA,YAAG,EAAC,6BAA6B,UAAU,IAAI,KAAK,CAAC,MAAM,OAAO,CAAC,CAAC;YACtE,CAAC;YACD,qDAAqD;YACrD,YAAY,CAAC,QAAQ,CAAC,CAAC;YACvB,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAc,EAAE,EAAE;YACzF,MAAM,UAAU,GAAG,GAAG,CAAC,UAAgC,CAAC;YACxD,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACpE,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,IAAA,yBAAY,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,6EAA6E;YAC7E,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3C,OAAO,CAAC,IAAI,EAAE;gBACZ,UAAU;gBACV,QAAQ,EAAE,KAAK,EAAE,QAAQ;gBACzB,6EAA6E;gBAC7E,eAAe,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM;oBAC7C,CAAC,CAAC,KAAK,CAAC,eAAe;oBACvB,CAAC,CAAC,IAAA,0CAAsB,EAAC,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC;gBACxE,QAAQ,EAAE,KAAK,EAAE,QAAQ;gBACzB,mBAAmB,EAAE,KAAK,EAAE,mBAAmB;aAChD,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,qBAAqB,CAAC,mBAAmB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAc,EAAE,EAAE;YAC1F,MAAM,UAAU,GAAG,GAAG,CAAC,UAAgC,CAAC;YACxD,MAAM,IAAI,GAAG,GAAG,CAAC,IAA0B,CAAC;YAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YACnH,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,iCAAiC,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAE7J,MAAM,KAAK,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAErH,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;YAC7B,QAAQ,CAAC,KAAK,EAAE,IAAA,yBAAO,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;YACtC,IAAA,YAAG,EAAC,gCAAgC,UAAU,UAAU,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YAClF,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,+CAA+C;QAC/C,GAAG,CAAC,qBAAqB,CAAC,mBAAmB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAc,EAAE,EAAE;YAC7E,UAAU,EAAE,CAAC,CAAC,+DAA+D;YAC7E,IAAA,YAAG,EAAC,wCAAwC,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IAEH,CAAC;IAED,mEAAmE;IACnE,iFAAiF;IACjF,qFAAqF;IACrF,MAAM,oBAAoB,GAAG,MAAM,CAAC,CAAC,yBAAyB;IAC9D,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,wBAAwB;IAEvF,sFAAsF;IACtF,IAAI,aAAa,EAAE,CAAC;QAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QAAC,aAAa,GAAG,IAAI,CAAC;IAAC,CAAC;IAE1E,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,YAAY,GAAa,EAAE,CAAC;QAElC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;YAClD,yCAAyC;YACzC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;gBAC1F,MAAM,WAAW,GAAG,IAAA,2BAAU,EAAC;oBAC7B,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,SAAS,IAAI,GAAG;oBAC9D,GAAG;oBACH,cAAc;oBACd,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;iBAC7C,CAAC,CAAC;gBAEH,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;oBACxB,MAAM,OAAO,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE;wBACzC,IAAI,EAAE,eAAe;wBACrB,KAAK;wBACL,GAAG;qBACJ,CAAC,CAAC;oBACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;oBACzB,IAAA,aAAI,EAAC,uCAAuC,KAAK,CAAC,UAAU,QAAQ,KAAK,iBAAiB,WAAW,CAAC,eAAe,IAAI,CAAC,uBAAuB,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;gBACjL,CAAC;YACH,CAAC;YAED,mFAAmF;YACnF,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,kBAAkB,KAAK,cAAc;gBAC5D,KAAK,CAAC,KAAK,EAAE,WAAW,IAAI,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,WAAW,IAAI,GAAG,EAAE,CAAC;gBACvE,MAAM,OAAO,GAAG,IAAA,kCAAmB,EAAC,KAAK,EAAE;oBACzC,IAAI,EAAE,WAAW;oBACjB,KAAK;oBACL,GAAG;iBACJ,CAAC,CAAC;gBACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACzB,IAAA,YAAG,EAAC,kCAAkC,KAAK,CAAC,UAAU,QAAQ,KAAK,YAAY,KAAK,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9G,CAAC;YAED,wEAAwE;YACxE,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC;YAClE,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,YAAY,CAAC,GAAG,mBAAmB,EAAE,CAAC;gBACnE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,KAAK,EAAE,CAAC;gBACV,IAAA,aAAI,EAAC,uDAAuD,KAAK,CAAC,UAAU,QAAQ,KAAK,EAAE,CAAC,CAAC;gBAC7F,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACzB,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBAC3C,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC,EAAE,oBAAoB,CAAC,CAAC;AAC3B,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { PermissionAuditEntry } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Returns YYYY-MM-DD for the given date using LOCAL time (not UTC).
|
|
4
|
+
* Exported for testing; production code uses the private todayString() wrapper.
|
|
5
|
+
*/
|
|
6
|
+
export declare function _todayStringForTest(d: Date): string;
|
|
7
|
+
/**
|
|
8
|
+
* Returns the path for the current audit JSONL file.
|
|
9
|
+
* If the current file exceeds MAX_FILE_BYTES, appends a numeric suffix.
|
|
10
|
+
*/
|
|
11
|
+
export declare function getAuditFilePath(workspaceDir: string): string;
|
|
12
|
+
/**
|
|
13
|
+
* Append a single PermissionAuditEntry to the audit JSONL file.
|
|
14
|
+
* Creates the audit directory and file if they don't exist.
|
|
15
|
+
* Never throws — errors are silently swallowed to avoid disrupting the plugin.
|
|
16
|
+
*/
|
|
17
|
+
export declare function appendAuditEntry(entry: PermissionAuditEntry, workspaceDir: string): void;
|
|
18
|
+
/**
|
|
19
|
+
* Load the most recent `limit` audit entries from the audit directory.
|
|
20
|
+
* Reads the current day's file (and yesterday's if needed to fill the limit).
|
|
21
|
+
* Skips malformed lines gracefully.
|
|
22
|
+
* Returns entries in chronological order (oldest first).
|
|
23
|
+
*/
|
|
24
|
+
export declare function loadRecentAuditEntries(workspaceDir: string, limit: number): PermissionAuditEntry[];
|
|
25
|
+
//# sourceMappingURL=audit-persister.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit-persister.d.ts","sourceRoot":"","sources":["../../src/audit-persister.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAUpD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,CAMnD;AAOD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAiB7D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CASxF;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,GACZ,oBAAoB,EAAE,CAyCxB"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports._todayStringForTest = _todayStringForTest;
|
|
37
|
+
exports.getAuditFilePath = getAuditFilePath;
|
|
38
|
+
exports.appendAuditEntry = appendAuditEntry;
|
|
39
|
+
exports.loadRecentAuditEntries = loadRecentAuditEntries;
|
|
40
|
+
/**
|
|
41
|
+
* Audit log persistence for autopilot permission audit entries.
|
|
42
|
+
*
|
|
43
|
+
* Writes PermissionAuditEntry records to JSONL files under
|
|
44
|
+
* {workspaceDir}/.autopilot/audit-{YYYY-MM-DD}.jsonl
|
|
45
|
+
*
|
|
46
|
+
* Design: synchronous file I/O (plugin runs in main process; simplicity > async here).
|
|
47
|
+
* No external dependencies.
|
|
48
|
+
*/
|
|
49
|
+
const fs = __importStar(require("fs"));
|
|
50
|
+
const path = __importStar(require("path"));
|
|
51
|
+
const AUDIT_SUBDIR = '.autopilot';
|
|
52
|
+
const MAX_FILE_BYTES = 10 * 1024 * 1024; // 10 MB
|
|
53
|
+
/** Returns the audit directory path for a given workspace root. */
|
|
54
|
+
function getAuditDir(workspaceDir) {
|
|
55
|
+
return path.join(workspaceDir, AUDIT_SUBDIR);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Returns YYYY-MM-DD for the given date using LOCAL time (not UTC).
|
|
59
|
+
* Exported for testing; production code uses the private todayString() wrapper.
|
|
60
|
+
*/
|
|
61
|
+
function _todayStringForTest(d) {
|
|
62
|
+
return [
|
|
63
|
+
String(d.getFullYear()),
|
|
64
|
+
String(d.getMonth() + 1).padStart(2, '0'),
|
|
65
|
+
String(d.getDate()).padStart(2, '0'),
|
|
66
|
+
].join('-');
|
|
67
|
+
}
|
|
68
|
+
/** Returns today's YYYY-MM-DD string in local time. */
|
|
69
|
+
function todayString() {
|
|
70
|
+
return _todayStringForTest(new Date());
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Returns the path for the current audit JSONL file.
|
|
74
|
+
* If the current file exceeds MAX_FILE_BYTES, appends a numeric suffix.
|
|
75
|
+
*/
|
|
76
|
+
function getAuditFilePath(workspaceDir) {
|
|
77
|
+
const dir = getAuditDir(workspaceDir);
|
|
78
|
+
const base = `audit-${todayString()}`;
|
|
79
|
+
// Find the right suffix: start at no suffix, increment if file is too big
|
|
80
|
+
let candidate = path.join(dir, `${base}.jsonl`);
|
|
81
|
+
let suffix = 1;
|
|
82
|
+
while (fs.existsSync(candidate)) {
|
|
83
|
+
try {
|
|
84
|
+
const stat = fs.statSync(candidate);
|
|
85
|
+
if (stat.size < MAX_FILE_BYTES)
|
|
86
|
+
break;
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
break;
|
|
90
|
+
}
|
|
91
|
+
candidate = path.join(dir, `${base}-${suffix}.jsonl`);
|
|
92
|
+
suffix++;
|
|
93
|
+
}
|
|
94
|
+
return candidate;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Append a single PermissionAuditEntry to the audit JSONL file.
|
|
98
|
+
* Creates the audit directory and file if they don't exist.
|
|
99
|
+
* Never throws — errors are silently swallowed to avoid disrupting the plugin.
|
|
100
|
+
*/
|
|
101
|
+
function appendAuditEntry(entry, workspaceDir) {
|
|
102
|
+
try {
|
|
103
|
+
const filePath = getAuditFilePath(workspaceDir);
|
|
104
|
+
const dir = path.dirname(filePath);
|
|
105
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
106
|
+
fs.appendFileSync(filePath, JSON.stringify(entry) + '\n', 'utf-8');
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
// Fail silently — audit persistence must never crash the plugin
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Load the most recent `limit` audit entries from the audit directory.
|
|
114
|
+
* Reads the current day's file (and yesterday's if needed to fill the limit).
|
|
115
|
+
* Skips malformed lines gracefully.
|
|
116
|
+
* Returns entries in chronological order (oldest first).
|
|
117
|
+
*/
|
|
118
|
+
function loadRecentAuditEntries(workspaceDir, limit) {
|
|
119
|
+
if (limit <= 0)
|
|
120
|
+
return [];
|
|
121
|
+
const dir = getAuditDir(workspaceDir);
|
|
122
|
+
if (!fs.existsSync(dir))
|
|
123
|
+
return [];
|
|
124
|
+
// Collect all audit JSONL files, sorted newest first
|
|
125
|
+
let files;
|
|
126
|
+
try {
|
|
127
|
+
files = fs.readdirSync(dir)
|
|
128
|
+
.filter(f => f.startsWith('audit-') && f.endsWith('.jsonl'))
|
|
129
|
+
.sort()
|
|
130
|
+
.reverse(); // newest date first
|
|
131
|
+
}
|
|
132
|
+
catch {
|
|
133
|
+
return [];
|
|
134
|
+
}
|
|
135
|
+
const allEntries = [];
|
|
136
|
+
for (const file of files) {
|
|
137
|
+
if (allEntries.length >= limit)
|
|
138
|
+
break;
|
|
139
|
+
const filePath = path.join(dir, file);
|
|
140
|
+
try {
|
|
141
|
+
const content = fs.readFileSync(filePath, 'utf-8');
|
|
142
|
+
const lines = content.split('\n').filter(l => l.trim());
|
|
143
|
+
const fileEntries = [];
|
|
144
|
+
for (const line of lines) {
|
|
145
|
+
try {
|
|
146
|
+
fileEntries.push(JSON.parse(line));
|
|
147
|
+
}
|
|
148
|
+
catch {
|
|
149
|
+
// Skip malformed lines
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
// Prepend file entries (reading newest file first, so we prepend to keep chrono order)
|
|
153
|
+
allEntries.unshift(...fileEntries);
|
|
154
|
+
}
|
|
155
|
+
catch {
|
|
156
|
+
// Skip unreadable files
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
// Return the last `limit` entries (most recent)
|
|
160
|
+
return allEntries.slice(-limit);
|
|
161
|
+
}
|
|
162
|
+
//# sourceMappingURL=audit-persister.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit-persister.js","sourceRoot":"","sources":["../../src/audit-persister.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { AutopilotState, PauseReason } from './types';
|
|
2
|
+
export declare function activate(state: AutopilotState): AutopilotState;
|
|
3
|
+
export declare function deactivate(state: AutopilotState): AutopilotState;
|
|
4
|
+
export declare function pause(state: AutopilotState, reason: PauseReason): AutopilotState;
|
|
5
|
+
export declare function complete(state: AutopilotState): AutopilotState;
|
|
6
|
+
export declare function resume(state: AutopilotState): AutopilotState;
|
|
7
|
+
export declare function incrementTurn(state: AutopilotState): AutopilotState;
|
|
8
|
+
export declare function incrementTotal(state: AutopilotState): AutopilotState;
|
|
9
|
+
export declare function resetTurnAttempts(state: AutopilotState): AutopilotState;
|
|
10
|
+
export declare function setGoal(state: AutopilotState, goal: string): AutopilotState;
|
|
11
|
+
export declare function snapshotGoal(state: AutopilotState): AutopilotState;
|
|
12
|
+
export declare function restoreGoalFromSnapshot(state: AutopilotState): AutopilotState;
|
|
13
|
+
/**
|
|
14
|
+
* Detect whether a `running` session is STUCK — the autonomous loop has stalled
|
|
15
|
+
* and will not recover on its own, so re-activation should discard it and start
|
|
16
|
+
* a fresh run instead of hard-rejecting.
|
|
17
|
+
*
|
|
18
|
+
* A run is stuck when EITHER:
|
|
19
|
+
* - the orchestrator queued a retry that never completed (`retry_queued` — set
|
|
20
|
+
* by the stall handler), OR
|
|
21
|
+
* - there has been no activity for longer than the stall threshold.
|
|
22
|
+
*
|
|
23
|
+
* Why this exists: the stall handler sets `orchestrationState='retry_queued'` but
|
|
24
|
+
* leaves `status='running'` (the stall interval only dispatches `stall_timeout`,
|
|
25
|
+
* it does not pause). If the agent is genuinely dead the run sits in
|
|
26
|
+
* `running`/`retry_queued` forever, and the activate handler's "must be idle or
|
|
27
|
+
* done" guard blocks every subsequent activation — requiring a gateway restart.
|
|
28
|
+
* Genuinely-active runs (recent activity, orchState='running') are NOT stuck and
|
|
29
|
+
* stay protected from mid-flight reset.
|
|
30
|
+
*
|
|
31
|
+
* Scoped to `running` only: `paused` is an intentional, user-resumable state.
|
|
32
|
+
* `now` and `stallTimeoutMs` are injectable for deterministic unit testing.
|
|
33
|
+
*/
|
|
34
|
+
export declare function isRunStuck(state: AutopilotState, now?: number, stallTimeoutMs?: number): boolean;
|
|
35
|
+
//# sourceMappingURL=autopilot-state.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autopilot-state.d.ts","sourceRoot":"","sources":["../../src/autopilot-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAI3D,wBAAgB,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAK9D;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAYhE;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,GAAG,cAAc,CAKhF;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAK9D;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAc5D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAEnE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAEpE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAEvE;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAE3E;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAMlE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAQ7E;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,cAAc,EACrB,GAAG,GAAE,MAAmB,EACxB,cAAc,GAAE,MAAgB,GAC/B,OAAO,CAMT"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.activate = activate;
|
|
4
|
+
exports.deactivate = deactivate;
|
|
5
|
+
exports.pause = pause;
|
|
6
|
+
exports.complete = complete;
|
|
7
|
+
exports.resume = resume;
|
|
8
|
+
exports.incrementTurn = incrementTurn;
|
|
9
|
+
exports.incrementTotal = incrementTotal;
|
|
10
|
+
exports.resetTurnAttempts = resetTurnAttempts;
|
|
11
|
+
exports.setGoal = setGoal;
|
|
12
|
+
exports.snapshotGoal = snapshotGoal;
|
|
13
|
+
exports.restoreGoalFromSnapshot = restoreGoalFromSnapshot;
|
|
14
|
+
exports.isRunStuck = isRunStuck;
|
|
15
|
+
const MAX_GOAL_LENGTH = 500;
|
|
16
|
+
function activate(state) {
|
|
17
|
+
if (state.status !== 'idle' && state.status !== 'done') {
|
|
18
|
+
throw new Error(`Cannot activate from status "${state.status}", must be "idle" or "done"`);
|
|
19
|
+
}
|
|
20
|
+
return { ...state, status: 'running', enabled: true };
|
|
21
|
+
}
|
|
22
|
+
function deactivate(state) {
|
|
23
|
+
if (state.status !== 'running' && state.status !== 'paused' && state.status !== 'done') {
|
|
24
|
+
throw new Error(`Cannot deactivate from status "${state.status}"`);
|
|
25
|
+
}
|
|
26
|
+
return {
|
|
27
|
+
...state,
|
|
28
|
+
status: 'idle',
|
|
29
|
+
enabled: false,
|
|
30
|
+
pauseReason: undefined,
|
|
31
|
+
needsCrossTurnResume: false,
|
|
32
|
+
degraded: false,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
function pause(state, reason) {
|
|
36
|
+
if (state.status !== 'running') {
|
|
37
|
+
throw new Error(`Cannot pause from status "${state.status}", must be "running"`);
|
|
38
|
+
}
|
|
39
|
+
return { ...state, status: 'paused', enabled: false, pauseReason: reason, needsCrossTurnResume: false };
|
|
40
|
+
}
|
|
41
|
+
function complete(state) {
|
|
42
|
+
if (state.status !== 'running') {
|
|
43
|
+
throw new Error(`Cannot complete from status "${state.status}", must be "running"`);
|
|
44
|
+
}
|
|
45
|
+
return { ...state, status: 'done', enabled: false, needsCrossTurnResume: false, degraded: false };
|
|
46
|
+
}
|
|
47
|
+
function resume(state) {
|
|
48
|
+
if (state.status !== 'paused') {
|
|
49
|
+
throw new Error(`Cannot resume from status "${state.status}", must be "paused"`);
|
|
50
|
+
}
|
|
51
|
+
return {
|
|
52
|
+
...state,
|
|
53
|
+
status: 'running',
|
|
54
|
+
enabled: true,
|
|
55
|
+
pauseReason: undefined,
|
|
56
|
+
toolErrorCount: 0,
|
|
57
|
+
lastToolError: undefined,
|
|
58
|
+
needsCrossTurnResume: false,
|
|
59
|
+
degraded: false,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
function incrementTurn(state) {
|
|
63
|
+
return { ...state, turnAttempts: state.turnAttempts + 1 };
|
|
64
|
+
}
|
|
65
|
+
function incrementTotal(state) {
|
|
66
|
+
return { ...state, totalContinuations: state.totalContinuations + 1 };
|
|
67
|
+
}
|
|
68
|
+
function resetTurnAttempts(state) {
|
|
69
|
+
return { ...state, turnAttempts: 0 };
|
|
70
|
+
}
|
|
71
|
+
function setGoal(state, goal) {
|
|
72
|
+
return { ...state, goal: goal.substring(0, MAX_GOAL_LENGTH) };
|
|
73
|
+
}
|
|
74
|
+
function snapshotGoal(state) {
|
|
75
|
+
return {
|
|
76
|
+
...state,
|
|
77
|
+
goalSnapshot: state.goal,
|
|
78
|
+
progressSnapshot: state.progress,
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
function restoreGoalFromSnapshot(state) {
|
|
82
|
+
return {
|
|
83
|
+
...state,
|
|
84
|
+
goal: state.goal ?? state.goalSnapshot,
|
|
85
|
+
progress: state.progressSnapshot ?? state.progress,
|
|
86
|
+
goalSnapshot: undefined,
|
|
87
|
+
progressSnapshot: undefined,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Detect whether a `running` session is STUCK — the autonomous loop has stalled
|
|
92
|
+
* and will not recover on its own, so re-activation should discard it and start
|
|
93
|
+
* a fresh run instead of hard-rejecting.
|
|
94
|
+
*
|
|
95
|
+
* A run is stuck when EITHER:
|
|
96
|
+
* - the orchestrator queued a retry that never completed (`retry_queued` — set
|
|
97
|
+
* by the stall handler), OR
|
|
98
|
+
* - there has been no activity for longer than the stall threshold.
|
|
99
|
+
*
|
|
100
|
+
* Why this exists: the stall handler sets `orchestrationState='retry_queued'` but
|
|
101
|
+
* leaves `status='running'` (the stall interval only dispatches `stall_timeout`,
|
|
102
|
+
* it does not pause). If the agent is genuinely dead the run sits in
|
|
103
|
+
* `running`/`retry_queued` forever, and the activate handler's "must be idle or
|
|
104
|
+
* done" guard blocks every subsequent activation — requiring a gateway restart.
|
|
105
|
+
* Genuinely-active runs (recent activity, orchState='running') are NOT stuck and
|
|
106
|
+
* stay protected from mid-flight reset.
|
|
107
|
+
*
|
|
108
|
+
* Scoped to `running` only: `paused` is an intentional, user-resumable state.
|
|
109
|
+
* `now` and `stallTimeoutMs` are injectable for deterministic unit testing.
|
|
110
|
+
*/
|
|
111
|
+
function isRunStuck(state, now = Date.now(), stallTimeoutMs = 600_000) {
|
|
112
|
+
if (state.status !== 'running')
|
|
113
|
+
return false;
|
|
114
|
+
if (state.orchestrationState === 'retry_queued')
|
|
115
|
+
return true;
|
|
116
|
+
const lastActivity = state.lastActivityAt ?? state.startedAt ?? 0;
|
|
117
|
+
if (lastActivity > 0 && now - lastActivity > stallTimeoutMs)
|
|
118
|
+
return true;
|
|
119
|
+
return false;
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=autopilot-state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"autopilot-state.js","sourceRoot":"","sources":["../../src/autopilot-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ValidationCommand, EvidenceCommandResult } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Run each command sequentially and collect results.
|
|
4
|
+
* Never throws — errors are captured as 'failed'/'timeout' results.
|
|
5
|
+
*/
|
|
6
|
+
export declare function runValidationCommands(commands: ValidationCommand[], cwd?: string): Promise<EvidenceCommandResult[]>;
|
|
7
|
+
/**
|
|
8
|
+
* Parse a command string into [binary, ...args], respecting single and
|
|
9
|
+
* double quotes so paths with spaces are handled correctly on Windows and macOS.
|
|
10
|
+
* Shell features (&&, |, ;, $var) are NOT supported — wrap in a script file.
|
|
11
|
+
*/
|
|
12
|
+
export declare function parseCommandArgs(command: string): string[];
|
|
13
|
+
//# sourceMappingURL=command-runner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-runner.d.ts","sourceRoot":"","sources":["../../src/command-runner.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAExE;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAyClC;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAoB1D"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.runValidationCommands = runValidationCommands;
|
|
4
|
+
exports.parseCommandArgs = parseCommandArgs;
|
|
5
|
+
/**
|
|
6
|
+
* M5.3: Validation command executor.
|
|
7
|
+
*
|
|
8
|
+
* Executes ValidationCommands via child_process.execFile and returns
|
|
9
|
+
* EvidenceCommandResult[]. Pure I/O — no state, no orchestration.
|
|
10
|
+
*
|
|
11
|
+
* Commands are parsed into [binary, ...args] via parseCommandArgs (quote-aware).
|
|
12
|
+
* Shell features (&&, |, ;) are intentionally unsupported; wrap in a script file.
|
|
13
|
+
*
|
|
14
|
+
* X-15 (Windows .cmd/.bat): Node ≥ 20.12.2 / 24.x blocks execFile of .cmd/.bat
|
|
15
|
+
* without shell:true (CVE-2024-27980 mitigation). We enable shell conditionally:
|
|
16
|
+
* useShell = isWin && (isCmdLike(bin) || hasNonAscii(bin|args|cwd))
|
|
17
|
+
* mirroring packages/gateway/src/manager.ts:2038-2048. When shell is on, Node
|
|
18
|
+
* auto-quotes the argv array with cmd-safe escaping, preserving injection safety
|
|
19
|
+
* as long as we always pass args as an array (never a pre-joined string).
|
|
20
|
+
*/
|
|
21
|
+
const child_process_1 = require("child_process");
|
|
22
|
+
/**
|
|
23
|
+
* Run each command sequentially and collect results.
|
|
24
|
+
* Never throws — errors are captured as 'failed'/'timeout' results.
|
|
25
|
+
*/
|
|
26
|
+
async function runValidationCommands(commands, cwd) {
|
|
27
|
+
if (commands.length === 0)
|
|
28
|
+
return [];
|
|
29
|
+
const results = [];
|
|
30
|
+
for (const cmd of commands) {
|
|
31
|
+
const startMs = Date.now();
|
|
32
|
+
try {
|
|
33
|
+
await execCommand(cmd.command, cmd.timeoutMs, cwd);
|
|
34
|
+
results.push({
|
|
35
|
+
id: cmd.id,
|
|
36
|
+
command: cmd.command,
|
|
37
|
+
status: 'passed',
|
|
38
|
+
exitCode: 0, // execFile callback passes null error only on exit 0
|
|
39
|
+
durationMs: Date.now() - startMs,
|
|
40
|
+
summary: '',
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
catch (err) {
|
|
44
|
+
const durationMs = Date.now() - startMs;
|
|
45
|
+
const e = err;
|
|
46
|
+
// Detect timeout: process was killed by Node's timeout mechanism (SIGTERM/SIGKILL),
|
|
47
|
+
// or the error code indicates timeout on some platforms.
|
|
48
|
+
// Windows note: SIGTERM/SIGKILL are not POSIX signals — Node uses TerminateProcess()
|
|
49
|
+
// which sets e.killed=true when the Node timeout fires (covered by e.killed===true).
|
|
50
|
+
// External kills via taskkill produce e.killed=undefined and e.signal=null; these
|
|
51
|
+
// cannot be reliably distinguished from normal failures (exit code 1 is also used by
|
|
52
|
+
// `false` and other failing commands), so we do NOT add e.code===1 as a heuristic.
|
|
53
|
+
// (X-2 Windows signal limitation — documented, not patchable without a side-channel.)
|
|
54
|
+
const timedOut = e.killed === true || e.signal === 'SIGTERM' || e.signal === 'SIGKILL' || e.code === 'ETIMEDOUT';
|
|
55
|
+
results.push({
|
|
56
|
+
id: cmd.id,
|
|
57
|
+
command: cmd.command,
|
|
58
|
+
status: timedOut ? 'timeout' : 'failed',
|
|
59
|
+
exitCode: typeof e.code === 'number' ? e.code : undefined,
|
|
60
|
+
durationMs,
|
|
61
|
+
summary: (e.stderr ?? e.message ?? String(err)).substring(0, 300),
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return results;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Parse a command string into [binary, ...args], respecting single and
|
|
69
|
+
* double quotes so paths with spaces are handled correctly on Windows and macOS.
|
|
70
|
+
* Shell features (&&, |, ;, $var) are NOT supported — wrap in a script file.
|
|
71
|
+
*/
|
|
72
|
+
function parseCommandArgs(command) {
|
|
73
|
+
const args = [];
|
|
74
|
+
let current = '';
|
|
75
|
+
let inDouble = false;
|
|
76
|
+
let inSingle = false;
|
|
77
|
+
for (let i = 0; i < command.length; i++) {
|
|
78
|
+
const ch = command[i];
|
|
79
|
+
if (ch === '"' && !inSingle) {
|
|
80
|
+
inDouble = !inDouble;
|
|
81
|
+
}
|
|
82
|
+
else if (ch === "'" && !inDouble) {
|
|
83
|
+
inSingle = !inSingle;
|
|
84
|
+
}
|
|
85
|
+
else if (ch === ' ' && !inDouble && !inSingle) {
|
|
86
|
+
if (current) {
|
|
87
|
+
args.push(current);
|
|
88
|
+
current = '';
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
current += ch;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
if (current)
|
|
96
|
+
args.push(current);
|
|
97
|
+
return args;
|
|
98
|
+
}
|
|
99
|
+
function hasNonAscii(...values) {
|
|
100
|
+
return values.some((s) => [...s].some((c) => c.charCodeAt(0) > 127));
|
|
101
|
+
}
|
|
102
|
+
function isCmdLike(bin) {
|
|
103
|
+
const lower = bin.toLowerCase();
|
|
104
|
+
return lower.endsWith('.cmd') || lower.endsWith('.bat');
|
|
105
|
+
}
|
|
106
|
+
function shouldUseShell(bin, args, cwd) {
|
|
107
|
+
if (process.platform !== 'win32')
|
|
108
|
+
return false;
|
|
109
|
+
// Windows: shell is required for .cmd/.bat wrappers (CVE-2024-27980) and
|
|
110
|
+
// beneficial for non-ASCII paths that cmd.exe handles more leniently than
|
|
111
|
+
// the native CreateProcess entry point.
|
|
112
|
+
return isCmdLike(bin) || hasNonAscii(bin, ...args, cwd ?? '');
|
|
113
|
+
}
|
|
114
|
+
async function execCommand(command, timeoutMs, cwd) {
|
|
115
|
+
const parts = parseCommandArgs(command.trim());
|
|
116
|
+
if (parts.length === 0 || !parts[0]) {
|
|
117
|
+
throw new Error('empty command string');
|
|
118
|
+
}
|
|
119
|
+
const [bin, ...args] = parts;
|
|
120
|
+
const run = (b, a) => new Promise((resolve, reject) => {
|
|
121
|
+
const useShell = shouldUseShell(b, a, cwd);
|
|
122
|
+
(0, child_process_1.execFile)(b, a, { timeout: timeoutMs, cwd, shell: useShell }, (error, _stdout, stderr) => {
|
|
123
|
+
if (error) {
|
|
124
|
+
reject(Object.assign(error, { stderr }));
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
resolve();
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
});
|
|
131
|
+
try {
|
|
132
|
+
await run(bin, args);
|
|
133
|
+
}
|
|
134
|
+
catch (err) {
|
|
135
|
+
// Fallback for legacy PATH lookups on Windows where the bare name resolves
|
|
136
|
+
// to ENOENT but the .cmd sibling exists. With conditional shell enabled,
|
|
137
|
+
// this branch is rarely hit; we keep it as belt-and-suspenders for users
|
|
138
|
+
// who wrote `npm test` (bare) and whose Node version still surfaces ENOENT.
|
|
139
|
+
if (process.platform === 'win32' &&
|
|
140
|
+
err.code === 'ENOENT' &&
|
|
141
|
+
!bin.toLowerCase().endsWith('.cmd')) {
|
|
142
|
+
await run(`${bin}.cmd`, args);
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
throw err;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=command-runner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-runner.js","sourceRoot":"","sources":["../../src/command-runner.ts"],"names":[],"mappings":"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"}
|