@agentuity/runtime 2.0.6 → 2.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/agent.js CHANGED
@@ -320,7 +320,7 @@ export function createAgent(name, config) {
320
320
  const agentEvals = _agent?.evals || evalsArray;
321
321
  internal.debug(`Checking evals: agent=${_agent.metadata?.name}, evalsArray.length=${evalsArray?.length || 0}, agent.evals.length=${_agent?.evals?.length || 0}`);
322
322
  if (agentEvals && agentEvals.length > 0) {
323
- internal.info(`Executing ${agentEvals.length} eval(s) after agent run`);
323
+ internal.info(`Executing ${agentEvals.length} evaluations after agent run`);
324
324
  // Get validated input/output from context state
325
325
  const validatedInput = ctx.state.get('_evalInput');
326
326
  const validatedOutput = ctx.state.get('_evalOutput');
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,OAAO,EACN,eAAe,EAYf,WAAW,GACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,EAAE,cAAc,EAAe,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAGhE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACpF,OAAO,EACN,eAAe,EACf,aAAa,EACb,cAAc,EACd,wBAAwB,EACxB,yBAAyB,GAEzB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,KAAK,aAAa,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AA+tCtE,0DAA0D;AAC1D,MAAM,MAAM,GAAG,IAAI,GAAG,EAA0C,CAAC;AAEjE,2EAA2E;AAC3E,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAGpC,CAAC;AAEJ,uEAAuE;AACvE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAmB,CAAC;AAEhD;;;GAGG;AACH,MAAM,UAAU,qBAAqB;IACpC,OAAO;QACN,MAAM;QACN,YAAY;QACZ,mBAAmB;KACnB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,GAAgC;IAC/D,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC;AAC3B,CAAC;AAgBD,KAAK,UAAU,cAAc,CAC5B,OAA0B,EAC1B,KAAqC,EACrC,SAAyB,EACzB,OAAoC,EACpC,IAAY;IAEZ,6BAA6B;IAC7B,MAAM,SAAS,GAAG,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,SAAS,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACrC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBAClC,IAAI,CAAC;oBACJ,IAAI,SAAS,KAAK,SAAS,IAAI,IAAI,EAAE,CAAC;wBACrC,MAAO,QAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;oBAC1D,CAAC;yBAAM,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;wBACjE,MAAO,QAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;oBACpD,CAAC;gBACF,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,6EAA6E;oBAC7E,QAAQ,CAAC,KAAK,CAAC,sCAAsC,SAAS,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC5E,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED,+BAA+B;IAC/B,IAAI,SAAS,KAAK,SAAS,IAAI,IAAI,EAAE,CAAC;QACrC,MAAM,SAAS,CAAC,eAAe,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;SAAM,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QACpC,MAAM,SAAS,CAAC,eAAe,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;SAAM,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;QACtC,MAAM,SAAS,CAAC,iBAAiB,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;AACF,CAAC;AAgBD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAe,EAAE,KAAqC,EAAQ,EAAE;IAC7F,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACzB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAe,EAAE,MAAe,EAAQ,EAAE;IACxE,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAe,EAAW,EAAE;IAC1D,OAAO,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,eAAe,CAAC,iBAAiB,CAAC,EAEtD,CAAC;AAuOL,iBAAiB;AACjB,MAAM,UAAU,WAAW,CAO1B,IAAY,EACZ,MAA+E;IAE/E,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IACzC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAE3C,yEAAyE;IACzE,yEAAyE;IACzE,MAAM,UAAU,GAAW,EAAE,CAAC;IAE9B,MAAM,OAAO,GAAG,KAAK,EAAE,KAAW,EAAE,EAAE;QACrC,IAAI,cAAc,GAAQ,SAAS,CAAC;QAEpC,IAAI,WAAW,EAAE,CAAC;YACjB,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACnE,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;gBACxB,MAAM,IAAI,eAAe,CAAC;oBACzB,MAAM,EAAE,WAAW,CAAC,MAAM;oBAC1B,OAAO,EAAE,4BAA4B,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;iBAC/F,CAAC,CAAC;YACJ,CAAC;YACD,cAAc,GAAG,WAAW,CAAC,KAAK,CAAC;QACpC,CAAC;QAED,MAAM,QAAQ,GAAG,eAAe,EAA2C,CAAC;QAE5E,uEAAuE;QACtE,QAAgB,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC;QAEzC,+CAA+C;QAC/C,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC;QAElC,4DAA4D;QAC5D,oCAAoC;QACpC,gEAAgE;QAChE,wDAAwD;QACxD,qDAAqD;QACrD,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAiB,CAAC,CAAC;QACrE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC/B,QAAQ,CAAC,MAAM,GAAG,WAAsB,CAAC;QAC1C,CAAC;QAED,MAAM,KAAK,GAAG;YACb,oBAAoB,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,sDAAsD;YACpG,4BAA4B,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,8DAA8D;YAC/G,6BAA6B,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW;YACzD,sBAAsB,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;YAC3C,qBAAqB,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE;SACzC,CAAC;QAEF,kDAAkD;QAClD,MAAM,UAAU,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC;QACzC,IAAI,UAAU,EAAE,CAAC;YAChB,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,aAAa,EAAE,EAAE,CAAC;YACrB,MAAM,OAAO,GAAG,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC;YACjD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;gBAC1B,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE;oBAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBACnE,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO;oBAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC9E,CAAC;QACF,CAAC;aAAM,CAAC;YACP,sDAAsD;YACtD,MAAM,QAAQ,GAAI,QAAgB,CAAC,SAAS,CAA4B,CAAC;YACzE,IAAI,QAAQ,EAAE,CAAC;gBACd,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE;oBAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBACvD,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO;oBAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAClE,CAAC;QACF,CAAC;QAED,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAE/C,+DAA+D;QAC/D,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QAE1C,uBAAuB;QACvB,MAAM,cAAc,CAAC,OAAO,EAAE,KAAc,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAEnE,IAAI,CAAC;YACJ,0FAA0F;YAC1F,4DAA4D;YAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;gBAChC,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;oBAC3C,6EAA6E;oBAC7E,OAAO,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,EAAE,CAClD,WAAW;wBACV,CAAC,CAAE,MAAM,CAAC,OAAe,CAAC,QAAQ,EAAE,cAAc,CAAC;wBACnD,CAAC,CAAE,MAAM,CAAC,OAAe,CAAC,QAAQ,CAAC,CACpC,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACP,wDAAwD;oBACxD,0DAA0D;oBAC1D,OAAO,WAAW;wBACjB,CAAC,CAAE,MAAM,CAAC,OAAe,CAAC,QAAQ,EAAE,cAAc,CAAC;wBACnD,CAAC,CAAE,MAAM,CAAC,OAAe,CAAC,QAAQ,CAAC,CAAC;gBACtC,CAAC;YACF,CAAC,CAAC,EAAE,CAAC;YAEL,IAAI,eAAe,GAAQ,MAAM,CAAC;YAClC,2EAA2E;YAC3E,IAAI,YAAY,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;gBAC5C,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACtE,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;oBACzB,MAAM,IAAI,eAAe,CAAC;wBACzB,MAAM,EAAE,YAAY,CAAC,MAAM;wBAC3B,OAAO,EAAE,6BAA6B,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;qBACjG,CAAC,CAAC;gBACJ,CAAC;gBACD,eAAe,GAAG,YAAY,CAAC,KAAK,CAAC;YACtC,CAAC;YAED,oEAAoE;YACpE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;YACjD,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;YAEnD,6DAA6D;YAC7D,MAAM,cAAc,CAAC,OAAO,EAAE,KAAc,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;YAErE,OAAO,eAAe,CAAC;QACxB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,uBAAuB;YACvB,MAAM,cAAc,CAAC,OAAO,EAAE,KAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAc,CAAC,CAAC;YACnF,MAAM,KAAK,CAAC;QACb,CAAC;IACF,CAAC,CAAC;IAMF,wFAAwF;IACxF,MAAM,UAAU,GAAsC,CAAC,CACtD,gBAA4D,EAC5D,UASC,EACuB,EAAE;QAC1B,iEAAiE;QACjE,IAAI,OAAO,gBAAgB,KAAK,QAAQ,IAAI,MAAM,IAAI,gBAAgB,EAAE,CAAC;YACxE,MAAM,YAAY,GAAG,gBAAqD,CAAC;YAC3E,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC;YAEnC,QAAQ,CAAC,KAAK,CACb,gCAAgC,IAAI,IAAI,SAAS,+BAA+B,QAAQ,GAAG,CAC3F,CAAC;YAEF,MAAM,QAAQ,GAAQ;gBACrB,QAAQ,EAAE;oBACT,UAAU,EAAE,QAAQ;oBACpB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,YAAY,CAAC,WAAW,IAAI,EAAE;iBAC3C;gBACD,OAAO,EAAE,YAAY,CAAC,OAAO;aAC7B,CAAC;YAEF,IAAI,WAAW,EAAE,CAAC;gBACjB,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;YACpC,CAAC;YAED,IAAI,YAAY,EAAE,CAAC;gBAClB,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC;YACtC,CAAC;YAED,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1B,QAAQ,CAAC,KAAK,CACb,sBAAsB,QAAQ,eAAe,IAAI,IAAI,SAAS,mBAAmB,UAAU,CAAC,MAAM,EAAE,CACpG,CAAC;YAEF,OAAO,QAAiC,CAAC;QAC1C,CAAC;QAED,4CAA4C;QAC5C,IAAI,OAAO,gBAAgB,KAAK,QAAQ,IAAI,CAAC,UAAU,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CACd,kFAAkF,CAClF,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC;QAElC,6CAA6C;QAC7C,QAAQ,CAAC,KAAK,CACb,gCAAgC,IAAI,IAAI,SAAS,wBAAwB,QAAQ,GAAG,CACpF,CAAC;QAEF,yEAAyE;QACzE,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,IAAI,EAAE,CAAC;QAE/C,8DAA8D;QAC9D,MAAM,QAAQ,GAAQ;YACrB,QAAQ,EAAE;gBACT,uFAAuF;gBACvF,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,SAAS;gBAChC,UAAU,EAAE,YAAY,CAAC,UAAU,IAAI,SAAS;gBAChD,OAAO,EAAE,YAAY,CAAC,OAAO,IAAI,SAAS;gBAC1C,QAAQ,EAAE,YAAY,CAAC,QAAQ,IAAI,EAAE;gBACrC,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,EAAE;aACzC;YACD,OAAO,EAAE,UAAU,CAAC,OAAO;SAC3B,CAAC;QAEF,IAAI,WAAW,EAAE,CAAC;YACjB,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;QACpC,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YAClB,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC;QACtC,CAAC;QAED,gDAAgD;QAChD,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1B,QAAQ,CAAC,KAAK,CACb,eAAe,QAAQ,eAAe,IAAI,IAAI,SAAS,mBAAmB,UAAU,CAAC,MAAM,EAAE,CAC7F,CAAC;QAEF,OAAO,QAAiC,CAAC;IAC1C,CAAC,CAAsC,CAAC;IAExC,8DAA8D;IAC9D,kFAAkF;IAClF,IAAI,QAAQ,GAA2B;QACtC,6DAA6D;QAC7D,IAAI;QACJ,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,EAAE,EAAE,EAAE;QACN,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,EAAE;QACnB,gBAAgB,EAAE,EAAE;QACpB,6DAA6D;QAC7D,GAAG,MAAM,CAAC,QAAQ;KAClB,CAAC;IAEF,oEAAoE;IACpE,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACvC,MAAM,YAAY,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,YAAY,EAAE,CAAC;YAClB,QAAQ,CAAC,IAAI,CACZ,+DAA+D,EAC/D,IAAI,EACJ,YAAY,CAAC,EAAE,EACf,YAAY,CAAC,OAAO,CACpB,CAAC;YACF,QAAQ,GAAG;gBACV,GAAG,QAAQ;gBACX,EAAE,EAAE,YAAY,CAAC,EAAE,IAAI,QAAQ,CAAC,EAAE;gBAClC,OAAO,EAAE,YAAY,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO;gBACjD,QAAQ,EAAE,YAAY,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ;gBACpD,OAAO,EAAE,YAAY,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO;aACjD,CAAC;QACH,CAAC;IACF,CAAC;IAED,mGAAmG;IACnG,sEAAsE;IACtE,yGAAyG;IACzG,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,aAAa,CAAC,YAAY,EAAE,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CACd,UAAU,IAAI,oDAAoD;YACjE,yDAAyD;YACzD,iEAAiE;YACjE,aAAa,OAAO,CAAC,GAAG,EAAE,gCAAgC,OAAO,CAAC,GAAG,EAAE,wCAAwC;YAC/G,sDAAsD,CACvD,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAQ;QAClB,OAAO;QACP,QAAQ;QACR,KAAK,EAAE,UAAU;QACjB,UAAU;QACV,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ;KACzB,CAAC;IAEF,6BAA6B;IAC7B,KAAK,CAAC,gBAAgB,GAAG,CAAC,SAAyB,EAAE,QAAa,EAAQ,EAAE;QAC3E,MAAM,iBAAiB,GAAG,KAAoC,CAAC;QAC/D,MAAM,oBAAoB,GAAG,QAA0C,CAAC;QACxE,IAAI,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC3D,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrC,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,sEAAsE;IACrE,KAAe,CAAC,gBAAgB,CAAC,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE;QAC5E,4EAA4E;QAC5E,wFAAwF;QACxF,MAAM,UAAU,GAAG,MAAM,EAAE,KAAK,IAAI,UAAU,CAAC;QAE/C,QAAQ,CAAC,KAAK,CACb,yBAAyB,MAAM,CAAC,QAAQ,EAAE,IAAI,uBAAuB,UAAU,EAAE,MAAM,IAAI,CAAC,wBAAwB,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,EAAE,CAChJ,CAAC;QAEF,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzC,QAAQ,CAAC,IAAI,CAAC,aAAa,UAAU,CAAC,MAAM,0BAA0B,CAAC,CAAC;YAExE,gDAAgD;YAChD,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACnD,MAAM,eAAe,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAErD,kGAAkG;YAClG,IAAI,cAAkC,CAAC;YACvC,IAAI,CAAC;gBACJ,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;gBACjC,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;gBACzC,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC;YAC9C,CAAC;YAAC,MAAM,CAAC;gBACR,8DAA8D;YAC/D,CAAC;YAED,yEAAyE;YACzE,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAE1C,mEAAmE;YACnE,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;gBACnC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,SAAS,CAAC;gBACrD,MAAM,SAAS,GAAG,MAAM,EAAE,QAAQ,EAAE,IAAI,IAAI,IAAI,CAAC;gBACjD,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;gBAExC,6DAA6D;gBAC7D,MAAM,QAAQ,GAAG,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;gBACtD,MAAM,MAAM,GAAG,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC;gBAClC,MAAM,cAAc,GAAG,QAAQ,EAAE,UAAU,IAAI,EAAE,CAAC;gBAElD,2EAA2E;gBAC3E,gDAAgD;gBAChD,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;gBAC1B,IAAI,MAAM,EAAE,CAAC;oBACZ,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,EAAE,gBAAgB,CAAC,CAAC;oBAClE,QAAQ,CAAC,aAAa,CAAC;wBACtB,mBAAmB,EAAE,MAAM;wBAC3B,2BAA2B,EAAE,cAAc;wBAC3C,qBAAqB,EAAE,QAAQ;wBAC/B,sBAAsB,EAAE,SAAS;wBACjC,sBAAsB,EAAE,SAAS;wBACjC,4BAA4B,EAC3B,QAAQ,EAAE,WAAW,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE;wBAC7D,yBAAyB,EAAE,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE;qBACjF,CAAC,CAAC;oBAEH,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;oBAElE,oFAAoF;oBACpF,8EAA8E;oBAC9E,6EAA6E;oBAC7E,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE;wBAClC,GAAG,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;4BACxB,MAAM,KAAK,GAAG,aAAa,CAAC,iBAAiB,EAAE,CAAC;4BAChD,MAAM,SAAS,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC;4BAC/C,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,EAAE,IAAI,KAAK,CAAC;4BACnD,MAAM,oBAAoB,GAAG,uBAAuB,EAAE,CAAC;4BAEvD,MAAM,uBAAuB,GAC5B,KAAK,IAAI,SAAS,IAAI,MAAM,KAAK,EAAE,IAAI,cAAc,KAAK,EAAE,CAAC;4BAE9D,IAAI,CAAC;gCACJ,QAAQ,CAAC,IAAI,CAAC,6CAA6C,QAAQ,GAAG,CAAC,CAAC;gCAExE,4BAA4B;gCAC5B,IAAI,uBAAuB,IAAI,oBAAoB,EAAE,CAAC;oCACrD,IAAI,CAAC;wCACJ,MAAM,YAAY,GAAG,aAAa,CAAC,eAAe,EAAE,CAAC;wCACrD,MAAM,oBAAoB,CAAC,KAAK,CAAC;4CAChC,EAAE,EAAE,SAAS;4CACb,SAAS,EAAE,GAAG,CAAC,SAAS;4CACxB,MAAM;4CACN,cAAc;4CACd,KAAK,EAAE,KAAM;4CACb,SAAS,EAAE,SAAU;4CACrB,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;4CACzB,YAAY,EAAE,YAAY,IAAI,SAAS;4CACvC,MAAM,EAAE,cAAc;yCACtB,CAAC,CAAC;oCACJ,CAAC;oCAAC,OAAO,KAAK,EAAE,CAAC;wCAChB,QAAQ,CAAC,KAAK,CACb,4CAA4C,QAAQ,GAAG,EACvD,EAAE,KAAK,EAAE,CACT,CAAC;oCACH,CAAC;gCACF,CAAC;gCAED,8CAA8C;gCAC9C,IAAI,kBAAkB,GAAQ,cAAc,CAAC;gCAC7C,IAAI,mBAAmB,GAAQ,eAAe,CAAC;gCAE/C,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;oCAC1B,MAAM,MAAM,GACX,MAAM,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;oCAClE,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;wCACnB,MAAM,IAAI,eAAe,CAAC;4CACzB,MAAM,EAAE,MAAM,CAAC,MAAM;4CACrB,OAAO,EAAE,8BAA8B;yCACvC,CAAC,CAAC;oCACJ,CAAC;oCACD,kBAAkB,GAAG,MAAM,CAAC,KAAK,CAAC;gCACnC,CAAC;gCAED,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;oCAC3B,MAAM,MAAM,GACX,MAAM,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;oCACpE,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;wCACnB,MAAM,IAAI,eAAe,CAAC;4CACzB,MAAM,EAAE,MAAM,CAAC,MAAM;4CACrB,OAAO,EAAE,+BAA+B;yCACxC,CAAC,CAAC;oCACJ,CAAC;oCACD,mBAAmB,GAAG,MAAM,CAAC,KAAK,CAAC;gCACpC,CAAC;gCAED,2BAA2B;gCAC3B,IAAI,aAAgC,CAAC;gCACrC,IAAI,WAAW,IAAI,YAAY,EAAE,CAAC;oCACjC,aAAa,GAAG,MAAO,QAAQ,CAAC,OAAe,CAC9C,GAAG,EACH,kBAAkB,EAClB,mBAAmB,CACnB,CAAC;gCACH,CAAC;qCAAM,IAAI,WAAW,EAAE,CAAC;oCACxB,aAAa,GAAG,MAAO,QAAQ,CAAC,OAAe,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;gCAC1E,CAAC;qCAAM,IAAI,YAAY,EAAE,CAAC;oCACzB,aAAa,GAAG,MAAO,QAAQ,CAAC,OAAe,CAC9C,GAAG,EACH,mBAAmB,CACnB,CAAC;gCACH,CAAC;qCAAM,CAAC;oCACP,aAAa,GAAG,MAAO,QAAQ,CAAC,OAAe,CAAC,GAAG,CAAC,CAAC;gCACtD,CAAC;gCAED,MAAM,MAAM,GAAkB,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,aAAa,EAAE,CAAC;gCAElE,+BAA+B;gCAC/B,IAAI,uBAAuB,IAAI,oBAAoB,EAAE,CAAC;oCACrD,IAAI,CAAC;wCACJ,MAAM,oBAAoB,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;oCAChE,CAAC;oCAAC,OAAO,KAAK,EAAE,CAAC;wCAChB,QAAQ,CAAC,KAAK,CACb,+CAA+C,QAAQ,GAAG,EAC1D,EAAE,KAAK,EAAE,CACT,CAAC;oCACH,CAAC;gCACF,CAAC;gCAED,QAAQ,CAAC,KAAK,CAAC,SAAS,QAAQ,0BAA0B,CAAC,CAAC;4BAC7D,CAAC;4BAAC,OAAO,KAAK,EAAE,CAAC;gCAChB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gCAC5E,QAAQ,CAAC,eAAe,CAAC,KAAc,CAAC,CAAC;gCACzC,QAAQ,CAAC,SAAS,CAAC;oCAClB,IAAI,EAAE,cAAc,CAAC,KAAK;oCAC1B,OAAO,EAAE,YAAY;iCACrB,CAAC,CAAC;gCACH,QAAQ,CAAC,KAAK,CAAC,yBAAyB,QAAQ,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;gCAEhE,mBAAmB;gCACnB,IAAI,uBAAuB,IAAI,oBAAoB,EAAE,CAAC;oCACrD,IAAI,CAAC;wCACJ,MAAM,oBAAoB,CAAC,QAAQ,CAAC;4CACnC,EAAE,EAAE,SAAS;4CACb,KAAK,EAAE,YAAY;4CACnB,MAAM,EAAE;gDACP,OAAO,EAAE,KAAK;gDACd,MAAM,EAAE,KAAK;gDACb,KAAK,EAAE,YAAY;gDACnB,QAAQ,EAAE,EAAE;6CACZ;yCACD,CAAC,CAAC;oCACJ,CAAC;oCAAC,OAAO,CAAC,EAAE,CAAC;wCACZ,QAAQ,CAAC,KAAK,CAAC,wCAAwC,EAAE;4CACxD,SAAS;4CACT,YAAY;4CACZ,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;yCACjD,CAAC,CAAC;oCACJ,CAAC;gCACF,CAAC;4BACF,CAAC;oCAAS,CAAC;gCACV,QAAQ,CAAC,GAAG,EAAE,CAAC;4BAChB,CAAC;wBACF,CAAC,CAAC,CAAC;oBACJ,CAAC,CAAC,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACP,mCAAmC;oBACnC,GAAG,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;wBACxB,MAAM,KAAK,GAAG,aAAa,CAAC,iBAAiB,EAAE,CAAC;wBAChD,MAAM,SAAS,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC;wBAC/C,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,EAAE,IAAI,KAAK,CAAC;wBACnD,MAAM,oBAAoB,GAAG,uBAAuB,EAAE,CAAC;wBACvD,MAAM,uBAAuB,GAC5B,KAAK,IAAI,SAAS,IAAI,MAAM,KAAK,EAAE,IAAI,cAAc,KAAK,EAAE,CAAC;wBAE9D,IAAI,CAAC;4BACJ,IAAI,uBAAuB,IAAI,oBAAoB,EAAE,CAAC;gCACrD,IAAI,CAAC;oCACJ,MAAM,oBAAoB,CAAC,KAAK,CAAC;wCAChC,EAAE,EAAE,SAAS;wCACb,SAAS,EAAE,GAAG,CAAC,SAAS;wCACxB,MAAM;wCACN,cAAc;wCACd,KAAK,EAAE,KAAM;wCACb,SAAS,EAAE,SAAU;wCACrB,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;wCACzB,YAAY,EAAE,aAAa,CAAC,eAAe,EAAE,IAAI,SAAS;wCAC1D,MAAM,EAAE,cAAc;qCACtB,CAAC,CAAC;gCACJ,CAAC;gCAAC,OAAO,CAAC,EAAE,CAAC;oCACZ,QAAQ,CAAC,KAAK,CAAC,qCAAqC,EAAE;wCACrD,SAAS;wCACT,MAAM;wCACN,cAAc;wCACd,SAAS,EAAE,GAAG,CAAC,SAAS;wCACxB,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;qCACjD,CAAC,CAAC;gCACJ,CAAC;4BACF,CAAC;4BAED,IAAI,kBAAkB,GAAQ,cAAc,CAAC;4BAC7C,IAAI,mBAAmB,GAAQ,eAAe,CAAC;4BAE/C,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;gCAC1B,MAAM,MAAM,GACX,MAAM,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;gCAClE,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oCACnB,MAAM,IAAI,eAAe,CAAC;wCACzB,MAAM,EAAE,MAAM,CAAC,MAAM;wCACrB,OAAO,EAAE,8BAA8B;qCACvC,CAAC,CAAC;gCACJ,CAAC;gCACD,kBAAkB,GAAG,MAAM,CAAC,KAAK,CAAC;4BACnC,CAAC;4BACD,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;gCAC3B,MAAM,MAAM,GACX,MAAM,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;gCACpE,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oCACnB,MAAM,IAAI,eAAe,CAAC;wCACzB,MAAM,EAAE,MAAM,CAAC,MAAM;wCACrB,OAAO,EAAE,+BAA+B;qCACxC,CAAC,CAAC;gCACJ,CAAC;gCACD,mBAAmB,GAAG,MAAM,CAAC,KAAK,CAAC;4BACpC,CAAC;4BAED,IAAI,aAAgC,CAAC;4BACrC,IAAI,WAAW,IAAI,YAAY,EAAE,CAAC;gCACjC,aAAa,GAAG,MAAO,QAAQ,CAAC,OAAe,CAC9C,GAAG,EACH,kBAAkB,EAClB,mBAAmB,CACnB,CAAC;4BACH,CAAC;iCAAM,IAAI,WAAW,EAAE,CAAC;gCACxB,aAAa,GAAG,MAAO,QAAQ,CAAC,OAAe,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;4BAC1E,CAAC;iCAAM,IAAI,YAAY,EAAE,CAAC;gCACzB,aAAa,GAAG,MAAO,QAAQ,CAAC,OAAe,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;4BAC3E,CAAC;iCAAM,CAAC;gCACP,aAAa,GAAG,MAAO,QAAQ,CAAC,OAAe,CAAC,GAAG,CAAC,CAAC;4BACtD,CAAC;4BAED,IAAI,uBAAuB,IAAI,oBAAoB,EAAE,CAAC;gCACrD,IAAI,CAAC;oCACJ,MAAM,oBAAoB,CAAC,QAAQ,CAAC;wCACnC,EAAE,EAAE,SAAS;wCACb,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,aAAa,EAAE;qCAC3C,CAAC,CAAC;gCACJ,CAAC;gCAAC,OAAO,CAAC,EAAE,CAAC;oCACZ,QAAQ,CAAC,KAAK,CAAC,wCAAwC,EAAE;wCACxD,SAAS;wCACT,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;qCACjD,CAAC,CAAC;gCACJ,CAAC;4BACF,CAAC;wBACF,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BAChB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;4BAC5E,QAAQ,CAAC,KAAK,CAAC,yBAAyB,QAAQ,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;4BAEhE,mDAAmD;4BACnD,IAAI,uBAAuB,IAAI,oBAAoB,EAAE,CAAC;gCACrD,IAAI,CAAC;oCACJ,MAAM,oBAAoB,CAAC,QAAQ,CAAC;wCACnC,EAAE,EAAE,SAAS;wCACb,KAAK,EAAE,YAAY;wCACnB,MAAM,EAAE;4CACP,OAAO,EAAE,KAAK;4CACd,MAAM,EAAE,KAAK;4CACb,KAAK,EAAE,YAAY;4CACnB,QAAQ,EAAE,EAAE;yCACZ;qCACD,CAAC,CAAC;gCACJ,CAAC;gCAAC,OAAO,CAAC,EAAE,CAAC;oCACZ,QAAQ,CAAC,KAAK,CAAC,wCAAwC,EAAE;wCACxD,SAAS;wCACT,YAAY;wCACZ,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;qCACjD,CAAC,CAAC;gCACJ,CAAC;4BACF,CAAC;wBACF,CAAC;oBACF,CAAC,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,mBAAmB,GAAG,CAAC,SAAyB,EAAE,QAAa,EAAQ,EAAE;QAC9E,MAAM,iBAAiB,GAAG,KAAoC,CAAC;QAC/D,MAAM,oBAAoB,GAAG,QAA0C,CAAC;QACxE,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC7D,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,SAAS,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC,CAAC;IAEF,IAAI,WAAW,EAAE,CAAC;QACjB,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QAClB,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;IACrC,CAAC;IAED,sCAAsC;IACtC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,QAAc,EAAE,EAAE;QACrC,MAAM,oBAAoB,GAAG,QAAQ,EAAE,KAAK,IAAI,WAAW,CAAC;QAC5D,qEAAqE;QACrE,yFAAyF;QACzF,kDAAkD;QAClD,MAAM,qBAAqB,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;QAExE,kEAAkE;QAClE,MAAM,mBAAmB,GAAG,CAAC,MAAyB,EAAE,EAAE,CACzD,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YACpC,IAAI,MAAM,EAAE,CAAC;gBACZ,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACnD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACrB,OAAO,CAAC,CAAC,IAAI,CACZ;wBACC,KAAK,EAAE,mBAAmB;wBAC1B,OAAO,EAAE,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC;wBAC9C,MAAM,EAAE,MAAM,CAAC,MAAM;qBACrB,EACD,GAAG,CACH,CAAC;gBACH,CAAC;gBACD,OAAO,MAAM,CAAC,IAAI,CAAC;YACpB,CAAC;YACD,OAAO,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;QAEJ,yEAAyE;QACzE,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC5B,OAAO,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;QAClD,CAAC;QAED,oDAAoD;QACpD,MAAM,eAAe,GAAsB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;YAC5D,MAAM,IAAI,EAAE,CAAC;YAEb,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC;YAClB,IAAI,CAAC,GAAG;gBAAE,OAAO;YAEjB,8CAA8C;YAC9C,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;gBAC3B,OAAO;YACR,CAAC;YAED,+BAA+B;YAC/B,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;YAC1D,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBAC7D,OAAO;YACR,CAAC;YAED,uDAAuD;YACvD,IAAI,YAAqB,CAAC;YAC1B,IAAI,CAAC;gBACJ,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;gBAC3B,YAAY,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YACpC,CAAC;YAAC,MAAM,CAAC;gBACR,MAAM,qBAAqB,GAAG,eAAe,CAAC,uBAAuB,CAAC,EAElE,CAAC;gBACL,MAAM,IAAI,qBAAqB,CAAC;oBAC/B,OAAO,EAAE,sDAAsD;oBAC/D,MAAM,EAAE,EAAE;iBACV,CAAC,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,qBAAqB,EAAE,YAAY,CAAC,CAAC;YACzE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,qBAAqB,GAAG,eAAe,CAAC,uBAAuB,CAAC,EAElE,CAAC;gBACL,MAAM,IAAI,qBAAqB,CAAC;oBAC/B,OAAO,EAAE,6BAA6B,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;oBAC7E,MAAM,EAAE,MAAM,CAAC,MAAM;iBACrB,CAAC,CAAC;YACJ,CAAC;YAED,iDAAiD;YACjD,CAAC,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;gBACjD,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,OAAO,EAAE,GAAG,CAAC,OAAO;aACpB,CAAC,CAAC;QACJ,CAAC,CAAC;QAEF,2DAA2D;QAC3D,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC3B,OAAO,eAAqC,CAAC;QAC9C,CAAC;QAED,8CAA8C;QAC9C,MAAM,eAAe,GAAG,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;QAElE,MAAM,QAAQ,GAAsB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;YACrD,iEAAiE;YACjE,0CAA0C;YAC1C,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,CAAC,EAAE,KAAK,IAAI,EAAE;gBAClD,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAChC,CAAC,CAAC,CAAC;YACH,8EAA8E;YAC9E,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;QAEF,OAAO,QAA8B,CAAC;IACvC,CAAC,CAAoC,CAAC;IAEtC,qCAAqC;IACrC,mGAAmG;IACnG,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAA4D,CAAC,CAAC;IAE/E,gCAAgC;IAChC,MAAM,MAAM,GAAQ;QACnB,QAAQ,EAAE,QAAyB;QACnC,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,WAAW,EAAE,WAAqB;QAClC,YAAY,EAAE,YAAuB;QACrC,MAAM,EAAG,MAAM,CAAC,MAAM,EAAE,MAAkB,IAAK,KAAiB;QAChE,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,UAAU;QACV,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;QACxC,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;QAC9C,GAAG,EAAE,WAAW;YACf,CAAC,CAAC,KAAK,EAAE,KAAmD,EAAE,EAAE;gBAC9D,gDAAgD;gBAChD,IAAI,aAAa,EAAE,EAAE,CAAC;oBACrB,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;oBACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;oBAClC,IAAI,MAAM,EAAE,CAAC;wBACZ,OAAO,WAAW,CACjB,MAAM,EACN,KAAwC,EACxC,OAAO,EACP,KAAK,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CACtC,CAAC;oBACH,CAAC;gBACF,CAAC;gBACD,OAAO,MAAM,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC;YACF,CAAC,CAAC,KAAK,IAAI,EAAE;gBACX,gDAAgD;gBAChD,IAAI,aAAa,EAAE,EAAE,CAAC;oBACrB,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;oBACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;oBAClC,IAAI,MAAM,EAAE,CAAC;wBACZ,OAAO,WAAW,CACjB,MAAM,EACN,KAAwC,EACxC,OAAO,EACP,KAAK,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,OAAO,EAAE,CACjC,CAAC;oBACH,CAAC;gBACF,CAAC;gBACD,OAAO,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;YAC9B,CAAC;QACH,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,gDAAgD;KACzE,CAAC;IAEF,OAAO,MAA+C,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,KAAK,EAAK,OAAe,EAAE,OAAyB,EAAc,EAAE;IAC/F,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAEjD,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,uCAAuC;QACvC,OAAO,OAAO,EAAE,CAAC;IAClB,CAAC;IAED,qEAAqE;IACrE,uEAAuE;IACvE,wEAAwE;IACxE,qDAAqD;IACrD,MAAM,kBAAkB,GAAG,2BAA2B,CAAC,cAAc,EAAE;QACtE,GAAG,EAAE,OAAO;KACZ,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,KAAK,EAMxB,MAAc,EACd,KAAsC,EACtC,GAAY,EACZ,OAAyB,EACZ,EAAE;IACf,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAExC,uEAAuE;IACvE,sEAAsE;IACtE,6DAA6D;IAC7D,MAAM,YAAY,GAAG,aAAa,CAAC,eAAe,EAAE,CAAC;IACrD,MAAM,SAAS,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC;IAC/C,MAAM,KAAK,GAAG,aAAa,CAAC,iBAAiB,EAAE,CAAC;IAChD,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC;IAE5C,MAAM,eAAe,GAAG,2BAA2B,CAAC,cAAc,EAAE;QACnE,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE;QACtB,GAAG,EAAE,YAAY;QACjB,GAAG,EAAE,SAAS;QACd,GAAG,EAAE,KAAK;QACV,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;KAC9B,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,EAAE,eAAe,CAAC,CAAC;IAEhE,8DAA8D;IAC9D,IAAI,CAAC,aAAa,CAAC;QAClB,oBAAoB,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,sDAAsD;QACpG,4BAA4B,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,8DAA8D;QAC/G,6BAA6B,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW;QACzD,sBAAsB,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;QAC3C,qBAAqB,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;KACxC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC;IAEzC,oCAAoC;IACpC,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAEnC,IAAI,CAAC;QACJ,6CAA6C;QAC7C,mEAAmE;QACnE,qEAAqE;QACrE,8BAA8B;QAC9B,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QACxD,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,IAAI,CAAC,eAAe,CAAC,KAAc,CAAC,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/C,MAAM,KAAK,CAAC;IACb,CAAC;YAAS,CAAC;QACV,IAAI,CAAC,GAAG,EAAE,CAAC;IACZ,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAKzB,KAAsC,EACtC,GAAY,EAC4B,EAAE;IAC1C,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;IAE9B,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACvB,OAAO;YACN,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,GAAG,EAAE,KAAK,EAAE,KAAmD,EAAE,EAAE;gBAClE,OAAO,WAAW,CACjB,MAAM,EACN,KAAK,EACL,GAAG,EACH,KAAK,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CACtC,CAAC;YACH,CAAC;SACwC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACP,OAAO;YACN,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,GAAG,EAAE,KAAK,IAAI,EAAE;gBACf,OAAO,WAAW,CACjB,MAAM,EACN,KAAK,EACL,GAAG,EACH,KAAK,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,OAAO,EAAE,CACjC,CAAC;YACH,CAAC;SACwC,CAAC;IAC5C,CAAC;AACF,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,GAAY,EAAO,EAAE;IAC3D,MAAM,SAAS,GAAQ,EAAE,CAAC;IAC1B,qFAAqF;IACrF,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE/C,gCAAgC;IAChC,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAE9B,4BAA4B;QAC5B,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,QAAQ,CAAC,IAAI,CAAC,eAAe,IAAI,8CAA8C,CAAC,CAAC;YACjF,SAAS;QACV,CAAC;QAED,4CAA4C;QAC5C,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,aAAa,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;YAC7C,QAAQ,CAAC,KAAK,CACb,8BAA8B,IAAI,qBAAqB,aAAa,iCAAiC,GAAG,IAAI,CAC5G,CAAC;YACF,MAAM,IAAI,KAAK,CAAC,8CAA8C,GAAG,GAAG,CAAC,CAAC;QACvE,CAAC;QAED,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;QACxB,mBAAmB;QACnB,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,SAAyB,EAAqB,EAAE;IACrF,OAAO,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC1B,kDAAkD;QAClD,MAAM,SAAS,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;QAE9C,uCAAuC;QACvC,IAAI,SAAS,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;YACxC,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;YACjC,8CAA8C;YAC9C,IAAI,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;gBACzB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC1C,CAAC;YACD,IAAI,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;gBAC9B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC/C,CAAC;QACF,CAAC;QAED,MAAM,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC;QACpC,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;QAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC;QAChC,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,SAAsB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9E,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QAExB,MAAM,IAAI,GAA6D;YACtE,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM;YACtB,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM;YACtB,SAAS;YACT,OAAO;YACP,MAAM;YACN,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,gBAAgB;YACjC,MAAM,EAAE,MAAM,IAAI,EAAE;YACpB,GAAG,EAAE,GAAG,IAAI,EAAE;YACd,OAAO,EAAE,qBAAqB,EAAE;YAChC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI;SAC1B,CAAC;QAEF,OAAO,wBAAwB,CAAC,GAAyC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACxF,CAAC,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC;AAEtC,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,QAAkB,EAAiB,EAAE;IACzE,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QAC9C,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC3C,cAAc,CAAC,IAAiB,EAAE,MAAM,CAAC,CAAC;QAC3C,CAAC;IACF,CAAC;IACD,sEAAsE;AACvE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,QAAkB,EAAiB,EAAE;IAC5E,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QACtD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAQ,CAAC;YACrD,MAAM,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;IACF,CAAC;AACF,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACtC,GAAgC,EAChC,KAAiC,EACjC,KAAc;IAEd,MAAM,OAAO,GAAG,yBAAyB,EAAE,CAAC;IAE5C,2EAA2E;IAC3E,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;IACtC,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAErC,wEAAwE;IACxE,MAAM,aAAa,GAAI,KAAa,CAAC,cAAc,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAE9E,IAAI,aAAa,IAAI,SAAS,EAAE,CAAC;QAChC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QAE7C,sDAAsD;QACtD,MAAM,eAAe,GAAG,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC/D,IAAI,eAAe,EAAE,CAAC;YACrB,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;QACjE,CAAC;IACF,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,IAAI,EAAE;QAClC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAO,KAAK,CAAC,GAAW,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACP,OAAO,MAAO,KAAK,CAAC,GAAW,EAAE,CAAC;QACnC,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { Database } from 'bun:sqlite';
2
- import type { TaskStorage, Task, CreateTaskParams, UpdateTaskParams, ListTasksParams, ListTasksResult, BatchDeleteTasksParams, BatchDeleteTasksResult, TaskChangelogResult, Comment, Tag, ListCommentsResult, ListTagsResult, ListUsersResult, ListProjectsResult, Attachment, CreateAttachmentParams, PresignUploadResponse, PresignDownloadResponse, ListAttachmentsResult, TaskActivityParams, TaskActivityResult, UserEntityRef, EntityRef } from '@agentuity/core';
2
+ import type { TaskStorage, Task, CreateTaskParams, UpdateTaskParams, ListTasksParams, ListTasksResult, BatchDeleteTasksParams, BatchDeleteTasksResult, BatchUpdateTasksParams, BatchUpdateTasksResult, BatchCloseTasksParams, BatchCloseTasksResult, TaskChangelogResult, Comment, Tag, ListCommentsResult, ListTagsResult, ListUsersResult, ListProjectsResult, Attachment, CreateAttachmentParams, PresignUploadResponse, PresignDownloadResponse, ListAttachmentsResult, TaskActivityParams, TaskActivityResult, UserEntityRef, EntityRef } from '@agentuity/core';
3
3
  export declare class LocalTaskStorage implements TaskStorage {
4
4
  #private;
5
5
  constructor(db: Database, projectPath: string);
@@ -14,6 +14,8 @@ export declare class LocalTaskStorage implements TaskStorage {
14
14
  }): Promise<TaskChangelogResult>;
15
15
  softDelete(id: string): Promise<Task>;
16
16
  batchDelete(params: BatchDeleteTasksParams): Promise<BatchDeleteTasksResult>;
17
+ batchUpdate(params: BatchUpdateTasksParams): Promise<BatchUpdateTasksResult>;
18
+ batchClose(params: BatchCloseTasksParams): Promise<BatchCloseTasksResult>;
17
19
  createComment(taskId: string, body: string, userId: string): Promise<Comment>;
18
20
  getComment(commentId: string): Promise<Comment>;
19
21
  updateComment(commentId: string, body: string): Promise<Comment>;
@@ -1 +1 @@
1
- {"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../src/services/local/task.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../src/services/local/task.ts"],"names":[],"mappings":"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"}
@@ -26,14 +26,15 @@ const SORT_FIELDS = {
26
26
  closed_date: 'closed_date',
27
27
  };
28
28
  const DURATION_UNITS = {
29
+ s: 1000,
29
30
  m: 60 * 1000,
30
31
  h: 60 * 60 * 1000,
31
32
  d: 24 * 60 * 60 * 1000,
32
33
  w: 7 * 24 * 60 * 60 * 1000,
33
34
  };
34
- const InvalidDurationError = StructuredError('InvalidDurationError', 'Invalid duration format: use a number followed by m (minutes), h (hours), d (days), or w (weeks)');
35
+ const InvalidDurationError = StructuredError('InvalidDurationError', 'Invalid duration format: use a number followed by s (seconds), m (minutes), h (hours), d (days), or w (weeks)');
35
36
  function parseDurationMs(duration) {
36
- const match = duration.match(/^(\d+)([mhdw])$/);
37
+ const match = duration.match(/^(\d+)([smhdw])$/);
37
38
  if (!match) {
38
39
  throw new InvalidDurationError();
39
40
  }
@@ -69,6 +70,7 @@ function toTask(row) {
69
70
  created_id: row.created_id,
70
71
  assigned_id: row.assigned_id ?? undefined,
71
72
  closed_id: row.closed_id ?? undefined,
73
+ deleted: row.deleted === 1,
72
74
  };
73
75
  }
74
76
  function toComment(row) {
@@ -225,6 +227,26 @@ export class LocalTaskStorage {
225
227
  filters.push('parent_id = ?');
226
228
  values.push(params.parent_id);
227
229
  }
230
+ if (params?.created_id) {
231
+ filters.push('created_id = ?');
232
+ values.push(params.created_id);
233
+ }
234
+ if (params?.project_id) {
235
+ filters.push('project_id = ?');
236
+ values.push(params.project_id);
237
+ }
238
+ if (params?.deleted === undefined) {
239
+ filters.push('deleted = 0');
240
+ }
241
+ else {
242
+ filters.push('deleted = ?');
243
+ values.push(params.deleted ? 1 : 0);
244
+ }
245
+ if (params?.tag_id) {
246
+ filters.push('id IN (SELECT task_id FROM task_tag_association_storage WHERE tag_id = ? AND project_path = ?)');
247
+ values.push(params.tag_id);
248
+ values.push(this.#projectPath);
249
+ }
228
250
  const whereClause = filters.length > 0 ? `WHERE ${filters.join(' AND ')}` : '';
229
251
  const sortField = params?.sort && SORT_FIELDS[params.sort] ? SORT_FIELDS[params.sort] : 'created_at';
230
252
  const sortOrder = params?.order === 'asc' ? 'ASC' : 'DESC';
@@ -579,6 +601,314 @@ export class LocalTaskStorage {
579
601
  count: rows.length,
580
602
  };
581
603
  }
604
+ async batchUpdate(params) {
605
+ const conditions = ['project_path = ?', 'deleted = 0'];
606
+ const args = [this.#projectPath];
607
+ // Handle explicit IDs
608
+ if (params.ids && params.ids.length > 0) {
609
+ const placeholders = params.ids.map(() => '?').join(', ');
610
+ conditions.push(`id IN (${placeholders})`);
611
+ args.push(...params.ids);
612
+ }
613
+ else {
614
+ // Build filter conditions
615
+ if (params.status) {
616
+ conditions.push('status = ?');
617
+ args.push(normalizeTaskStatus(params.status));
618
+ }
619
+ if (params.type) {
620
+ conditions.push('type = ?');
621
+ args.push(params.type);
622
+ }
623
+ if (params.priority) {
624
+ conditions.push('priority = ?');
625
+ args.push(params.priority);
626
+ }
627
+ if (params.parent_id) {
628
+ conditions.push('parent_id = ?');
629
+ args.push(params.parent_id);
630
+ }
631
+ if (params.created_id) {
632
+ conditions.push('created_id = ?');
633
+ args.push(params.created_id);
634
+ }
635
+ if (params.assigned_id) {
636
+ conditions.push('assigned_id = ?');
637
+ args.push(params.assigned_id);
638
+ }
639
+ if (params.older_than) {
640
+ const ms = parseDurationMs(params.older_than);
641
+ const cutoff = Date.now() - ms;
642
+ conditions.push('created_at < ?');
643
+ args.push(cutoff);
644
+ }
645
+ if (params.project_id) {
646
+ conditions.push('project_id = ?');
647
+ args.push(params.project_id);
648
+ }
649
+ if (params.tag_id) {
650
+ conditions.push('id IN (SELECT task_id FROM task_tag_association_storage WHERE tag_id = ? AND project_path = ?)');
651
+ args.push(params.tag_id);
652
+ args.push(this.#projectPath);
653
+ }
654
+ if (params.newer_than) {
655
+ const ms = parseDurationMs(params.newer_than);
656
+ const cutoff = Date.now() - ms;
657
+ conditions.push('created_at > ?');
658
+ args.push(cutoff);
659
+ }
660
+ }
661
+ // Require at least one filter or IDs
662
+ if (params.ids && params.ids.length > 0) {
663
+ // IDs provided, OK
664
+ }
665
+ else if (conditions.length < 3) {
666
+ throw new Error('At least one filter or ids is required for batch update');
667
+ }
668
+ // Check for update fields
669
+ const hasUpdate = params.new_status ||
670
+ params.new_priority ||
671
+ params.new_assigned_id ||
672
+ params.new_assignee ||
673
+ params.new_title ||
674
+ params.new_description ||
675
+ params.new_metadata ||
676
+ params.new_type;
677
+ if (!hasUpdate) {
678
+ throw new Error('At least one update field is required for batch update');
679
+ }
680
+ if (params.limit !== undefined && (!Number.isInteger(params.limit) || params.limit <= 0)) {
681
+ throw new Error('Batch update limit must be a positive integer');
682
+ }
683
+ const limit = Math.min(params.limit ?? 50, 200);
684
+ const whereClause = conditions.join(' AND ');
685
+ const selectQuery = `SELECT id, title, status, priority FROM task_storage WHERE ${whereClause} ORDER BY created_at ASC LIMIT ?`;
686
+ const selectStmt = this.#db.prepare(selectQuery);
687
+ const rows = selectStmt.all(...args, limit);
688
+ if (rows.length === 0) {
689
+ return { updated: [], count: 0, dry_run: params.dry_run ?? false };
690
+ }
691
+ // Dry run - return preview without updating
692
+ if (params.dry_run) {
693
+ const normalizedStatus = params.new_status
694
+ ? normalizeTaskStatus(params.new_status)
695
+ : undefined;
696
+ return {
697
+ updated: rows.map((r) => ({
698
+ id: r.id,
699
+ title: params.new_title ?? r.title,
700
+ status: (normalizedStatus ?? r.status),
701
+ priority: (params.new_priority ?? r.priority),
702
+ })),
703
+ count: rows.length,
704
+ dry_run: true,
705
+ };
706
+ }
707
+ const timestamp = now();
708
+ const ids = rows.map((r) => r.id);
709
+ const placeholders = ids.map(() => '?').join(', ');
710
+ const updateFields = ['updated_at = ?'];
711
+ const updateArgs = [timestamp];
712
+ if (params.new_status) {
713
+ updateFields.push('status = ?');
714
+ updateArgs.push(normalizeTaskStatus(params.new_status));
715
+ }
716
+ if (params.new_priority) {
717
+ updateFields.push('priority = ?');
718
+ updateArgs.push(params.new_priority);
719
+ }
720
+ if (params.new_assigned_id) {
721
+ updateFields.push('assigned_id = ?');
722
+ updateArgs.push(params.new_assigned_id);
723
+ }
724
+ if (params.new_title) {
725
+ updateFields.push('title = ?');
726
+ updateArgs.push(params.new_title);
727
+ }
728
+ if (params.new_description) {
729
+ updateFields.push('description = ?');
730
+ updateArgs.push(params.new_description);
731
+ }
732
+ if (params.new_metadata) {
733
+ updateFields.push('metadata = ?');
734
+ updateArgs.push(JSON.stringify(params.new_metadata));
735
+ }
736
+ if (params.new_type) {
737
+ updateFields.push('type = ?');
738
+ updateArgs.push(params.new_type);
739
+ }
740
+ // Set lifecycle timestamps based on new status (only when transitioning)
741
+ if (params.new_status) {
742
+ const newStatus = normalizeTaskStatus(params.new_status);
743
+ if (newStatus === 'open') {
744
+ updateFields.push('open_date = COALESCE(open_date, ?)');
745
+ updateArgs.push(new Date(timestamp).toISOString());
746
+ }
747
+ else if (newStatus === 'in_progress') {
748
+ updateFields.push('in_progress_date = COALESCE(in_progress_date, ?)');
749
+ updateArgs.push(new Date(timestamp).toISOString());
750
+ }
751
+ else if (newStatus === 'done') {
752
+ updateFields.push('closed_date = COALESCE(closed_date, ?)');
753
+ updateArgs.push(new Date(timestamp).toISOString());
754
+ }
755
+ }
756
+ const txn = this.#db.transaction(() => {
757
+ const updateStmt = this.#db.prepare(`
758
+ UPDATE task_storage SET ${updateFields.join(', ')}
759
+ WHERE project_path = ? AND id IN (${placeholders})
760
+ `);
761
+ updateStmt.run(...updateArgs, this.#projectPath, ...ids);
762
+ const changelogStmt = this.#db.prepare(`
763
+ INSERT INTO task_changelog_storage (
764
+ project_path, id, task_id, field, old_value, new_value, created_at
765
+ ) VALUES (?, ?, ?, ?, ?, ?, ?)
766
+ `);
767
+ for (const row of rows) {
768
+ if (params.new_status && row.status !== params.new_status) {
769
+ changelogStmt.run(this.#projectPath, generateChangelogId(), row.id, 'status', row.status, params.new_status, timestamp);
770
+ }
771
+ if (params.new_priority && row.priority !== params.new_priority) {
772
+ changelogStmt.run(this.#projectPath, generateChangelogId(), row.id, 'priority', row.priority, params.new_priority, timestamp);
773
+ }
774
+ }
775
+ });
776
+ txn();
777
+ return {
778
+ updated: rows.map((r) => ({
779
+ id: r.id,
780
+ title: params.new_title ?? r.title,
781
+ status: (params.new_status ?? r.status),
782
+ priority: (params.new_priority ?? r.priority),
783
+ })),
784
+ count: rows.length,
785
+ dry_run: false,
786
+ };
787
+ }
788
+ async batchClose(params) {
789
+ // Resolve closer ID from either closed_id or closer entity ref
790
+ const closerId = params.closed_id ?? params.closer?.id ?? null;
791
+ const conditions = ['project_path = ?', 'deleted = 0', "status != 'done'"];
792
+ const args = [this.#projectPath];
793
+ // Handle explicit IDs
794
+ if (params.ids && params.ids.length > 0) {
795
+ const placeholders = params.ids.map(() => '?').join(', ');
796
+ conditions.push(`id IN (${placeholders})`);
797
+ args.push(...params.ids);
798
+ }
799
+ else {
800
+ // Build filter conditions
801
+ if (params.status) {
802
+ conditions.push('status = ?');
803
+ args.push(normalizeTaskStatus(params.status));
804
+ }
805
+ if (params.type) {
806
+ conditions.push('type = ?');
807
+ args.push(params.type);
808
+ }
809
+ if (params.priority) {
810
+ conditions.push('priority = ?');
811
+ args.push(params.priority);
812
+ }
813
+ if (params.parent_id) {
814
+ conditions.push('parent_id = ?');
815
+ args.push(params.parent_id);
816
+ }
817
+ if (params.created_id) {
818
+ conditions.push('created_id = ?');
819
+ args.push(params.created_id);
820
+ }
821
+ if (params.assigned_id) {
822
+ conditions.push('assigned_id = ?');
823
+ args.push(params.assigned_id);
824
+ }
825
+ if (params.older_than) {
826
+ const ms = parseDurationMs(params.older_than);
827
+ const cutoff = Date.now() - ms;
828
+ conditions.push('created_at < ?');
829
+ args.push(cutoff);
830
+ }
831
+ if (params.project_id) {
832
+ conditions.push('project_id = ?');
833
+ args.push(params.project_id);
834
+ }
835
+ if (params.tag_id) {
836
+ conditions.push('id IN (SELECT task_id FROM task_tag_association_storage WHERE tag_id = ? AND project_path = ?)');
837
+ args.push(params.tag_id);
838
+ args.push(this.#projectPath);
839
+ }
840
+ if (params.newer_than) {
841
+ const ms = parseDurationMs(params.newer_than);
842
+ const cutoff = Date.now() - ms;
843
+ conditions.push('created_at > ?');
844
+ args.push(cutoff);
845
+ }
846
+ }
847
+ // Require at least one filter or IDs
848
+ if (params.ids && params.ids.length > 0) {
849
+ // IDs provided, OK
850
+ }
851
+ else if (conditions.length < 4) {
852
+ throw new Error('At least one filter or ids is required for batch close');
853
+ }
854
+ if (params.limit !== undefined && (!Number.isInteger(params.limit) || params.limit <= 0)) {
855
+ throw new Error('Batch close limit must be a positive integer');
856
+ }
857
+ const limit = Math.min(params.limit ?? 50, 200);
858
+ const whereClause = conditions.join(' AND ');
859
+ const selectQuery = `SELECT id, title, status FROM task_storage WHERE ${whereClause} ORDER BY created_at ASC LIMIT ?`;
860
+ const selectStmt = this.#db.prepare(selectQuery);
861
+ const rows = selectStmt.all(...args, limit);
862
+ if (rows.length === 0) {
863
+ return { closed: [], count: 0, dry_run: params.dry_run ?? false };
864
+ }
865
+ // Dry run - return preview without closing
866
+ if (params.dry_run) {
867
+ const nowTs = new Date().toISOString();
868
+ return {
869
+ closed: rows.map((r) => ({
870
+ id: r.id,
871
+ title: r.title,
872
+ status: 'done',
873
+ closed_date: nowTs,
874
+ })),
875
+ count: rows.length,
876
+ dry_run: true,
877
+ };
878
+ }
879
+ const timestamp = now();
880
+ const ids = rows.map((r) => r.id);
881
+ const placeholders = ids.map(() => '?').join(', ');
882
+ const closedDate = new Date(timestamp).toISOString();
883
+ const txn = this.#db.transaction(() => {
884
+ const updateStmt = this.#db.prepare(`
885
+ UPDATE task_storage SET status = 'done', closed_date = COALESCE(closed_date, ?), closed_id = ?, updated_at = ?
886
+ WHERE project_path = ? AND id IN (${placeholders})
887
+ `);
888
+ updateStmt.run(closedDate, closerId, timestamp, this.#projectPath, ...ids);
889
+ const changelogStmt = this.#db.prepare(`
890
+ INSERT INTO task_changelog_storage (
891
+ project_path, id, task_id, field, old_value, new_value, created_at
892
+ ) VALUES (?, ?, ?, ?, ?, ?, ?)
893
+ `);
894
+ for (const row of rows) {
895
+ if (row.status !== 'done') {
896
+ changelogStmt.run(this.#projectPath, generateChangelogId(), row.id, 'status', row.status, 'done', timestamp);
897
+ }
898
+ }
899
+ });
900
+ txn();
901
+ return {
902
+ closed: rows.map((r) => ({
903
+ id: r.id,
904
+ title: r.title,
905
+ status: 'done',
906
+ closed_date: closedDate,
907
+ })),
908
+ count: rows.length,
909
+ dry_run: false,
910
+ };
911
+ }
582
912
  async createComment(taskId, body, userId) {
583
913
  const trimmedBody = body?.trim();
584
914
  if (!trimmedBody) {
@@ -1 +1 @@
1
- {"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/services/local/task.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/services/local/task.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentuity/runtime",
3
- "version": "2.0.6",
3
+ "version": "2.0.7",
4
4
  "license": "Apache-2.0",
5
5
  "author": "Agentuity employees and contributors",
6
6
  "type": "module",
@@ -26,10 +26,10 @@
26
26
  "prepublishOnly": "bun run clean && bun run build"
27
27
  },
28
28
  "dependencies": {
29
- "@agentuity/core": "2.0.6",
30
- "@agentuity/frontend": "2.0.6",
31
- "@agentuity/schema": "2.0.6",
32
- "@agentuity/server": "2.0.6",
29
+ "@agentuity/core": "2.0.7",
30
+ "@agentuity/frontend": "2.0.7",
31
+ "@agentuity/schema": "2.0.7",
32
+ "@agentuity/server": "2.0.7",
33
33
  "@opentelemetry/api": "^1.9.0",
34
34
  "@opentelemetry/api-logs": "^0.207.0",
35
35
  "@opentelemetry/auto-instrumentations-node": "^0.66.0",
@@ -49,7 +49,7 @@
49
49
  "zod": "^4.3.5"
50
50
  },
51
51
  "devDependencies": {
52
- "@agentuity/test-utils": "2.0.6",
52
+ "@agentuity/test-utils": "2.0.7",
53
53
  "@types/bun": "latest",
54
54
  "@types/react": "^19.2.2",
55
55
  "@types/react-dom": "^19.2.2",
package/src/agent.ts CHANGED
@@ -1949,7 +1949,7 @@ export function createAgent<
1949
1949
  );
1950
1950
 
1951
1951
  if (agentEvals && agentEvals.length > 0) {
1952
- internal.info(`Executing ${agentEvals.length} eval(s) after agent run`);
1952
+ internal.info(`Executing ${agentEvals.length} evaluations after agent run`);
1953
1953
 
1954
1954
  // Get validated input/output from context state
1955
1955
  const validatedInput = ctx.state.get('_evalInput');
@@ -12,6 +12,10 @@ import type {
12
12
  ListTasksResult,
13
13
  BatchDeleteTasksParams,
14
14
  BatchDeleteTasksResult,
15
+ BatchUpdateTasksParams,
16
+ BatchUpdateTasksResult,
17
+ BatchCloseTasksParams,
18
+ BatchCloseTasksResult,
15
19
  TaskChangelogResult,
16
20
  Comment,
17
21
  Tag,
@@ -139,6 +143,7 @@ const SORT_FIELDS: Record<string, string> = {
139
143
  };
140
144
 
141
145
  const DURATION_UNITS: Record<string, number> = {
146
+ s: 1000,
142
147
  m: 60 * 1000,
143
148
  h: 60 * 60 * 1000,
144
149
  d: 24 * 60 * 60 * 1000,
@@ -147,11 +152,11 @@ const DURATION_UNITS: Record<string, number> = {
147
152
 
148
153
  const InvalidDurationError = StructuredError(
149
154
  'InvalidDurationError',
150
- 'Invalid duration format: use a number followed by m (minutes), h (hours), d (days), or w (weeks)'
155
+ 'Invalid duration format: use a number followed by s (seconds), m (minutes), h (hours), d (days), or w (weeks)'
151
156
  );
152
157
 
153
158
  function parseDurationMs(duration: string): number {
154
- const match = duration.match(/^(\d+)([mhdw])$/);
159
+ const match = duration.match(/^(\d+)([smhdw])$/);
155
160
  if (!match) {
156
161
  throw new InvalidDurationError();
157
162
  }
@@ -190,6 +195,7 @@ function toTask(row: TaskRow): Task {
190
195
  created_id: row.created_id,
191
196
  assigned_id: row.assigned_id ?? undefined,
192
197
  closed_id: row.closed_id ?? undefined,
198
+ deleted: row.deleted === 1,
193
199
  };
194
200
  }
195
201
 
@@ -384,6 +390,27 @@ export class LocalTaskStorage implements TaskStorage {
384
390
  filters.push('parent_id = ?');
385
391
  values.push(params.parent_id);
386
392
  }
393
+ if (params?.created_id) {
394
+ filters.push('created_id = ?');
395
+ values.push(params.created_id);
396
+ }
397
+ if (params?.project_id) {
398
+ filters.push('project_id = ?');
399
+ values.push(params.project_id);
400
+ }
401
+ if (params?.deleted === undefined) {
402
+ filters.push('deleted = 0');
403
+ } else {
404
+ filters.push('deleted = ?');
405
+ values.push(params.deleted ? 1 : 0);
406
+ }
407
+ if (params?.tag_id) {
408
+ filters.push(
409
+ 'id IN (SELECT task_id FROM task_tag_association_storage WHERE tag_id = ? AND project_path = ?)'
410
+ );
411
+ values.push(params.tag_id);
412
+ values.push(this.#projectPath);
413
+ }
387
414
 
388
415
  const whereClause = filters.length > 0 ? `WHERE ${filters.join(' AND ')}` : '';
389
416
  const sortField =
@@ -864,6 +891,373 @@ export class LocalTaskStorage implements TaskStorage {
864
891
  };
865
892
  }
866
893
 
894
+ async batchUpdate(params: BatchUpdateTasksParams): Promise<BatchUpdateTasksResult> {
895
+ const conditions: string[] = ['project_path = ?', 'deleted = 0'];
896
+ const args: (string | number)[] = [this.#projectPath];
897
+
898
+ // Handle explicit IDs
899
+ if (params.ids && params.ids.length > 0) {
900
+ const placeholders = params.ids.map(() => '?').join(', ');
901
+ conditions.push(`id IN (${placeholders})`);
902
+ args.push(...params.ids);
903
+ } else {
904
+ // Build filter conditions
905
+ if (params.status) {
906
+ conditions.push('status = ?');
907
+ args.push(normalizeTaskStatus(params.status));
908
+ }
909
+ if (params.type) {
910
+ conditions.push('type = ?');
911
+ args.push(params.type);
912
+ }
913
+ if (params.priority) {
914
+ conditions.push('priority = ?');
915
+ args.push(params.priority);
916
+ }
917
+ if (params.parent_id) {
918
+ conditions.push('parent_id = ?');
919
+ args.push(params.parent_id);
920
+ }
921
+ if (params.created_id) {
922
+ conditions.push('created_id = ?');
923
+ args.push(params.created_id);
924
+ }
925
+ if (params.assigned_id) {
926
+ conditions.push('assigned_id = ?');
927
+ args.push(params.assigned_id);
928
+ }
929
+ if (params.older_than) {
930
+ const ms = parseDurationMs(params.older_than);
931
+ const cutoff = Date.now() - ms;
932
+ conditions.push('created_at < ?');
933
+ args.push(cutoff);
934
+ }
935
+ if (params.project_id) {
936
+ conditions.push('project_id = ?');
937
+ args.push(params.project_id);
938
+ }
939
+ if (params.tag_id) {
940
+ conditions.push(
941
+ 'id IN (SELECT task_id FROM task_tag_association_storage WHERE tag_id = ? AND project_path = ?)'
942
+ );
943
+ args.push(params.tag_id);
944
+ args.push(this.#projectPath);
945
+ }
946
+ if (params.newer_than) {
947
+ const ms = parseDurationMs(params.newer_than);
948
+ const cutoff = Date.now() - ms;
949
+ conditions.push('created_at > ?');
950
+ args.push(cutoff);
951
+ }
952
+ }
953
+
954
+ // Require at least one filter or IDs
955
+ if (params.ids && params.ids.length > 0) {
956
+ // IDs provided, OK
957
+ } else if (conditions.length < 3) {
958
+ throw new Error('At least one filter or ids is required for batch update');
959
+ }
960
+
961
+ // Check for update fields
962
+ const hasUpdate =
963
+ params.new_status ||
964
+ params.new_priority ||
965
+ params.new_assigned_id ||
966
+ params.new_assignee ||
967
+ params.new_title ||
968
+ params.new_description ||
969
+ params.new_metadata ||
970
+ params.new_type;
971
+ if (!hasUpdate) {
972
+ throw new Error('At least one update field is required for batch update');
973
+ }
974
+
975
+ if (params.limit !== undefined && (!Number.isInteger(params.limit) || params.limit <= 0)) {
976
+ throw new Error('Batch update limit must be a positive integer');
977
+ }
978
+ const limit = Math.min(params.limit ?? 50, 200);
979
+
980
+ const whereClause = conditions.join(' AND ');
981
+ const selectQuery = `SELECT id, title, status, priority FROM task_storage WHERE ${whereClause} ORDER BY created_at ASC LIMIT ?`;
982
+ const selectStmt = this.#db.prepare(selectQuery);
983
+ const rows = selectStmt.all(...args, limit) as Array<{
984
+ id: string;
985
+ title: string;
986
+ status: string;
987
+ priority: string;
988
+ }>;
989
+
990
+ if (rows.length === 0) {
991
+ return { updated: [], count: 0, dry_run: params.dry_run ?? false };
992
+ }
993
+
994
+ // Dry run - return preview without updating
995
+ if (params.dry_run) {
996
+ const normalizedStatus = params.new_status
997
+ ? normalizeTaskStatus(params.new_status)
998
+ : undefined;
999
+ return {
1000
+ updated: rows.map((r) => ({
1001
+ id: r.id,
1002
+ title: params.new_title ?? r.title,
1003
+ status: (normalizedStatus ?? r.status) as TaskStatus,
1004
+ priority: (params.new_priority ?? r.priority) as TaskPriority,
1005
+ })),
1006
+ count: rows.length,
1007
+ dry_run: true,
1008
+ };
1009
+ }
1010
+
1011
+ const timestamp = now();
1012
+ const ids = rows.map((r) => r.id);
1013
+ const placeholders = ids.map(() => '?').join(', ');
1014
+
1015
+ const updateFields: string[] = ['updated_at = ?'];
1016
+ const updateArgs: (string | number)[] = [timestamp];
1017
+
1018
+ if (params.new_status) {
1019
+ updateFields.push('status = ?');
1020
+ updateArgs.push(normalizeTaskStatus(params.new_status));
1021
+ }
1022
+ if (params.new_priority) {
1023
+ updateFields.push('priority = ?');
1024
+ updateArgs.push(params.new_priority);
1025
+ }
1026
+ if (params.new_assigned_id) {
1027
+ updateFields.push('assigned_id = ?');
1028
+ updateArgs.push(params.new_assigned_id);
1029
+ }
1030
+ if (params.new_title) {
1031
+ updateFields.push('title = ?');
1032
+ updateArgs.push(params.new_title);
1033
+ }
1034
+ if (params.new_description) {
1035
+ updateFields.push('description = ?');
1036
+ updateArgs.push(params.new_description);
1037
+ }
1038
+ if (params.new_metadata) {
1039
+ updateFields.push('metadata = ?');
1040
+ updateArgs.push(JSON.stringify(params.new_metadata));
1041
+ }
1042
+ if (params.new_type) {
1043
+ updateFields.push('type = ?');
1044
+ updateArgs.push(params.new_type);
1045
+ }
1046
+
1047
+ // Set lifecycle timestamps based on new status (only when transitioning)
1048
+ if (params.new_status) {
1049
+ const newStatus = normalizeTaskStatus(params.new_status);
1050
+ if (newStatus === 'open') {
1051
+ updateFields.push('open_date = COALESCE(open_date, ?)');
1052
+ updateArgs.push(new Date(timestamp).toISOString());
1053
+ } else if (newStatus === 'in_progress') {
1054
+ updateFields.push('in_progress_date = COALESCE(in_progress_date, ?)');
1055
+ updateArgs.push(new Date(timestamp).toISOString());
1056
+ } else if (newStatus === 'done') {
1057
+ updateFields.push('closed_date = COALESCE(closed_date, ?)');
1058
+ updateArgs.push(new Date(timestamp).toISOString());
1059
+ }
1060
+ }
1061
+
1062
+ const txn = this.#db.transaction(() => {
1063
+ const updateStmt = this.#db.prepare(`
1064
+ UPDATE task_storage SET ${updateFields.join(', ')}
1065
+ WHERE project_path = ? AND id IN (${placeholders})
1066
+ `);
1067
+ updateStmt.run(...updateArgs, this.#projectPath, ...ids);
1068
+
1069
+ const changelogStmt = this.#db.prepare(`
1070
+ INSERT INTO task_changelog_storage (
1071
+ project_path, id, task_id, field, old_value, new_value, created_at
1072
+ ) VALUES (?, ?, ?, ?, ?, ?, ?)
1073
+ `);
1074
+ for (const row of rows) {
1075
+ if (params.new_status && row.status !== params.new_status) {
1076
+ changelogStmt.run(
1077
+ this.#projectPath,
1078
+ generateChangelogId(),
1079
+ row.id,
1080
+ 'status',
1081
+ row.status,
1082
+ params.new_status,
1083
+ timestamp
1084
+ );
1085
+ }
1086
+ if (params.new_priority && row.priority !== params.new_priority) {
1087
+ changelogStmt.run(
1088
+ this.#projectPath,
1089
+ generateChangelogId(),
1090
+ row.id,
1091
+ 'priority',
1092
+ row.priority,
1093
+ params.new_priority,
1094
+ timestamp
1095
+ );
1096
+ }
1097
+ }
1098
+ });
1099
+ txn();
1100
+
1101
+ return {
1102
+ updated: rows.map((r) => ({
1103
+ id: r.id,
1104
+ title: params.new_title ?? r.title,
1105
+ status: (params.new_status ?? r.status) as TaskStatus,
1106
+ priority: (params.new_priority ?? r.priority) as TaskPriority,
1107
+ })),
1108
+ count: rows.length,
1109
+ dry_run: false,
1110
+ };
1111
+ }
1112
+
1113
+ async batchClose(params: BatchCloseTasksParams): Promise<BatchCloseTasksResult> {
1114
+ // Resolve closer ID from either closed_id or closer entity ref
1115
+ const closerId = params.closed_id ?? params.closer?.id ?? null;
1116
+
1117
+ const conditions: string[] = ['project_path = ?', 'deleted = 0', "status != 'done'"];
1118
+ const args: (string | number)[] = [this.#projectPath];
1119
+
1120
+ // Handle explicit IDs
1121
+ if (params.ids && params.ids.length > 0) {
1122
+ const placeholders = params.ids.map(() => '?').join(', ');
1123
+ conditions.push(`id IN (${placeholders})`);
1124
+ args.push(...params.ids);
1125
+ } else {
1126
+ // Build filter conditions
1127
+ if (params.status) {
1128
+ conditions.push('status = ?');
1129
+ args.push(normalizeTaskStatus(params.status));
1130
+ }
1131
+ if (params.type) {
1132
+ conditions.push('type = ?');
1133
+ args.push(params.type);
1134
+ }
1135
+ if (params.priority) {
1136
+ conditions.push('priority = ?');
1137
+ args.push(params.priority);
1138
+ }
1139
+ if (params.parent_id) {
1140
+ conditions.push('parent_id = ?');
1141
+ args.push(params.parent_id);
1142
+ }
1143
+ if (params.created_id) {
1144
+ conditions.push('created_id = ?');
1145
+ args.push(params.created_id);
1146
+ }
1147
+ if (params.assigned_id) {
1148
+ conditions.push('assigned_id = ?');
1149
+ args.push(params.assigned_id);
1150
+ }
1151
+ if (params.older_than) {
1152
+ const ms = parseDurationMs(params.older_than);
1153
+ const cutoff = Date.now() - ms;
1154
+ conditions.push('created_at < ?');
1155
+ args.push(cutoff);
1156
+ }
1157
+ if (params.project_id) {
1158
+ conditions.push('project_id = ?');
1159
+ args.push(params.project_id);
1160
+ }
1161
+ if (params.tag_id) {
1162
+ conditions.push(
1163
+ 'id IN (SELECT task_id FROM task_tag_association_storage WHERE tag_id = ? AND project_path = ?)'
1164
+ );
1165
+ args.push(params.tag_id);
1166
+ args.push(this.#projectPath);
1167
+ }
1168
+ if (params.newer_than) {
1169
+ const ms = parseDurationMs(params.newer_than);
1170
+ const cutoff = Date.now() - ms;
1171
+ conditions.push('created_at > ?');
1172
+ args.push(cutoff);
1173
+ }
1174
+ }
1175
+
1176
+ // Require at least one filter or IDs
1177
+ if (params.ids && params.ids.length > 0) {
1178
+ // IDs provided, OK
1179
+ } else if (conditions.length < 4) {
1180
+ throw new Error('At least one filter or ids is required for batch close');
1181
+ }
1182
+
1183
+ if (params.limit !== undefined && (!Number.isInteger(params.limit) || params.limit <= 0)) {
1184
+ throw new Error('Batch close limit must be a positive integer');
1185
+ }
1186
+ const limit = Math.min(params.limit ?? 50, 200);
1187
+
1188
+ const whereClause = conditions.join(' AND ');
1189
+ const selectQuery = `SELECT id, title, status FROM task_storage WHERE ${whereClause} ORDER BY created_at ASC LIMIT ?`;
1190
+ const selectStmt = this.#db.prepare(selectQuery);
1191
+ const rows = selectStmt.all(...args, limit) as Array<{
1192
+ id: string;
1193
+ title: string;
1194
+ status: string;
1195
+ }>;
1196
+
1197
+ if (rows.length === 0) {
1198
+ return { closed: [], count: 0, dry_run: params.dry_run ?? false };
1199
+ }
1200
+
1201
+ // Dry run - return preview without closing
1202
+ if (params.dry_run) {
1203
+ const nowTs = new Date().toISOString();
1204
+ return {
1205
+ closed: rows.map((r) => ({
1206
+ id: r.id,
1207
+ title: r.title,
1208
+ status: 'done',
1209
+ closed_date: nowTs,
1210
+ })),
1211
+ count: rows.length,
1212
+ dry_run: true,
1213
+ };
1214
+ }
1215
+
1216
+ const timestamp = now();
1217
+ const ids = rows.map((r) => r.id);
1218
+ const placeholders = ids.map(() => '?').join(', ');
1219
+ const closedDate = new Date(timestamp).toISOString();
1220
+
1221
+ const txn = this.#db.transaction(() => {
1222
+ const updateStmt = this.#db.prepare(`
1223
+ UPDATE task_storage SET status = 'done', closed_date = COALESCE(closed_date, ?), closed_id = ?, updated_at = ?
1224
+ WHERE project_path = ? AND id IN (${placeholders})
1225
+ `);
1226
+ updateStmt.run(closedDate, closerId, timestamp, this.#projectPath, ...ids);
1227
+
1228
+ const changelogStmt = this.#db.prepare(`
1229
+ INSERT INTO task_changelog_storage (
1230
+ project_path, id, task_id, field, old_value, new_value, created_at
1231
+ ) VALUES (?, ?, ?, ?, ?, ?, ?)
1232
+ `);
1233
+ for (const row of rows) {
1234
+ if (row.status !== 'done') {
1235
+ changelogStmt.run(
1236
+ this.#projectPath,
1237
+ generateChangelogId(),
1238
+ row.id,
1239
+ 'status',
1240
+ row.status,
1241
+ 'done',
1242
+ timestamp
1243
+ );
1244
+ }
1245
+ }
1246
+ });
1247
+ txn();
1248
+
1249
+ return {
1250
+ closed: rows.map((r) => ({
1251
+ id: r.id,
1252
+ title: r.title,
1253
+ status: 'done',
1254
+ closed_date: closedDate,
1255
+ })),
1256
+ count: rows.length,
1257
+ dry_run: false,
1258
+ };
1259
+ }
1260
+
867
1261
  async createComment(taskId: string, body: string, userId: string): Promise<Comment> {
868
1262
  const trimmedBody = body?.trim();
869
1263
  if (!trimmedBody) {