@minicor/mcp-server 4.9.0 → 4.11.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.
Files changed (37) hide show
  1. package/README.md +19 -6
  2. package/dist/__tests__/blueprints-tools.test.js +137 -70
  3. package/dist/__tests__/blueprints-tools.test.js.map +1 -1
  4. package/dist/__tests__/job-webhook-events.test.d.ts +2 -0
  5. package/dist/__tests__/job-webhook-events.test.d.ts.map +1 -0
  6. package/dist/__tests__/job-webhook-events.test.js +36 -0
  7. package/dist/__tests__/job-webhook-events.test.js.map +1 -0
  8. package/dist/__tests__/jobs-tools.test.js +363 -0
  9. package/dist/__tests__/jobs-tools.test.js.map +1 -1
  10. package/dist/__tests__/middleware-service-client.test.js +50 -0
  11. package/dist/__tests__/middleware-service-client.test.js.map +1 -1
  12. package/dist/__tests__/server-surface.test.js +3 -0
  13. package/dist/__tests__/server-surface.test.js.map +1 -1
  14. package/dist/bootstrap-perms.d.ts.map +1 -1
  15. package/dist/bootstrap-perms.js +6 -0
  16. package/dist/bootstrap-perms.js.map +1 -1
  17. package/dist/job-webhook-events.d.ts +30 -0
  18. package/dist/job-webhook-events.d.ts.map +1 -0
  19. package/dist/job-webhook-events.js +153 -0
  20. package/dist/job-webhook-events.js.map +1 -0
  21. package/dist/middleware-service-client.d.ts +46 -0
  22. package/dist/middleware-service-client.d.ts.map +1 -1
  23. package/dist/middleware-service-client.js +20 -0
  24. package/dist/middleware-service-client.js.map +1 -1
  25. package/dist/server-surface.d.ts.map +1 -1
  26. package/dist/server-surface.js +6 -0
  27. package/dist/server-surface.js.map +1 -1
  28. package/dist/tools/blueprints.d.ts +4 -0
  29. package/dist/tools/blueprints.d.ts.map +1 -1
  30. package/dist/tools/blueprints.js +32 -18
  31. package/dist/tools/blueprints.js.map +1 -1
  32. package/dist/tools/jobs.d.ts.map +1 -1
  33. package/dist/tools/jobs.js +212 -17
  34. package/dist/tools/jobs.js.map +1 -1
  35. package/package.json +1 -1
  36. package/skills/general/job-build-loop.md +4 -0
  37. package/skills/general/job-webhooks.md +182 -0
@@ -1 +1 @@
1
- {"version":3,"file":"blueprints.js","sourceRoot":"","sources":["../../src/tools/blueprints.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blueprints.js","sourceRoot":"","sources":["../../src/tools/blueprints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACL,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AAQzC,MAAM,WAAW,GAAG,CAAC;KAClB,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KAClB,QAAQ,EAAE;KACV,QAAQ,CAAC,6DAA6D,CAAC,CAAC;AAE3E,+EAA+E;AAC/E,8EAA8E;AAC9E,8EAA8E;AAC9E,gEAAgE;AAChE,MAAM,gBAAgB,GAAG,CAAC;KACvB,MAAM,EAAE;KACR,IAAI,CAAC,iEAAiE,CAAC;KACvE,QAAQ,CAAC,qBAAqB,CAAC,CAAC;AAEnC,MAAM,YAAY,GAAG,CAAC;KACnB,MAAM,EAAE;KACR,IAAI,CAAC,qEAAqE,CAAC,CAAC;AAE/E,MAAM,cAAc,GAAG,CAAC;KACrB,IAAI,CAAC;IACJ,KAAK;IACL,OAAO;IACP,KAAK;IACL,MAAM;IACN,YAAY;IACZ,aAAa;IACb,aAAa;IACb,YAAY;IACZ,QAAQ;IACR,YAAY;CACb,CAAC;KACD,QAAQ,CACP,qNAAqN,CACtN,CAAC;AAEJ,kFAAkF;AAClF,SAAS,QAAQ,CAAC,CAAU;IAC1B,OAAO,CAAC,YAAY,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACpE,CAAC;AAED,wFAAwF;AACxF,SAAS,MAAM,CAAC,CAAU;IACxB,OAAO,CAAC,YAAY,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AAClE,CAAC;AA4BD,qEAAqE;AACrE,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAEvC,gFAAgF;AAChF,SAAS,WAAW,CAAC,EAAsB;IACzC,MAAM,GAAG,GAAG,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC9B,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,OAAO,IAAI,KAAK,EAAE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,uBAAuB,CAC9B,MAA0B,EAC1B,OAAe,EACf,IAAa;IAEb,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,kBAAkB;YACrB,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QACzD,KAAK,mBAAmB;YACtB,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAC1D,KAAK,0BAA0B;YAC7B,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QAC1D,mEAAmE;QACnE,iEAAiE;QACjE,sBAAsB;QACtB,KAAK,oBAAoB,CAAC;QAC1B,KAAK,uBAAuB,CAAC;QAC7B,KAAK,yBAAyB,CAAC;QAC/B,KAAK,qBAAqB;YACxB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IAC7C,CAAC;IACD,mEAAmE;IACnE,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACnB,IAAI,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC;YAClC,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QACzD,IAAI,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC;YACvC,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAC1D,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC;YACjC,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QAC1D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACjD,CAAC;IACD,IAAI,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;QACzC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACtD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAc;IACrC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAExB,SAAS,SAAS,CAAC,MAAe;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAChD,OAAO,IAAI,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,UAAU,iBAAiB,CAC9B,MAA+B,EAC/B,WAAmB,EACnB,EAAsB;QAEtB,IAAI,EAAE,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,CAAC,KAAK,KAAK,SAAS;YAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QAC1E,IAAI,CAAC;YACH,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC/D,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC;QACzD,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,SAAS,gBAAgB,CAAC,WAAmB,EAAE,cAAuB;QACpE,OAAO,cAAc;YACnB,CAAC,CAAC;gBACE,OAAO,EAAE,gEAAgE,cAAc,gEAAgE,WAAW,4BAA4B;aAC/L;YACH,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IAED,SAAS,aAAa,CAAC,WAAmB,EAAE,QAAiB;QAC3D,IAAI,QAAQ;YAAE,OAAO,QAAkB,CAAC;QACxC,OAAO,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC;IACjE,CAAC;IAED,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,gBAAgB,EAChB,iWAAiW,EACjW;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE;QAChC,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;YAClE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,6BAA6B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,2ZAA2Z,EAC3Z;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAC3C,QAAQ,EAAE,CAAC;aACR,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;aAC/B,QAAQ,EAAE;aACV,QAAQ,CACP,+GAA+G,CAChH;QACH,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,2IAA2I,CAC5I;QACH,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,yDAAyD,CAAC;QACtE,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE;QACvE,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,EAAE;gBAChE,IAAI;gBACJ,QAAQ,EAAE,QAAe;gBACzB,OAAO;gBACP,YAAY;aACb,CAAC,CAAC;YACH,OAAO,EAAE,CAAC;gBACR,MAAM,EAAE,SAAS;gBACjB,SAAS;gBACT,WAAW,EAAE;oBACX,OAAO;wBACL,CAAC,CAAC,0BAA0B,OAAO,yCAAyC,SAAS,CAAC,EAAE,iEAAiE;wBACzJ,CAAC,CAAC,qDAAqD,SAAS,CAAC,EAAE,iEAAiE;iBACvI;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,6BAA6B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,eAAe,EACf,mbAAmb,EACnb;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE;QAC7C,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAC5E,OAAO,EAAE,CAAC;gBACR,SAAS;gBACT,KAAK,EAAE;oBACL,aAAa,EAAE,SAAS,CAAC,QAAQ,EAAE,aAAa,IAAI,EAAE;oBACtD,eAAe,EAAE,SAAS,CAAC,eAAe;wBACxC,CAAC,CAAC;4BACE,OAAO,EAAE,SAAS,CAAC,eAAe,CAAC,OAAO;4BAC1C,WAAW,EAAE,SAAS,CAAC,eAAe,CAAC,WAAW;4BAClD,UAAU,EAAE,SAAS,CAAC,eAAe,CAAC,UAAU;4BAChD,SAAS,EAAE,SAAS,CAAC,eAAe,CAAC,SAAS;yBAC/C;wBACH,CAAC,CAAC,IAAI;iBACT;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,6BAA6B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,urBAAurB,EACvrB;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QAC5D,QAAQ,EAAE,CAAC;aACR,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;aAC/B,QAAQ,EAAE;aACV,QAAQ,CAAC,+CAA+C,CAAC;QAC5D,KAAK,EAAE,CAAC;aACL,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;aAC/B,QAAQ,EAAE;aACV,QAAQ,CAAC,4CAA4C,CAAC;QACzD,IAAI,EAAE,CAAC;aACJ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,4CAA4C,CAAC;QACzD,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,gNAAgN,CACjN;QACH,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE;QACvF,kEAAkE;QAClE,qEAAqE;QACrE,kDAAkD;QAClD,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YACjF,OAAO,EAAE,CAAC;gBACR,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE;oBACP,MAAM,EAAE,uBAAuB;oBAC/B,SAAS,EAAE,IAAI;oBACf,OAAO,EACL,wHAAwH;iBAC3H;gBACD,WAAW,EAAE;oBACX,6BAA6B,WAAW,6GAA6G;iBACtJ;aACF,CAAC,CAAC;QACL,CAAC;QACD,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,MAAM,iBAAiB,CAC/D,MAAM,EACN,WAAW,EACX,MAAM,MAAM,CAAC,eAAe,CAAC,WAAW,EAAE,WAAW,EAAE;gBACrD,IAAI;gBACJ,QAAQ,EAAE,QAAe;gBACzB,KAAK,EAAE,KAAY;gBACnB,IAAI;gBACJ,WAAW;aACZ,CAAC,CACH,CAAC;YACF,OAAO,EAAE,CAAC;gBACR,MAAM,EAAE,SAAS;gBACjB,WAAW,EAAE,SAAS,CAAC,WAAW,IAAI,IAAI;gBAC1C,SAAS;gBACT,GAAG,gBAAgB,CAAC,WAAW,EAAE,cAAc,CAAC;aACjD,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACxB,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE;wBACP,MAAM,EAAE,kBAAkB;wBAC1B,SAAS,EAAE,IAAI;wBACf,OAAO,EAAE,CAAC,CAAC,OAAO;qBACnB;oBACD,WAAW,EAAE;wBACX,wCAAwC,WAAW,gCAAgC,WAAW,iIAAiI;qBAChO;iBACF,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC,6BAA6B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB,m0BAAm0B,EACn0B;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,OAAO,EAAE,YAAY;aAClB,QAAQ,EAAE;aACV,QAAQ,CACP,+HAA+H,CAChI;QACH,IAAI,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACtC,iFAAiF,CAClF;QACD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;QACtF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QACnF,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;QACjF,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,8DAA8D,CAAC;QAC3E,OAAO,EAAE,CAAC;aACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;aAC/B,QAAQ,EAAE;aACV,QAAQ,CACP,2LAA2L,CAC5L;QACH,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QACxE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QAClE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QACjE,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EACL,WAAW,EACX,WAAW,EACX,OAAO,EACP,IAAI,EACJ,KAAK,EACL,IAAI,EAAE,SAAS,EACf,GAAG,EACH,OAAO,EACP,OAAO,EACP,QAAQ,EACR,WAAW,EACX,SAAS,EACT,MAAM,GACP,EAAE,EAAE;QACH,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAC7C,WAAW,EACX,WAAW,EACX,OAAO,EACP;oBACE,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvD,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrC,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC9C,CACF,CAAC;gBACF,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YAC1C,CAAC;YACD,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACpB,OAAO,IAAI,CACT,8FAA8F,CAC/F,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,WAAW,EAAE,WAAW,EAAE;gBACxE,IAAI;gBACJ,KAAK;gBACL,IAAI,EAAE,SAAS;gBACf,GAAG;gBACH,OAAO;gBACP,OAAO;gBACP,QAAQ;gBACR,WAAW;gBACX,SAAS;aACV,CAAC,CAAC;YACH,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,CAAC;YAC9E,OAAO,EAAE,CAAC;gBACR,MAAM,EAAE,SAAS;gBACjB,KAAK;gBACL,GAAG,CAAC,SAAS;oBACX,CAAC,CAAC;wBACE,IAAI,EAAE,iHAAiH;qBACxH;oBACH,CAAC,CAAC,EAAE,CAAC;aACR,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,kCAAkC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,wBAAwB,EACxB,keAAke,EACle;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,OAAO,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAClE,SAAS,EAAE,CAAC;aACT,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CAAC,mEAAmE,CAAC;QAChF,SAAS,EAAE,CAAC;aACT,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CACP,wGAAwG,CACzG;QACH,WAAW,EAAE,CAAC;aACX,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CAAC,uEAAuE,CAAC;QACpF,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE;QACzF,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;gBAC5E,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAC5B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,YAAY,CAC3D,CAAC,MAAM,CAAC;gBACT,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;gBACnE,OAAO,EAAE,CAAC;oBACR,OAAO;oBACP,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE;oBAClD,GAAG,CAAC,OAAO;wBACT,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,QAAQ,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,sDAAsD,EAAE;wBACtH,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC,CAAC;YACL,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;YAChF,MAAM,MAAM,GAA4B,EAAE,KAAK,EAAE,CAAC;YAClD,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,CAAC,SAAS,GAAG,MAAM,MAAM,CAAC,2BAA2B,CACzD,WAAW,EACX,WAAW,EACX,OAAO,EACP,EAAE,SAAS,EAAE,CACd,CAAC;YACJ,CAAC;YACD,IAAI,WAAW,EAAE,CAAC;gBAChB,IAAI,CAAC;oBACH,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CACrD,WAAW,EACX,WAAW,EACX,OAAO,CACR,CAAC;oBACF,MAAM,CAAC,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC;gBACtC,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBAChB,MAAM,CAAC,gBAAgB,GAAG,CAAC,CAAC,OAAO,CAAC;gBACtC,CAAC;YACH,CAAC;YACD,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;QACpB,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,oCAAoC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,4BAA4B,EAC5B,geAAge,EAChe;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;QACrF,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;QACvD,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAC7D,WAAW,EACX,WAAW,EACX,QAAQ,CACT,CAAC;YACF,OAAO,EAAE,CAAC;gBACR,GAAG,MAAM;gBACT,WAAW,EAAE;oBACX,4FAA4F;oBAC5F,wCAAwC,WAAW,kBAAkB,MAAM,CAAC,OAAO,+CAA+C;iBACnI;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACxB,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE;wBACP,MAAM,EAAE,2BAA2B;wBACnC,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE,CAAC,CAAC,OAAO;qBACnB;oBACD,WAAW,EAAE;wBACX,iLAAiL;qBAClL;iBACF,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC,8BAA8B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,+tBAA+tB,EAC/tB;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,2DAA2D,CAAC;QACxE,OAAO,EAAE,CAAC;aACP,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CAAC,sDAAsD,CAAC;QACnE,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;QACpE,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,CAAC,mBAAmB,CACtD,WAAW,EACX,WAAW,EACX,EAAE,OAAO,EAAE,YAAY,EAAE,CAC1B,CAAC;YACF,MAAM,QAAQ,GAAG,SAAS,CAAC,eAAe,CAAC;YAC3C,OAAO,EAAE,CAAC;gBACR,MAAM,EAAE,gBAAgB;gBACxB,QAAQ;gBACR,WAAW,EAAE,QAAQ;oBACnB,CAAC,CAAC;wBACE,iCAAiC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,gDAAgD,WAAW,gBAAgB,QAAQ,CAAC,WAAW,uBAAuB,QAAQ,CAAC,UAAU,6CAA6C;qBACxP;oBACH,CAAC,CAAC;wBACE,sEAAsE,WAAW,cAAc;qBAChG;aACN,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,MAAM,KAAK,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACzE,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,WAAW,GAAa,EAAE,CAAC;gBACjC,IAAI,KAAK,CAAC,MAAM,KAAK,kBAAkB,EAAE,CAAC;oBACxC,WAAW,CAAC,IAAI,CACd,iFAAiF,WAAW,kEAAkE,CAC/J,CAAC;gBACJ,CAAC;qBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;oBAChD,WAAW,CAAC,IAAI,CACd,yEAAyE,WAAW,yCAAyC,CAC9H,CAAC;gBACJ,CAAC;qBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,kBAAkB,EAAE,CAAC;oBAC/C,WAAW,CAAC,IAAI,CACd,gIAAgI,CACjI,CAAC;gBACJ,CAAC;qBAAM,IAAI,KAAK,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;oBAC5C,WAAW,CAAC,IAAI,CACd,0DAA0D,WAAW,+BAA+B,CACrG,CAAC;gBACJ,CAAC;qBAAM,IACL;oBACE,oBAAoB;oBACpB,uBAAuB;oBACvB,yBAAyB;oBACzB,qBAAqB;iBACtB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EACxB,CAAC;oBACD,WAAW,CAAC,IAAI,CACd,iCAAiC,KAAK,CAAC,MAAM,8CAA8C,WAAW,mDAAmD,CAC1J,CAAC;gBACJ,CAAC;gBACD,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;oBACzC,WAAW;iBACZ,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC,iCAAiC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,wBAAwB,EACxB,qcAAqc,EACrc;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE;QAC7C,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAC5E,MAAM,QAAQ,GAAG,SAAS,CAAC,eAAe,CAAC;YAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,qBAAqB;oBAC7B,WAAW,EAAE;wBACX,6DAA6D,WAAW,0BAA0B,SAAS,CAAC,KAAK,IAAI;qBACtH;iBACF,CAAC,CAAC;YACL,CAAC;YACD,OAAO,EAAE,CAAC;gBACR,QAAQ;gBACR,SAAS,EAAE;oBACT,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,kBAAkB,EAAE,QAAQ,CAAC,UAAU;iBACxC;gBACD,WAAW,EAAE;oBACX,+CAA+C,WAAW,gBAAgB,QAAQ,CAAC,WAAW,uBAAuB,QAAQ,CAAC,UAAU,mDAAmD,WAAW,GAAG;iBAC1M;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,4BAA4B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,0BAA0B,EAC1B,yqBAAyqB,EACzqB;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,CAAC,6EAA6E,CAAC;QAC1F,kBAAkB,EAAE,CAAC;aAClB,MAAM,EAAE;aACR,QAAQ,CAAC,4EAA4E,CAAC;QACzF,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,EAAE,EAAE,EAAE;QAC9E,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,oEAAoE;YACpE,sEAAsE;YACtE,qEAAqE;YACrE,+DAA+D;YAC/D,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACpE,MAAM,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC;YACxC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,qBAAqB;oBAC7B,IAAI,EAAE,uFAAuF;oBAC7F,WAAW,EAAE;wBACX,6BAA6B,WAAW,yDAAyD;qBAClG;iBACF,CAAC,CAAC;YACL,CAAC;YACD,IACE,OAAO,CAAC,WAAW,KAAK,WAAW;gBACnC,OAAO,CAAC,UAAU,KAAK,kBAAkB,EACzC,CAAC;gBACD,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE;wBACP,MAAM,EAAE,kBAAkB;wBAC1B,SAAS,EAAE,IAAI;wBACf,OAAO,EAAE,qCAAqC,OAAO,CAAC,WAAW,gBAAgB,OAAO,CAAC,UAAU,8CAA8C,WAAW,gBAAgB,kBAAkB,4CAA4C;qBAC3O;oBACD,WAAW,EAAE;wBACX,iDAAiD,WAAW,wCAAwC;qBACrG;iBACF,CAAC,CAAC;YACL,CAAC;YACD,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,MAAM,iBAAiB,CAC/D,MAAM,EACN,WAAW;YACX,+DAA+D;YAC/D,mEAAmE;YACnE,mEAAmE;YACnE,MAAM,MAAM,CAAC,sBAAsB,CAAC,WAAW,EAAE,WAAW,EAAE;gBAC5D,UAAU,EAAE,kBAAkB;aAC/B,CAAC,CACH,CAAC;YACF,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,EAAE,aAAa,IAAI,EAAE,CAAC;YAC9D,OAAO,EAAE,CAAC;gBACR,MAAM,EAAE,SAAS;gBACjB,WAAW,EAAE,SAAS,CAAC,WAAW,IAAI,IAAI;gBAC1C,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,IAAI;gBAC9B,aAAa;gBACb,GAAG,gBAAgB,CAAC,WAAW,EAAE,cAAc,CAAC;gBAChD,WAAW,EAAE,aAAa,CAAC,MAAM;oBAC/B,CAAC,CAAC;wBACE,4BAA4B,aAAa,CAAC,MAAM,2IAA2I;qBAC5L;oBACH,CAAC,CAAC;wBACE,kBAAkB,SAAS,CAAC,WAAW,mCAAmC,WAAW,2BAA2B;qBACjH;aACN,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACxB,kEAAkE;gBAClE,kEAAkE;gBAClE,0BAA0B;gBAC1B,MAAM,OAAO,GACX,MAAM,CAAC,CAAC,CAAC,KAAK,mBAAmB;oBACjC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC3E,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,EAAE,CAAC;wBACR,MAAM,EAAE,SAAS;wBACjB,OAAO,EAAE;4BACP,MAAM,EAAE,kBAAkB;4BAC1B,SAAS,EAAE,IAAI;4BACf,OAAO,EAAE,CAAC,CAAC,OAAO;yBACnB;wBACD,WAAW,EAAE;4BACX,oIAAoI,WAAW,0EAA0E;yBAC1N;qBACF,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;oBACtE,WAAW,EAAE;wBACX,gGAAgG,WAAW,oCAAoC;qBAChJ;iBACF,CAAC,CAAC;YACL,CAAC;YACD,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACxB,6DAA6D;gBAC7D,kEAAkE;gBAClE,kEAAkE;gBAClE,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC5C,OAAO,IAAI,CAAC,wBAAwB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;gBACnD,CAAC;gBACD,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,qBAAqB;oBAC7B,IAAI,EAAE,0EAA0E;oBAChF,WAAW,EAAE,CAAC,6BAA6B,WAAW,yBAAyB,CAAC;iBACjF,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC,4BAA4B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,2BAA2B,EAC3B,sYAAsY,EACtY;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE;QAC7C,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,MAAM,iBAAiB,CAC/D,MAAM,EACN,WAAW,EACX,MAAM,MAAM,CAAC,uBAAuB,CAAC,WAAW,EAAE,WAAW,CAAC,CAC/D,CAAC;YACF,OAAO,EAAE,CAAC;gBACR,MAAM,EAAE,UAAU;gBAClB,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,IAAI;gBAC9B,GAAG,gBAAgB,CAAC,WAAW,EAAE,cAAc,CAAC;gBAChD,WAAW,EAAE;oBACX,oCAAoC,WAAW,0CAA0C;iBAC1F;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACxB,2DAA2D;gBAC3D,8BAA8B;gBAC9B,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC5C,OAAO,IAAI,CAAC,wBAAwB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;gBACnD,CAAC;gBACD,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,cAAc;oBACtB,IAAI,EAAE,0HAA0H;oBAChI,WAAW,EAAE,CAAC,6BAA6B,WAAW,yBAAyB,CAAC;iBACjF,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC,6BAA6B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,2BAA2B,EAC3B,iqBAAiqB,EACjqB;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,CAAC,2EAA2E,CAAC;QACxF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QAC1E,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE;QAC/D,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,uBAAuB,CACpD,WAAW,EACX,WAAW,EACX,QAAQ,EACR,MAAM,CACP,CAAC;YACF,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,EAAE,aAAa,IAAI,EAAE,CAAC;YAC1D,OAAO,EAAE,CAAC;gBACR,MAAM,EAAE,UAAU;gBAClB,sBAAsB,EAAE,SAAS;gBACjC,SAAS,EACP,qKAAqK;gBACvK,WAAW,EAAE,SAAS,CAAC,MAAM;oBAC3B,CAAC,CAAC,SAAS,CAAC,GAAG,CACX,CAAC,CAAC,EAAE,EAAE,CACJ,yCAAyC,WAAW,aAAa,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CACvF;oBACH,CAAC,CAAC;wBACE,6DAA6D,WAAW,qCAAqC;qBAC9G;aACN,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACxB,qEAAqE;gBACrE,iEAAiE;gBACjE,oEAAoE;gBACpE,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;oBACnC,OAAO,sBAAsB,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACpF,CAAC;gBACD,iEAAiE;gBACjE,iEAAiE;gBACjE,mEAAmE;gBACnE,kEAAkE;gBAClE,qCAAqC;gBACrC,IAAI,CAAC,0DAA0D,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;oBAChF,OAAO,IAAI,CAAC,wBAAwB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;gBACnD,CAAC;gBACD,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,kBAAkB;oBAC1B,IAAI,EAAE,sIAAsI;oBAC5I,WAAW,EAAE;wBACX,6BAA6B,WAAW,sDAAsD;qBAC/F;iBACF,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC,6BAA6B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CACF,CAAC;IAEF;;;;;OAKG;IACH,KAAK,UAAU,sBAAsB,CACnC,MAA+B,EAC/B,WAAmB,EACnB,WAAmB,EACnB,QAAgB,EAChB,MAAc;QAEd,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACtE,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,EAAE,aAAa,IAAI,EAAE,CAAC;YAC9D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACtC,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,kBAAkB;oBAC1B,IAAI,EAAE,8DAA8D;oBACpE,WAAW,EAAE,CAAC,6BAA6B,WAAW,iCAAiC,CAAC;iBACzF,CAAC,CAAC;YACL,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,WAAW,EAAE,WAAW,EAAE;gBACxE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,WAAW,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;gBAC1C,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE;aACvC,CAAC,CAAC;YACH,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,eAAe,CAAC,WAAW,EAAE,WAAW,EAAE;oBACrD,KAAK,EAAE,EAAE,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC,EAAE;oBACrE,IAAI,EAAE,oBAAoB,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG;oBAClD,WAAW,EAAE,SAAS,CAAC,WAAW;iBACnC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,QAAa,EAAE,CAAC;gBACvB,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,SAAS;oBACjB,IAAI,EAAE,+BAA+B,KAAK,CAAC,EAAE,0DAA0D,QAAQ,CAAC,OAAO,+CAA+C;oBACtK,WAAW,EAAE;wBACX,6BAA6B,WAAW,yGAAyG;qBAClJ;iBACF,CAAC,CAAC;YACL,CAAC;YACD,OAAO,EAAE,CAAC;gBACR,MAAM,EAAE,UAAU;gBAClB,IAAI,EAAE,mGAAmG;gBACzG,SAAS,EACP,iGAAiG;gBACnG,sBAAsB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC;aACpE,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,6CAA6C,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB,ivBAAivB,EACjvB;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,YAAY,EAAE,CAAC;aACZ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,yIAAyI,CAC1I;QACH,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE;QAC3D,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACpE,IAAI,OAAO,CAAC,WAAW,KAAK,aAAa,IAAI,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrF,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE;wBACP,MAAM,EAAE,mBAAmB;wBAC3B,SAAS,EAAE,IAAI;wBACf,OAAO,EAAE,SAAS,OAAO,CAAC,OAAO,wFAAwF;qBAC1H;oBACD,WAAW,EAAE;wBACX,sEAAsE,WAAW,iBAAiB,OAAO,CAAC,YAAY,YAAY,OAAO,CAAC,OAAO,YAAY,OAAO,CAAC,OAAO,qGAAqG;qBAClR;iBACF,CAAC,CAAC;YACL,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;YAClF,OAAO,EAAE,CAAC;gBACR,MAAM,EAAE,cAAc;gBACtB,GAAG,MAAM;gBACT,WAAW,EAAE;oBACX,sDAAsD,WAAW,qCAAqC,WAAW,iBAAiB,MAAM,CAAC,YAAY,YAAY,MAAM,CAAC,OAAO,YAAY,MAAM,CAAC,OAAO,IAAI;oBAC7M,kDAAkD,WAAW,iBAAiB,MAAM,CAAC,YAAY,YAAY,MAAM,CAAC,OAAO,8EAA8E;iBAC1M;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACxB,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;oBAC7E,WAAW,EAAE;wBACX,yJAAyJ,WAAW,GAAG;qBACxK;iBACF,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC,6BAA6B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,wBAAwB,EACxB,geAAge,EAChe;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE;QAC7C,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACtE,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;gBACxE,OAAO,EAAE,CAAC;oBACR,KAAK,EAAE,SAAS,CAAC,KAAK;oBACtB,KAAK,EAAE,IAAI;oBACX,WAAW,EAAE;wBACX,+DAA+D,WAAW,4EAA4E;qBACvJ;iBACF,CAAC,CAAC;YACL,CAAC;YACD,IAAI,KAA8B,CAAC;YACnC,IAAI,eAAmC,CAAC;YACxC,IAAI,CAAC;gBACH,KAAK,GAAG,MAAM,MAAM,CAAC,WAAW,CAC9B,WAAW,EACX,SAAS,CAAC,YAAY,EACtB,SAAS,CAAC,OAAO,EACjB,SAAS,CAAC,OAAO,CAClB,CAAC;YACJ,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,eAAe,GAAG,MAAM,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC;YAC5C,CAAC;YACD,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YACxE,MAAM,WAAW,GAAa,EAAE,CAAC;YACjC,IAAI,eAAe,EAAE,CAAC;gBACpB,WAAW,CAAC,IAAI,CACd,qBAAqB,SAAS,CAAC,OAAO,0BAA0B,eAAe,wFAAwF,WAAW,qCAAqC,WAAW,iBAAiB,SAAS,CAAC,YAAY,YAAY,SAAS,CAAC,OAAO,YAAY,SAAS,CAAC,OAAO,4BAA4B,CAChW,CAAC;YACJ,CAAC;YACD,IAAI,KAAK,EAAE,MAAM,KAAK,aAAa,EAAE,CAAC;gBACpC,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;oBAC9B,WAAW,CAAC,IAAI,CACd,qCAAqC,WAAW,iBAAiB,SAAS,CAAC,YAAY,YAAY,SAAS,CAAC,OAAO,YAAY,KAAK,CAAC,EAAE,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,mEAAmE,WAAW,IAAI,CAC3P,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACtC,WAAW,CAAC,IAAI,CACd,sIAAsI,WAAW,cAAc,CAChK,CAAC;YACJ,CAAC;iBAAM,IAAI,KAAK,EAAE,MAAM,KAAK,OAAO,EAAE,CAAC;gBACrC,WAAW,CAAC,IAAI,CACd,0CAA0C,WAAW,iBAAiB,SAAS,CAAC,YAAY,YAAY,SAAS,CAAC,OAAO,mCAAmC,CAC7J,CAAC;YACJ,CAAC;iBAAM,IAAI,KAAK,EAAE,CAAC;gBACjB,WAAW,CAAC,IAAI,CACd,YAAY,KAAK,CAAC,MAAM,qEAAqE,KAAK,CAAC,EAAE,mBAAmB,CACzH,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,CAAC;gBACR,KAAK,EAAE,SAAS,CAAC,KAAK;gBACtB,IAAI,EAAE;oBACJ,YAAY,EAAE,SAAS,CAAC,YAAY;oBACpC,OAAO,EAAE,SAAS,CAAC,OAAO;oBAC1B,OAAO,EAAE,SAAS,CAAC,OAAO;iBAC3B;gBACD,KAAK,EAAE,KAAK,IAAI,IAAI;gBACpB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,aAAa;gBACb,WAAW;aACZ,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,gCAAgC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,wBAAwB,EACxB,qjBAAqjB,EACrjB;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE;QAC7C,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACpF,OAAO,EAAE,CAAC;gBACR,MAAM,EAAE,UAAU;gBAClB,YAAY,EAAE,SAAS,CAAC,QAAQ,EAAE,YAAY,IAAI,EAAE;gBACpD,WAAW,EAAE;oBACX,+DAA+D,WAAW,yDAAyD;iBACpI;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;gBACxB,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;oBAC9E,WAAW,EAAE;wBACX,2FAA2F;qBAC5F;iBACF,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC,0BAA0B,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,qXAAqX,EACrX;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB;QAC7B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;QAC1E,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;QACtD,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;gBACpB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;gBACrF,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YACnC,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAC9E,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,qCAAqC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAChE,CAAC;IACH,CAAC,CACF,CAAC;IAEF,8DAA8D;IAE9D,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,2yBAA2yB,EAC3yB;QACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChD,WAAW,EAAE,gBAAgB,CAAC,QAAQ,CAAC,gCAAgC,CAAC;QACxE,MAAM,EAAE,WAAW;KACpB,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE;QAC7C,MAAM,CAAC,GAAG,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,CAAC,EAAE,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC1C,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC;gBAC7C,MAAM,CAAC,oBAAoB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,IAAI,CACxD,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAC1B,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,CACxD;aACF,CAAC,CAAC;YACH,mEAAmE;YACnE,qEAAqE;YACrE,iEAAiE;YACjE,qDAAqD;YACrD,IAAI,cAAc,IAAI,WAAW,EAAE,CAAC;gBAClC,OAAO,EAAE,CAAC;oBACR,MAAM,EAAE,UAAU;oBAClB,YAAY,EAAE,EAAE,CAAC,KAAK;oBACtB,KAAK,EAAE,2CAA2C,WAAW,CAAC,YAAY,EAAE;oBAC5E,WAAW,EAAE;wBACX,iHAAiH,WAAW,+EAA+E;qBAC5M;iBACF,CAAC,CAAC;YACL,CAAC;YACD,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;YACpC,IAAI,KAA8B,CAAC;YACnC,IAAI,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBAChD,IAAI,CAAC;oBACH,KAAK,GAAG,MAAM,MAAM,CAAC,WAAW,CAC9B,WAAW,EACX,EAAE,CAAC,YAAY,EACf,EAAE,CAAC,OAAO,EACV,EAAE,CAAC,OAAO,CACX,CAAC;gBACJ,CAAC;gBAAC,OAAO,QAAa,EAAE,CAAC;oBACvB,4DAA4D;oBAC5D,uDAAuD;oBACvD,8DAA8D;oBAC9D,sDAAsD;oBACtD,OAAO,EAAE,CAAC;wBACR,MAAM,EAAE,UAAU;wBAClB,YAAY,EAAE,EAAE,CAAC,KAAK;wBACtB,KAAK,EAAE,uCAAuC,EAAE,CAAC,OAAO,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,IAAI,QAAQ,CAAC,EAAE;wBACpG,WAAW,EAAE;4BACX,sHAAsH,WAAW,+EAA+E;yBACjN;qBACF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CACnC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,YAAY,CAC3D,CAAC;YACF,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;YACnE,MAAM,aAAa,GAAG,EAAE,CAAC,QAAQ,EAAE,aAAa,IAAI,EAAE,CAAC;YACvD,MAAM,SAAS,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;YAClC,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAEzE,6DAA6D;YAC7D,yDAAyD;YACzD,uCAAuC;YACvC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3D,MAAM,eAAe,GACnB,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;gBAC9B,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC9B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACpC,OAAO,CACL,KAAK,EAAE,IAAI,KAAK,MAAM;wBACtB,OAAO,CAAE,KAAK,CAAC,OAA0C,EAAE,eAAe,CAAC,CAC5E,CAAC;gBACJ,CAAC,CAAC,CAAC;YAEL,wEAAwE;YACxE,qEAAqE;YACrE,wCAAwC;YACxC,IAAI,KAA6B,CAAC;YAClC,IAAI,EAAE,CAAC,WAAW,KAAK,aAAa;gBAAE,KAAK,GAAG,aAAa,CAAC;iBACvD,IAAI,EAAE,CAAC,KAAK,KAAK,UAAU;gBAAE,KAAK,GAAG,UAAU,CAAC;iBAChD,IAAI,EAAE,CAAC,KAAK,KAAK,cAAc;gBAAE,KAAK,GAAG,cAAc,CAAC;iBACxD,IAAI,EAAE,CAAC,KAAK,KAAK,WAAW;gBAAE,KAAK,GAAG,WAAW,CAAC;iBAClD,IAAI,EAAE,CAAC,kBAAkB;gBAAE,KAAK,GAAG,kBAAkB,CAAC;iBACtD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;gBAAE,KAAK,GAAG,WAAW,CAAC;iBACnD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;gBAAE,KAAK,GAAG,eAAe,CAAC;iBACtD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS;gBAAE,KAAK,GAAG,YAAY,CAAC;iBAC5D,IAAI,SAAS;gBAAE,KAAK,GAAG,SAAS,CAAC;YACtC,sEAAsE;YACtE,qEAAqE;YACrE,2DAA2D;iBACtD,IAAI,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,KAAK,KAAK,YAAY;gBAAE,KAAK,GAAG,YAAY,CAAC;iBACpE,IAAI,EAAE,CAAC,KAAK,KAAK,WAAW,IAAI,EAAE,CAAC,KAAK,KAAK,cAAc;gBAC9D,KAAK,GAAG,WAAW,CAAC;;gBACjB,KAAK,GAAG,SAAS,CAAC;YAEvB,yCAAyC;YACzC,MAAM,QAAQ,GAAuB,EAAE,CAAC;YACxC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,mBAAmB;oBACzB,IAAI,EAAE,oMAAoM;oBAC1M,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBACjC,EAAE,EAAE,CAAC,CAAC,EAAE;wBACR,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,KAAK,EAAE,CAAC,CAAC,KAAK;qBACf,CAAC,CAAC;iBACJ,CAAC,CAAC;YACL,CAAC;YACD,IAAI,KAAK,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAC5B,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,IAAI,EAAE,CAAW,CACrD,CAAC;gBACF,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;oBAC9C,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW;oBAC1B,CAAC,CAAC,SAAS,CAAC;gBACd,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,GAAG,gBAAgB,EAAE,CAAC;oBAChE,QAAQ,CAAC,IAAI,CAAC;wBACZ,IAAI,EAAE,iBAAiB;wBACvB,WAAW;wBACX,IAAI,EAAE,SAAS,KAAK,CAAC,EAAE,wBAAwB,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,wGAAwG;qBACtL,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,sBAAsB;oBAC5B,SAAS,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;oBAClE,IAAI,EAAE,uOAAuO;iBAC9O,CAAC,CAAC;YACL,CAAC;YAED,4DAA4D;YAC5D,MAAM,WAAW,GAAa,EAAE,CAAC;YACjC,MAAM,UAAU,GACd,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC,OAAO;gBAC3B,CAAC,CAAC,eAAe,WAAW,iBAAiB,EAAE,CAAC,YAAY,YAAY,EAAE,CAAC,OAAO,EAAE;gBACpF,CAAC,CAAC,IAAI,CAAC;YACX,QAAQ,KAAK,EAAE,CAAC;gBACd,KAAK,YAAY;oBACf,WAAW,CAAC,IAAI,CACd,6EAA6E,WAAW,4IAA4I,CACrO,CAAC;oBACF,MAAM;gBACR,KAAK,WAAW;oBACd,WAAW,CAAC,IAAI,CACd,GAAG,cAAc,CAAC,MAAM,QAAQ,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,qBAAqB,cAAc;yBAChH,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;yBACnB,IAAI,CAAC,IAAI,CAAC,+CAA+C,WAAW,wDAAwD,CAChI,CAAC;oBACF,MAAM;gBACR,KAAK,SAAS;oBACZ,WAAW,CAAC,IAAI,CACd,6EAA6E,WAAW,+BAA+B,CACxH,CAAC;oBACF,MAAM;gBACR,KAAK,kBAAkB;oBACrB,WAAW,CAAC,IAAI,CACd,EAAE,CAAC,eAAe;wBAChB,CAAC,CAAC,qEAAqE,WAAW,+CAA+C,WAAW,gBAAgB,EAAE,CAAC,eAAe,CAAC,WAAW,uBAAuB,EAAE,CAAC,eAAe,CAAC,UAAU,kCAAkC;wBAChR,CAAC,CAAC,qEAAqE,WAAW,GAAG,CACxF,CAAC;oBACF,MAAM;gBACR,KAAK,eAAe;oBAClB,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;wBAC9B,WAAW,CAAC,IAAI,CACd,yCAAyC,WAAW,aAAa,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CACrF,CAAC;oBACJ,CAAC;oBACD,WAAW,CAAC,IAAI,CACd,gIAAgI,CACjI,CAAC;oBACF,MAAM;gBACR,KAAK,UAAU;oBACb,WAAW,CAAC,IAAI,CACd,SAAS,EAAE,CAAC,OAAO,OAAO,EAAE,CAAC,WAAW,8CAA8C,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,gCAAgC,UAAU,YAAY,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,uCAAuC,CACjO,CAAC;oBACF,MAAM;gBACR,KAAK,aAAa;oBAChB,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;wBAC/B,WAAW,CAAC,IAAI,CACd,yBAAyB,UAAU,YAAY,EAAE,CAAC,OAAO,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,mEAAmE,WAAW,IAAI,CAC5K,CAAC;oBACJ,CAAC;oBACD,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAChC,WAAW,CAAC,IAAI,CACd,SAAS,EAAE,CAAC,OAAO,wDAAwD,WAAW,qBAAqB,CAC5G,CAAC;oBACJ,CAAC;oBACD,MAAM;gBACR,KAAK,cAAc;oBACjB,WAAW,CAAC,IAAI,CACd,SAAS,EAAE,CAAC,OAAO,gDAAgD,WAAW,8FAA8F,UAAU,CAAC,CAAC,CAAC,0BAA0B,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,qCAAqC,CAC1Q,CAAC;oBACF,MAAM;gBACR,KAAK,WAAW;oBACd,WAAW,CAAC,IAAI,CACd,mIAAmI,WAAW,8HAA8H,WAAW,GAAG,CAC3R,CAAC;oBACF,MAAM;gBACR,KAAK,YAAY;oBACf,WAAW,CAAC,IAAI,CACd,eAAe;wBACb,CAAC,CAAC,uCAAuC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,4CAA4C,WAAW,2CAA2C;wBACrK,CAAC,CAAC,oCAAoC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,YAAY,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,wCAAwC,WAAW,oCAAoC,CACpN,CAAC;oBACF,MAAM;gBACR,KAAK,WAAW;oBACd,WAAW,CAAC,IAAI,CACd,EAAE,CAAC,OAAO;wBACR,CAAC,CAAC,iCAAiC,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,uDAAuD,WAAW,cAAc;wBACnJ,CAAC,CAAC,yEAAyE,WAAW,2EAA2E,CACpK,CAAC;oBACF,MAAM;gBACR,KAAK,SAAS;oBACZ,WAAW,CAAC,IAAI,CACd,wHAAwH,UAAU,CAAC,CAAC,CAAC,uCAAuC,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACjM,CAAC;oBACF,MAAM;YACV,CAAC;YAED,OAAO,EAAE,CAAC;gBACR,SAAS,EAAE;oBACT,EAAE,EAAE,EAAE,CAAC,EAAE;oBACT,IAAI,EAAE,EAAE,CAAC,IAAI;oBACb,WAAW,EAAE,EAAE,CAAC,WAAW;oBAC3B,UAAU,EAAE,EAAE,CAAC,UAAU;oBACzB,cAAc,EAAE,EAAE,CAAC,cAAc;oBACjC,iBAAiB,EAAE,EAAE,CAAC,iBAAiB;iBACxC;gBACD,KAAK;gBACL,YAAY,EAAE,EAAE,CAAC,KAAK;gBACtB,IAAI,EACF,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC,OAAO;oBAC3B,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,CAAC,YAAY,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,IAAI,IAAI,EAAE;oBACrF,CAAC,CAAC,IAAI;gBACV,SAAS,EAAE;oBACT,KAAK,EAAE,OAAO,CAAC,MAAM;oBACrB,KAAK,EAAE,OAAO,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM;oBACpE,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;oBAChF,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAChC,EAAE,EAAE,CAAC,CAAC,EAAE;wBACR,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,KAAK,EAAE,CAAC,CAAC,KAAK;qBACf,CAAC,CAAC;iBACJ;gBACD,aAAa;gBACb,QAAQ,EAAE,EAAE,CAAC,eAAe;oBAC1B,CAAC,CAAC;wBACE,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO;wBACnC,WAAW,EAAE,EAAE,CAAC,eAAe,CAAC,WAAW;wBAC3C,UAAU,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU;wBACzC,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS;wBACvC,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC;qBACrD;oBACH,CAAC,CAAC,IAAI;gBACR,KAAK,EAAE,KAAK;oBACV,CAAC,CAAC;wBACE,EAAE,EAAE,KAAK,CAAC,EAAE;wBACZ,MAAM,EAAE,KAAK,CAAC,MAAM;wBACpB,aAAa,EAAE,cAAc;wBAC7B,SAAS,EAAE,KAAK,CAAC,SAAS;wBAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;qBAC/B;oBACH,CAAC,CAAC,IAAI;gBACR,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE;gBACvC,QAAQ;gBACR,WAAW;aACZ,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,oCAAoC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"jobs.d.ts","sourceRoot":"","sources":["../../src/tools/jobs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAOH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAuH5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QAigDtC"}
1
+ {"version":3,"file":"jobs.d.ts","sourceRoot":"","sources":["../../src/tools/jobs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAOH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA2L5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QA6uDtC"}
@@ -19,6 +19,7 @@
19
19
  import { z } from "zod";
20
20
  import { ok, text, analyzeRpaFailure } from "../helpers.js";
21
21
  import { MiddlewareServiceClient } from "../middleware-service-client.js";
22
+ import { JOB_WEBHOOK_ENVELOPE, JOB_WEBHOOK_EVENTS, JOB_WEBHOOK_PAYLOAD_GUIDE, eventsForSubscription, } from "../job-webhook-events.js";
22
23
  const regionParam = z
23
24
  .enum(["us", "ca"])
24
25
  .optional()
@@ -118,6 +119,54 @@ const variantParam = z
118
119
  .enum(["published", "draft"])
119
120
  .optional()
120
121
  .describe("Which definition: 'published' (live, default) or 'draft' (the teach/build loop's working copy)");
122
+ const jobWebhookAuthSchema = z.object({
123
+ type: z.enum(["none", "bearer", "api_key", "basic"]),
124
+ token: z
125
+ .string()
126
+ .optional()
127
+ .describe("type=bearer: the token (Authorization: Bearer ...)"),
128
+ headerName: z
129
+ .string()
130
+ .optional()
131
+ .describe("type=api_key: header name, e.g. X-API-Key"),
132
+ headerValue: z.string().optional().describe("type=api_key: header value"),
133
+ username: z.string().optional().describe("type=basic: username"),
134
+ password: z.string().optional().describe("type=basic: password"),
135
+ });
136
+ const jobWebhookIdsSchema = z
137
+ .array(z.number().int().positive())
138
+ .max(50)
139
+ .nullable()
140
+ .describe("Minicor workflow IDs to subscribe to. null = every workflow this router runs. [] = no workflow events. A list = allow-list. Combine with includeJob; subscribe to the job, some workflows, or both.");
141
+ const acknowledgeJobAheadParam = z
142
+ .boolean()
143
+ .optional()
144
+ .describe("Blueprint-linked routes are OWNED by their blueprint; prefer driving changes through the spec (resolve_blueprint_state). Set true to intentionally edit the job directly anyway: the tool proceeds and, when the route is blueprint-linked, the response carries a warning that the blueprint is now job_ahead plus the fold-back options (blueprint_import_cases or blueprint_build).");
145
+ /**
146
+ * Resolve the acknowledgeJobAhead=true response annotation. Linkage detection
147
+ * mirrors resolve_job_state: the workspace blueprint list, matched on the
148
+ * (middlewareId, routeId) pair. A failed lookup must not masquerade as
149
+ * "unlinked", so it degrades to a conservative note instead of silence.
150
+ */
151
+ async function jobAheadAcknowledgement(client, workspaceId, middlewareId, routeId) {
152
+ try {
153
+ const blueprints = await client.listBlueprints(workspaceId);
154
+ const owning = blueprints.find((b) => b.middlewareId === middlewareId && b.routeId === routeId);
155
+ if (owning) {
156
+ return {
157
+ warning: `Blueprint ${owning.name} is now job_ahead / not synced. Fold changes back with blueprint_import_cases or rebuild via blueprint_build (rebuild overwrites direct edits).`,
158
+ };
159
+ }
160
+ return {
161
+ note: "acknowledgeJobAhead was set, but this route is not blueprint-linked; no drift to fold back.",
162
+ };
163
+ }
164
+ catch (e) {
165
+ return {
166
+ note: `acknowledgeJobAhead was set, but the blueprint linkage lookup failed (${e?.message ?? e}). Treat the route as possibly blueprint-owned: if it is linked, its blueprint is now job_ahead; fold changes back with blueprint_import_cases or rebuild via blueprint_build (rebuild overwrites direct edits).`,
167
+ };
168
+ }
169
+ }
121
170
  export function register(deps) {
122
171
  const { server } = deps;
123
172
  function getClient(region) {
@@ -290,7 +339,7 @@ export function register(deps) {
290
339
  }
291
340
  });
292
341
  // ── update_job ─────────────────────────────────────────────
293
- server.tool("update_job", "Update a Job's definition (step graph), path, method, or description. variant='draft' writes the DRAFT definition (the teach/build loop's working copy — publish_job promotes it); variant='published' (default) edits the live definition directly and creates a route_version snapshot.", {
342
+ server.tool("update_job", "Update a Job's definition (step graph), path, method, or description. variant='draft' writes the DRAFT definition (the teach/build loop's working copy — publish_job promotes it); variant='published' (default) edits the live definition directly and creates a route_version snapshot. Blueprint-linked routes are OWNED by their blueprint: editing directly flips the blueprint to job_ahead drift, so prefer the spec (resolve_blueprint_state). For an intentional direct edit, pass acknowledgeJobAhead=true; the response then carries a job_ahead warning with the fold-back options.", {
294
343
  workspaceId: z.number().describe("Workspace ID"),
295
344
  middlewareId: z.string().describe("Router (middleware) ID"),
296
345
  routeId: z.string().describe("Route ID (the job) to update"),
@@ -299,10 +348,12 @@ export function register(deps) {
299
348
  description: z.string().optional(),
300
349
  definition: jobDefinitionSchema.optional(),
301
350
  variant: variantParam,
351
+ acknowledgeJobAhead: acknowledgeJobAheadParam,
302
352
  region: regionParam,
303
- }, async ({ workspaceId, middlewareId, routeId, path, method, description, definition, variant, region }) => {
353
+ }, async ({ workspaceId, middlewareId, routeId, path, method, description, definition, variant, acknowledgeJobAhead, region }) => {
304
354
  const r = resolveRegion(workspaceId, region);
305
355
  try {
356
+ const client = getClient(r);
306
357
  const body = {};
307
358
  if (path !== undefined)
308
359
  body.path = path;
@@ -316,8 +367,11 @@ export function register(deps) {
316
367
  else
317
368
  body.definition = definition;
318
369
  }
319
- const job = await getClient(r).updateJob(workspaceId, middlewareId, routeId, body);
320
- return ok({ status: "updated", variant: variant ?? "published", job });
370
+ const job = await client.updateJob(workspaceId, middlewareId, routeId, body);
371
+ const ack = acknowledgeJobAhead === true
372
+ ? await jobAheadAcknowledgement(client, workspaceId, middlewareId, routeId)
373
+ : {};
374
+ return ok({ status: "updated", variant: variant ?? "published", job, ...ack });
321
375
  }
322
376
  catch (e) {
323
377
  return text(`Error updating job: ${e.message}`);
@@ -380,8 +434,139 @@ export function register(deps) {
380
434
  return text(`Error deleting middleware: ${e.message}`);
381
435
  }
382
436
  });
437
+ // ── list_job_webhooks ──────────────────────────────────────
438
+ server.tool("list_job_webhooks", "List webhook destinations on a router. Destinations are reusable: register once, then pass webhookId to run_job. Each item includes the event types that destination is subscribed to. Payload shapes: get_job_webhook_events or get_skill(\"job-webhooks\"). Secrets are never returned.", {
439
+ workspaceId: z.number().describe("Workspace ID"),
440
+ middlewareId: z.string().describe("Router (middleware) ID"),
441
+ region: regionParam,
442
+ }, async ({ workspaceId, middlewareId, region }) => {
443
+ const r = resolveRegion(workspaceId, region);
444
+ try {
445
+ const webhooks = await getClient(r).listJobWebhooks(workspaceId, middlewareId);
446
+ return ok({
447
+ webhooks: webhooks.map((webhook) => ({
448
+ ...webhook,
449
+ eventTypes: eventsForSubscription(webhook.includeJob, webhook.workflowIds).map((event) => event.type),
450
+ })),
451
+ });
452
+ }
453
+ catch (e) {
454
+ return text(`Error listing job webhooks: ${e.message}`);
455
+ }
456
+ });
457
+ // ── get_job_webhook_events ─────────────────────────────────
458
+ server.tool("get_job_webhook_events", `Catalog of the five JSON payloads a job webhook destination can receive. ${JOB_WEBHOOK_PAYLOAD_GUIDE}`, {
459
+ includeJob: z
460
+ .boolean()
461
+ .optional()
462
+ .describe("If set, only include job.completed when true."),
463
+ workflowEvents: z
464
+ .boolean()
465
+ .optional()
466
+ .describe("If set, only include the four workflow.* events when true. Omit both filters to return every eventType."),
467
+ }, async ({ includeJob, workflowEvents }) => {
468
+ const events = eventsForSubscription(includeJob ?? true, workflowEvents === false ? [] : null);
469
+ return ok({
470
+ envelope: JOB_WEBHOOK_ENVELOPE,
471
+ events: includeJob === undefined && workflowEvents === undefined
472
+ ? JOB_WEBHOOK_EVENTS
473
+ : events,
474
+ });
475
+ });
476
+ // ── register_job_webhook ───────────────────────────────────
477
+ server.tool("register_job_webhook", "Register a webhook destination on a router. HTTPS URL only (no embedded credentials). Subscribe with includeJob (job.completed, default true) and/or workflowIds (null = all workflows, [] = none, [ids] = allow-list). Then pass the returned id as webhookId to run_job. The response includes `events`: the payload example for each eventType this destination will receive. " +
478
+ JOB_WEBHOOK_PAYLOAD_GUIDE, {
479
+ workspaceId: z.number().describe("Workspace ID"),
480
+ middlewareId: z.string().describe("Router (middleware) ID"),
481
+ url: z
482
+ .string()
483
+ .url()
484
+ .describe("HTTPS destination URL. No username/password in the URL."),
485
+ auth: jobWebhookAuthSchema
486
+ .optional()
487
+ .describe("Destination auth. Default none. Secrets are stored encrypted and never returned."),
488
+ workflowIds: jobWebhookIdsSchema.optional(),
489
+ includeJob: z
490
+ .boolean()
491
+ .optional()
492
+ .describe("When true, also receive job.completed with the job output. Defaults to true on create."),
493
+ region: regionParam,
494
+ }, async ({ workspaceId, middlewareId, url, auth, workflowIds, includeJob, region, }) => {
495
+ const r = resolveRegion(workspaceId, region);
496
+ try {
497
+ const webhook = await getClient(r).createJobWebhook(workspaceId, middlewareId, { url, auth, workflowIds, includeJob });
498
+ return ok({
499
+ ...webhook,
500
+ events: eventsForSubscription(webhook.includeJob, webhook.workflowIds),
501
+ });
502
+ }
503
+ catch (e) {
504
+ return text(`Error registering job webhook: ${e.message}`);
505
+ }
506
+ });
507
+ // ── get_job_webhook ────────────────────────────────────────
508
+ server.tool("get_job_webhook", "Get one router webhook destination (url, masked auth, workflowIds, includeJob) plus `events`: example payloads for each eventType it is subscribed to. Secrets are never returned. Full catalog: get_job_webhook_events.", {
509
+ workspaceId: z.number().describe("Workspace ID"),
510
+ middlewareId: z.string().describe("Router (middleware) ID"),
511
+ webhookId: z.string().describe("Webhook ID (from list_job_webhooks / register_job_webhook)"),
512
+ region: regionParam,
513
+ }, async ({ workspaceId, middlewareId, webhookId, region }) => {
514
+ const r = resolveRegion(workspaceId, region);
515
+ try {
516
+ const webhook = await getClient(r).getJobWebhook(workspaceId, middlewareId, webhookId);
517
+ return ok({
518
+ ...webhook,
519
+ events: eventsForSubscription(webhook.includeJob, webhook.workflowIds),
520
+ });
521
+ }
522
+ catch (e) {
523
+ return text(`Error getting job webhook: ${e.message}`);
524
+ }
525
+ });
526
+ // ── update_job_webhook ─────────────────────────────────────
527
+ server.tool("update_job_webhook", "Update a router webhook destination: url, auth, workflowIds, and/or includeJob. Pass workflowIds=null to receive every workflow this router runs; [] to stop workflow events. At least one field is required. The response includes example payloads for the eventTypes this destination will receive after the update.", {
528
+ workspaceId: z.number().describe("Workspace ID"),
529
+ middlewareId: z.string().describe("Router (middleware) ID"),
530
+ webhookId: z.string().describe("Webhook ID to update"),
531
+ url: z.string().url().optional().describe("HTTPS destination URL"),
532
+ auth: jobWebhookAuthSchema.optional(),
533
+ workflowIds: jobWebhookIdsSchema.optional(),
534
+ includeJob: z
535
+ .boolean()
536
+ .optional()
537
+ .describe("When true, also receive job.completed with the job output."),
538
+ region: regionParam,
539
+ }, async ({ workspaceId, middlewareId, webhookId, url, auth, workflowIds, includeJob, region, }) => {
540
+ const r = resolveRegion(workspaceId, region);
541
+ try {
542
+ const webhook = await getClient(r).updateJobWebhook(workspaceId, middlewareId, webhookId, { url, auth, workflowIds, includeJob });
543
+ return ok({
544
+ ...webhook,
545
+ events: eventsForSubscription(webhook.includeJob, webhook.workflowIds),
546
+ });
547
+ }
548
+ catch (e) {
549
+ return text(`Error updating job webhook: ${e.message}`);
550
+ }
551
+ });
552
+ // ── delete_job_webhook ─────────────────────────────────────
553
+ server.tool("delete_job_webhook", "Delete a router webhook destination. In-flight runs that already selected it stop delivering after the destination is gone.", {
554
+ workspaceId: z.number().describe("Workspace ID"),
555
+ middlewareId: z.string().describe("Router (middleware) ID"),
556
+ webhookId: z.string().describe("Webhook ID to delete"),
557
+ region: regionParam,
558
+ }, async ({ workspaceId, middlewareId, webhookId, region }) => {
559
+ const r = resolveRegion(workspaceId, region);
560
+ try {
561
+ await getClient(r).deleteJobWebhook(workspaceId, middlewareId, webhookId);
562
+ return ok({ status: "deleted", webhookId });
563
+ }
564
+ catch (e) {
565
+ return text(`Error deleting job webhook: ${e.message}`);
566
+ }
567
+ });
383
568
  // ── run_job ────────────────────────────────────────────────
384
- server.tool("run_job", "Run a Job once with the given input, then poll the job execution to completion and return the full JobExecution (status, output, per-step results with Minicor deep-links). Supports STEP-RANGE runs for debugging: fromStepId/toStepId (both inclusive, by step id) run only a slice of the step graph, and seedExecutionId hydrates ctx from a prior execution so mid-graph starts still resolve `ctx.*` produced by steps they aren't re-running (the standard 'replay from the failing step' move). Set waitForResult=false to return the jobExecutionId immediately instead of polling — use that for long runs you may want to stop_job_execution or monitor via get_job_execution.", {
569
+ server.tool("run_job", "Run a Job once with the given input, then poll the job execution to completion and return the full JobExecution (status, output, per-step results with Minicor deep-links). Supports STEP-RANGE runs for debugging: fromStepId/toStepId (both inclusive, by step id) run only a slice of the step graph, and seedExecutionId hydrates ctx from a prior execution so mid-graph starts still resolve `ctx.*` produced by steps they aren't re-running (the standard 'replay from the failing step' move). Set waitForResult=false to return the jobExecutionId immediately instead of polling — use that for long runs you may want to stop_job_execution or monitor via get_job_execution. Pass webhookId (from register_job_webhook / list_job_webhooks) to publish workflow progress and job.completed to that destination for this run.", {
385
570
  workspaceId: z.number().describe("Workspace ID"),
386
571
  middlewareId: z.string().describe("Router (middleware) ID"),
387
572
  routeId: z.string().describe("Route ID (the job) to run"),
@@ -405,6 +590,10 @@ export function register(deps) {
405
590
  .string()
406
591
  .optional()
407
592
  .describe("Prior execution (same job) whose `context` seeds ctx for this run — required for meaningful mid-graph starts so earlier steps' ctx.* values resolve."),
593
+ webhookId: z
594
+ .string()
595
+ .optional()
596
+ .describe("Router webhook destination (from register_job_webhook / list_job_webhooks) that receives this run's events. Payloads: get_job_webhook_events. workflow.* if the destination's workflowIds allow this job's workflows; job.completed if includeJob is true."),
408
597
  waitForResult: z
409
598
  .boolean()
410
599
  .optional()
@@ -414,20 +603,21 @@ export function register(deps) {
414
603
  .optional()
415
604
  .describe("Max ms to poll before giving up (default 300000)"),
416
605
  region: regionParam,
417
- }, async ({ workspaceId, middlewareId, routeId, input, trigger, variant, fromStepId, toStepId, seedExecutionId, waitForResult, timeoutMs, region, }) => {
606
+ }, async ({ workspaceId, middlewareId, routeId, input, trigger, variant, fromStepId, toStepId, seedExecutionId, webhookId, waitForResult, timeoutMs, region, }) => {
418
607
  const r = resolveRegion(workspaceId, region);
419
608
  try {
420
609
  const client = getClient(r);
421
- const { jobExecutionId } = await client.runJob(workspaceId, middlewareId, routeId, input, trigger ?? "mcp", variant ?? "published", { fromStepId, toStepId, seedExecutionId });
610
+ const queued = await client.runJob(workspaceId, middlewareId, routeId, input, trigger ?? "mcp", variant ?? "published", { fromStepId, toStepId, seedExecutionId, webhookId });
422
611
  if (waitForResult === false) {
423
612
  return ok({
424
- jobExecutionId,
613
+ jobExecutionId: queued.jobExecutionId,
614
+ ...(queued.webhookId ? { webhookId: queued.webhookId } : {}),
425
615
  status: "queued",
426
616
  note: "Not polled (waitForResult=false). Poll with get_job_execution; stop with stop_job_execution.",
427
617
  });
428
618
  }
429
- const execution = await client.pollExecution(workspaceId, middlewareId, routeId, jobExecutionId, { timeoutMs });
430
- return ok({ jobExecutionId, execution });
619
+ const execution = await client.pollExecution(workspaceId, middlewareId, routeId, queued.jobExecutionId, { timeoutMs });
620
+ return ok({ jobExecutionId: queued.jobExecutionId, execution });
431
621
  }
432
622
  catch (e) {
433
623
  return text(`Error running job: ${e.message}`);
@@ -628,7 +818,7 @@ export function register(deps) {
628
818
  }
629
819
  });
630
820
  // ── resolve_job_state ──────────────────────────────────────
631
- server.tool("resolve_job_state", "The 'where am I in the build loop?' call — START HERE when working a Job. One call fetches the job (draft vs published), its test cases, the latest test run, recent executions, and any active build run, then returns a compact state summary plus nextActions: the concrete next tool calls per the Minicor best-practice loop (green-gate test cases first -> build the draft -> run_tests variant=draft -> drill the failing step -> fix the workflow in dev mode -> re-run -> publish_job). Failing workflow steps are mapped to their workflowId so you can jump straight to dev_mode_load. Blueprint-linked routes come back with a `blueprint` block: those jobs are OWNED by their blueprint — edit the spec (resolve_blueprint_state) instead of update_job/add_test_case, or you'll trip job_ahead drift.", {
821
+ server.tool("resolve_job_state", "The 'where am I in the build loop?' call — START HERE when working a Job. One call fetches the job (draft vs published), its test cases, the latest test run, recent executions, and any active build run, then returns a compact state summary plus nextActions: the concrete next tool calls per the Minicor best-practice loop (green-gate test cases first -> build the draft -> run_tests variant=draft -> drill the failing step -> fix the workflow in dev mode -> re-run -> publish_job). Failing workflow steps are mapped to their workflowId so you can jump straight to dev_mode_load. Blueprint-linked routes come back with a `blueprint` block: those jobs are OWNED by their blueprint — edit the spec (resolve_blueprint_state) instead of update_job/add_test_case, or you'll trip job_ahead drift. Sanctioned escape hatch for intentional direct edits: pass acknowledgeJobAhead=true to update_job/add_test_case; the tool proceeds and the response carries a job_ahead warning with the fold-back options (blueprint_import_cases or blueprint_build).", {
632
822
  workspaceId: z.number().describe("Workspace ID"),
633
823
  middlewareId: z.string().describe("Router (middleware) ID"),
634
824
  routeId: z.string().describe("Route ID (the job) to resolve"),
@@ -685,7 +875,7 @@ export function register(deps) {
685
875
  const nextActions = [];
686
876
  // Ownership rule: a blueprint-linked route is edited through its spec.
687
877
  if (owningBlueprint) {
688
- nextActions.push(`This route is OWNED by blueprint ${owningBlueprint.id} ('${owningBlueprint.name}', state ${owningBlueprint.state}) — don't update_job/add_test_case directly (that trips job_ahead drift). Drive changes through the spec: resolve_blueprint_state blueprintId=${owningBlueprint.id}.`);
878
+ nextActions.push(`This route is OWNED by blueprint ${owningBlueprint.id} ('${owningBlueprint.name}', state ${owningBlueprint.state}) — don't update_job/add_test_case directly (that trips job_ahead drift). Drive changes through the spec: resolve_blueprint_state blueprintId=${owningBlueprint.id}. Sanctioned escape hatch when a direct edit is intentional (e.g. bulk job edits): pass acknowledgeJobAhead=true to update_job/add_test_case; the blueprint goes job_ahead and the response carries fold-back guidance (blueprint_import_cases or blueprint_build).`);
689
879
  }
690
880
  else if (ownershipUnknown) {
691
881
  nextActions.push(`Blueprint ownership is UNKNOWN — the workspace blueprint list failed to read (${blueprintLookupError}). Do NOT update_job/add_test_case/teach_job until ownership is known (direct edits on a blueprint-owned route trip job_ahead drift) — retry resolve_job_state.`);
@@ -764,7 +954,7 @@ export function register(deps) {
764
954
  ? {
765
955
  blueprintId: owningBlueprint.id,
766
956
  state: owningBlueprint.state,
767
- hint: `Blueprint-owned route — edit via the spec (resolve_blueprint_state blueprintId=${owningBlueprint.id}), not update_job.`,
957
+ hint: `Blueprint-owned route — edit via the spec (resolve_blueprint_state blueprintId=${owningBlueprint.id}), not update_job. Intentional direct edits: acknowledgeJobAhead=true.`,
768
958
  }
769
959
  : ownershipUnknown
770
960
  ? {
@@ -982,7 +1172,7 @@ export function register(deps) {
982
1172
  }
983
1173
  });
984
1174
  // ── add_test_case ──────────────────────────────────────────
985
- server.tool("add_test_case", "Attach a test case to a Job (route): a named input + code-block assertions `[{ name, expr }]`. Each `expr` is a TS boolean over `{ input, output, ctx, steps }` evaluated against the job execution. This is the green-gate for the build loop — define the expected behavior, then build the job to satisfy it. Scenarios are FIRST-CLASS: a scenario is one distinct path/outcome through the job (find ids via list_scenarios, create via create_scenario), and all cases in a scenario share identical assertions (the scenario's definition of its path/outcome). Pass `scenarioId` to group this sample — the service dual-writes the legacy `scenario:<slug>` tag on the case. Omit it and grouping falls back to any `scenario:<slug>` tag you pass (find-or-creates the Scenario) or to auto-grouping by execution path after test/teach runs. One input per case; add more samples to a scenario by creating more cases with the same scenarioId + assertions. Ungrouped cases are treated as one-sample scenarios.", {
1175
+ server.tool("add_test_case", "Attach a test case to a Job (route): a named input + code-block assertions `[{ name, expr }]`. Each `expr` is a TS boolean over `{ input, output, ctx, steps }` evaluated against the job execution. This is the green-gate for the build loop — define the expected behavior, then build the job to satisfy it. Scenarios are FIRST-CLASS: a scenario is one distinct path/outcome through the job (find ids via list_scenarios, create via create_scenario), and all cases in a scenario share identical assertions (the scenario's definition of its path/outcome). Pass `scenarioId` to group this sample — the service dual-writes the legacy `scenario:<slug>` tag on the case. Omit it and grouping falls back to any `scenario:<slug>` tag you pass (find-or-creates the Scenario) or to auto-grouping by execution path after test/teach runs. One input per case; add more samples to a scenario by creating more cases with the same scenarioId + assertions. Ungrouped cases are treated as one-sample scenarios. Blueprint-linked routes are OWNED by their blueprint: adding cases directly flips the blueprint to job_ahead drift, so prefer the spec's exampleCases (resolve_blueprint_state). For an intentional direct add, pass acknowledgeJobAhead=true; the response then carries a job_ahead warning with the fold-back options.", {
986
1176
  workspaceId: z.number().describe("Workspace ID"),
987
1177
  middlewareId: z.string().describe("Router (middleware) ID"),
988
1178
  routeId: z.string().describe("Route ID (the job) the case belongs to"),
@@ -1003,11 +1193,13 @@ export function register(deps) {
1003
1193
  .optional()
1004
1194
  .describe("Freeform tags. Compatibility layer: a `scenario:<slug>` tag finds-or-creates the Scenario when no scenarioId is passed — prefer scenarioId."),
1005
1195
  enabled: z.boolean().optional().describe("Default true"),
1196
+ acknowledgeJobAhead: acknowledgeJobAheadParam,
1006
1197
  region: regionParam,
1007
- }, async ({ workspaceId, middlewareId, routeId, name, description, input, assertions, scenarioId, tags, enabled, region }) => {
1198
+ }, async ({ workspaceId, middlewareId, routeId, name, description, input, assertions, scenarioId, tags, enabled, acknowledgeJobAhead, region }) => {
1008
1199
  const r = resolveRegion(workspaceId, region);
1009
1200
  try {
1010
- const testCase = await getClient(r).addTestCase(workspaceId, middlewareId, routeId, {
1201
+ const client = getClient(r);
1202
+ const testCase = await client.addTestCase(workspaceId, middlewareId, routeId, {
1011
1203
  name,
1012
1204
  description,
1013
1205
  input,
@@ -1016,7 +1208,10 @@ export function register(deps) {
1016
1208
  tags,
1017
1209
  enabled,
1018
1210
  });
1019
- return ok({ status: "created", testCase });
1211
+ const ack = acknowledgeJobAhead === true
1212
+ ? await jobAheadAcknowledgement(client, workspaceId, middlewareId, routeId)
1213
+ : {};
1214
+ return ok({ status: "created", testCase, ...ack });
1020
1215
  }
1021
1216
  catch (e) {
1022
1217
  return text(`Error adding test case: ${e.message}`);