@agllama/mcp 0.7.0 → 0.7.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/README.md +56 -2
- package/SECURITY.md +62 -0
- package/dist/api-client.d.ts +4 -0
- package/dist/api-client.d.ts.map +1 -1
- package/dist/api-client.js +134 -56
- package/dist/api-client.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +11 -0
- package/dist/server.js.map +1 -1
- package/dist/tools/__tests__/llama1876.test.d.ts +2 -0
- package/dist/tools/__tests__/llama1876.test.d.ts.map +1 -0
- package/dist/tools/__tests__/llama1876.test.js +311 -0
- package/dist/tools/__tests__/llama1876.test.js.map +1 -0
- package/dist/tools/__tests__/session.test.js +122 -2
- package/dist/tools/__tests__/session.test.js.map +1 -1
- package/dist/tools/context.js +2 -2
- package/dist/tools/context.js.map +1 -1
- package/dist/tools/epicSignOff.d.ts +25 -0
- package/dist/tools/epicSignOff.d.ts.map +1 -0
- package/dist/tools/epicSignOff.js +89 -0
- package/dist/tools/epicSignOff.js.map +1 -0
- package/dist/tools/help.d.ts.map +1 -1
- package/dist/tools/help.js +16 -2
- package/dist/tools/help.js.map +1 -1
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +2 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/issueLinks.d.ts +10 -10
- package/dist/tools/issueLinks.d.ts.map +1 -1
- package/dist/tools/issueLinks.js +4 -4
- package/dist/tools/issueLinks.js.map +1 -1
- package/dist/tools/issues.d.ts +3 -0
- package/dist/tools/issues.d.ts.map +1 -1
- package/dist/tools/issues.js +26 -1
- package/dist/tools/issues.js.map +1 -1
- package/dist/tools/notificationRules.d.ts +2 -2
- package/dist/tools/prScorer.d.ts +1 -1
- package/dist/tools/prScorer.d.ts.map +1 -1
- package/dist/tools/prScorerSchema.d.ts +7 -1
- package/dist/tools/prScorerSchema.d.ts.map +1 -1
- package/dist/tools/prScorerSchema.js +81 -36
- package/dist/tools/prScorerSchema.js.map +1 -1
- package/dist/tools/roadmap.d.ts +5 -0
- package/dist/tools/roadmap.d.ts.map +1 -1
- package/dist/tools/roadmap.js +11 -2
- package/dist/tools/roadmap.js.map +1 -1
- package/dist/tools/session.d.ts +8 -0
- package/dist/tools/session.d.ts.map +1 -1
- package/dist/tools/session.js +18 -3
- package/dist/tools/session.js.map +1 -1
- package/dist/tools/sprints.d.ts.map +1 -1
- package/dist/tools/sprints.js +10 -0
- package/dist/tools/sprints.js.map +1 -1
- package/dist/types.d.ts +32 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +8 -3
package/dist/tools/issues.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issues.js","sourceRoot":"","sources":["../../src/tools/issues.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"issues.js","sourceRoot":"","sources":["../../src/tools/issues.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE/D,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,+CAA+C;AAC/C,YAAY;AACZ,+CAA+C;AAE/C,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAElD,MAAM,CAAC,MAAM,uBAAuB,GAAG,8CAA8C,CAAC;AAEtF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4BAA4B,CAAC;IACzC,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+BAA+B,CAAC;IAC5C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;CAC9D,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,KAAwB;IAC5D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,kBAAkB,EAAE,CAAC;QAE3C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,OAAO,EAAE,OAAO,CAAC;QAClD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,OAAO,EAAE,UAAU,CAAC;QAE3D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,6FAA6F;aAChG,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,gGAAgG;aACnG,CAAC,CAAC;QACP,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAE9B,mBAAmB;QACnB,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,cAAc,CAAC,iBAAiB,EAAE;gBAC7C,OAAO;gBACP,UAAU;gBACV,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEzE,4EAA4E;QAC5E,MAAM,QAAQ,GAAwB;YACpC,OAAO,EAAE,IAAI;YACb,GAAG,EAAE,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC;YACrD,KAAK,EAAE;gBACL,GAAG,KAAK;aACT;SACF,CAAC;QAEF,iEAAiE;QACjE,IAAI,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5D,MAAM,KAAK,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC;YAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ,CACtE,CAAC,MAAM,CAAC;YACT,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACxF,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc;iBACrC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC;iBAC7E,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAEtD,QAAQ,CAAC,KAAK,CAAC,WAAW,GAAG;gBAC3B,KAAK;gBACL,SAAS;gBACT,OAAO;gBACP,WAAW;aACZ,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,wBAAwB,KAAK,CAAC,OAAO,EAAE;gBAC9C,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,CAAC,CAAC;QACP,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CACnB;YACE,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC,CAAC;IACP,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,eAAe;AACf,+CAA+C;AAE/C,MAAM,CAAC,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AAExD,MAAM,CAAC,MAAM,0BAA0B,GAAG,0EAA0E,CAAC;AAErH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4BAA4B,CAAC;IACzC,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+BAA+B,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IACnD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IACxF,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;SACnE,QAAQ,CAAC,YAAY,CAAC;IACzB,QAAQ,EAAE,CAAC;SACR,IAAI,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;SACtD,QAAQ,EAAE;SACV,QAAQ,CAAC,kCAAkC,CAAC;IAC/C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IAC5E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IACzE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;IAC3G,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IAChG,QAAQ,EAAE,CAAC;SACR,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;QAClB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YAC/B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;QAC5C,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SACb,QAAQ,EAAE;SACV,QAAQ,CAAC,uBAAuB,CAAC;IACpC,YAAY,EAAE,CAAC;SACZ,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;QAClB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YAC/B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;QAC5C,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SACb,QAAQ,EAAE;SACV,QAAQ,CAAC,mCAAmC,CAAC;IAChD,MAAM,EAAE,CAAC;SACN,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;QAClB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACzB,CAAC;YAAC,MAAM,CAAC;gBACP,0CAA0C;gBAC1C,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SACtB,QAAQ,EAAE;SACV,QAAQ,CAAC,kBAAkB,CAAC;IAC/B,KAAK,EAAE,CAAC;SACL,IAAI,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;SAC/B,QAAQ,EAAE;SACV,QAAQ,CAAC,0EAA0E,CAAC;CACxF,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAA2B;IAE3B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,kBAAkB,EAAE,CAAC;QAE3C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,OAAO,EAAE,OAAO,CAAC;QAClD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,OAAO,EAAE,UAAU,CAAC;QAE3D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,6FAA6F;aAChG,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,gGAAgG;aACnG,CAAC,CAAC;QACP,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAE9B,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;QAE7B,sCAAsC;QACtC,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YAChD,OAAO,IAAI,CAAC,SAAS,CAAC;gBACpB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,8JAA8J;aACtK,CAAC,CAAC;QACL,CAAC;QAED,wEAAwE;QAExE,0CAA0C;QAC1C,IAAI,QAA4B,CAAC;QACjC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,iCAAiC;YACjC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACvE,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACzB,OAAO,IAAI,CAAC,SAAS,CAAC;oBACpB,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,SAAS,KAAK,CAAC,OAAO,0BAA0B,IAAI,CAAC,IAAI,GAAG;iBACpE,CAAC,CAAC;YACL,CAAC;YACD,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC;QACrB,CAAC;aAAM,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YAC3B,iDAAiD;YACjD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;YAC3E,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;QACvB,CAAC;QAED,mBAAmB;QACnB,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,cAAc,CAAC,oBAAoB,EAAE;gBAChD,OAAO;gBACP,UAAU;gBACV,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,SAAS;aAChB,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE;YAC1D,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,IAAI,EAAE,SAAsB;YAC5B,QAAQ,EAAE,KAAK,CAAC,QAAqC;YACrD,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,QAAQ;YACR,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,SAAS,CACnB;YACE,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,iBAAiB,KAAK,CAAC,GAAG,KAAK,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE;YACrF,GAAG,EAAE,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC;YAChD,KAAK,EAAE;gBACL,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB;SACF,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAA2B,KAAK,CAAC,OAAO,EAAE;gBACjD,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,CAAC,CAAC;QACP,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CACnB;YACE,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC,CAAC;IACP,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,eAAe;AACf,+CAA+C;AAE/C,MAAM,CAAC,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AAExD,MAAM,CAAC,MAAM,0BAA0B,GAAG,0EAA0E,CAAC;AAErH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4BAA4B,CAAC;IACzC,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+BAA+B,CAAC;IAC5C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IACpD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;IACtD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IAC9D,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC,QAAQ,EAAE;IACtF,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC7E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IACtE,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,6BAA6B,CAAC;IAC1C,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,yCAAyC,CAAC;IACtD,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,mEAAmE,CAAC;IAChF,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,wDAAwD,CAAC;IACrE,QAAQ,EAAE,CAAC;SACR,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;QAClB,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC9B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YAC/B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;QAC5C,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;SACxB,QAAQ,EAAE;SACV,QAAQ,CAAC,cAAc,CAAC;IAC3B,MAAM,EAAE,CAAC;SACN,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;QAClB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACzB,CAAC;YAAC,MAAM,CAAC;gBACP,0CAA0C;gBAC1C,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;SACtB,QAAQ,EAAE;SACV,QAAQ,CAAC,oBAAoB,CAAC;IACjC,WAAW,EAAE,CAAC;SACX,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,6LAA6L,CAAC;CAC3M,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAA2B;IAE3B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,kBAAkB,EAAE,CAAC;QAE3C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,OAAO,EAAE,OAAO,CAAC;QAClD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,OAAO,EAAE,UAAU,CAAC;QAE3D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,6FAA6F;aAChG,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,gGAAgG;aACnG,CAAC,CAAC;QACP,CAAC;QAED,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;QACvC,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAE9B,0EAA0E;QAC1E,4DAA4D;QAC5D,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;YAC1E,IAAI,YAAY,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACjC,OAAO,IAAI,CAAC,SAAS,CAAC;oBACpB,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,kDAAkD,QAAQ,YAAY,YAAY,CAAC,IAAI,uCAAuC;iBACtI,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,iDAAiD;QACjD,yEAAyE;QACzE,MAAM,YAAY,GAA4B,EAAE,CAAC;QACjD,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS;YAAE,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC1E,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;YACnC,YAAY,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACjD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;YAAE,YAAY,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QACrG,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;YAAE,YAAY,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC7E,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;YAAE,YAAY,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC7E,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS;YAClC,YAAY,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAC/C,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;YAAE,YAAY,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC7E,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;YAAE,YAAY,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC7E,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;YAAE,YAAY,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAEvE,+DAA+D;QAC/D,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACpC,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;gBAC/B,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;gBAC7E,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;YACpC,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAClC,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBAC7B,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,iCAAiC;gBACjC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBACzE,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBACzB,OAAO,IAAI,CAAC,SAAS,CAAC;wBACpB,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,SAAS,OAAO,CAAC,OAAO,0BAA0B,IAAI,CAAC,IAAI,GAAG;qBACtE,CAAC,CAAC;gBACL,CAAC;gBACD,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC;YAClC,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,cAAc,CAAC,oBAAoB,EAAE;gBAChD,OAAO;gBACP,UAAU;gBACV,QAAQ;gBACR,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;aACnC,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,WAAW,CACpC,OAAO,EACP,UAAU,EACV,QAAQ,EACR,YAAY,CACb,CAAC;QAEF,uEAAuE;QACvE,IAAI,YAAY,GAAY,SAAS,CAAC;QACtC,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACtC,YAAY,GAAG,MAAM,MAAM,CAAC,GAAG,CAC7B,kBAAkB,OAAO,aAAa,UAAU,WAAW,QAAQ,SAAS,EAC5E,EAAE,OAAO,EAAE,OAAO,CAAC,WAAW,EAAE,CACjC,CAAC;QACJ,CAAC;QAED,0DAA0D;QAC1D,IAAI,kBAAkB,GAAG,IAAI,CAAC;QAC9B,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACnC,kBAAkB,GAAG,MAAM,8BAA8B,CACvD,OAAO,EACP,UAAU,EACV,OAAO,CAAC,QAAQ,CACjB,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAwB;YACpC,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,iBAAiB,KAAK,CAAC,GAAG,KAAK,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE;YACrF,GAAG,EAAE,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC;YAChD,KAAK,EAAE;gBACL,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB;SACF,CAAC;QAEF,2DAA2D;QAC3D,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,QAAQ,CAAC,MAAM,GAAG,YAAY,CAAC;QACjC,CAAC;QAED,wCAAwC;QACxC,IAAI,kBAAkB,EAAE,CAAC;YACvB,QAAQ,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QACnD,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAA2B,KAAK,CAAC,OAAO,EAAE;gBACjD,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,CAAC,CAAC;QACP,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CACnB;YACE,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC,CAAC;IACP,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,sBAAsB;AACtB,+CAA+C;AAE/C,MAAM,CAAC,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AAExD,MAAM,CAAC,MAAM,0BAA0B,GAAG,kDAAkD,CAAC;AAE7F,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4BAA4B,CAAC;IACzC,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+BAA+B,CAAC;IAC5C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;CACrD,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAA2B;IAE3B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,kBAAkB,EAAE,CAAC;QAE3C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,OAAO,EAAE,OAAO,CAAC;QAClD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,OAAO,EAAE,UAAU,CAAC;QAE3D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,6FAA6F;aAChG,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,gGAAgG;aACnG,CAAC,CAAC;QACP,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAE9B,mBAAmB;QACnB,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,cAAc,CAAC,oBAAoB,EAAE;gBAChD,OAAO;gBACP,UAAU;gBACV,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE7E,OAAO,IAAI,CAAC,SAAS,CACnB;YACE,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,iBAAiB,KAAK,CAAC,QAAQ,EAAE;YAC1C,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,MAAM,EAAE,MAAM,CAAC,eAAe,GAAG,CAAC;gBAChC,CAAC,CAAC,GAAG,MAAM,CAAC,eAAe,WAAW,MAAM,CAAC,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,eAAe;gBAC5F,CAAC,CAAC,2BAA2B;SAChC,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,2BAA2B,KAAK,CAAC,OAAO,EAAE;gBACjD,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,CAAC,CAAC;QACP,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CACnB;YACE,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC,CAAC;IACP,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,sBAAsB;AACtB,+CAA+C;AAE/C,MAAM,CAAC,MAAM,yBAAyB,GAAG,2BAA2B,CAAC;AAErE,MAAM,CAAC,MAAM,gCAAgC,GAAG,6IAA6I,CAAC;AAE9L,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4BAA4B,CAAC;IACzC,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+BAA+B,CAAC;IAC5C,MAAM,EAAE,CAAC;SACN,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QACnD,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC;QAClG,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QAChF,QAAQ,EAAE,CAAC;aACR,IAAI,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;aACtD,QAAQ,EAAE;aACV,QAAQ,CAAC,4BAA4B,CAAC;QACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACzE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;QAChE,QAAQ,EAAE,CAAC;aACR,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;YAClB,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAC;YAC9B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;gBAC/B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;YAC5C,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;aACxB,QAAQ,EAAE;aACV,QAAQ,CAAC,cAAc,CAAC;QAC3B,YAAY,EAAE,CAAC;aACZ,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;YAClB,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAC;YAC9B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;gBAC/B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;YAC5C,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;aACxB,QAAQ,EAAE;aACV,QAAQ,CAAC,mCAAmC,CAAC;QAChD,MAAM,EAAE,CAAC;aACN,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;YAClB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,IAAI,CAAC;oBACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACzB,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;aACtB,QAAQ,EAAE;aACV,QAAQ,CAAC,QAAQ,CAAC;QACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QAC1F,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sEAAsE,CAAC;QAC5H,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oEAAoE,CAAC;KACnH,CAAC,CACH;SACA,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,QAAQ,CAAC,2BAA2B,CAAC;CACzC,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,KAAiC;IAEjC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,kBAAkB,EAAE,CAAC;QAE3C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,OAAO,EAAE,OAAO,CAAC;QAClD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,OAAO,EAAE,UAAU,CAAC;QAE3D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,6FAA6F;aAChG,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,gGAAgG;aACnG,CAAC,CAAC;QACP,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAE9B,4FAA4F;QAC5F,MAAM,qBAAqB,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAC/C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,SAAS,CAC5C,CAAC;QACF,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC,SAAS,CAAC;gBACpB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,gFAAgF,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;aAChJ,CAAC,CAAC;QACL,CAAC;QAED,mBAAmB;QACnB,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,cAAc,CAAC,2BAA2B,EAAE;gBACvD,OAAO;gBACP,UAAU;gBACV,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;aAC3B,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;QAED,MAAM,MAAM,GAA4B,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/D,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,IAAI,EAAE,CAAC,CAAC,IAAiB;YACzB,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,QAAQ,EAAE,CAAC,CAAC,QAAqC;YACjD,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,YAAY,EAAE,CAAC,CAAC,YAAY;YAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;SAC3B,CAAC,CAAC,CAAC;QAEJ,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QAE3E,OAAO,IAAI,CAAC,SAAS,CACnB;YACE,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,WAAW,MAAM,CAAC,SAAS,OAAO,MAAM,CAAC,KAAK,SAAS;YAChE,GAAG,MAAM;SACV,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,kCAAkC,KAAK,CAAC,OAAO,EAAE;gBACxD,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,CAAC,CAAC;QACP,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CACnB;YACE,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC,CAAC;IACP,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,sBAAsB;AACtB,+CAA+C;AAE/C,MAAM,CAAC,MAAM,yBAAyB,GAAG,2BAA2B,CAAC;AAErE,MAAM,CAAC,MAAM,gCAAgC,GAAG,yDAAyD,CAAC;AAE1G,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4BAA4B,CAAC;IACzC,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+BAA+B,CAAC;IAC5C,OAAO,EAAE,CAAC;SACP,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QACpD,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;YACf,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;YACtD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YACzE,QAAQ,EAAE,CAAC;iBACR,IAAI,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;iBACtD,QAAQ,EAAE;iBACV,QAAQ,CAAC,cAAc,CAAC;YAC3B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YAC5E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YACxE,QAAQ,EAAE,CAAC;iBACR,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;gBAClB,IAAI,GAAG,KAAK,IAAI;oBAAE,OAAO,IAAI,CAAC;gBAC9B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;oBAC/B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC5C,CAAC;gBACD,OAAO,GAAG,CAAC;YACb,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;iBACxB,QAAQ,EAAE;iBACV,QAAQ,CAAC,cAAc,CAAC;YAC3B,MAAM,EAAE,CAAC;iBACN,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;gBAClB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBAC5B,IAAI,CAAC;wBACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACzB,CAAC;oBAAC,MAAM,CAAC;wBACP,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC7D,CAAC;gBACH,CAAC;gBACD,OAAO,GAAG,CAAC;YACb,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;iBACtB,QAAQ,EAAE;iBACV,QAAQ,CAAC,oBAAoB,CAAC;YACjC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YAC3F,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;SACvE,CAAC;KACH,CAAC,CACH;SACA,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,QAAQ,CAAC,2BAA2B,CAAC;CACzC,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,KAAiC;IAEjC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,kBAAkB,EAAE,CAAC;QAE3C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,OAAO,EAAE,OAAO,CAAC;QAClD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,OAAO,EAAE,UAAU,CAAC;QAE3D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,6FAA6F;aAChG,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,gGAAgG;aACnG,CAAC,CAAC;QACP,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAE9B,mBAAmB;QACnB,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,cAAc,CAAC,2BAA2B,EAAE;gBACvD,OAAO;gBACP,UAAU;gBACV,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM;aAC5B,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;QAED,MAAM,OAAO,GAA4B,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC/D,MAAM,MAAM,GAAoC,EAAE,CAAC;YACnD,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS;gBAAE,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YACtE,IAAI,CAAC,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS;gBAAE,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;YAClF,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS;gBAAE,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,QAAyB,CAAC;YAC1F,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS;gBAAE,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;YACzE,IAAI,CAAC,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS;gBAAE,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;YAC/E,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS;gBAAE,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;YACzE,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS;gBAAE,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;YACzE,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS;gBAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;YACnE,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS;gBAAE,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YACtE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAE5E,OAAO,IAAI,CAAC,SAAS,CACnB;YACE,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,WAAW,MAAM,CAAC,SAAS,OAAO,MAAM,CAAC,KAAK,SAAS;YAChE,GAAG,MAAM;SACV,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,SAAS,CACnB;gBACE,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,kCAAkC,KAAK,CAAC,OAAO,EAAE;gBACxD,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,CAAC,CAAC;QACP,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CACnB;YACE,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;SAChE,CAAC,CAAC;IACP,CAAC;AACH,CAAC"}
|
|
@@ -27,6 +27,7 @@ export declare const manageNotificationRuleToolSchema: z.ZodObject<{
|
|
|
27
27
|
projectId?: string | undefined;
|
|
28
28
|
orgSlug?: string | undefined;
|
|
29
29
|
description?: string | undefined;
|
|
30
|
+
assigneeIds?: string | undefined;
|
|
30
31
|
name?: string | undefined;
|
|
31
32
|
ruleId?: string | undefined;
|
|
32
33
|
integrationId?: string | undefined;
|
|
@@ -36,7 +37,6 @@ export declare const manageNotificationRuleToolSchema: z.ZodObject<{
|
|
|
36
37
|
deliveryConfig?: string | undefined;
|
|
37
38
|
labelTriggers?: string | undefined;
|
|
38
39
|
statusIds?: string | undefined;
|
|
39
|
-
assigneeIds?: string | undefined;
|
|
40
40
|
issueTypes?: string | undefined;
|
|
41
41
|
priorities?: string | undefined;
|
|
42
42
|
issueIds?: string | undefined;
|
|
@@ -47,6 +47,7 @@ export declare const manageNotificationRuleToolSchema: z.ZodObject<{
|
|
|
47
47
|
projectId?: string | undefined;
|
|
48
48
|
orgSlug?: string | undefined;
|
|
49
49
|
description?: string | undefined;
|
|
50
|
+
assigneeIds?: string | undefined;
|
|
50
51
|
name?: string | undefined;
|
|
51
52
|
ruleId?: string | undefined;
|
|
52
53
|
integrationId?: string | undefined;
|
|
@@ -56,7 +57,6 @@ export declare const manageNotificationRuleToolSchema: z.ZodObject<{
|
|
|
56
57
|
deliveryConfig?: string | undefined;
|
|
57
58
|
labelTriggers?: string | undefined;
|
|
58
59
|
statusIds?: string | undefined;
|
|
59
|
-
assigneeIds?: string | undefined;
|
|
60
60
|
issueTypes?: string | undefined;
|
|
61
61
|
priorities?: string | undefined;
|
|
62
62
|
issueIds?: string | undefined;
|
package/dist/tools/prScorer.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
export declare const getPrScorerSchemaToolName = "llama_get_pr_scorer_schema";
|
|
3
|
-
export declare const getPrScorerSchemaToolDescription = "# PR Scorer Rule Language \u2014 Full DSL Reference\n\nPR Scorer rules let you automatically adjust the quality score of a pull\nrequest based on its content, metadata, and linked issues. Each rule is a\nsingle line that conditionally adds or subtracts points and optionally\nattaches a human-readable reason and flag label.\n\n---\n\n## Grammar (EBNF)\n\n```\nruleset := rule*\nrule := 'when' expr 'then' SignedInt ( 'reason' STRING )? ( 'flag' STRING )?\nSignedInt := ( '+' | '-' ) INTEGER // range: [-10, +10] inclusive\nSTRING := '\"' [^\"]* '\"'\n```\n\nBlank lines and lines beginning with `#` are treated as comments and are\nsilently ignored. Rules are evaluated in order; all matching rules fire\n(scores accumulate \u2014 there is no early-exit).\n\n### Hard limits\n\n| Constraint | Value |\n|---|---|\n| Maximum rules per ruleset | 100 |\n| Maximum nested any() / all() depth | 8 |\n| Score per rule action | [-10, +10] |\n\n---\n\n## Evaluation Context \u2014 Variables\n\nEvery rule's `expr` can reference the following variables. All property\naccesses are null-safe: accessing a missing property returns `null` (which\nis falsy).\n\n### Top-level PR fields\n\n| Variable | Type | Description |\n|---|---|---|\n| `pr.id` |
|
|
3
|
+
export declare const getPrScorerSchemaToolDescription = "# PR Scorer Rule Language \u2014 Full DSL Reference\n\nPR Scorer rules let you automatically adjust the quality score of a pull\nrequest based on its content, metadata, and linked issues. Each rule is a\nsingle line that conditionally adds or subtracts points and optionally\nattaches a human-readable reason and flag label.\n\n---\n\n## Grammar (EBNF)\n\n```\nruleset := rule*\nrule := 'when' expr 'then' SignedInt ( 'reason' STRING )? ( 'flag' STRING )?\nSignedInt := ( '+' | '-' ) INTEGER // range: [-10, +10] inclusive\nSTRING := '\"' [^\"]* '\"'\n```\n\nBlank lines and lines beginning with `#` are treated as comments and are\nsilently ignored. Rules are evaluated in order; all matching rules fire\n(scores accumulate \u2014 there is no early-exit).\n\n### Hard limits\n\n| Constraint | Value |\n|---|---|\n| Maximum rules per ruleset | 100 |\n| Maximum nested any() / all() / count(lambda) depth | 8 |\n| Score per rule action | [-10, +10] |\n\n---\n\n## Evaluation Context \u2014 Variables\n\nEvery rule's `expr` can reference the following variables. All property\naccesses are null-safe: accessing a missing property returns `null` (which\nis falsy).\n\n### Top-level PR fields\n\n| Variable | Type | Description |\n|---|---|---|\n| `pr.id` | number | Pull request id (provider-native, e.g. ADO `pullRequestId`) |\n| `pr.title` | string | Pull request title |\n| `pr.description` | string | PR body / description |\n| `pr.author` | string | Display name (or unique name) of the PR author |\n| `pr.lastUpdated` | ISO-8601 string | Timestamp of last update |\n| `pr.isDraft` | boolean | `true` when the PR is in draft state |\n| `pr.filesChanged` | number | Total count of changed files in the PR |\n| `pr.commitCount` | number | Total count of commits in the PR |\n| `pr.linesAdded` | number \\| null | Aggregate lines added across the PR (null if the provider didn't return it) |\n| `pr.linesRemoved` | number \\| null | Aggregate lines removed across the PR (null if the provider didn't return it) |\n\n> The aggregate fields above are the cheapest signals for \"this PR is large.\"\n> Per-file line counts are not available from ADO, so prefer\n> `pr.filesChanged > 50` or `pr.linesAdded > 1000` over file-level thresholds.\n\n### Files\n\n`files` is an array of file-change objects.\n\n| Property | Type | Description |\n|---|---|---|\n| `path` | string | File path relative to repo root |\n| `additions` | number | Lines added in this file |\n| `deletions` | number | Lines deleted in this file |\n| `isBinary` | boolean | `true` if the file is binary |\n\nUse `files.length` or `files.count()` to count total changed files.\n\n> **Provider caveat (Azure DevOps):** the ADO `/stats` endpoint does not\n> return per-file line counts, so `additions` and `deletions` are `0`\n> for every file and `isBinary` is `false`. Rules should match on\n> `path` for ADO PRs and avoid line-count thresholds.\n\n### Commits\n\n`commits` is an array of commit objects.\n\n| Property | Type | Description |\n|---|---|---|\n| `message` | string | Commit message |\n| `author` | string | Commit author username |\n| `date` | ISO-8601 string | Commit timestamp |\n\nUse `commits.length` or `commits.count()` to count total commits.\n\n> **Provider note (Azure DevOps):** commit messages are fetched for every\n> PR and exposed via `commits[].message`. Per-commit `author` and\n> `date` are populated from the PR author and `pr.lastUpdated`\n> respectively, since ADO does not return per-commit metadata cheaply.\n\n### Labels\n\n`labels` is an array of strings (the label names applied to the PR).\nUse `\"bug\" in labels` to check membership.\n\n### Reviewers\n\n`reviewers` is an array of strings \u2014 the display name (falling back to\nunique name) of each reviewer. To check whether a particular reviewer is\npresent, use `\"alice\" in reviewers` or `reviewers.any(r -> r == \"alice\")`.\n\n> **Note:** reviewer approval state is not currently exposed in the\n> evaluation context. A rule cannot distinguish approved vs. pending\n> reviewers; it can only count or name-match them.\n\n### Issue link fields\n\n| Variable | Type | Description |\n|---|---|---|\n| `hasLinkedIssue` | boolean | `true` when at least one issue is linked |\n| `linkedIssueKeys` | string[] | Array of linked issue keys (e.g. `[\"PROJ-42\"]`) |\n\n---\n\n## Operators\n\n### Comparison\n\n| Operator | Meaning | Example |\n|---|---|---|\n| `==` | Equal | `pr.isDraft == true` |\n| `!=` | Not equal | `pr.author != \"bot\"` |\n| `>` | Greater than | `files.count() > 20` |\n| `>=` | Greater than or equal | `files.count() >= 10` |\n| `<` | Less than | `commits.count() < 3` |\n| `<=` | Less than or equal | `reviewers.count() <= 1` |\n| `in` | Array or substring membership | `\"bug\" in labels` |\n\n### Logical\n\n| Operator | Precedence (lower = binds tighter) |\n|---|---|\n| `!` (unary not) | 1 |\n| `&&` (and) | 2 |\n| `||` (or) | 3 |\n\nParentheses may be used to override precedence: `(a || b) && c`.\n\n---\n\n## Built-in Functions\n\n### Array methods\n\nCalled on an array variable with dot notation. `any`/`all`/`count(lambda)`\ntake a lambda `x -> expr`.\n\n| Method | Signature | Description |\n|---|---|---|\n| `.any()` | `array.any(x -> expr)` | Returns `true` if **any** element satisfies `expr` |\n| `.all()` | `array.all(x -> expr)` | Returns `true` if **all** elements satisfy `expr` |\n| `.count()` | `array.count()` *or* `array.count(x -> expr)` | Element count; with a predicate, counts matching elements |\n| `.length` | `array.length` | Element count (no parens; identical to `.count()`) |\n\n### String methods\n\n| Method | Signature | Description |\n|---|---|---|\n| `.matches(re)` | `str.matches(string)` | Returns `true` if `str` matches the RE2 regex `re`. **RE2 syntax \u2014 not JS regex.** |\n| `.startsWith(prefix)` | `str.startsWith(string)` | Prefix check |\n| `.endsWith(suffix)` | `str.endsWith(string)` | Suffix check |\n| `.length` | `str.length` | Character length |\n\n> **RE2 note:** RE2 does not support lookaheads (`(?=...)`), lookbehinds\n> (`(?<=...)`), or backreferences (`\\1`). Use character classes and\n> quantifiers instead. String contents are passed to RE2 **verbatim** \u2014\n> write a single backslash where you would write one in a regex literal.\n\n### Free functions\n\n| Function | Signature | Description |\n|---|---|---|\n| `pathMatches(path, pattern)` | `pathMatches(string, string)` | Glob match. `**` = recursive dir wildcard, `*` = single-segment wildcard. |\n| `daysAgo(dateStr)` | `daysAgo(string) -> number` | Whole days between `dateStr` (ISO-8601) and now. Returns `Infinity` if unparseable. |\n\n---\n\n## String Interpolation\n\nReason and flag strings support `${...}` interpolation. Only simple dotted\npaths are allowed inside the braces \u2014 no method calls or arithmetic.\n\n```\nwhen files.count() > 4 then +1 reason \"${files.length} files touched\"\nwhen commits.count() > 10 then -1 reason \"noisy: ${commits.length} commits\"\n```\n\n---\n\n## Runnable Examples\n\n### Example 1 \u2014 Reward test coverage, penalise env-file touches\n\n```\n# +1 if the PR includes any test files\nwhen files.any(f -> pathMatches(f.path, \"**/*.test.ts\")) then +1 reason \"has tests\"\n\n# -5 and flag when .env files are touched (security risk)\nwhen files.any(f -> pathMatches(f.path, \"**/.env*\")) then -5 reason \"touches env\" flag \"env-file\"\n```\n\n### Example 2 \u2014 Multi-condition ruleset\n\n```\n# Draft PRs get a small penalty\nwhen pr.isDraft == true then -1 reason \"draft PR\"\n\n# Large PRs are harder to review\nwhen files.count() > 30 then -2 reason \"large diff \u2014 consider splitting\"\n\n# Bonus for linking an issue\nwhen hasLinkedIssue == true then +1 reason \"linked to tracked issue\"\n\n# At least one reviewer assigned\nwhen reviewers.count() > 0 then +1 reason \"has reviewers\"\n\n# Migration SQL is high-risk\nwhen files.count(f -> pathMatches(f.path, \"**/migrations/**/*.sql\")) > 0 then -3 reason \"migration SQL\" flag \"schema-change\"\n\n# Stale PR \u2014 open longer than a week\nwhen daysAgo(pr.lastUpdated) > 7 then -1 reason \"stale PR\"\n\n# Title check \u2014 must not be a bare word (RE2 syntax)\nwhen pr.title.matches(\"^fix$\") then -1 reason \"title too vague\"\n```\n\n---\n\n## Return Type for Parse Errors\n\nWhen `llama_set_pr_scorer_rules` receives a syntactically invalid ruleset,\nit returns a **structured** parse-error array \u2014 not a flattened string \u2014 so\nClaude can identify and fix individual lines:\n\n```json\n{\n \"success\": false,\n \"parseErrors\": [\n { \"line\": 3, \"column\": 12, \"message\": \"Expected 'then' keyword\" },\n { \"line\": 7, \"column\": 1, \"message\": \"Score +15 exceeds maximum of +10\" }\n ]\n}\n```\n\nFix each error by its `line` + `column` and resubmit.\n";
|
|
4
4
|
export declare const getPrScorerSchemaToolSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
5
5
|
export type GetPrScorerSchemaToolInput = z.infer<typeof getPrScorerSchemaToolSchema>;
|
|
6
6
|
export declare function executeGetPrScorerSchema(): Promise<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prScorer.d.ts","sourceRoot":"","sources":["../../src/tools/prScorer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,yBAAyB,+BAA+B,CAAC;AAEtE,eAAO,MAAM,gCAAgC,
|
|
1
|
+
{"version":3,"file":"prScorer.d.ts","sourceRoot":"","sources":["../../src/tools/prScorer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,yBAAyB,+BAA+B,CAAC;AAEtE,eAAO,MAAM,gCAAgC,soRAA0B,CAAC;AAExE,eAAO,MAAM,2BAA2B,gDAAe,CAAC;AAExD,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAErF,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,MAAM,CAAC,CAEhE;AAMD,eAAO,MAAM,wBAAwB,8BAA8B,CAAC;AAEpE,eAAO,MAAM,+BAA+B,QAGU,CAAC;AAEvD,eAAO,MAAM,0BAA0B;;;;;;;;;EASrC,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAcnF,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,MAAM,CAAC,CAsDjB;AAMD,eAAO,MAAM,wBAAwB,8BAA8B,CAAC;AAEpE,eAAO,MAAM,+BAA+B,QAKiD,CAAC;AAE9F,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;EAgBrC,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAQnF,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,MAAM,CAAC,CAuFjB"}
|
|
@@ -4,6 +4,12 @@
|
|
|
4
4
|
* tool description AND returned as the handler response.
|
|
5
5
|
*
|
|
6
6
|
* Spec: LLAMA-1283
|
|
7
|
+
*
|
|
8
|
+
* IMPORTANT: This file is the canonical, machine-readable DSL reference. It
|
|
9
|
+
* MUST match the runtime exposed by packages/pr-scorer-dsl (parser allowed
|
|
10
|
+
* methods, evaluator lookupName(), and the EvalContext shape assembled in
|
|
11
|
+
* apps/api/src/services/prScorerDispatcher.service.ts). When you change the
|
|
12
|
+
* DSL, update this file AND apps/web/src/pages/docs/PrScorerDocsPage.tsx.
|
|
7
13
|
*/
|
|
8
|
-
export declare const PR_SCORER_DSL_REFERENCE = "# PR Scorer Rule Language \u2014 Full DSL Reference\n\nPR Scorer rules let you automatically adjust the quality score of a pull\nrequest based on its content, metadata, and linked issues. Each rule is a\nsingle line that conditionally adds or subtracts points and optionally\nattaches a human-readable reason and flag label.\n\n---\n\n## Grammar (EBNF)\n\n```\nruleset := rule*\nrule := 'when' expr 'then' SignedInt ( 'reason' STRING )? ( 'flag' STRING )?\nSignedInt := ( '+' | '-' ) INTEGER // range: [-10, +10] inclusive\nSTRING := '\"' [^\"]* '\"'\n```\n\nBlank lines and lines beginning with `#` are treated as comments and are\nsilently ignored. Rules are evaluated in order; all matching rules fire\n(scores accumulate \u2014 there is no early-exit).\n\n### Hard limits\n\n| Constraint | Value |\n|---|---|\n| Maximum rules per ruleset | 100 |\n| Maximum nested any() / all() depth | 8 |\n| Score per rule action | [-10, +10] |\n\n---\n\n## Evaluation Context \u2014 Variables\n\nEvery rule's `expr` can reference the following variables. All property\naccesses are null-safe: accessing a missing property returns `null` (which\nis falsy).\n\n### Top-level PR fields\n\n| Variable | Type | Description |\n|---|---|---|\n| `pr.id` |
|
|
14
|
+
export declare const PR_SCORER_DSL_REFERENCE = "# PR Scorer Rule Language \u2014 Full DSL Reference\n\nPR Scorer rules let you automatically adjust the quality score of a pull\nrequest based on its content, metadata, and linked issues. Each rule is a\nsingle line that conditionally adds or subtracts points and optionally\nattaches a human-readable reason and flag label.\n\n---\n\n## Grammar (EBNF)\n\n```\nruleset := rule*\nrule := 'when' expr 'then' SignedInt ( 'reason' STRING )? ( 'flag' STRING )?\nSignedInt := ( '+' | '-' ) INTEGER // range: [-10, +10] inclusive\nSTRING := '\"' [^\"]* '\"'\n```\n\nBlank lines and lines beginning with `#` are treated as comments and are\nsilently ignored. Rules are evaluated in order; all matching rules fire\n(scores accumulate \u2014 there is no early-exit).\n\n### Hard limits\n\n| Constraint | Value |\n|---|---|\n| Maximum rules per ruleset | 100 |\n| Maximum nested any() / all() / count(lambda) depth | 8 |\n| Score per rule action | [-10, +10] |\n\n---\n\n## Evaluation Context \u2014 Variables\n\nEvery rule's `expr` can reference the following variables. All property\naccesses are null-safe: accessing a missing property returns `null` (which\nis falsy).\n\n### Top-level PR fields\n\n| Variable | Type | Description |\n|---|---|---|\n| `pr.id` | number | Pull request id (provider-native, e.g. ADO `pullRequestId`) |\n| `pr.title` | string | Pull request title |\n| `pr.description` | string | PR body / description |\n| `pr.author` | string | Display name (or unique name) of the PR author |\n| `pr.lastUpdated` | ISO-8601 string | Timestamp of last update |\n| `pr.isDraft` | boolean | `true` when the PR is in draft state |\n| `pr.filesChanged` | number | Total count of changed files in the PR |\n| `pr.commitCount` | number | Total count of commits in the PR |\n| `pr.linesAdded` | number \\| null | Aggregate lines added across the PR (null if the provider didn't return it) |\n| `pr.linesRemoved` | number \\| null | Aggregate lines removed across the PR (null if the provider didn't return it) |\n\n> The aggregate fields above are the cheapest signals for \"this PR is large.\"\n> Per-file line counts are not available from ADO, so prefer\n> `pr.filesChanged > 50` or `pr.linesAdded > 1000` over file-level thresholds.\n\n### Files\n\n`files` is an array of file-change objects.\n\n| Property | Type | Description |\n|---|---|---|\n| `path` | string | File path relative to repo root |\n| `additions` | number | Lines added in this file |\n| `deletions` | number | Lines deleted in this file |\n| `isBinary` | boolean | `true` if the file is binary |\n\nUse `files.length` or `files.count()` to count total changed files.\n\n> **Provider caveat (Azure DevOps):** the ADO `/stats` endpoint does not\n> return per-file line counts, so `additions` and `deletions` are `0`\n> for every file and `isBinary` is `false`. Rules should match on\n> `path` for ADO PRs and avoid line-count thresholds.\n\n### Commits\n\n`commits` is an array of commit objects.\n\n| Property | Type | Description |\n|---|---|---|\n| `message` | string | Commit message |\n| `author` | string | Commit author username |\n| `date` | ISO-8601 string | Commit timestamp |\n\nUse `commits.length` or `commits.count()` to count total commits.\n\n> **Provider note (Azure DevOps):** commit messages are fetched for every\n> PR and exposed via `commits[].message`. Per-commit `author` and\n> `date` are populated from the PR author and `pr.lastUpdated`\n> respectively, since ADO does not return per-commit metadata cheaply.\n\n### Labels\n\n`labels` is an array of strings (the label names applied to the PR).\nUse `\"bug\" in labels` to check membership.\n\n### Reviewers\n\n`reviewers` is an array of strings \u2014 the display name (falling back to\nunique name) of each reviewer. To check whether a particular reviewer is\npresent, use `\"alice\" in reviewers` or `reviewers.any(r -> r == \"alice\")`.\n\n> **Note:** reviewer approval state is not currently exposed in the\n> evaluation context. A rule cannot distinguish approved vs. pending\n> reviewers; it can only count or name-match them.\n\n### Issue link fields\n\n| Variable | Type | Description |\n|---|---|---|\n| `hasLinkedIssue` | boolean | `true` when at least one issue is linked |\n| `linkedIssueKeys` | string[] | Array of linked issue keys (e.g. `[\"PROJ-42\"]`) |\n\n---\n\n## Operators\n\n### Comparison\n\n| Operator | Meaning | Example |\n|---|---|---|\n| `==` | Equal | `pr.isDraft == true` |\n| `!=` | Not equal | `pr.author != \"bot\"` |\n| `>` | Greater than | `files.count() > 20` |\n| `>=` | Greater than or equal | `files.count() >= 10` |\n| `<` | Less than | `commits.count() < 3` |\n| `<=` | Less than or equal | `reviewers.count() <= 1` |\n| `in` | Array or substring membership | `\"bug\" in labels` |\n\n### Logical\n\n| Operator | Precedence (lower = binds tighter) |\n|---|---|\n| `!` (unary not) | 1 |\n| `&&` (and) | 2 |\n| `||` (or) | 3 |\n\nParentheses may be used to override precedence: `(a || b) && c`.\n\n---\n\n## Built-in Functions\n\n### Array methods\n\nCalled on an array variable with dot notation. `any`/`all`/`count(lambda)`\ntake a lambda `x -> expr`.\n\n| Method | Signature | Description |\n|---|---|---|\n| `.any()` | `array.any(x -> expr)` | Returns `true` if **any** element satisfies `expr` |\n| `.all()` | `array.all(x -> expr)` | Returns `true` if **all** elements satisfy `expr` |\n| `.count()` | `array.count()` *or* `array.count(x -> expr)` | Element count; with a predicate, counts matching elements |\n| `.length` | `array.length` | Element count (no parens; identical to `.count()`) |\n\n### String methods\n\n| Method | Signature | Description |\n|---|---|---|\n| `.matches(re)` | `str.matches(string)` | Returns `true` if `str` matches the RE2 regex `re`. **RE2 syntax \u2014 not JS regex.** |\n| `.startsWith(prefix)` | `str.startsWith(string)` | Prefix check |\n| `.endsWith(suffix)` | `str.endsWith(string)` | Suffix check |\n| `.length` | `str.length` | Character length |\n\n> **RE2 note:** RE2 does not support lookaheads (`(?=...)`), lookbehinds\n> (`(?<=...)`), or backreferences (`\\1`). Use character classes and\n> quantifiers instead. String contents are passed to RE2 **verbatim** \u2014\n> write a single backslash where you would write one in a regex literal.\n\n### Free functions\n\n| Function | Signature | Description |\n|---|---|---|\n| `pathMatches(path, pattern)` | `pathMatches(string, string)` | Glob match. `**` = recursive dir wildcard, `*` = single-segment wildcard. |\n| `daysAgo(dateStr)` | `daysAgo(string) -> number` | Whole days between `dateStr` (ISO-8601) and now. Returns `Infinity` if unparseable. |\n\n---\n\n## String Interpolation\n\nReason and flag strings support `${...}` interpolation. Only simple dotted\npaths are allowed inside the braces \u2014 no method calls or arithmetic.\n\n```\nwhen files.count() > 4 then +1 reason \"${files.length} files touched\"\nwhen commits.count() > 10 then -1 reason \"noisy: ${commits.length} commits\"\n```\n\n---\n\n## Runnable Examples\n\n### Example 1 \u2014 Reward test coverage, penalise env-file touches\n\n```\n# +1 if the PR includes any test files\nwhen files.any(f -> pathMatches(f.path, \"**/*.test.ts\")) then +1 reason \"has tests\"\n\n# -5 and flag when .env files are touched (security risk)\nwhen files.any(f -> pathMatches(f.path, \"**/.env*\")) then -5 reason \"touches env\" flag \"env-file\"\n```\n\n### Example 2 \u2014 Multi-condition ruleset\n\n```\n# Draft PRs get a small penalty\nwhen pr.isDraft == true then -1 reason \"draft PR\"\n\n# Large PRs are harder to review\nwhen files.count() > 30 then -2 reason \"large diff \u2014 consider splitting\"\n\n# Bonus for linking an issue\nwhen hasLinkedIssue == true then +1 reason \"linked to tracked issue\"\n\n# At least one reviewer assigned\nwhen reviewers.count() > 0 then +1 reason \"has reviewers\"\n\n# Migration SQL is high-risk\nwhen files.count(f -> pathMatches(f.path, \"**/migrations/**/*.sql\")) > 0 then -3 reason \"migration SQL\" flag \"schema-change\"\n\n# Stale PR \u2014 open longer than a week\nwhen daysAgo(pr.lastUpdated) > 7 then -1 reason \"stale PR\"\n\n# Title check \u2014 must not be a bare word (RE2 syntax)\nwhen pr.title.matches(\"^fix$\") then -1 reason \"title too vague\"\n```\n\n---\n\n## Return Type for Parse Errors\n\nWhen `llama_set_pr_scorer_rules` receives a syntactically invalid ruleset,\nit returns a **structured** parse-error array \u2014 not a flattened string \u2014 so\nClaude can identify and fix individual lines:\n\n```json\n{\n \"success\": false,\n \"parseErrors\": [\n { \"line\": 3, \"column\": 12, \"message\": \"Expected 'then' keyword\" },\n { \"line\": 7, \"column\": 1, \"message\": \"Score +15 exceeds maximum of +10\" }\n ]\n}\n```\n\nFix each error by its `line` + `column` and resubmit.\n";
|
|
9
15
|
//# sourceMappingURL=prScorerSchema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prScorerSchema.d.ts","sourceRoot":"","sources":["../../src/tools/prScorerSchema.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"prScorerSchema.d.ts","sourceRoot":"","sources":["../../src/tools/prScorerSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,eAAO,MAAM,uBAAuB,soRAuPnC,CAAC"}
|
|
@@ -4,6 +4,12 @@
|
|
|
4
4
|
* tool description AND returned as the handler response.
|
|
5
5
|
*
|
|
6
6
|
* Spec: LLAMA-1283
|
|
7
|
+
*
|
|
8
|
+
* IMPORTANT: This file is the canonical, machine-readable DSL reference. It
|
|
9
|
+
* MUST match the runtime exposed by packages/pr-scorer-dsl (parser allowed
|
|
10
|
+
* methods, evaluator lookupName(), and the EvalContext shape assembled in
|
|
11
|
+
* apps/api/src/services/prScorerDispatcher.service.ts). When you change the
|
|
12
|
+
* DSL, update this file AND apps/web/src/pages/docs/PrScorerDocsPage.tsx.
|
|
7
13
|
*/
|
|
8
14
|
export const PR_SCORER_DSL_REFERENCE = `# PR Scorer Rule Language — Full DSL Reference
|
|
9
15
|
|
|
@@ -32,7 +38,7 @@ silently ignored. Rules are evaluated in order; all matching rules fire
|
|
|
32
38
|
| Constraint | Value |
|
|
33
39
|
|---|---|
|
|
34
40
|
| Maximum rules per ruleset | 100 |
|
|
35
|
-
| Maximum nested any() / all() depth | 8 |
|
|
41
|
+
| Maximum nested any() / all() / count(lambda) depth | 8 |
|
|
36
42
|
| Score per rule action | [-10, +10] |
|
|
37
43
|
|
|
38
44
|
---
|
|
@@ -47,12 +53,20 @@ is falsy).
|
|
|
47
53
|
|
|
48
54
|
| Variable | Type | Description |
|
|
49
55
|
|---|---|---|
|
|
50
|
-
| \`pr.id\` |
|
|
56
|
+
| \`pr.id\` | number | Pull request id (provider-native, e.g. ADO \`pullRequestId\`) |
|
|
51
57
|
| \`pr.title\` | string | Pull request title |
|
|
52
58
|
| \`pr.description\` | string | PR body / description |
|
|
53
|
-
| \`pr.author\` | string |
|
|
59
|
+
| \`pr.author\` | string | Display name (or unique name) of the PR author |
|
|
54
60
|
| \`pr.lastUpdated\` | ISO-8601 string | Timestamp of last update |
|
|
55
61
|
| \`pr.isDraft\` | boolean | \`true\` when the PR is in draft state |
|
|
62
|
+
| \`pr.filesChanged\` | number | Total count of changed files in the PR |
|
|
63
|
+
| \`pr.commitCount\` | number | Total count of commits in the PR |
|
|
64
|
+
| \`pr.linesAdded\` | number \\| null | Aggregate lines added across the PR (null if the provider didn't return it) |
|
|
65
|
+
| \`pr.linesRemoved\` | number \\| null | Aggregate lines removed across the PR (null if the provider didn't return it) |
|
|
66
|
+
|
|
67
|
+
> The aggregate fields above are the cheapest signals for "this PR is large."
|
|
68
|
+
> Per-file line counts are not available from ADO, so prefer
|
|
69
|
+
> \`pr.filesChanged > 50\` or \`pr.linesAdded > 1000\` over file-level thresholds.
|
|
56
70
|
|
|
57
71
|
### Files
|
|
58
72
|
|
|
@@ -63,7 +77,14 @@ is falsy).
|
|
|
63
77
|
| \`path\` | string | File path relative to repo root |
|
|
64
78
|
| \`additions\` | number | Lines added in this file |
|
|
65
79
|
| \`deletions\` | number | Lines deleted in this file |
|
|
66
|
-
| \`
|
|
80
|
+
| \`isBinary\` | boolean | \`true\` if the file is binary |
|
|
81
|
+
|
|
82
|
+
Use \`files.length\` or \`files.count()\` to count total changed files.
|
|
83
|
+
|
|
84
|
+
> **Provider caveat (Azure DevOps):** the ADO \`/stats\` endpoint does not
|
|
85
|
+
> return per-file line counts, so \`additions\` and \`deletions\` are \`0\`
|
|
86
|
+
> for every file and \`isBinary\` is \`false\`. Rules should match on
|
|
87
|
+
> \`path\` for ADO PRs and avoid line-count thresholds.
|
|
67
88
|
|
|
68
89
|
### Commits
|
|
69
90
|
|
|
@@ -71,23 +92,31 @@ is falsy).
|
|
|
71
92
|
|
|
72
93
|
| Property | Type | Description |
|
|
73
94
|
|---|---|---|
|
|
74
|
-
| \`sha\` | string | Commit hash |
|
|
75
95
|
| \`message\` | string | Commit message |
|
|
76
96
|
| \`author\` | string | Commit author username |
|
|
77
|
-
| \`
|
|
97
|
+
| \`date\` | ISO-8601 string | Commit timestamp |
|
|
98
|
+
|
|
99
|
+
Use \`commits.length\` or \`commits.count()\` to count total commits.
|
|
100
|
+
|
|
101
|
+
> **Provider note (Azure DevOps):** commit messages are fetched for every
|
|
102
|
+
> PR and exposed via \`commits[].message\`. Per-commit \`author\` and
|
|
103
|
+
> \`date\` are populated from the PR author and \`pr.lastUpdated\`
|
|
104
|
+
> respectively, since ADO does not return per-commit metadata cheaply.
|
|
78
105
|
|
|
79
106
|
### Labels
|
|
80
107
|
|
|
81
108
|
\`labels\` is an array of strings (the label names applied to the PR).
|
|
109
|
+
Use \`"bug" in labels\` to check membership.
|
|
82
110
|
|
|
83
111
|
### Reviewers
|
|
84
112
|
|
|
85
|
-
\`reviewers\` is an array of
|
|
113
|
+
\`reviewers\` is an array of strings — the display name (falling back to
|
|
114
|
+
unique name) of each reviewer. To check whether a particular reviewer is
|
|
115
|
+
present, use \`"alice" in reviewers\` or \`reviewers.any(r -> r == "alice")\`.
|
|
86
116
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
| \`state\` | string | \`"approved"\` \| \`"changes_requested"\` \| \`"pending"\` |
|
|
117
|
+
> **Note:** reviewer approval state is not currently exposed in the
|
|
118
|
+
> evaluation context. A rule cannot distinguish approved vs. pending
|
|
119
|
+
> reviewers; it can only count or name-match them.
|
|
91
120
|
|
|
92
121
|
### Issue link fields
|
|
93
122
|
|
|
@@ -110,7 +139,7 @@ is falsy).
|
|
|
110
139
|
| \`>=\` | Greater than or equal | \`files.count() >= 10\` |
|
|
111
140
|
| \`<\` | Less than | \`commits.count() < 3\` |
|
|
112
141
|
| \`<=\` | Less than or equal | \`reviewers.count() <= 1\` |
|
|
113
|
-
| \`in\` | Array membership | \`"bug" in labels\` |
|
|
142
|
+
| \`in\` | Array or substring membership | \`"bug" in labels\` |
|
|
114
143
|
|
|
115
144
|
### Logical
|
|
116
145
|
|
|
@@ -126,37 +155,50 @@ Parentheses may be used to override precedence: \`(a || b) && c\`.
|
|
|
126
155
|
|
|
127
156
|
## Built-in Functions
|
|
128
157
|
|
|
129
|
-
###
|
|
158
|
+
### Array methods
|
|
130
159
|
|
|
131
|
-
|
|
160
|
+
Called on an array variable with dot notation. \`any\`/\`all\`/\`count(lambda)\`
|
|
161
|
+
take a lambda \`x -> expr\`.
|
|
132
162
|
|
|
133
|
-
|
|
|
163
|
+
| Method | Signature | Description |
|
|
164
|
+
|---|---|---|
|
|
165
|
+
| \`.any()\` | \`array.any(x -> expr)\` | Returns \`true\` if **any** element satisfies \`expr\` |
|
|
166
|
+
| \`.all()\` | \`array.all(x -> expr)\` | Returns \`true\` if **all** elements satisfy \`expr\` |
|
|
167
|
+
| \`.count()\` | \`array.count()\` *or* \`array.count(x -> expr)\` | Element count; with a predicate, counts matching elements |
|
|
168
|
+
| \`.length\` | \`array.length\` | Element count (no parens; identical to \`.count()\`) |
|
|
169
|
+
|
|
170
|
+
### String methods
|
|
171
|
+
|
|
172
|
+
| Method | Signature | Description |
|
|
134
173
|
|---|---|---|
|
|
135
|
-
|
|
|
136
|
-
|
|
|
137
|
-
|
|
|
174
|
+
| \`.matches(re)\` | \`str.matches(string)\` | Returns \`true\` if \`str\` matches the RE2 regex \`re\`. **RE2 syntax — not JS regex.** |
|
|
175
|
+
| \`.startsWith(prefix)\` | \`str.startsWith(string)\` | Prefix check |
|
|
176
|
+
| \`.endsWith(suffix)\` | \`str.endsWith(string)\` | Suffix check |
|
|
177
|
+
| \`.length\` | \`str.length\` | Character length |
|
|
138
178
|
|
|
139
|
-
|
|
179
|
+
> **RE2 note:** RE2 does not support lookaheads (\`(?=...)\`), lookbehinds
|
|
180
|
+
> (\`(?<=...)\`), or backreferences (\`\\1\`). Use character classes and
|
|
181
|
+
> quantifiers instead. String contents are passed to RE2 **verbatim** —
|
|
182
|
+
> write a single backslash where you would write one in a regex literal.
|
|
140
183
|
|
|
141
|
-
###
|
|
184
|
+
### Free functions
|
|
142
185
|
|
|
143
186
|
| Function | Signature | Description |
|
|
144
187
|
|---|---|---|
|
|
145
|
-
| \`pathMatches(path, pattern)\` | \`pathMatches(string, string)\` |
|
|
188
|
+
| \`pathMatches(path, pattern)\` | \`pathMatches(string, string)\` | Glob match. \`**\` = recursive dir wildcard, \`*\` = single-segment wildcard. |
|
|
189
|
+
| \`daysAgo(dateStr)\` | \`daysAgo(string) -> number\` | Whole days between \`dateStr\` (ISO-8601) and now. Returns \`Infinity\` if unparseable. |
|
|
146
190
|
|
|
147
|
-
|
|
191
|
+
---
|
|
148
192
|
|
|
149
|
-
|
|
193
|
+
## String Interpolation
|
|
150
194
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
| \`.matches(re)\` | \`str.matches(string)\` | Returns \`true\` if \`str\` matches the RE2 regular-expression string \`re\`. **Note: uses RE2 syntax, NOT JavaScript regex.** |
|
|
154
|
-
| \`.startsWith(prefix)\` | \`str.startsWith(string)\` | Returns \`true\` if \`str\` begins with \`prefix\` |
|
|
155
|
-
| \`.endsWith(suffix)\` | \`str.endsWith(string)\` | Returns \`true\` if \`str\` ends with \`suffix\` |
|
|
195
|
+
Reason and flag strings support \`\${...}\` interpolation. Only simple dotted
|
|
196
|
+
paths are allowed inside the braces — no method calls or arithmetic.
|
|
156
197
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
>
|
|
198
|
+
\`\`\`
|
|
199
|
+
when files.count() > 4 then +1 reason "\${files.length} files touched"
|
|
200
|
+
when commits.count() > 10 then -1 reason "noisy: \${commits.length} commits"
|
|
201
|
+
\`\`\`
|
|
160
202
|
|
|
161
203
|
---
|
|
162
204
|
|
|
@@ -169,7 +211,7 @@ Called on a string variable with dot notation.
|
|
|
169
211
|
when files.any(f -> pathMatches(f.path, "**/*.test.ts")) then +1 reason "has tests"
|
|
170
212
|
|
|
171
213
|
# -5 and flag when .env files are touched (security risk)
|
|
172
|
-
when files.any(f -> pathMatches(f.path, "
|
|
214
|
+
when files.any(f -> pathMatches(f.path, "**/.env*")) then -5 reason "touches env" flag "env-file"
|
|
173
215
|
\`\`\`
|
|
174
216
|
|
|
175
217
|
### Example 2 — Multi-condition ruleset
|
|
@@ -184,11 +226,14 @@ when files.count() > 30 then -2 reason "large diff — consider splitting"
|
|
|
184
226
|
# Bonus for linking an issue
|
|
185
227
|
when hasLinkedIssue == true then +1 reason "linked to tracked issue"
|
|
186
228
|
|
|
187
|
-
#
|
|
188
|
-
when reviewers.count() > 0
|
|
229
|
+
# At least one reviewer assigned
|
|
230
|
+
when reviewers.count() > 0 then +1 reason "has reviewers"
|
|
231
|
+
|
|
232
|
+
# Migration SQL is high-risk
|
|
233
|
+
when files.count(f -> pathMatches(f.path, "**/migrations/**/*.sql")) > 0 then -3 reason "migration SQL" flag "schema-change"
|
|
189
234
|
|
|
190
|
-
#
|
|
191
|
-
when
|
|
235
|
+
# Stale PR — open longer than a week
|
|
236
|
+
when daysAgo(pr.lastUpdated) > 7 then -1 reason "stale PR"
|
|
192
237
|
|
|
193
238
|
# Title check — must not be a bare word (RE2 syntax)
|
|
194
239
|
when pr.title.matches("^fix$") then -1 reason "title too vague"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prScorerSchema.js","sourceRoot":"","sources":["../../src/tools/prScorerSchema.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"prScorerSchema.js","sourceRoot":"","sources":["../../src/tools/prScorerSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuPtC,CAAC"}
|
package/dist/tools/roadmap.d.ts
CHANGED
|
@@ -31,6 +31,7 @@ export declare const manageRoadmapToolSchema: z.ZodObject<{
|
|
|
31
31
|
id: z.ZodOptional<z.ZodString>;
|
|
32
32
|
title: z.ZodOptional<z.ZodString>;
|
|
33
33
|
epicId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
34
|
+
epicIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
34
35
|
size: z.ZodOptional<z.ZodNullable<z.ZodEnum<["XS", "S", "M", "L", "XL", "XXL"]>>>;
|
|
35
36
|
idealStartDate: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
36
37
|
idealEndDate: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
@@ -42,6 +43,7 @@ export declare const manageRoadmapToolSchema: z.ZodObject<{
|
|
|
42
43
|
sortOrder?: number | undefined;
|
|
43
44
|
title?: string | undefined;
|
|
44
45
|
epicId?: string | null | undefined;
|
|
46
|
+
epicIds?: string[] | undefined;
|
|
45
47
|
size?: "XS" | "S" | "M" | "L" | "XL" | "XXL" | null | undefined;
|
|
46
48
|
idealStartDate?: string | null | undefined;
|
|
47
49
|
idealEndDate?: string | null | undefined;
|
|
@@ -52,6 +54,7 @@ export declare const manageRoadmapToolSchema: z.ZodObject<{
|
|
|
52
54
|
sortOrder?: number | undefined;
|
|
53
55
|
title?: string | undefined;
|
|
54
56
|
epicId?: string | null | undefined;
|
|
57
|
+
epicIds?: string[] | undefined;
|
|
55
58
|
size?: "XS" | "S" | "M" | "L" | "XL" | "XXL" | null | undefined;
|
|
56
59
|
idealStartDate?: string | null | undefined;
|
|
57
60
|
idealEndDate?: string | null | undefined;
|
|
@@ -106,6 +109,7 @@ export declare const manageRoadmapToolSchema: z.ZodObject<{
|
|
|
106
109
|
sortOrder?: number | undefined;
|
|
107
110
|
title?: string | undefined;
|
|
108
111
|
epicId?: string | null | undefined;
|
|
112
|
+
epicIds?: string[] | undefined;
|
|
109
113
|
size?: "XS" | "S" | "M" | "L" | "XL" | "XXL" | null | undefined;
|
|
110
114
|
idealStartDate?: string | null | undefined;
|
|
111
115
|
idealEndDate?: string | null | undefined;
|
|
@@ -138,6 +142,7 @@ export declare const manageRoadmapToolSchema: z.ZodObject<{
|
|
|
138
142
|
sortOrder?: number | undefined;
|
|
139
143
|
title?: string | undefined;
|
|
140
144
|
epicId?: string | null | undefined;
|
|
145
|
+
epicIds?: string[] | undefined;
|
|
141
146
|
size?: "XS" | "S" | "M" | "L" | "XL" | "XXL" | null | undefined;
|
|
142
147
|
idealStartDate?: string | null | undefined;
|
|
143
148
|
idealEndDate?: string | null | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roadmap.d.ts","sourceRoot":"","sources":["../../src/tools/roadmap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiDxB,eAAO,MAAM,kBAAkB,sBAAsB,CAAC;AAEtD,eAAO,MAAM,yBAAyB,qIAAqI,CAAC;AAE5K,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEvE,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"roadmap.d.ts","sourceRoot":"","sources":["../../src/tools/roadmap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiDxB,eAAO,MAAM,kBAAkB,sBAAsB,CAAC;AAEtD,eAAO,MAAM,yBAAyB,qIAAqI,CAAC;AAE5K,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEvE,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CA0DnF;AAMD,eAAO,MAAM,qBAAqB,yBAAyB,CAAC;AAE5D,eAAO,MAAM,4BAA4B,8IAA8I,CAAC;AAKxL,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoClC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAa7E,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAiIzF"}
|
package/dist/tools/roadmap.js
CHANGED
|
@@ -60,6 +60,9 @@ export async function executeGetRoadmap(input) {
|
|
|
60
60
|
epic: item.epic
|
|
61
61
|
? { key: item.epic.key, summary: item.epic.summary, childCount: item.epic.childCount }
|
|
62
62
|
: null,
|
|
63
|
+
epics: Array.isArray(item.epics)
|
|
64
|
+
? item.epics.map((e) => ({ id: e.id, key: e.key, summary: e.summary, sortOrder: e.sortOrder }))
|
|
65
|
+
: [],
|
|
63
66
|
tShirtSize: item.tShirtSize,
|
|
64
67
|
idealStart: item.idealStartDate,
|
|
65
68
|
idealEnd: item.idealEndDate,
|
|
@@ -113,7 +116,8 @@ export const manageRoadmapToolSchema = z.object({
|
|
|
113
116
|
action: z.enum(['add', 'update', 'remove']).describe('Item action'),
|
|
114
117
|
id: z.string().optional().describe('Item ID (required for update/remove)'),
|
|
115
118
|
title: z.string().optional().describe('Item title (required for add)'),
|
|
116
|
-
epicId: z.string().nullable().optional().describe('
|
|
119
|
+
epicId: z.string().nullable().optional().describe('Single epic issue ID to link (legacy; ignored when epicIds is also provided)'),
|
|
120
|
+
epicIds: z.array(z.string()).optional().describe('Multi-epic: array of epic issue IDs. When present, REPLACES the full set of epics on this item. Pass [] to clear all epics.'),
|
|
117
121
|
size: tShirtSizeEnum.nullable().optional().describe('T-shirt size (XS/S/M/L/XL/XXL)'),
|
|
118
122
|
idealStartDate: z.string().nullable().optional().describe('Ideal start date (ISO 8601)'),
|
|
119
123
|
idealEndDate: z.string().nullable().optional().describe('Ideal end date (ISO 8601)'),
|
|
@@ -186,8 +190,13 @@ export async function executeManageRoadmap(input) {
|
|
|
186
190
|
mapped.id = item.id;
|
|
187
191
|
if (item.title !== undefined)
|
|
188
192
|
mapped.title = item.title;
|
|
189
|
-
|
|
193
|
+
// epicIds takes priority over epicId (LLAMA-1869 multi-epic)
|
|
194
|
+
if (item.epicIds !== undefined) {
|
|
195
|
+
mapped.epicIds = item.epicIds;
|
|
196
|
+
}
|
|
197
|
+
else if (item.epicId !== undefined) {
|
|
190
198
|
mapped.epicId = item.epicId;
|
|
199
|
+
}
|
|
191
200
|
if (item.size !== undefined)
|
|
192
201
|
mapped.tShirtSize = item.size;
|
|
193
202
|
if (item.idealStartDate !== undefined)
|