@vinhnt-sdk/core 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/dist/agent/agent-factory.d.ts +11 -0
  2. package/dist/agent/agent-factory.d.ts.map +1 -1
  3. package/dist/agent/agent-factory.js +11 -2
  4. package/dist/agent/agent-factory.js.map +1 -1
  5. package/dist/agent/agent-registry.d.ts +3 -0
  6. package/dist/agent/agent-registry.d.ts.map +1 -1
  7. package/dist/agent/agent-registry.js.map +1 -1
  8. package/dist/agent/create-agent-tool.d.ts +13 -13
  9. package/dist/agent/create-agent-tool.d.ts.map +1 -1
  10. package/dist/agent/delegate-batch-tool.d.ts.map +1 -1
  11. package/dist/agent/delegate-batch-tool.js +1 -1
  12. package/dist/agent/delegate-batch-tool.js.map +1 -1
  13. package/dist/agent/delegate-tool.js +1 -1
  14. package/dist/agent/delegate-tool.js.map +1 -1
  15. package/dist/agent/execution-engine.d.ts +1 -1
  16. package/dist/agent/execution-engine.d.ts.map +1 -1
  17. package/dist/agent/spawn-agent-tool.d.ts +10 -10
  18. package/dist/agent/spawn-agent-tool.d.ts.map +1 -1
  19. package/dist/event-bus/bridge.d.ts +2 -3
  20. package/dist/event-bus/bridge.d.ts.map +1 -1
  21. package/dist/event-bus/bridge.js +12 -5
  22. package/dist/event-bus/bridge.js.map +1 -1
  23. package/dist/fakes/fake-approval-store.d.ts +2 -2
  24. package/dist/fakes/fake-approval-store.d.ts.map +1 -1
  25. package/dist/fakes/fake-approval-store.js +28 -6
  26. package/dist/fakes/fake-approval-store.js.map +1 -1
  27. package/dist/fakes/fake-model.d.ts.map +1 -1
  28. package/dist/fakes/fake-model.js +2 -1
  29. package/dist/fakes/fake-model.js.map +1 -1
  30. package/dist/fakes/fake-store.d.ts +4 -1
  31. package/dist/fakes/fake-store.d.ts.map +1 -1
  32. package/dist/fakes/fake-store.js +33 -0
  33. package/dist/fakes/fake-store.js.map +1 -1
  34. package/dist/index.d.ts +20 -14
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +12 -4
  37. package/dist/index.js.map +1 -1
  38. package/dist/kernel/approval-handler.d.ts +1 -1
  39. package/dist/kernel/approval-handler.d.ts.map +1 -1
  40. package/dist/kernel/approval-handler.js +5 -1
  41. package/dist/kernel/approval-handler.js.map +1 -1
  42. package/dist/kernel/circuit-breaker.d.ts.map +1 -1
  43. package/dist/kernel/circuit-breaker.js +4 -1
  44. package/dist/kernel/circuit-breaker.js.map +1 -1
  45. package/dist/kernel/kernel-error.d.ts +1 -2
  46. package/dist/kernel/kernel-error.d.ts.map +1 -1
  47. package/dist/kernel/kernel-error.js +2 -3
  48. package/dist/kernel/kernel-error.js.map +1 -1
  49. package/dist/kernel/kernel-session.d.ts +13 -5
  50. package/dist/kernel/kernel-session.d.ts.map +1 -1
  51. package/dist/kernel/kernel-session.js +71 -13
  52. package/dist/kernel/kernel-session.js.map +1 -1
  53. package/dist/kernel/kernel-types.d.ts +6 -8
  54. package/dist/kernel/kernel-types.d.ts.map +1 -1
  55. package/dist/kernel/kernel-types.js.map +1 -1
  56. package/dist/kernel/kernel.d.ts +60 -16
  57. package/dist/kernel/kernel.d.ts.map +1 -1
  58. package/dist/kernel/kernel.js +428 -76
  59. package/dist/kernel/kernel.js.map +1 -1
  60. package/dist/kernel/model-caller.d.ts +28 -2
  61. package/dist/kernel/model-caller.d.ts.map +1 -1
  62. package/dist/kernel/model-caller.js +47 -12
  63. package/dist/kernel/model-caller.js.map +1 -1
  64. package/dist/kernel/permission-gate.d.ts +6 -4
  65. package/dist/kernel/permission-gate.d.ts.map +1 -1
  66. package/dist/kernel/permission-gate.js +16 -6
  67. package/dist/kernel/permission-gate.js.map +1 -1
  68. package/dist/kernel/run-context.d.ts +26 -0
  69. package/dist/kernel/run-context.d.ts.map +1 -0
  70. package/dist/kernel/run-context.js +13 -0
  71. package/dist/kernel/run-context.js.map +1 -0
  72. package/dist/kernel/run-loop.d.ts +35 -14
  73. package/dist/kernel/run-loop.d.ts.map +1 -1
  74. package/dist/kernel/run-loop.js +295 -87
  75. package/dist/kernel/run-loop.js.map +1 -1
  76. package/dist/kernel/self-correction.d.ts +2 -2
  77. package/dist/kernel/self-correction.d.ts.map +1 -1
  78. package/dist/kernel/self-correction.js +3 -2
  79. package/dist/kernel/self-correction.js.map +1 -1
  80. package/dist/kernel/state-machine.d.ts +2 -0
  81. package/dist/kernel/state-machine.d.ts.map +1 -1
  82. package/dist/kernel/state-machine.js +2 -0
  83. package/dist/kernel/state-machine.js.map +1 -1
  84. package/dist/kernel/step-executor.d.ts +11 -3
  85. package/dist/kernel/step-executor.d.ts.map +1 -1
  86. package/dist/kernel/step-executor.js +54 -24
  87. package/dist/kernel/step-executor.js.map +1 -1
  88. package/dist/kernel/sub-agent-runner.d.ts +10 -7
  89. package/dist/kernel/sub-agent-runner.d.ts.map +1 -1
  90. package/dist/kernel/sub-agent-runner.js +105 -31
  91. package/dist/kernel/sub-agent-runner.js.map +1 -1
  92. package/dist/kernel/tool-context-builder.d.ts +7 -2
  93. package/dist/kernel/tool-context-builder.d.ts.map +1 -1
  94. package/dist/kernel/tool-context-builder.js +23 -6
  95. package/dist/kernel/tool-context-builder.js.map +1 -1
  96. package/dist/kernel/tool-error-router.d.ts +1 -1
  97. package/dist/kernel/tool-error-router.d.ts.map +1 -1
  98. package/dist/kernel/tool-error-router.js +4 -3
  99. package/dist/kernel/tool-error-router.js.map +1 -1
  100. package/dist/logger.d.ts +5 -0
  101. package/dist/logger.d.ts.map +1 -1
  102. package/dist/logger.js +3 -0
  103. package/dist/logger.js.map +1 -1
  104. package/dist/model.d.ts +3 -1
  105. package/dist/model.d.ts.map +1 -1
  106. package/dist/model.js +2 -0
  107. package/dist/model.js.map +1 -1
  108. package/dist/plugin/manager.d.ts +3 -1
  109. package/dist/plugin/manager.d.ts.map +1 -1
  110. package/dist/plugin/manager.js +51 -3
  111. package/dist/plugin/manager.js.map +1 -1
  112. package/dist/plugin/plugin-file-loader.js +2 -2
  113. package/dist/plugin/plugin-file-loader.js.map +1 -1
  114. package/dist/plugin.d.ts +50 -4
  115. package/dist/plugin.d.ts.map +1 -1
  116. package/dist/plugin.js +14 -1
  117. package/dist/plugin.js.map +1 -1
  118. package/dist/session/null-store.d.ts +1 -0
  119. package/dist/session/null-store.d.ts.map +1 -1
  120. package/dist/session/null-store.js +7 -0
  121. package/dist/session/null-store.js.map +1 -1
  122. package/dist/session/run-coordinator.d.ts +9 -3
  123. package/dist/session/run-coordinator.d.ts.map +1 -1
  124. package/dist/session/run-coordinator.js +4 -0
  125. package/dist/session/run-coordinator.js.map +1 -1
  126. package/dist/skill/create-skill-tool.d.ts +5 -4
  127. package/dist/skill/create-skill-tool.d.ts.map +1 -1
  128. package/dist/skill/create-skill-tool.js +8 -5
  129. package/dist/skill/create-skill-tool.js.map +1 -1
  130. package/dist/skill/skill-def-registry.d.ts +6 -0
  131. package/dist/skill/skill-def-registry.d.ts.map +1 -1
  132. package/dist/skill/skill-def-registry.js +4 -0
  133. package/dist/skill/skill-def-registry.js.map +1 -1
  134. package/dist/tool/bridge.d.ts +7 -1
  135. package/dist/tool/bridge.d.ts.map +1 -1
  136. package/dist/tool/bridge.js +5 -0
  137. package/dist/tool/bridge.js.map +1 -1
  138. package/dist/tool/builtin-provider.d.ts +35 -0
  139. package/dist/tool/builtin-provider.d.ts.map +1 -0
  140. package/dist/tool/builtin-provider.js +75 -0
  141. package/dist/tool/builtin-provider.js.map +1 -0
  142. package/dist/tool/index.d.ts +21 -23
  143. package/dist/tool/index.d.ts.map +1 -1
  144. package/dist/tool/index.js +19 -18
  145. package/dist/tool/index.js.map +1 -1
  146. package/dist/tool/provider-helpers.d.ts.map +1 -1
  147. package/dist/tool/provider-helpers.js +3 -2
  148. package/dist/tool/provider-helpers.js.map +1 -1
  149. package/dist/tool/runtime.d.ts +23 -2
  150. package/dist/tool/runtime.d.ts.map +1 -1
  151. package/dist/tool/runtime.js +20 -16
  152. package/dist/tool/runtime.js.map +1 -1
  153. package/dist/tracer.d.ts +5 -0
  154. package/dist/tracer.d.ts.map +1 -1
  155. package/dist/tracer.js +4 -0
  156. package/dist/tracer.js.map +1 -1
  157. package/dist/workflow/agent-graph.js +3 -3
  158. package/dist/workflow/agent-graph.js.map +1 -1
  159. package/dist/workflow/workflow-helpers.js +2 -2
  160. package/dist/workflow/workflow-helpers.js.map +1 -1
  161. package/dist/workspace.d.ts +7 -0
  162. package/dist/workspace.d.ts.map +1 -1
  163. package/dist/workspace.js +4 -0
  164. package/dist/workspace.js.map +1 -1
  165. package/package.json +16 -7
@@ -1 +1 @@
1
- {"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../src/kernel/kernel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAczE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAErE,OAAO,EAAE,iBAAiB,EAAE,+BAA+B,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC5G,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAA0B,MAAM,wBAAwB,CAAC;AAClF,OAAO,EACL,SAAS,IAAI,WAAW,EACxB,iBAAiB,IAAI,iBAAiB,EACtC,uBAAuB,IAAI,qBAAqB,EAChD,QAAQ,IAAI,eAAe,EAC3B,kBAAkB,GAEnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,QAAQ,IAAI,WAAW,EACvB,iBAAiB,IAAI,oBAAoB,EACzC,yBAAyB,GAE1B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAiD,MAAM,sBAAsB,CAAC;AAC9H,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;GAIG;AACH,MAAM,OAAO,WAAW;IACL,WAAW,CAAc;IACzB,cAAc,CAAiB;IAC/B,YAAY,CAAkB;IAC9B,KAAK,CAAgB;IACrB,KAAK,GAAqB,EAAE,CAAC;IAC7B,eAAe,GAAG,IAAI,GAAG,EAA0B,CAAC;IAC7D,QAAQ,CAAS;IACjB,SAAS,CAAS;IACT,mBAAmB,CAAS;IAC5B,SAAS,CAAoC;IAC7C,aAAa,CAA8B;IACpD,cAAc,CAAS;IACd,oBAAoB,CAAU;IAC9B,sBAAsB,CAAS;IAC/B,gBAAgB,CAAS;IACzB,YAAY,CAA2B;IACvC,aAAa,CAA4B;IACzC,aAAa,CAA4B;IACzC,QAAQ,CAAuB;IACxC,YAAY,CAAkC;IACrC,YAAY,CAA2B;IACvC,oBAAoB,CAAmC;IACvD,qBAAqB,CAAoD;IAClF,IAAI,CAAW;IACN,YAAY,CAAe;IACpC,YAAY,CAA0B;IACtC,YAAY,GAAG,CAAC,CAAC;IACjB,UAAU,GAAG,IAAI,GAAG,EAAW,CAAC;IAChC,WAAW,GAAqC,IAAI,CAAC;IACrD,kBAAkB,CAAqB;IACvC,WAAW,CAAS;IACX,iBAAiB,CAAS;IACnC,mBAAmB,CAAqB;IAC/B,WAAW,CAAgC;IACpD,cAAc,CAAiB;IACtB,WAAW,CAAoB;IAC/B,YAAY,CAAqB;IACjC,gBAAgB,GAAG,IAAI,GAAG,EAA0C,CAAC;IACrE,gBAAgB,CAAmB;IAEpD,YAAY,MAAyB;QACnC,MAAM,UAAU,GAAG,eAAe,CAAC,MAA4C,CAAC,CAAC;QAEjF,yBAAyB;QACzB,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS,IAAI,UAAU,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjE,MAAM,IAAI,eAAe,CAAC,uBAAuB,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,UAAU,CAAC,SAAS,KAAK,SAAS,IAAI,UAAU,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;YACnE,MAAM,IAAI,eAAe,CAAC,wBAAwB,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,UAAU,CAAC,WAAW,KAAK,SAAS,IAAI,UAAU,CAAC,WAAW,GAAG,IAAI,EAAE,CAAC;YAC1E,MAAM,IAAI,eAAe,CAAC,+BAA+B,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,UAAU,CAAC,mBAAmB,KAAK,SAAS,IAAI,UAAU,CAAC,mBAAmB,GAAG,CAAC,EAAE,CAAC;YACvF,MAAM,IAAI,eAAe,CAAC,kCAAkC,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,UAAU,CAAC,iBAAiB,KAAK,SAAS,IAAI,UAAU,CAAC,iBAAiB,GAAG,CAAC,EAAE,CAAC;YACnF,MAAM,IAAI,eAAe,CAAC,gCAAgC,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,UAAU,CAAC,mBAAmB,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,mBAAmB,GAAG,CAAC,IAAI,UAAU,CAAC,mBAAmB,GAAG,CAAC,CAAC,EAAE,CAAC;YAC/H,MAAM,IAAI,eAAe,CAAC,6CAA6C,CAAC,CAAC;QAC3E,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,iBAAiB,CAAC;QACzD,IAAI,CAAC,mBAAmB,GAAG,UAAU,CAAC,mBAAmB,IAAI,+BAA+B,CAAC;QAC7F,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,IAAI,SAAS,CAAC;QACnD,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,cAAc,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC,oBAAoB,IAAI,KAAK,CAAC;QACrE,IAAI,CAAC,sBAAsB,GAAG,UAAU,CAAC,sBAAsB,IAAI,CAAC,CAAC;QACrE,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAC,gBAAgB,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC,oBAAoB,CAAC;QAC5D,IAAI,CAAC,qBAAqB,GAAG,UAAU,CAAC,qBAAqB,CAAC;QAC9D,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,IAAI,OAAO,CAAC;QACrD,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,IAAI,mBAAmB,CAAC;QAC7E,IAAI,CAAC,mBAAmB,GAAG,UAAU,CAAC,mBAAmB,CAAC;QAC1D,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,cAAc,IAAI,IAAI,cAAc,CAAC;YACpE,GAAG,UAAU,CAAC,qBAAqB;YACnC,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,qBAAqB,EAAE,UAAU;YACjF,SAAS,EAAE,UAAU,CAAC,cAAc,IAAI,UAAU,CAAC,qBAAqB,EAAE,SAAS;YACnF,YAAY,EAAE,UAAU,CAAC,iBAAiB,IAAI,UAAU,CAAC,qBAAqB,EAAE,YAAY;SAC7F,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;QAC1C,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC;YACvC,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,aAAa,EAAE,UAAU,CAAC,aAAa;YACvC,aAAa,EAAE,UAAU,CAAC,WAAW,EAAE,aAAa;YACpD,mBAAmB,EAAE,UAAU,CAAC,WAAW,EAAE,mBAAmB;SACjE,CAAC,CAAC;QACH,IAAI,UAAU,CAAC,WAAW,EAAE,qBAAqB,EAAE,CAAC;YAClD,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;QACnF,CAAC;QACD,IAAI,UAAU,CAAC,WAAW,EAAE,sBAAsB,EAAE,CAAC;YACnD,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,WAAW,CAAC,sBAAyD,CAAC,CAAC;QACzH,CAAC;QACD,IAAI,UAAU,CAAC,WAAW,EAAE,uBAAuB,EAAE,CAAC;YACpD,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,IAAI,IAAI,CAAC;QAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,MAAM,cAAc,GAAG,UAAU,CAAC,cAAc,IAAI,iIAAiI,CAAC;QACtL,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC;YACjC,YAAY,EAAE,UAAU,CAAC,KAAK;YAC9B,aAAa,EAAE,UAAU,CAAC,aAAa;YACvC,SAAS;YACT,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,cAAc;YACd,aAAa,EAAE,UAAU,CAAC,aAAa;YACvC,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,SAAS,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC;YAC7D,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,KAAK,CAAC;YAC/D,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC;YAChF,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE;SAClD,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC;YAC/B,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE;YACxE,iBAAiB,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAA2I,CAAC;YACzO,aAAa,EAAE,UAAU,CAAC,aAAa;YACvC,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,GAAG,CAAC,UAAU,CAAC,sBAAsB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,UAAU,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzH,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;YACnD,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE,uBAAuB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,uBAAuB,EAAE,UAAU,CAAC,WAAW,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrJ,GAAG,CAAC,UAAU,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9F,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACvC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;SACtC,CAAC,CAAC;QACH,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,CAAC,WAAW,GAAG;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjD,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG;YAClB,aAAa,EAAE,IAAI,CAAC,aAAc;YAClC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,eAAe,EAAE,EAAE,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;YACvG,eAAe,EAAE,EAAE,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;YACvG,aAAa,EAAE,EAAE,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;YACjG,eAAe,EAAE;gBACf,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;gBAC5C,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC3C;YACD,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC;SAC/G,CAAC;QAEF,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC;IACjD,CAAC;IAED,gFAAgF;IAChF,YAAY,CAAC,IAAoB;QAC/B,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,wFAAwF;IACxF,cAAc,CAAC,QAAwB;QACrC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,+EAA+E;IACvE,SAAS,CAAC,MAAc;QAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,WAAW;YAAE,OAAO,WAAW,CAAC;QACpC,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACxD,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC;gBAAE,OAAO,QAAQ,CAAC;QACnE,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,0DAA0D;IAClD,WAAW,CAAC,QAAgB;QAClC,OAAO,CACL,IAAI,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC;YAC9D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CACnC,CAAC;IACJ,CAAC;IAEO,SAAS,CAAC,KAAsC,EAAE,OAAO,GAAG,IAAI;QACtE,OAAO,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAEO,iBAAiB,CAAC,GAAuB,EAAE,IAAY,EAAE,OAAe,EAAE,KAA8H;QAC9M,OAAO,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACxE,CAAC;IAEO,iBAAiB;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;QACtC,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,kBAAkB,KAAK,OAAO,EAAE,CAAC;YAC5D,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,YAAY,EAAE,KAAK,CAAC;QAEpD,sEAAsE;QACtE,IAAI,IAA+B,CAAC;QACpC,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC;QACjD,CAAC;QAED,4EAA4E;QAC5E,wEAAwE;QACxE,sEAAsE;QACtE,0EAA0E;QAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC;QAC3C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;gBACvB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACpC,IAAI,MAAM,KAAK,SAAS;oBAAE,OAAO,IAAI,CAAC,CAAC,+BAA+B;gBACtE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;oBAAE,OAAO,KAAK,CAAC,CAAC,oCAAoC;gBACjF,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAC;gBAC9D,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAC1B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAC5D,CAAC;oBACF,IAAI,MAAM;wBAAE,OAAO,KAAK,CAAC;gBAC3B,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACtF,CAAC;QAED,mFAAmF;QACnF,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,EAAE,aAAa,IAAI,OAAO,CAAC;QAClE,IAAI,aAAa,KAAK,OAAO,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;YACnD,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;gBACvB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oBACjC,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;wBACrC,OAAO,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC;oBACjC,CAAC;gBACH,CAAC;gBACD,OAAO,IAAI,CAAC,CAAC,oDAAoD;YACnE,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACvF,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,aAAa,CAAC;QAC5C,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;QAC1B,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC;QAClC,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,QAAQ,CAAC,IAAY;QAC3B,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED,+FAA+F;IACvF,OAAO,CAAC,IAAY;QAC1B,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC;QACrD,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,oEAAoE;IACpE,KAAK,CAAC,QAAQ,CAAC,OAAgB;QAC7B,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,WAAW,CAAC,gBAAgB,EAAE,8BAA8B,CAAC,CAAC;QACjG,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC5B,CAAC;IAED,uEAAuE;IACvE,eAAe,CAAC,KAAkB;QAChC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,8DAA8D;IAC9D,KAAK,CAAC,UAAU,CAAC,MAAsB;QACrC,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,WAAW,CAAC,gBAAgB,EAAE,8BAA8B,CAAC,CAAC;QACjG,MAAM,GAAG,GAAuC,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;QAC7E,OAAO,yBAAyB,CAC9B,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,eAAe,EAAE,GAAG,EAAE,EAC3D,MAAM,CACP,CAAC;IACJ,CAAC;IAED,4CAA4C;IAC5C,eAAe;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,wFAAwF;IACxF,gBAAgB,CAAC,IAAwB;QACvC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,GAAG;gBAClB,EAAE,EAAE,SAAoB;gBACxB,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE;gBAC1D,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE;gBAClD,aAAa,EAAE,IAAI;aACpB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,GAAG,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACpE,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,8EAA8E;IAC9E,eAAe,CAAC,OAAgB;QAC9B,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAED,oEAAoE;IACpE,gBAAgB;QACd,OAAO,IAAI,CAAC,YAAY,EAAE,aAAa,IAAI,OAAO,CAAC;IACrD,CAAC;IAED,gEAAgE;IAChE,gBAAgB;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,6DAA6D;IAC7D,aAAa;QACX,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,iFAAiF;IACjF,KAAK,CAAC,QAAQ,CAAC,OAAgB,EAAE,MAAc,EAAE,GAAmB,EAAE,SAAkB;QACtF,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,WAAW,CAAC,gBAAgB,EAAE,8BAA8B,CAAC,CAAC;QACjG,OAAO,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;IACzE,CAAC;IAED;;;;OAIG;IACH,GAAG,CAAC,MAAc,EAAE,GAAmB,EAAE,SAAkB,EAAE,gBAAgD,EAAE,aAA2B;QACxI,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,EAAW,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;YACzE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO;oBACL,KAAK;oBACL,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,SAAS,qCAAqC,CAAC,CAAC;oBAChG,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;iBAChB,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAEpD,MAAM,KAAK,GAAG,aAAa,IAAI,IAAI,CAAC,YAAY,CAAC;YACjD,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACnD,CAAC;YAED,+DAA+D;YAC/D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAC3C,MAAM,YAAY,GAAG,KAAK,EAAE,YAAY,CAAC;YACzC,MAAM,KAAK,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC/D,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAE3C,4CAA4C;YAC5C,MAAM,OAAO,GAAG,IAAI,QAAQ,EAAE,CAAC;YAE/B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;gBACjI,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;gBACnC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;YAEH,OAAO;gBACL,KAAK;gBACL,SAAS,EAAE,OAAO;gBAClB,KAAK,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;aAChC,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;YACnC,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,eAAe,CACb,MAAc,EACd,GAAmB,EACnB,SAAkB,EAClB,gBAAgD,EAChD,aAA2B;QAE3B,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,EAAW,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEzC,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,MAAkC,CAAC;QACvC,MAAM,aAAa,GAAG,IAAI,GAAG,EAA+B,CAAC;QAC7D,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAE9C,MAAM,IAAI,GAAG,IAAI,CAAC;QAElB,yBAAyB;QACzB,MAAM,UAAU,GAAG,CAAC,KAAK,IAAI,EAAE;YAC7B,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;gBACzE,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,MAAM,IAAI,WAAW,CAAC,cAAc,EAAE,YAAY,SAAS,WAAW,CAAC,CAAC;gBAC1E,CAAC;gBAED,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;gBAEpD,MAAM,KAAK,GAAG,aAAa,IAAI,IAAI,CAAC,YAAY,CAAC;gBACjD,IAAI,KAAK,EAAE,CAAC;oBACV,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBACnD,CAAC;gBAED,+DAA+D;gBAC/D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;gBAC3C,MAAM,YAAY,GAAG,KAAK,EAAE,YAAY,CAAC;gBACzC,MAAM,KAAK,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC/D,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAE3C,4CAA4C;gBAC5C,MAAM,OAAO,GAAG,IAAI,QAAQ,EAAE,CAAC;gBAE/B,2BAA2B;gBAC3B,MAAM,UAAU,GAAe;oBAC7B,IAAI,EAAE,eAAe;oBACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,KAAK;oBACL,MAAM;oBACN,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK;iBAC7B,CAAC;gBACF,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;gBAE1C,eAAe;gBACf,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;gBAE5G,SAAS,GAAG,IAAI,CAAC;gBACjB,MAAM,GAAG;oBACP,KAAK;oBACL,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW;oBAC7C,UAAU,EAAE,CAAC,EAAE,0BAA0B;iBAC1C,CAAC;gBAEF,6BAA6B;gBAC7B,MAAM,aAAa,GAAe;oBAChC,IAAI,EAAE,iBAAiB;oBACvB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,KAAK;oBACL,MAAM,EAAE,MAAM,CAAC,MAAM;iBACtB,CAAC;gBACF,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;gBAE7C,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,SAAS,GAAG,IAAI,CAAC;gBACjB,MAAM,GAAG;oBACP,KAAK;oBACL,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;oBACvD,UAAU,EAAE,CAAC;iBACd,CAAC;gBAEF,yBAAyB;gBACzB,MAAM,UAAU,GAAe;oBAC7B,IAAI,EAAE,aAAa;oBACnB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,KAAK;oBACL,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,eAAe;oBACtC,IAAI,EAAE,GAAG,YAAY,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;iBAC9D,CAAC;gBACF,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;gBAE1C,MAAM,GAAG,CAAC;YACZ,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;gBACnC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtC,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,OAAO;YACL,KAAK;YACL,SAAS,EAAE,UAAU;YACrB,MAAM;gBACJ,SAAS,GAAG,IAAI,CAAC;gBACjB,eAAe,CAAC,KAAK,EAAE,CAAC;YAC1B,CAAC;YACD,IAAI,WAAW,KAAK,OAAO,SAAS,CAAC,CAAC,CAAC;YACvC,IAAI,WAAW,KAAK,OAAO,SAAS,CAAC,CAAC,CAAC;YACvC,IAAI,SAAS,KAAK,OAAO,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YACpD,MAAM;gBACJ,OAAO,CAAC,KAAK,SAAS,CAAC;oBACrB,6BAA6B;oBAC7B,MAAM,KAAK,GAAiB,EAAE,CAAC;oBAC/B,MAAM,OAAO,GAAG,CAAC,KAAiB,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACzD,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAE3B,IAAI,CAAC;wBACH,OAAO,CAAC,SAAS,EAAE,CAAC;4BAClB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCACrB,MAAM,KAAK,CAAC,KAAK,EAAG,CAAC;4BACvB,CAAC;iCAAM,CAAC;gCACN,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;4BAC5C,CAAC;wBACH,CAAC;wBACD,yBAAyB;wBACzB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACxB,MAAM,KAAK,CAAC,KAAK,EAAG,CAAC;wBACvB,CAAC;oBACH,CAAC;4BAAS,CAAC;wBACT,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAChC,CAAC;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,CAAC;YACD,OAAO,CAAC,OAAoC;gBAC1C,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC3B,OAAO,GAAG,EAAE,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YAClD,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,SAAS,CACP,MAAc,EACd,GAAmB,EACnB,SAAkB,EAClB,gBAAgD,EAChD,aAA2B;QAE3B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;QACjF,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,EAAW,CAAC;QAC3E,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAiB,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,MAAK,CAAC,CAAC,EAAE,CAAC;QAErF,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM,EAAE,MAAsC;SAC/C,CAAC;IACJ,CAAC;IAEO,aAAa,CAAC,KAAY;QAChC,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC;IAC/D,CAAC;IAED,qEAAqE;IACrE,KAAK,CAAC,iBAAiB,CACrB,KAAkD,EAClD,GAAmB,EACnB,SAAkB;QAElB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,WAAW,CAAC,gBAAgB,EAAE,8BAA8B,CAAC,CAAC;QACjG,OAAO,oBAAoB,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;IACxE,CAAC;IAED,+FAA+F;IAC/F,OAAO,CAAC,MAAc,EAAE,GAAmB,EAAE,SAAkB,EAAE,gBAAgD;QAC/G,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;YAClE,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CACzC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EACR,CAAC,GAAY,EAAE,EAAE,GAAG,MAAM,GAAG,YAAY,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,gBAAgB,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAC5L,CAAC;YACF,OAAO,EAAE,EAAE,EAAE,IAAa,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,CAAC;QAC/E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,EAAE,EAAE,KAAc;gBAClB,KAAK,EAAE,GAAG,YAAY,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,gBAAgB,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC9H,CAAC;QACJ,CAAC;IACH,CAAC;IAED,sFAAsF;IACtF,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,uEAAuE;IACvE,iBAAiB;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,kEAAkE;IAClE,cAAc;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;;;;;OAOG;IACH,WAAW,CAAC,OAGgB;QAC1B,MAAM,UAAU,GAAG,eAAe,CAAC,OAAkC,CAAC,CAAC;QACvE,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,UAAU,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACvC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;YACtC,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC;QAC1E,CAAC;QACD,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACtC,CAAC;QACD,IAAI,UAAU,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACzC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;QAC5C,CAAC;QACD,IAAI,UAAU,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YAC5C,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC;YAChD,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;QACpF,CAAC;QACD,IAAI,UAAU,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YAC5C,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;QACpF,CAAC;QACD,IAAI,UAAU,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YACjD,IAAI,CAAC,mBAAmB,GAAG,UAAU,CAAC,mBAAmB,CAAC;QAC5D,CAAC;QACD,IAAI,UAAU,CAAC,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,cAAc,KAAK,SAAS,IAAI,UAAU,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACjI,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC;gBACvC,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,UAAU;gBAChF,SAAS,EAAE,UAAU,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,SAAS;gBAClF,YAAY,EAAE,UAAU,CAAC,iBAAiB,IAAI,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,YAAY;aAC5F,CAAC,CAAC;QACL,CAAC;QACD,IAAI,UAAU,CAAC,WAAW,EAAE,qBAAqB,EAAE,CAAC;YAClD,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC;QACnF,CAAC;QACD,IAAI,UAAU,CAAC,WAAW,EAAE,sBAAsB,EAAE,CAAC;YACnD,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,WAAW,CAAC,sBAAyD,CAAC,CAAC;QACzH,CAAC;QACD,IAAI,UAAU,CAAC,WAAW,EAAE,uBAAuB,EAAE,CAAC;YACpD,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,+DAA+D;IAC/D,iBAAiB;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,2EAA2E;IAC3E,WAAW,CAAC,KAAY;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,wEAAwE;IACxE,gBAAgB,CAAC,QAAiD;QAChE,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,2EAA2E;IAC3E,SAAS,CAAC,KAAY,EAAE,IAAY;QAClC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,4CAA4C;IAC5C,gBAAgB;QACd,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;IAChC,CAAC;IAED,2DAA2D;IAC3D,yBAAyB,CAAC,QAA2B;QACnD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,uCAAuC;IACvC,2BAA2B,CAAC,EAAU;QACpC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,+DAA+D;IAC/D,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;IAC1C,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,MAAc,EAAE,KAAY,EAAE,GAAmB,EAAE,QAAyB,EAC5E,SAAkB,EAAE,gBAAgG,EACpH,aAA2B,EAC3B,OAAkB;QAElB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACxD,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,YAAY,GAAG,aAAa,IAAI,IAAI,CAAC,YAAY,CAAC;QAExD,IAAI,UAAqC,CAAC;QAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC;QACrD,IAAI,WAAW,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAsB,CAAC,CAAC;YACvE,IAAI,SAAS;gBAAE,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,eAAe,GAAG,OAAO,IAAI,IAAI,QAAQ,EAAE,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,CAAC;QACtD,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAEhD,MAAM,gBAAgB,GAAgB;YACpC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5F,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,iBAAiB,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAA2I,CAAC;SAC1O,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,cAAc,CAAC,gBAAgB,EAAE;gBACrC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ;gBAC5B,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjD,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/D,QAAQ;gBACR,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,iBAAiB,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAA2I,CAAC;gBACzO,SAAS,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAmD,EAAE,OAAO,CAAC;gBAC3G,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAiB,CAAC;gBAC5E,uBAAuB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,CACxE,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC;gBAC5E,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,CAC/D,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC;aACpE,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAEO,uBAAuB,CAAC,GAAuB,EAAE,GAAU,EAAE,OAAe,EAAE,QAAgB,EAAE,MAAc,EAAE,OAAe;QACrI,OAAO,qBAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC9E,CAAC;IAEO,QAAQ,CAAC,GAAU,EAAE,CAAiB,EAAE,MAAc,EAAE,KAAa,EAAE,GAAY,EAAE,OAAO,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,GAAY;QAClI,OAAO,eAAe,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC/F,CAAC;CAEF"}
1
+ {"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../src/kernel/kernel.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { RunId, RequestContext, KnownRunEvent } from "@vinhnt-sdk/schema";
1
+ import type { RunId, RequestContext, KnownRunEvent, ToolChoice, ResponseFormat, StreamOptions } from "@vinhnt-sdk/schema";
2
2
  import type { ChatMessage, ModelProvider, ModelResponse, ModelRegistry } from "../model.js";
3
3
  import type { ToolDefinition } from "@vinhnt-sdk/tools";
4
4
  import type { PluginManager } from "../plugin.js";
@@ -14,7 +14,33 @@ export interface ModelCallerDeps {
14
14
  emitEvent(event: Omit<KnownRunEvent, "sequence">, persist?: boolean): Promise<void>;
15
15
  modelForRun(runId: RunId): ModelProvider | undefined;
16
16
  setModelForRun(runId: RunId, model: ModelProvider): void;
17
- getAvailableTools(): readonly ToolDefinition[];
17
+ getAvailableTools(runId: RunId): readonly ToolDefinition[];
18
+ /** OpenAI: tool_choice — controls tool calling behavior. */
19
+ readonly toolChoice?: ToolChoice;
20
+ /** OpenAI: parallel_tool_calls — whether to allow parallel tool calls. */
21
+ readonly parallelToolCalls?: boolean;
22
+ /** OpenAI: response_format — controls output format. */
23
+ readonly responseFormat?: ResponseFormat;
24
+ /** OpenAI: stream_options — options for streaming. */
25
+ readonly streamOptions?: StreamOptions;
26
+ /** OpenAI: presence_penalty — penalizes tokens based on presence. */
27
+ readonly presencePenalty?: number;
28
+ /** OpenAI: frequency_penalty — penalizes tokens based on frequency. */
29
+ readonly frequencyPenalty?: number;
30
+ /** OpenAI: logit_bias — token-level logit biases. */
31
+ readonly logitBias?: Record<string, number>;
32
+ /** OpenAI: seed — for reproducible outputs. */
33
+ readonly seed?: number;
34
+ /** OpenAI: user — end-user identifier. */
35
+ readonly user?: string;
36
+ /** OpenAI: logprobs — return log probabilities. */
37
+ readonly logprobs?: boolean;
38
+ /** OpenAI: top_logprobs — number of top logprobs per token. */
39
+ readonly topLogprobs?: number;
40
+ /** OpenAI: max_completion_tokens — for o-series models. */
41
+ readonly maxCompletionTokens?: number;
42
+ /** OpenAI: reasoning_effort — controls reasoning token budget. */
43
+ readonly reasoningEffort?: string;
18
44
  }
19
45
  export declare class ModelCaller {
20
46
  private readonly deps;
@@ -1 +1 @@
1
- {"version":3,"file":"model-caller.d.ts","sourceRoot":"","sources":["../../src/kernel/model-caller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAgB,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC1G,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,aAAa,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,CAAC;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,CAAC;IAClD,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpF,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,aAAa,GAAG,SAAS,CAAC;IACrD,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;IACzD,iBAAiB,IAAI,SAAS,cAAc,EAAE,CAAC;CAChD;AAkBD,qBAAa,WAAW;IACV,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,eAAe;IAElD,6DAA6D;IAC7D,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAI3C,+EAA+E;IAC/E,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,WAAW,GAAG,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,GAAG,IAAI;IAMnH,eAAe,IAAI,aAAa;IAIhC,iBAAiB,CAAC,KAAK,EAAE;QAAE,OAAO,EAAE;YAAE,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,aAAa;IAavF,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,aAAa;IAIrC,eAAe,CACnB,QAAQ,EAAE,WAAW,EAAE,EACvB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,WAAW,EACnB,cAAc,CAAC,EAAE,MAAM,EACvB,YAAY,CAAC,EAAE,OAAO,GACrB,OAAO,CAAC,aAAa,CAAC;IAgGnB,cAAc,CAClB,QAAQ,EAAE,WAAW,EAAE,EACvB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC;IA4DhB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS;CAOpG"}
1
+ {"version":3,"file":"model-caller.d.ts","sourceRoot":"","sources":["../../src/kernel/model-caller.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { getTextContent } from "@vinhnt-sdk/schema";
1
2
  function emitTC(runId, traceId, data) {
2
3
  return { id: crypto.randomUUID(), runId, type: "token.counted", occurredAt: new Date().toISOString(), traceId, data };
3
4
  }
@@ -43,12 +44,26 @@ export class ModelCaller {
43
44
  return this.deps.modelForRun(runId) ?? this.deps.defaultModel;
44
45
  }
45
46
  async callModelStream(messages, step, runId, ctx, signal, agentMaxTokens, disableTools) {
46
- const availableTools = disableTools ? [] : this.deps.getAvailableTools();
47
+ const availableTools = disableTools ? [] : this.deps.getAvailableTools(runId);
47
48
  const thinkingBudget = this.deps.thinkingBudget > 0 ? this.deps.thinkingBudget : undefined;
48
49
  let request = {
49
50
  messages, tools: availableTools, maxTokens: agentMaxTokens ?? this.deps.maxTokens,
50
51
  ...(thinkingBudget !== undefined ? { thinkingBudget } : {}),
51
52
  ...(this.deps.thinkingPrompt ? { thinkingPrompt: this.deps.thinkingPrompt } : {}),
53
+ // OpenAI fields passthrough
54
+ ...(this.deps.toolChoice !== undefined ? { toolChoice: this.deps.toolChoice } : {}),
55
+ ...(this.deps.parallelToolCalls !== undefined ? { parallelToolCalls: this.deps.parallelToolCalls } : {}),
56
+ ...(this.deps.responseFormat !== undefined ? { responseFormat: this.deps.responseFormat } : {}),
57
+ ...(this.deps.streamOptions !== undefined ? { streamOptions: this.deps.streamOptions } : {}),
58
+ ...(this.deps.presencePenalty !== undefined ? { presencePenalty: this.deps.presencePenalty } : {}),
59
+ ...(this.deps.frequencyPenalty !== undefined ? { frequencyPenalty: this.deps.frequencyPenalty } : {}),
60
+ ...(this.deps.logitBias !== undefined ? { logitBias: this.deps.logitBias } : {}),
61
+ ...(this.deps.seed !== undefined ? { seed: this.deps.seed } : {}),
62
+ ...(this.deps.user !== undefined ? { user: this.deps.user } : {}),
63
+ ...(this.deps.logprobs !== undefined ? { logprobs: this.deps.logprobs } : {}),
64
+ ...(this.deps.topLogprobs !== undefined ? { topLogprobs: this.deps.topLogprobs } : {}),
65
+ ...(this.deps.maxCompletionTokens !== undefined ? { maxCompletionTokens: this.deps.maxCompletionTokens } : {}),
66
+ ...(this.deps.reasoningEffort !== undefined ? { reasoningEffort: this.deps.reasoningEffort } : {}),
52
67
  };
53
68
  const chatParamsResult = await this.deps.pluginManager?.fireHook("onChatParams", {
54
69
  request: request,
@@ -56,6 +71,13 @@ export class ModelCaller {
56
71
  if (chatParamsResult?.modified?.request) {
57
72
  request = chatParamsResult.modified.request;
58
73
  }
74
+ // P1-F: onBeforeModelCall — intercept/modify the request right before the model call.
75
+ const beforeCallResult = await this.deps.pluginManager?.fireHook("onBeforeModelCall", {
76
+ request: request,
77
+ });
78
+ if (beforeCallResult?.modified?.request) {
79
+ request = beforeCallResult.modified.request;
80
+ }
59
81
  const model = this.getActiveModel(runId);
60
82
  const modelName = model.model ?? "unknown";
61
83
  const startTime = performance.now();
@@ -63,24 +85,31 @@ export class ModelCaller {
63
85
  let outputTokens = 0;
64
86
  const modelHasTokens = !!model.countTokens;
65
87
  if (modelHasTokens) {
66
- inputTokens = messages.reduce((sum, m) => sum + model.countTokens(m.content), 0);
88
+ inputTokens = messages.reduce((sum, m) => sum + model.countTokens(getTextContent(m.content)), 0);
67
89
  await this.deps.emitEvent(emitTC(runId, ctx.traceId, { inputTokens, step, source: "local" }));
68
90
  }
69
91
  let content = "";
70
92
  const toolCalls = [];
71
93
  if (!model.stream) {
72
94
  const res = await model.generate(request, signal);
95
+ // P1-F: onAfterModelCall — intercept/modify the response after the model call.
96
+ const afterCallResult = await this.deps.pluginManager?.fireHook("onAfterModelCall", {
97
+ response: res,
98
+ });
99
+ const effectiveRes = (afterCallResult?.modified?.response ?? res);
73
100
  let source = "api";
74
- if (res.usage && res.usage.inputTokens > 0 && res.usage.outputTokens > 0) {
75
- inputTokens = res.usage.inputTokens;
76
- outputTokens = res.usage.outputTokens;
101
+ const input = effectiveRes.usage?.inputTokens ?? effectiveRes.usage?.promptTokens ?? 0;
102
+ const output = effectiveRes.usage?.outputTokens ?? effectiveRes.usage?.completionTokens ?? 0;
103
+ if (input > 0 && output > 0) {
104
+ inputTokens = input;
105
+ outputTokens = output;
77
106
  }
78
- else if (modelHasTokens && res.content) {
79
- const localOut = model.countTokens(res.content);
80
- if (res.usage?.inputTokens)
81
- inputTokens = res.usage.inputTokens;
107
+ else if (modelHasTokens && effectiveRes.content) {
108
+ const localOut = model.countTokens(effectiveRes.content);
109
+ if (input > 0)
110
+ inputTokens = input;
82
111
  outputTokens = localOut;
83
- source = localOut === (res.usage?.outputTokens ?? -1) ? "api" : "local";
112
+ source = localOut === (output || -1) ? "api" : "local";
84
113
  }
85
114
  await this.deps.emitEvent(emitTC(runId, ctx.traceId, { inputTokens, outputTokens, step, source }));
86
115
  const durationMs = Math.round(performance.now() - startTime);
@@ -88,7 +117,7 @@ export class ModelCaller {
88
117
  await this.deps.emitEvent(emitMC(runId, ctx.traceId, { inputTokens, outputTokens, cost, model: modelName, durationMs, step }));
89
118
  const p = model?.pricing;
90
119
  this.deps.logger?.info(`[llm] ${modelName}: ${inputTokens} in, ${outputTokens} out, $${cost.toFixed(6)}, ${durationMs}ms${p ? ` ($${p.input}/${p.output} per 1M)` : ""}`);
91
- return res;
120
+ return effectiveRes;
92
121
  }
93
122
  for await (const event of model.stream(request, signal)) {
94
123
  if (signal?.aborted)
@@ -121,6 +150,12 @@ export class ModelCaller {
121
150
  outputTokens = model.countTokens(content);
122
151
  source = "local";
123
152
  }
153
+ // P1-F: onAfterModelCall — intercept/modify the response after streaming completes.
154
+ const streamedResponse = toolCalls.length > 0 ? { content, toolCalls } : { content };
155
+ const afterCallResult = await this.deps.pluginManager?.fireHook("onAfterModelCall", {
156
+ response: streamedResponse,
157
+ });
158
+ const effectiveRes = (afterCallResult?.modified?.response ?? streamedResponse);
124
159
  if (inputTokens > 0 || outputTokens > 0) {
125
160
  await this.deps.emitEvent(emitTC(runId, ctx.traceId, { inputTokens, outputTokens, step, source }));
126
161
  }
@@ -129,7 +164,7 @@ export class ModelCaller {
129
164
  await this.deps.emitEvent(emitMC(runId, ctx.traceId, { inputTokens, outputTokens, cost, model: modelName, durationMs, step }));
130
165
  const p = model?.pricing;
131
166
  this.deps.logger?.info(`[llm] ${modelName}: ${inputTokens} in, ${outputTokens} out, $${cost.toFixed(6)}, ${durationMs}ms${p ? ` ($${p.input}/${p.output} per 1M)` : ""}`);
132
- return toolCalls.length > 0 ? { content, toolCalls } : { content };
167
+ return effectiveRes;
133
168
  }
134
169
  async doThinkingStep(messages, step, runId, ctx, signal) {
135
170
  await this.deps.emitEvent({
@@ -1 +1 @@
1
- {"version":3,"file":"model-caller.js","sourceRoot":"","sources":["../../src/kernel/model-caller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-caller.js","sourceRoot":"","sources":["../../src/kernel/model-caller.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import type { RunId, AgentConfig } from "@vinhnt-sdk/schema";
2
2
  import type { ToolRisk, PermissionReply } from "@vinhnt-sdk/tools";
3
3
  import type { PluginManager } from "../plugin.js";
4
- import type { ApprovalStore } from "../permission/saved.js";
5
- import type { RunEventStore } from "../session/store.js";
6
- import type { EventBus } from "../event-bus/types.js";
4
+ import type { ApprovalStore } from "@vinhnt-sdk/permission";
5
+ import type { RunEventStore } from "@vinhnt-sdk/session";
6
+ import type { EventBus } from "@vinhnt-sdk/event";
7
7
  export type ApprovalDecision = "allow" | "deny" | "approval_required";
8
8
  export interface DynamicRule {
9
9
  toolName: string;
@@ -57,9 +57,11 @@ export declare class PermissionGate {
57
57
  /**
58
58
  * Ask the user to approve a tool call.
59
59
  * Routes through ApprovalStore and plugin hooks.
60
+ * When reply is "always", `savePatterns` are persisted as allow rules so
61
+ * future matching calls auto-approve (without opening the whole tool).
60
62
  * Returns "once", "always", or "reject".
61
63
  */
62
- askForTool(toolName: string, _toolId: string, runId: RunId, _sessionId: string, reason: string, _agentId: string, traceId: string, pluginManager?: PluginManager): Promise<PermissionReply>;
64
+ askForTool(toolName: string, _toolId: string, runId: RunId, _sessionId: string, reason: string, _agentId: string, traceId: string, pluginManager?: PluginManager, savePatterns?: readonly string[]): Promise<PermissionReply>;
63
65
  private askViaApprovalStore;
64
66
  /** Check whether a previously saved approval exists for this tool+agent. Returns false if a rejection exists. */
65
67
  checkSavedApproval(toolName: string, agentId?: string): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"permission-gate.d.ts","sourceRoot":"","sources":["../../src/kernel/permission-gate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permission-gate.d.ts","sourceRoot":"","sources":["../../src/kernel/permission-gate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAa,WAAW,EAA0C,MAAM,oBAAoB,CAAC;AAChH,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAOlD,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,MAAM,GAAG,mBAAmB,CAAC;AAEtE,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,CAAC;IAClD,QAAQ,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,CAAC;IAClD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACpD;AA+BD,qBAAa,cAAc;IAOb,OAAO,CAAC,QAAQ,CAAC,IAAI;IANjC,OAAO,CAAC,qBAAqB,CAAC,CAAc;IAC5C,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,aAAa,CAAC,CAA8C;IACpE,OAAO,CAAC,aAAa,CAAmF;IACxG,OAAO,CAAC,YAAY,CAAU;gBAED,IAAI,EAAE,kBAAkB;IAIrD,4EAA4E;IAC5E,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAI9C,0GAA0G;IAC1G,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI;IASlF;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI;IAYzE,kFAAkF;IAClF,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAIvC,mFAAmF;IACnF,gBAAgB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,GAAG,IAAI;IAI/E;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,qBAAqB;IAmEnH,+EAA+E;IAC/E,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO;IAMvF,iEAAiE;IACjE,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,WAAW,GAAG,OAAO;IAMzD;;;;;;OAMG;IACG,UAAU,CACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,aAAa,EAC7B,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,GAC/B,OAAO,CAAC,eAAe,CAAC;YAcb,mBAAmB;IA0DjC,iHAAiH;IACjH,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO;IAO/D,uEAAuE;IACvE,eAAe,IAAI,SAAS,WAAW,EAAE;IAIzC,oEAAoE;IACpE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAQtD,iEAAiE;IACjE,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;CAKxD"}
@@ -1,8 +1,8 @@
1
- import { evaluatePermission, checkRiskAllowed } from "../permission/checker.js";
1
+ import { evaluatePermission, checkRiskAllowed } from "@vinhnt-sdk/permission";
2
2
  import { wildcardMatch } from "@vinhnt-sdk/schema";
3
- import { buildPermissionRules } from "../permission/evaluator.js";
3
+ import { buildPermissionRules } from "@vinhnt-sdk/permission";
4
4
  import { commandPattern } from "@vinhnt-sdk/tools";
5
- import { PermissionRequested, PermissionReplied } from "@vinhnt-sdk/schema";
5
+ import { PermissionRequested, PermissionReplied } from "@vinhnt-sdk/event";
6
6
  const RISK_DECISIONS = {
7
7
  read: "allow",
8
8
  write: "approval_required",
@@ -24,7 +24,7 @@ function extractContextPattern(toolName, args) {
24
24
  }
25
25
  /** Split a `Tool(glob)` permission-pattern string into its parts. Returns null if malformed. */
26
26
  function parseToolPattern(expr) {
27
- const m = /^\s*([A-Za-z0-9_.\-]+)\s*\(\s*(.*?)\s*\)\s*$/.exec(expr);
27
+ const m = /^\s*([A-Za-z0-9_.-]+)\s*\(\s*(.*?)\s*\)\s*$/.exec(expr);
28
28
  if (!m) {
29
29
  const bare = expr.trim();
30
30
  if (!bare)
@@ -175,12 +175,22 @@ export class PermissionGate {
175
175
  /**
176
176
  * Ask the user to approve a tool call.
177
177
  * Routes through ApprovalStore and plugin hooks.
178
+ * When reply is "always", `savePatterns` are persisted as allow rules so
179
+ * future matching calls auto-approve (without opening the whole tool).
178
180
  * Returns "once", "always", or "reject".
179
181
  */
180
- async askForTool(toolName, _toolId, runId, _sessionId, reason, _agentId, traceId, pluginManager) {
182
+ async askForTool(toolName, _toolId, runId, _sessionId, reason, _agentId, traceId, pluginManager, savePatterns) {
181
183
  if (this.autoApproval)
182
184
  return "once";
183
- return this.askViaApprovalStore(toolName, runId, reason, traceId, pluginManager);
185
+ const reply = await this.askViaApprovalStore(toolName, runId, reason, traceId, pluginManager);
186
+ if (reply === "always" && savePatterns && savePatterns.length > 0) {
187
+ for (const pattern of savePatterns) {
188
+ if (!pattern || pattern === "*")
189
+ continue;
190
+ this.addDynamicRule({ toolName, pattern, decision: "allow" });
191
+ }
192
+ }
193
+ return reply;
184
194
  }
185
195
  async askViaApprovalStore(toolName, runId, reason, traceId, pluginManager) {
186
196
  const requestId = crypto.randomUUID();
@@ -1 +1 @@
1
- {"version":3,"file":"permission-gate.js","sourceRoot":"","sources":["../../src/kernel/permission-gate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permission-gate.js","sourceRoot":"","sources":["../../src/kernel/permission-gate.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAwB3E,MAAM,cAAc,GAAuC;IACzD,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,mBAAmB;IAC1B,WAAW,EAAE,MAAM;IACnB,QAAQ,EAAE,mBAAmB;CAC9B,CAAC;AAEF,SAAS,qBAAqB,CAAC,QAAgB,EAAE,IAA8B;IAC7E,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IAClD,IAAI,QAAQ,KAAK,iBAAiB,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;QACzB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE;YAAE,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC;IACxC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC;IACzD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,gGAAgG;AAChG,SAAS,gBAAgB,CAAC,IAAY;IACpC,MAAM,CAAC,GAAG,6CAA6C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnE,IAAI,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC1C,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;AACnD,CAAC;AAED,MAAM,OAAO,cAAc;IAOI;IANrB,qBAAqB,CAAe;IACpC,YAAY,GAAkB,EAAE,CAAC;IACjC,aAAa,CAA+C;IAC5D,aAAa,GAAgF,EAAE,CAAC;IAChG,YAAY,CAAU;IAE9B,YAA6B,IAAwB;QAAxB,SAAI,GAAJ,IAAI,CAAoB;QACnD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,mBAAmB,IAAI,KAAK,CAAC;IACxD,CAAC;IAED,4EAA4E;IAC5E,sBAAsB,CAAC,OAAgB;QACrC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;IAC9B,CAAC;IAED,0GAA0G;IAC1G,cAAc,CAAC,WAA4D;QACzE,MAAM,GAAG,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAC9C,IAAI,CAAC,qBAAqB,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAiB,EAAE,EAAE,CAAC,CAAC;YAC3D,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,GAAG,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5D,CAAC,CAAgB,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,KAAiD;QAChE,MAAM,MAAM,GAAgF,EAAE,CAAC;QAC/F,KAAK,MAAM,QAAQ,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAU,EAAE,CAAC;YACzD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;gBACzC,IAAI,OAAO,IAAI,KAAK,QAAQ;oBAAE,SAAS;gBACvC,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBACrC,IAAI,KAAK;oBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;IAC9B,CAAC;IAED,kFAAkF;IAClF,cAAc,CAAC,IAAiB;QAC9B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,mFAAmF;IACnF,gBAAgB,CAAC,SAAuD;QACtE,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,IAAY,EAAE,IAAc,EAAE,IAA8B,EAAE,KAAmB;QACzF,sEAAsE;QACtE,IAAI,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxE,MAAM,YAAY,GAAG,kBAAkB,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE,EAAE,QAAQ,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;YACrG,IAAI,YAAY,CAAC,QAAQ,KAAK,MAAM;gBAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,CAAC;YAC7F,IAAI,YAAY,CAAC,QAAQ,KAAK,KAAK;gBAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACnH,CAAC;QAED,mEAAmE;QACnE,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAClD,IAAI,OAA8F,CAAC;YACnG,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACtC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;oBACnE,OAAO,GAAG,IAAI,CAAC,CAAC,kBAAkB;gBACpC,CAAC;YACH,CAAC;YACD,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,OAAO,CAAC,QAAQ,KAAK,MAAM;oBAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,aAAa,EAAE,CAAC;gBAC/F,IAAI,OAAO,CAAC,QAAQ,KAAK,KAAK;oBAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,qBAAqB,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;gBAC3H,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,4BAA4B,EAAE,CAAC;YACjE,CAAC;QACH,CAAC;QAED,sCAAsC;QACtC,MAAM,KAAK,GAAG,KAAK,EAAE,WAAW,CAAC;QACjC,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;gBACvE,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM;oBAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;gBACjF,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK;oBAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;gBACrG,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;oBACzE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,eAAe,IAAI,uCAAuC,EAAE,CAAC;gBAC7G,CAAC;gBACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;YAED,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;gBAC3D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,4BAA4B,EAAE,CAAC;YAC/E,CAAC;YACD,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;gBAClF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,oCAAoC,EAAE,CAAC;YACvF,CAAC;YACD,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,eAAe,IAAI,uCAAuC,EAAE,CAAC;YAC7G,CAAC;QACH,CAAC;QAED,+DAA+D;QAC/D,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAClD,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBACvD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAE,CAAC;gBACnC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;oBACnE,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM;wBAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,0BAA0B,EAAE,CAAC;oBACzG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gBAC3B,CAAC;YACH,CAAC;QACH,CAAC;QAED,gEAAgE;QAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;QACpE,IAAI,QAAQ,KAAK,MAAM;YAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,IAAI,YAAY,IAAI,aAAa,EAAE,CAAC;QACvG,IAAI,QAAQ,KAAK,mBAAmB;YAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,IAAI,YAAY,IAAI,qBAAqB,EAAE,CAAC;QACjJ,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,+EAA+E;IAC/E,cAAc,CAAC,WAAmB,EAAE,YAAoB,EAAE,KAAmB;QAC3E,MAAM,KAAK,GAAG,KAAK,EAAE,WAAW,CAAC;QACjC,IAAI,CAAC,KAAK,EAAE,SAAS;YAAE,OAAO,IAAI,CAAC;QACnC,OAAO,CAAC,WAAW,GAAG,YAAY,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC;IACzD,CAAC;IAED,iEAAiE;IACjE,aAAa,CAAC,IAAY,EAAE,KAAmB;QAC7C,MAAM,KAAK,GAAG,KAAK,EAAE,WAAW,CAAC;QACjC,IAAI,CAAC,KAAK,EAAE,QAAQ;YAAE,OAAO,IAAI,CAAC;QAClC,OAAO,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,CACd,QAAgB,EAChB,OAAe,EACf,KAAY,EACZ,UAAkB,EAClB,MAAc,EACd,QAAgB,EAChB,OAAe,EACf,aAA6B,EAC7B,YAAgC;QAEhC,IAAI,IAAI,CAAC,YAAY;YAAE,OAAO,MAAM,CAAC;QAErC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;QAE9F,IAAI,KAAK,KAAK,QAAQ,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClE,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;gBACnC,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,GAAG;oBAAE,SAAS;gBAC1C,IAAI,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,QAAgB,EAChB,KAAY,EACZ,MAAc,EACd,OAAe,EACf,aAA6B;QAE7B,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,EAAe,CAAC;QACnD,MAAM,GAAG,GAAsB;YAC7B,EAAE,EAAE,SAAS;YACb,KAAK;YACL,QAAQ;YACR,QAAQ,EAAE,QAAQ;YAClB,MAAM;YACN,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACrC,CAAC;QAEF,4EAA4E;QAC5E,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3B,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,sBAAsB;YAC5D,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,OAAO;YAC7C,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;SAC9D,CAAC,CAAC;QAEf,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,mBAAmB,EAAE;gBAC9C,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;aAChE,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,KAAK,GAAoB,QAAQ,CAAC;QACtC,MAAM,UAAU,GAAG,MAAM,aAAa,EAAE,QAAQ,CAAC,iBAAiB,EAAE;YAClE,UAAU,EAAE,QAAQ,QAAQ,EAAE;YAC9B,QAAQ,EAAE,QAAQ;YAClB,MAAM;SACP,CAAC,CAAC;QACH,IAAI,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;YAChC,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAwB,CAAC;QACvD,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACnC,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACxD,CAAC;QAED,0EAA0E;QAC1E,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YAC3B,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,oBAAoB;YAC1D,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,OAAO;YAC7C,IAAI,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE;SACf,CAAC,CAAC;QAEf,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE;gBAC5C,SAAS,EAAE,KAAK;aACjB,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,iHAAiH;IACjH,kBAAkB,CAAC,QAAgB,EAAE,OAAgB;QACnD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;QACtC,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAC;QACzB,IAAI,KAAK,CAAC,cAAc,CAAC,QAAQ,QAAQ,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC;YAAE,OAAO,KAAK,CAAC;QAC9E,OAAO,KAAK,CAAC,aAAa,CAAC,QAAQ,QAAQ,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAED,uEAAuE;IACvE,eAAe;QACb,OAAO,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IAED,oEAAoE;IACpE,YAAY,CAAC,QAAgB,EAAE,OAAgB;QAC7C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC;YACpC,QAAQ,EAAE,QAAQ,QAAQ,EAAE;YAC5B,MAAM,EAAE,QAAQ;YAChB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChC,CAAC,CAAC;IACL,CAAC;IAED,iEAAiE;IACjE,aAAa,CAAC,QAAgB,EAAE,OAAgB;QAC9C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,CACpC,QAAQ,QAAQ,EAAE,EAAE,QAAQ,EAAE,OAAO,CACtC,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,26 @@
1
+ import type { AgentConfig, AgentId, RunId } from "@vinhnt-sdk/schema";
2
+ import type { ToolDefinition } from "@vinhnt-sdk/tools";
3
+ import type { ToolSaga } from "@vinhnt-sdk/tool-saga";
4
+ /**
5
+ * Mutable state that belongs to a single run — kept out of the kernel
6
+ * instance so concurrent runs never share (and clobber) each other's
7
+ * active agent, sub-agent depth, agent chain, tool cache or saga.
8
+ */
9
+ export interface RunContext {
10
+ /** The run this context belongs to. */
11
+ readonly runId: RunId;
12
+ /** Agent actively executing this run (may change during sub-agent traversal). */
13
+ agent: AgentConfig | undefined;
14
+ /** Current sub-agent nesting depth of this run. */
15
+ depth: number;
16
+ /** Agent ids already in this run's sub-agent call chain (cycle detection). */
17
+ agentChain: Set<AgentId>;
18
+ /** Per-run saga for tool compensation recording. */
19
+ saga: ToolSaga;
20
+ /** Per-run tool resolution cache, keyed by the agent it was built for. */
21
+ cachedTools: readonly ToolDefinition[] | null;
22
+ cachedToolsAgentId: AgentId | undefined;
23
+ }
24
+ /** Create a fresh per-run context. */
25
+ export declare function createRunContext(runId: RunId, agent: AgentConfig | undefined, saga: ToolSaga): RunContext;
26
+ //# sourceMappingURL=run-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-context.d.ts","sourceRoot":"","sources":["../../src/kernel/run-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,iFAAiF;IACjF,KAAK,EAAE,WAAW,GAAG,SAAS,CAAC;IAC/B,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;IACzB,oDAAoD;IACpD,IAAI,EAAE,QAAQ,CAAC;IACf,0EAA0E;IAC1E,WAAW,EAAE,SAAS,cAAc,EAAE,GAAG,IAAI,CAAC;IAC9C,kBAAkB,EAAE,OAAO,GAAG,SAAS,CAAC;CACzC;AAED,sCAAsC;AACtC,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,WAAW,GAAG,SAAS,EAC9B,IAAI,EAAE,QAAQ,GACb,UAAU,CAUZ"}
@@ -0,0 +1,13 @@
1
+ /** Create a fresh per-run context. */
2
+ export function createRunContext(runId, agent, saga) {
3
+ return {
4
+ runId,
5
+ agent,
6
+ depth: 0,
7
+ agentChain: new Set(),
8
+ saga,
9
+ cachedTools: null,
10
+ cachedToolsAgentId: undefined,
11
+ };
12
+ }
13
+ //# sourceMappingURL=run-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-context.js","sourceRoot":"","sources":["../../src/kernel/run-context.ts"],"names":[],"mappings":"AAyBA,sCAAsC;AACtC,MAAM,UAAU,gBAAgB,CAC9B,KAAY,EACZ,KAA8B,EAC9B,IAAc;IAEd,OAAO;QACL,KAAK;QACL,KAAK;QACL,KAAK,EAAE,CAAC;QACR,UAAU,EAAE,IAAI,GAAG,EAAE;QACrB,IAAI;QACJ,WAAW,EAAE,IAAI;QACjB,kBAAkB,EAAE,SAAS;KAC9B,CAAC;AACJ,CAAC"}