loopforge 3.0.0 → 3.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/README.md +128 -145
  2. package/dist/audit.d.ts +50 -0
  3. package/dist/audit.d.ts.map +1 -0
  4. package/dist/audit.js +158 -0
  5. package/dist/audit.js.map +1 -0
  6. package/dist/canonical-state.d.ts +28 -20
  7. package/dist/canonical-state.d.ts.map +1 -1
  8. package/dist/canonical-state.js +82 -173
  9. package/dist/canonical-state.js.map +1 -1
  10. package/dist/cli.d.ts.map +1 -1
  11. package/dist/cli.js +25 -16
  12. package/dist/cli.js.map +1 -1
  13. package/dist/cognitive-governance.d.ts +25 -33
  14. package/dist/cognitive-governance.d.ts.map +1 -1
  15. package/dist/cognitive-governance.js +38 -138
  16. package/dist/cognitive-governance.js.map +1 -1
  17. package/dist/enforcement-gate.d.ts +76 -0
  18. package/dist/enforcement-gate.d.ts.map +1 -0
  19. package/dist/enforcement-gate.js +1071 -0
  20. package/dist/enforcement-gate.js.map +1 -0
  21. package/dist/engine.d.ts +99 -0
  22. package/dist/engine.d.ts.map +1 -0
  23. package/dist/engine.js +839 -0
  24. package/dist/engine.js.map +1 -0
  25. package/dist/evidence-claims.d.ts +50 -0
  26. package/dist/evidence-claims.d.ts.map +1 -0
  27. package/dist/evidence-claims.js +134 -0
  28. package/dist/evidence-claims.js.map +1 -0
  29. package/dist/evidence-provider.d.ts +21 -23
  30. package/dist/evidence-provider.d.ts.map +1 -1
  31. package/dist/evidence-provider.js +74 -34
  32. package/dist/evidence-provider.js.map +1 -1
  33. package/dist/generate-schema.js +1 -84
  34. package/dist/generate-schema.js.map +1 -1
  35. package/dist/index.d.ts +19 -22
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +16 -15
  38. package/dist/index.js.map +1 -1
  39. package/dist/loop-compiler.d.ts +41 -3
  40. package/dist/loop-compiler.d.ts.map +1 -1
  41. package/dist/loop-compiler.js +632 -273
  42. package/dist/loop-compiler.js.map +1 -1
  43. package/dist/loop-extras-parser.d.ts +2 -2
  44. package/dist/loop-extras-parser.d.ts.map +1 -1
  45. package/dist/loop-extras-parser.js +2 -2
  46. package/dist/loop-extras-parser.js.map +1 -1
  47. package/dist/loop-projection.d.ts +26 -0
  48. package/dist/loop-projection.d.ts.map +1 -0
  49. package/dist/loop-projection.js +142 -0
  50. package/dist/loop-projection.js.map +1 -0
  51. package/dist/loop-store.d.ts +112 -24
  52. package/dist/loop-store.d.ts.map +1 -1
  53. package/dist/loop-store.js +365 -218
  54. package/dist/loop-store.js.map +1 -1
  55. package/dist/mcp/round-lifecycle.d.ts +216 -0
  56. package/dist/mcp/round-lifecycle.d.ts.map +1 -0
  57. package/dist/mcp/round-lifecycle.js +926 -0
  58. package/dist/mcp/round-lifecycle.js.map +1 -0
  59. package/dist/mcp/server.d.ts +2 -1
  60. package/dist/mcp/server.d.ts.map +1 -1
  61. package/dist/mcp/server.js +28 -42
  62. package/dist/mcp/server.js.map +1 -1
  63. package/dist/mcp/session.d.ts +53 -101
  64. package/dist/mcp/session.d.ts.map +1 -1
  65. package/dist/mcp/session.js +306 -1105
  66. package/dist/mcp/session.js.map +1 -1
  67. package/dist/mcp/tools.d.ts +13 -16
  68. package/dist/mcp/tools.d.ts.map +1 -1
  69. package/dist/mcp/tools.js +479 -413
  70. package/dist/mcp/tools.js.map +1 -1
  71. package/dist/policy-metrics.d.ts +12 -17
  72. package/dist/policy-metrics.d.ts.map +1 -1
  73. package/dist/policy-metrics.js +95 -161
  74. package/dist/policy-metrics.js.map +1 -1
  75. package/dist/policy.d.ts +44 -35
  76. package/dist/policy.d.ts.map +1 -1
  77. package/dist/policy.js +31 -115
  78. package/dist/policy.js.map +1 -1
  79. package/dist/prompt-assembler.d.ts +37 -6
  80. package/dist/prompt-assembler.d.ts.map +1 -1
  81. package/dist/prompt-assembler.js +389 -160
  82. package/dist/prompt-assembler.js.map +1 -1
  83. package/dist/prompt-policy.d.ts +1 -8
  84. package/dist/prompt-policy.d.ts.map +1 -1
  85. package/dist/prompt-policy.js +8 -26
  86. package/dist/prompt-policy.js.map +1 -1
  87. package/dist/protocol.d.ts +357 -229
  88. package/dist/protocol.d.ts.map +1 -1
  89. package/dist/protocol.js +139 -15
  90. package/dist/protocol.js.map +1 -1
  91. package/dist/replay.d.ts +5 -13
  92. package/dist/replay.d.ts.map +1 -1
  93. package/dist/replay.js +19 -55
  94. package/dist/replay.js.map +1 -1
  95. package/dist/round-coordinator.d.ts +20 -24
  96. package/dist/round-coordinator.d.ts.map +1 -1
  97. package/dist/round-coordinator.js +99 -92
  98. package/dist/round-coordinator.js.map +1 -1
  99. package/dist/round-driver.d.ts +14 -13
  100. package/dist/round-driver.d.ts.map +1 -1
  101. package/dist/round-driver.js +26 -14
  102. package/dist/round-driver.js.map +1 -1
  103. package/dist/round-transaction.d.ts +15 -18
  104. package/dist/round-transaction.d.ts.map +1 -1
  105. package/dist/round-transaction.js +38 -47
  106. package/dist/round-transaction.js.map +1 -1
  107. package/dist/self-eval.d.ts +53 -0
  108. package/dist/self-eval.d.ts.map +1 -0
  109. package/dist/self-eval.js +284 -0
  110. package/dist/self-eval.js.map +1 -0
  111. package/dist/storage.d.ts +9 -4
  112. package/dist/storage.d.ts.map +1 -1
  113. package/dist/storage.js +18 -6
  114. package/dist/storage.js.map +1 -1
  115. package/dist/token-utils.d.ts +15 -3
  116. package/dist/token-utils.d.ts.map +1 -1
  117. package/dist/token-utils.js +24 -5
  118. package/dist/token-utils.js.map +1 -1
  119. package/dist/verification-gate.d.ts +108 -0
  120. package/dist/verification-gate.d.ts.map +1 -0
  121. package/dist/verification-gate.js +971 -0
  122. package/dist/verification-gate.js.map +1 -0
  123. package/loop_policy.json +44 -15
  124. package/package.json +5 -10
  125. package/skills/perception/SKILL.md +182 -199
  126. package/dist/canonical-event-writer.d.ts +0 -20
  127. package/dist/canonical-event-writer.d.ts.map +0 -1
  128. package/dist/canonical-event-writer.js +0 -131
  129. package/dist/canonical-event-writer.js.map +0 -1
  130. package/dist/compiler-subgoals.d.ts +0 -7
  131. package/dist/compiler-subgoals.d.ts.map +0 -1
  132. package/dist/compiler-subgoals.js +0 -93
  133. package/dist/compiler-subgoals.js.map +0 -1
  134. package/dist/derive-id.d.ts +0 -12
  135. package/dist/derive-id.d.ts.map +0 -1
  136. package/dist/derive-id.js +0 -31
  137. package/dist/derive-id.js.map +0 -1
  138. package/dist/mcp/session-projection.d.ts +0 -5
  139. package/dist/mcp/session-projection.d.ts.map +0 -1
  140. package/dist/mcp/session-projection.js +0 -18
  141. package/dist/mcp/session-projection.js.map +0 -1
  142. package/dist/mcp/session-queue.d.ts +0 -3
  143. package/dist/mcp/session-queue.d.ts.map +0 -1
  144. package/dist/mcp/session-queue.js +0 -18
  145. package/dist/mcp/session-queue.js.map +0 -1
  146. package/dist/mcp/session-types.d.ts +0 -72
  147. package/dist/mcp/session-types.d.ts.map +0 -1
  148. package/dist/mcp/session-types.js +0 -2
  149. package/dist/mcp/session-types.js.map +0 -1
  150. package/dist/round-commit-store.d.ts +0 -12
  151. package/dist/round-commit-store.d.ts.map +0 -1
  152. package/dist/round-commit-store.js +0 -13
  153. package/dist/round-commit-store.js.map +0 -1
  154. package/dist/round-gate.d.ts +0 -31
  155. package/dist/round-gate.d.ts.map +0 -1
  156. package/dist/round-gate.js +0 -259
  157. package/dist/round-gate.js.map +0 -1
  158. package/dist/round-recovery.d.ts +0 -17
  159. package/dist/round-recovery.d.ts.map +0 -1
  160. package/dist/round-recovery.js +0 -117
  161. package/dist/round-recovery.js.map +0 -1
  162. package/dist/round-report.d.ts +0 -16
  163. package/dist/round-report.d.ts.map +0 -1
  164. package/dist/round-report.js +0 -401
  165. package/dist/round-report.js.map +0 -1
  166. package/dist/runtime-services.d.ts +0 -59
  167. package/dist/runtime-services.d.ts.map +0 -1
  168. package/dist/runtime-services.js +0 -460
  169. package/dist/runtime-services.js.map +0 -1
  170. package/dist/vault-format.d.ts +0 -4
  171. package/dist/vault-format.d.ts.map +0 -1
  172. package/dist/vault-format.js +0 -4
  173. package/dist/vault-format.js.map +0 -1
  174. package/dist/vault-types.d.ts +0 -24
  175. package/dist/vault-types.d.ts.map +0 -1
  176. package/dist/vault-types.js +0 -2
  177. package/dist/vault-types.js.map +0 -1
  178. package/loopforge-policy.json +0 -340
@@ -0,0 +1 @@
1
+ {"version":3,"file":"round-lifecycle.js","sourceRoot":"","sources":["../../src/mcp/round-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EACL,oCAAoC,EACpC,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EACL,IAAI,EACJ,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AAUxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EACL,WAAW,EACX,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAgHrD,8EAA8E;AAE9E,MAAM,UAAU,gBAAgB,CAC9B,OAAmB,EACnB,QAAyB,EACzB,iBAAsC;IAEtC,MAAM,GAAG,GAA4B;QACnC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,IAAI,CAAC,YAAY;QACvB,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,IAAI;QAChB,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,OAAO,CAAC,MAAM;QACvB,KAAK,EAAE,OAAO,CAAC,YAAY;QAC3B,UAAU,EAAE,OAAO,CAAC,SAAS;QAC7B,kBAAkB,EAAE,iBAAiB,IAAI,EAAE;KAC5C,CAAC;IAEF,IAAI,QAAQ,EAAE,CAAC;QACb,GAAG,CAAC,iBAAiB,GAAG,mBAAmB,CAAC;YAC1C,KAAK,EAAE,OAAO,CAAC,YAAY,GAAG,CAAC;YAC/B,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,cAAc,EAAE,QAAQ,CAAC,cAAc;YACvC,qBAAqB,EAAE,QAAQ,CAAC,qBAAqB;YACrD,mBAAmB,EAAE,EAAE;YACvB,kDAAkD;YAClD,6DAA6D;YAC7D,sBAAsB,EAAE;gBACtB,GAAG,IAAI,GAAG,CAAC;oBACT,GAAG,CAAC,QAAQ,CAAC,sBAAsB,IAAI,EAAE,CAAC;oBAC1C,GAAG,CAAC,QAAQ,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;iBAC7G,CAAC;aACH;YACD,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB,IAAI,EAAE;YACzD,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB,IAAI,EAAE;YACjD,yBAAyB;YACzB,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB,IAAI,SAAS;YAC5D,sBAAsB;YACtB,qBAAqB,EAAE,QAAQ,CAAC,qBAAqB,IAAI,EAAE;YAC3D,wBAAwB,EAAE,QAAQ,CAAC,wBAAwB,IAAI,EAAE;YACjE,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB,IAAI,EAAE;YACnD,0DAA0D;YAC1D,cAAc,EAAE,QAAQ,CAAC,cAAc,IAAI,EAAE;YAC7C,6BAA6B;YAC7B,sBAAsB,EAAE,QAAQ,CAAC,sBAAsB,IAAI,KAAK;YAChE,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB,IAAI,EAAE;YACjD,sCAAsC;YACtC,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,2BAA2B;YAC3B,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB,IAAI,EAAE;YACrD,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB,IAAI,EAAE;YACjD,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB,IAAI,EAAE;YACnD,4BAA4B;YAC5B,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;YACjD,sDAAsD;YACtD,eAAe,EAAE,QAAQ,CAAC,eAAe;YACzC,0DAA0D;YAC1D,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB,IAAI,EAAE;SACpD,CAAC,CAAC;IACL,CAAC;IAED,OAAO,GAAuB,CAAC;AACjC,CAAC;AAED,8EAA8E;AAE9E,MAAM,OAAO,cAAc;IACR,KAAK,CAAY;IACjB,YAAY,CAAgC;IAC5C,QAAQ,CAAkB;IAC1B,aAAa,CAAwB;IACrC,OAAO,CAAS;IAChB,OAAO,CAAS;IAChB,UAAU,CAA4C;IAEvE,YAAY,IAAwB;QAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACpC,CAAC;IAED;;0EAEsE;IACtE,IAAI,CAAC,OAAmB;QACtB,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,OAAO;QAC/B,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC;QACjD,MAAM,YAAY,GAAe;YAC7B,OAAO,EAAE,QAAQ,OAAO,CAAC,MAAM,UAAU;YACzC,SAAS,EAAE,eAAe;YAC1B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO,EAAE,OAAO,CAAC,MAAM;YACvB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,YAAY,EAAE;gBACZ,UAAU,EAAE,OAAO,CAAC,SAAS;gBAC7B,aAAa,EAAE,OAAO,CAAC,YAAY;gBACnC,UAAU,EAAE,OAAO,CAAC,SAAS;gBAC7B,kBAAkB,EAAE,OAAO,CAAC,iBAAiB;gBAC7C,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,UAAU,EAAE,OAAO,CAAC,SAAS;gBAC7B,gCAAgC;gBAChC,sBAAsB,EAAE,OAAO,CAAC,qBAAqB;gBACrD,oBAAoB,EAAE,OAAO,CAAC,kBAAkB;gBAChD,8BAA8B;gBAC9B,0BAA0B,EAAE,OAAO,CAAC,wBAAwB;gBAC5D,6DAA6D;gBAC7D,uBAAuB,EAAE,OAAO,CAAC,qBAAqB;gBACtD,2DAA2D;gBAC3D,yBAAyB,EAAE,OAAO,CAAC,sBAAsB,IAAI,IAAI;gBACjE,yCAAyC;gBACzC,cAAc,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;gBAC7C,cAAc,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;gBAC5C,cAAc,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;gBAC7C,aAAa,EAAE,OAAO,CAAC,YAAY,IAAI,EAAE;gBACzC,0CAA0C;gBAC1C,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAC5C,gBAAgB,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;aAC9D;SACF,CAAC;QACJ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE;YACnC,kBAAkB,EAAE,IAAI,CAAC,OAAO;SACjC,CAAC,CAAC;IACL,CAAC;IAED;;kDAE8C;IAC9C,kBAAkB,CAChB,KAAiB,EACjB,WAAW,GAAG,KAAK;QAEnB,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAA4B,CAAC;QACtE,MAAM,MAAM,GAAI,OAAO,CAAC,MAAiB,IAAI,SAAS,CAAC;QACvD,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,WAAW,IAAI,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;YAClE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,OAAiB,CAAC;QACvC,uEAAuE;QACvE,mEAAmE;QACnE,wEAAwE;QACxE,uEAAuE;QACvE,8CAA8C;QAC9C,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,YAAY,GAAI,OAAO,CAAC,aAAwB,IAAI,CAAC,CAAC;QAC5D,MAAM,iBAAiB,GACpB,OAAO,CAAC,kBAAgC,IAAK,OAAO,CAAC,kBAAgC,IAAI,EAAE,CAAC;QAC/F,MAAM,IAAI,GAAI,KAAK,CAAC,IAAe,IAAI,EAAE,CAAC;QAC1C,MAAM,SAAS,GACZ,OAAO,CAAC,UAAqB,IAAI,SAAS,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC;QAClE,MAAM,aAAa,GAAG,6BAA6B,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC5E,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,iBAAiB,CAC1D,SAAS,EAAE,CAAC,QAAQ,CAAC,SAAS,CAC/B,CAAC,OAAO,EAAE,CAAC;QACZ,MAAM,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;QAC7C,MAAM,YAAY,GAChB,aAAa,KAAK,IAAI;YACtB,OAAO,aAAa,KAAK,QAAQ;YACjC,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC;YAC7B,OAAQ,aAAyC,CAAC,OAAO,KAAK,SAAS;YACvE,OAAQ,aAAyC,CAAC,cAAc,KAAK,QAAQ;YAC3E,CAAC,CAAC,aAA+B;YACjC,CAAC,CAAC,SAAS,CAAC;QAEhB,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/C,OAAO;YACL,SAAS,EAAE,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ,IAAI,OAAO,CAAC,UAAU;gBACrE,CAAC,CAAC,OAAO,CAAC,UAAU;gBACpB,CAAC,CAAC,UAAU,EAAE;YAChB,MAAM,EAAE,IAAI,EAAE,MAAM;YACpB,YAAY,EAAE,SAAS,EAAE,iBAAiB;YAC1C,MAAM,EAAE,MAA8B;YACtC,SAAS,EAAG,OAAO,CAAC,UAAqB,IAAI,IAAI,CAAC,GAAG,EAAE;YACvD,qBAAqB,EAAG,OAAO,CAAC,sBAAiC,IAAI,CAAC;YACtE,kBAAkB,EAAE,OAAO,OAAO,CAAC,oBAAoB,KAAK,QAAQ;gBAClE,CAAC,CAAC,OAAO,CAAC,oBAAoB;gBAC9B,CAAC,CAAC,EAAE;YACN,wBAAwB,EACrB,OAAO,CAAC,0BAAqC,IAAI,CAAC;YACrD,qBAAqB,EAClB,OAAO,CAAC,uBAAoC,IAAI,EAAE;YACrD,sBAAsB,EACpB,OAAO,OAAO,CAAC,yBAAyB,KAAK,QAAQ;gBACrD,OAAO,CAAC,yBAAyB,CAAC,MAAM,GAAG,CAAC;gBAC1C,CAAC,CAAC,OAAO,CAAC,yBAAyB;gBACnC,CAAC,CAAC,SAAS;YACf,gBAAgB,EAAE,aAAa,EAAE,cAAc,IAAI,gBAAgB;YACnE,aAAa,EAAE,aAAa,IAAI,uBAAuB,CACrD,MAAM,EACN,YAAY,EACZ,gBAAgB,CACjB;YACD,YAAY;YACZ,aAAa,EAAE,OAAO,OAAO,CAAC,cAAc,KAAK,QAAQ;gBACvD,CAAC,CAAC,OAAO,CAAC,cAAc;gBACxB,CAAC,CAAC,IAAI;YACR,YAAY,EAAE,OAAO,OAAO,CAAC,aAAa,KAAK,QAAQ;gBACrD,CAAC,CAAC,OAAO,CAAC,aAAa;gBACvB,CAAC,CAAC,SAAS;SACd,CAAC;IACJ,CAAC;IAED;;kEAE8D;IACtD,eAAe,CACrB,OAAmB,EACnB,QAOC,EACD,YAAiC,EACjC,gBAA2B;QAE3B,OAAO,CAAC,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAC7C,OAAO,CAAC,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAC1C,OAAO,CAAC,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC;QACxC,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC;QACtC,OAAO,CAAC,eAAe,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAC5C,OAAO,CAAC,mBAAmB,GAAG,QAAQ,CAAC,eAAe,IAAI,IAAI,CAAC;QAC/D,aAAa,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEnB,OAAO;YACL,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,KAAK,EAAE,OAAO,CAAC,YAAY;YAC3B,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO;YACtC,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,YAAY;YACZ,QAAQ,EAAE,gBAAgB,IAAI,OAAO,CAAC,eAAe,IAAI,EAAE;SAC5D,CAAC;IACJ,CAAC;IAEO,oBAAoB,CAAC,OAAmB;QAC9C,IAAI,CAAC,OAAO,CAAC,aAAa;YAAE,OAAO,IAAI,CAAC;QACxC,OAAO;YACL,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,KAAK,EAAE,OAAO,CAAC,YAAY;YAC3B,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO;YACvC,MAAM,EAAE,OAAO,CAAC,aAAa;YAC7B,KAAK,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;YACnC,YAAY,EAAE,SAAS;YACvB,QAAQ,EAAE,CAAC,OAAO,CAAC,eAAe,IAAI,EAAE,CAAC;SAC1C,CAAC;IACJ,CAAC;IAED;kFAC8E;IACtE,uBAAuB,CAAC,OAAmB;QACjD,IAAI,CAAC,OAAO,CAAC,aAAa;YAAE,OAAO,IAAI,CAAC;QACxC,MAAM,SAAS,GAAG,IAAI,WAAW,CAC/B,OAAO,CAAC,MAAM,EACd,IAAI,CAAC,KAAK,CACX,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACjC,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC;QAE5B,MAAM,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC;QAC5B,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC;QAC3C,6DAA6D;QAC7D,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,CAAC,cAAc,EAAE,CAAC;YAChD,OAAO,CAAC,qBAAqB;gBAC3B,EAAE,CAAC,cAAc,KAAK,OAAO,CAAC,kBAAkB;oBAC9C,CAAC,CAAC,EAAE,CAAC,wBAAwB;oBAC7B,CAAC,CAAC,CAAC,CAAC;YACR,OAAO,CAAC,kBAAkB,GAAG,EAAE,CAAC,cAAc,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,qBAAqB,GAAG,EAAE,CAAC,wBAAwB,CAAC;YAC5D,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ;gBAAE,OAAO,CAAC,kBAAkB,GAAG,EAAE,CAAC;QAC9D,CAAC;QACD,IAAI,EAAE,CAAC,eAAe;YAAE,OAAO,CAAC,YAAY,GAAG,EAAE,CAAC,eAAe,CAAC;QAClE,IACE,EAAE,CAAC,2BAA2B;YAC9B,OAAO,CAAC,iBAAiB,CAAC,MAAM,GAAG,OAAO,CAAC,YAAY,EACvD,CAAC;YACD,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;QAE7B,IAAI,EAAE,CAAC,MAAM,KAAK,MAAM,IAAI,EAAE,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACtD,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,KAAK,WAAW;gBACtC,CAAC,CAAC,wBAAwB;gBAC1B,CAAC,CAAC,EAAE,CAAC,UAAU,IAAI,SAAS,CAAC;YAC/B,OAAO,CAAC,MAAM,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,KAAK,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC1C,OAAO;gBACL,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,KAAK,EAAE,OAAO,CAAC,YAAY;gBAC3B,OAAO,EAAE,SAAS,CAAC,QAAQ,CAAC,OAAO;gBACnC,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,MAAM;gBAClB,UAAU,EAAE,MAAM,KAAK,WAAW;oBAChC,CAAC,CAAC,2FAA2F;oBAC7F,CAAC,CAAC,MAAM,KAAK,SAAS;wBACpB,CAAC,CAAC,8GAA8G;wBAChH,CAAC,CAAC,MAAM,KAAK,QAAQ;4BACnB,CAAC,CAAC,sFAAsF;4BACxF,CAAC,CAAC,iBAAiB,MAAM,GAAG;gBAClC,YAAY,EAAE,EAAE,CAAC,YAAY;aAC9B,CAAC;QACJ,CAAC;QAED,IAAI,EAAE,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAC9B,+DAA+D;YAC/D,4DAA4D;YAC5D,6DAA6D;YAC7D,MAAM,aAAa,GAAG,EAAE,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;YACvE,OAAO,CAAC,YAAY,GAAG,aAAa,GAAG,CAAC,CAAC;YACzC,OAAO,CAAC,qBAAqB,GAAG,CAAC,CAAC;YAClC,OAAO,CAAC,kBAAkB,GAAG,EAAE,CAAC;YAChC,OAAO,CAAC,wBAAwB,GAAG,CAAC,CAAC;YACrC,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;YACjC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,gEAAgE;YAChE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,EAAE,CAAC,MAAM,KAAK,UAAU;YAAE,OAAO,IAAI,CAAC;QAC1C,uEAAuE;QACvE,sEAAsE;QACtE,sEAAsE;QACtE,qEAAqE;QACrE,4CAA4C;QAC5C,IAAI,OAAO,CAAC,YAAY,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACrD,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,OAAO,GAAG,gBAAgB,CAC9B,OAAO,EACP,EAAE,CAAC,eAAe,EAClB,EAAE,CAAC,iBAAiB,CACrB,CAAC;QACF,MAAM,QAAQ,GAAG,IAAI,WAAW,CAC9B,OAAO,CAAC,MAAM,EACd,IAAI,CAAC,KAAK,CACX,CAAC,WAAW,CACX,OAAO,EACP,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,YAAY,CACrB,CAAC;QACF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,OAAO;gBACL,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,KAAK,EAAE,OAAO,CAAC,YAAY;gBAC3B,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,iIAAiI;aAC9I,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CACzB,OAAO,EACP;YACE,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,QAAQ,EAAE,QAAQ,CAAC,gBAAgB;YACnC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,EAAE;SACnC,EACD,EAAE,CAAC,YAAY,CAChB,CAAC;IACJ,CAAC;IAED;;kEAE8D;IAC9D,MAAM,CAAC,OAAmB;QACxB,MAAM,UAAU,GAAG,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,UAAU;YAAE,OAAO,UAAU,CAAC;QAElC,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAE9B,yEAAyE;QACzE,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,IAAI,WAAW,CAC9B,OAAO,CAAC,MAAM,EACd,IAAI,CAAC,KAAK,CACX,CAAC,WAAW,CACX,OAAO,EACP,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,YAAY,CACrB,CAAC;QACF,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM,IAAI,IAAI,CAAC;QACxC,MAAM,QAAQ,GAAG,QAAQ,EAAE,gBAAgB,IAAI,EAAE,CAAC;QAClD,MAAM,QAAQ,GAAG,QAAQ,EAAE,QAAQ,IAAI,uBAAuB,CAC5D,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,YAAY,EACpB,EAAE,CACH,CAAC;QACF,OAAO,IAAI,CAAC,eAAe,CACzB,OAAO,EACP;YACE,MAAM;YACN,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,IAAI;YAC9B,QAAQ;YACR,QAAQ;YACR,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,EAAE;SACnC,EACD,KAAK,CACN,CAAC;IACJ,CAAC;IAED;;+DAE2D;IAC3D,KAAK,CAAC,OAAO,CAAC,OAAmB;QAC/B,kEAAkE;QAClE,+DAA+D;QAC/D,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,CAAC,YAAY,CAAC;gBACtE,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,QAAQ;aAChB,CAAC,CAAC;YACH,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,gBAAgB,GAAG,aAAa,CAAC;gBACzC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC;oBACnD,OAAO,CAAC,aAAa,GAAG,uBAAuB,CAC7C,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,YAAY,EACpB,aAAa,CACd,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,6DAA6D;QAC/D,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,UAAU;YAAE,OAAO,UAAU,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,uDAAuD;QACvD,MAAM,GAAG,GAAG,sBAAsB,CAAC;YACjC,OAAO,EAAE,OAAO,CAAC,MAAM;YACvB,KAAK,EAAE,OAAO,CAAC,YAAY;YAC3B,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,IAAI;YACjB,qBAAqB,EAAE,EAAE;YACzB,qBAAqB,EAAE,CAAC;SACzB,CAAC,CAAC;QACH,MAAM,cAAc,GAAG;YACrB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE;YACxB,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,IAAI;YACpC,qBAAqB,EAAE,GAAG,CAAC,qBAAqB,IAAI,EAAE;YACtD,qBAAqB,EAAE,GAAG,CAAC,qBAAqB;YAChD,UAAU,EAAE,OAAO,CAAC,SAAS;SACV,CAAC;QACtB,MAAM,QAAQ,GAAG,MAAM,IAAI,WAAW,CACpC,OAAO,CAAC,MAAM,EACd,IAAI,CAAC,KAAK,CACX,CAAC,OAAO,CACP,cAAc,EACd,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,YAAY,CACrB,CAAC;QAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,KAAK,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAC7C,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,6FAA6F,EAAE,CAAC;QACvN,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CACzB,OAAO,EACP;YACE,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,QAAQ,EAAE,QAAQ,CAAC,gBAAgB;YACnC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,EAAE;SACnC,EACD,SAAS;QACT,oEAAoE;QACpE,oDAAoD;QACpD,EAAE,CACH,CAAC;IACJ,CAAC;IAED;;2DAEuD;IAC/C,qBAAqB,CAAC,OAAmB,EAAE,OAAe;QAChE,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QACtC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO;QACjC,MAAM,MAAM,GAAG,QAAQ,OAAO,CAAC,MAAM,SAAS,EAAE,EAAE,CAAC;QACnD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;aAC9E,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;QAC7C,IAAI,QAAQ;YAAE,OAAO;QACrB,MAAM,KAAK,GAAe;YACxB,EAAE,EAAE,UAAU,EAAE;YAChB,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,aAAa;YACxB,OAAO,EAAE,OAAO,CAAC,MAAM;YACvB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,OAAO,EAAE,EAAE;YACX,WAAW,EAAE,OAAO;YACpB,YAAY,EAAE;gBACZ,KAAK,EAAE,OAAO,CAAC,YAAY;gBAC3B,OAAO,EAAE,EAAE;aACZ;SACF,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC9B,QAAQ,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED,6EAA6E;IAC7E,wBAAwB,CAAC,MAAc;QACrC,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,MAAM,QAAQ,EAAE,CAAC,CAAC;QACzF,MAAM,OAAO,GAAG,IAAI,GAAG,CACrB,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,eAAe,CAAC;aAC3D,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAC/C,CAAC;QACF,OAAO,OAAO;aACX,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,aAAa;YAClD,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;aAC3C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;YACnD,CAAC,CAAC,KAAK,CAAC,WAAW;YACnB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC;IAED;;yEAEqE;IAC7D,iBAAiB,CACvB,MAAc,EACd,gBAAiC;QAEjC,IAAI,gBAAgB,EAAE,CAAC;YACrB,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;QACjE,CAAC;QACD,MAAM,UAAU,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QAC7B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;IAC3D,CAAC;IAED;;;+EAG2E;IACnE,KAAK,CAAC,uBAAuB,CACnC,OAAmB,EACnB,QAAwB,EACxB,gBAAyB;QAEzB,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,IAAI,uBAAuB,CAC/D,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,gBAAgB,IAAI,EAAE,CAC/B,CAAC;QACF,MAAM,SAAS,GAAG,MAAM,IAAI,WAAW,CACrC,OAAO,CAAC,MAAM,EACd,IAAI,CAAC,KAAK,CACX,CAAC,QAAQ,CAAC;YACT,QAAQ;YACR,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ;YACR,mBAAmB,EAAE,CAAC,gBAAgB;YACtC,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;YACpD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;YAC5C,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;YAC1D,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;YACpD,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;SACvD,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QAClC,MAAM,cAAc,GAAG,SAAS,CAAC,cAAc,CAAC;QAChD,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC;QACzC,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;QAC1B,aAAa,CAAC,qBAAqB,CACjC,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,YAAY,EACpB,EAAE,EACF,OAAO,CAAC,QAAQ,CACjB,CAAC;QAEF,4EAA4E;QAC5E,kFAAkF;QAClF,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAE5C,iEAAiE;QACjE,mDAAmD;QACnD,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,CAAC,cAAc,EAAE,CAAC;YAChD,OAAO,CAAC,qBAAqB;gBAC3B,EAAE,CAAC,cAAc,KAAK,OAAO,CAAC,kBAAkB;oBAC9C,CAAC,CAAC,EAAE,CAAC,wBAAwB;oBAC7B,CAAC,CAAC,CAAC,CAAC;YACR,OAAO,CAAC,kBAAkB,GAAG,EAAE,CAAC,cAAc,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,qBAAqB,GAAG,EAAE,CAAC,wBAAwB,CAAC;YAC5D,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ;gBAAE,OAAO,CAAC,kBAAkB,GAAG,EAAE,CAAC;QAC9D,CAAC;QACD,IAAI,EAAE,CAAC,eAAe;YAAE,OAAO,CAAC,YAAY,GAAG,EAAE,CAAC,eAAe,CAAC;QAClE,IAAI,EAAE,CAAC,2BAA2B,EAAE,CAAC;YACnC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;QAClD,CAAC;QAED,OAAO,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,CAAC,iBAAiB,EAAE,cAAc,EAAE,CAAC;IACzE,CAAC;IAED;;;;;;;;;;;oDAWgD;IACxC,yBAAyB,CAC/B,OAAmB,EACnB,EAAsB;QAEtB,MAAM,cAAc,GAAG,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAC9C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,cAAc,CAClC,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,qCAAqC;YACrC,OAAO,CAAC,wBAAwB,GAAG,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QAED,qEAAqE;QACrE,8DAA8D;QAC9D,IAAI,EAAE,CAAC,qBAAqB,KAAK,SAAS;YAAE,OAAO;QAEnD,kEAAkE;QAClE,gEAAgE;QAChE,IAAI,EAAE,CAAC,qBAAqB,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,+DAA+D;QAC/D,yDAAyD;QACzD,6DAA6D;QAC7D,OAAO,CAAC,wBAAwB,IAAI,CAAC,CAAC;IACxC,CAAC;IAED;sFACkF;IAC1E,KAAK,CAAC,oBAAoB,CAChC,SAAiB,EACjB,OAAmB,EACnB,EAAsB,EACtB,iBAAqC;QAErC,MAAM,YAAY,GAAG,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;QAC7E,MAAM,aAAa,GAAG,MAAM,IAAI,WAAW,CACzC,OAAO,CAAC,MAAM,EACd,IAAI,CAAC,KAAK,CACX,CAAC,YAAY,CACZ,YAAY,EACZ,OAAO,CAAC,aAAc,EACtB,EAAE,CAAC,eAAe,IAAI,EAAE,EACxB,OAAO,CAAC,qBAAqB,CAC9B,CAAC;QACF,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;YAC3B,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,OAAO;gBACL,SAAS;gBACT,KAAK,EAAE,OAAO,CAAC,YAAY;gBAC3B,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO;gBACvC,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,kFAAkF;aAC/F,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC,QAAQ,CAAC;QAC/C,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC;QAC7C,OAAO,CAAC,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC;QAC3C,OAAO,CAAC,eAAe,GAAG,aAAa,CAAC,QAAQ,IAAI,EAAE,CAAC;QACvD,OAAO,CAAC,mBAAmB,GAAG,aAAa,CAAC,eAAe,IAAI,IAAI,CAAC;QACpE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnB,OAAO;YACL,SAAS;YACT,KAAK,EAAE,OAAO,CAAC,YAAY;YAC3B,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO;YACtC,MAAM,EAAE,aAAa,CAAC,MAAM;YAC5B,KAAK,EAAE,aAAa,CAAC,KAAK;YAC1B,iBAAiB,EAAE,QAAQ;YAC3B,iBAAiB,EAAE,EAAE,CAAC,iBAAiB;SACxC,CAAC;IACJ,CAAC;IAED;;;;;;uEAMmE;IAC3D,KAAK,CAAC,oBAAoB,CAChC,SAAiB,EACjB,OAAmB,EACnB,EAAsB;QAEtB,MAAM,aAAa,GAAG,EAAE,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAG,aAAa,GAAG,CAAC,CAAC;QAEnC,QAAQ,CAAC,mBAAmB,EAAE;YAC5B,SAAS;YACT,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,SAAS,EAAE,OAAO,CAAC,YAAY;YAC/B,OAAO,EAAE,QAAQ;YACjB,WAAW,EAAE,EAAE,CAAC,oBAAoB,IAAI,EAAE;YAC1C,kBAAkB,EAAE,CAAC,EAAE,CAAC,2BAA2B,IAAI,EAAE,CAAC,CAAC,MAAM;SAClE,CAAC,CAAC;QAEH,sCAAsC;QACtC,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC;QAChC,OAAO,CAAC,qBAAqB,GAAG,CAAC,CAAC;QAClC,OAAO,CAAC,kBAAkB,GAAG,EAAE,CAAC;QAChC,OAAO,CAAC,wBAAwB,GAAG,CAAC,CAAC;QACrC,OAAO,CAAC,qBAAqB,GAAG,EAAE,CAAC,qBAAqB,IAAI,EAAE,CAAC;QAC/D,kEAAkE;QAClE,oEAAoE;QACpE,OAAO,CAAC,sBAAsB,GAAG,EAAE,CAAC,sBAAsB,CAAC;QAC3D,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CAAC,sCAAsC;QACxE,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;QAE7B,oEAAoE;QACpE,mEAAmE;QACnE,MAAM,oBAAoB,GAAG,EAAE,CAAC,2BAA2B,IAAI,EAAE,CAAC;QAElE,4EAA4E;QAC5E,MAAM,OAAO,GAAqB;YAChC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,IAAI,CAAC,YAAY;YACvB,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,OAAO,CAAC,MAAM;YACvB,KAAK,EAAE,QAAQ;YACf,UAAU,EAAE,OAAO,CAAC,SAAS;YAC7B,kBAAkB,EAAE,EAAE,CAAC,iBAAiB;YACxC,qBAAqB,EAAE,oBAAoB;SAC5C,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,WAAW,CACpC,OAAO,CAAC,MAAM,EACd,IAAI,CAAC,KAAK,CACX,CAAC,OAAO,CACP,OAAO,EACP,OAAO,CAAC,MAAM,EACd,QAAQ,CACT,CAAC;QAEF,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAClC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;YAC3B,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,OAAO;gBACL,SAAS;gBACT,KAAK,EAAE,QAAQ;gBACf,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,6FAA6F;gBACzG,iBAAiB,EAAE,WAAW;gBAC9B,iBAAiB,EAAE,EAAE,CAAC,iBAAiB;aACxC,CAAC;QACJ,CAAC;QAED,4DAA4D;QAC5D,MAAM,eAAe,GAAG,EAAE,CAAC,eAAe,IAAI,EAAE,CAAC;QACjD,MAAM,UAAU,GAAG,eAAe;YAChC,CAAC,CAAC,eAAe,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC;YAClD,CAAC,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC;QAE1B,OAAO,CAAC,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC;QACrD,OAAO,CAAC,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAC1C,OAAO,CAAC,aAAa,GAAG,UAAU,CAAC;QACnC,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC;QACtC,OAAO,CAAC,eAAe,GAAG,QAAQ,EAAE,QAAQ,IAAI,EAAE,CAAC;QACnD,OAAO,CAAC,mBAAmB,GAAG,QAAQ,EAAE,eAAe,IAAI,IAAI,CAAC;QAChE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEnB,OAAO;YACL,SAAS;YACT,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO;YACvC,MAAM,EAAE,UAAU;YAClB,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,iBAAiB,EAAE,WAAW;YAC9B,iBAAiB,EAAE,EAAE,CAAC,iBAAiB;YACvC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,EAAE;SACnC,CAAC;IACJ,CAAC;IAED;yDACqD;IAC7C,sBAAsB,CAC5B,SAAiB,EACjB,OAAmB,EACnB,EAAsB;QAEtB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;QAC3B,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnB,KAAK,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;QAC5D,QAAQ,CAAC,aAAa,EAAE;YACtB,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM;YACjC,UAAU,EAAE,wBAAwB,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY;SAClE,CAAC,CAAC;QACH,OAAO;YACL,SAAS;YACT,KAAK,EAAE,OAAO,CAAC,YAAY;YAC3B,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO;YACvC,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,wBAAwB;YACpC,UAAU,EAAE,EAAE,CAAC,iBAAiB,IAAI,2CAA2C;YAC/E,iBAAiB,EAAE,WAAW;YAC9B,iBAAiB,EAAE,EAAE,CAAC,iBAAiB;SACxC,CAAC;IACJ,CAAC;IAED;yDACqD;IAC7C,eAAe,CACrB,SAAiB,EACjB,OAAmB,EACnB,EAAsB;QAEtB,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU,IAAI,SAAS,CAAC;QAC1C,OAAO,CAAC,MAAM,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9D,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnB,KAAK,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1C,QAAQ,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QAChH,OAAO;YACL,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY;YACtC,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO;YACvC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM;YAChC,UAAU,EAAE,EAAE,CAAC,UAAU,KAAK,iBAAiB;gBAC7C,CAAC,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,wDAAwD;gBAC3F,CAAC,CAAC,EAAE,CAAC,UAAU,KAAK,YAAY;oBAC9B,CAAC,CAAC,2DAA2D;oBAC7D,CAAC,CAAC,iBAAiB,MAAM,GAAG;YAChC,YAAY,EAAE,EAAE,CAAC,YAAY;SAC9B,CAAC;IACJ,CAAC;IAED;;;mEAG+D;IACvD,KAAK,CAAC,kBAAkB,CAC9B,SAAiB,EACjB,OAAmB,EACnB,QAAwB,EACxB,EAAsB,EACtB,iBAAqC,EACrC,cAAkC;QAElC,MAAM,YAAY,GAAG,EAAE,CAAC,YAAY,CAAC;QACrC,OAAO,CAAC,YAAY,EAAE,CAAC;QACvB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;QAC7B,8EAA8E;QAC9E,OAAO,CAAC,qBAAqB,GAAG,EAAE,CAAC;QACnC,oEAAoE;QACpE,2DAA2D;QAC3D,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC;QAE3C,wDAAwD;QACxD,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1C,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,WAAW,GAAG,CAAC,MAAM,eAAe,CAAC;oBACnC,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,KAAK,EAAE,OAAO,CAAC,YAAY;oBAC3B,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,MAAM,EAAE,EAAE;oBACV,cAAc,EAAE,QAAQ;iBACzB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACb,CAAC;YAAC,MAAM,CAAC;gBACP,QAAQ,CAAC,wBAAwB,EAAE;oBACjC,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,KAAK,EAAE,OAAO,CAAC,YAAY;iBAC5B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,yEAAyE;QACzE,mEAAmE;QACnE,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7E,OAAO;gBACL,SAAS;gBACT,KAAK,EAAE,OAAO,CAAC,YAAY;gBAC3B,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,OAAO,CAAC,MAAM;gBAC1B,UAAU,EAAE,yCAAyC,OAAO,CAAC,MAAM,qEAAqE;gBACxI,YAAY;aACb,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QACvE,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,CAAC,gBAAgB,GAAG,WAAW,CAAC;QACzC,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,WAAW,CACpC,OAAO,CAAC,MAAM,EACd,IAAI,CAAC,KAAK,CACX,CAAC,OAAO,CACP,OAAO,EACP,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,YAAY,CACrB,CAAC;QACF,MAAM,UAAU,GAAG,QAAQ,EAAE,MAAM,IAAI,IAAI,CAAC;QAC5C,MAAM,SAAS,GAAG,QAAQ,EAAE,KAAK,IAAI,IAAI,CAAC;QAC1C,MAAM,YAAY,GAAG,QAAQ,EAAE,gBAAgB,IAAI,cAAc,CAAC;QAClE,OAAO,CAAC,gBAAgB,GAAG,YAAY,CAAC;QACxC,OAAO,CAAC,aAAa,GAAG,QAAQ,EAAE,QAAQ,IAAI,uBAAuB,CACnE,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,YAAY,EACpB,YAAY,CACb,CAAC;QACF,OAAO,CAAC,aAAa,GAAG,UAAU,CAAC;QACnC,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;QACjC,OAAO,CAAC,eAAe,GAAG,QAAQ,EAAE,QAAQ,IAAI,EAAE,CAAC;QACnD,OAAO,CAAC,mBAAmB,GAAG,QAAQ,EAAE,eAAe,IAAI,IAAI,CAAC;QAChE,aAAa,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACxD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEnB,OAAO;YACL,SAAS;YACT,KAAK,EAAE,OAAO,CAAC,YAAY;YAC3B,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO;YACtC,MAAM,EAAE,UAAU;YAClB,KAAK,EAAE,SAAS;YAChB,YAAY;YACZ,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,EAAE;SACnC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,SAAiB,EACjB,MAAc,EACd,gBAAiC,EACjC,OAAgB;QAEhB,wEAAwE;QACxE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,mBAAmB,EAAE,UAAU,EAAE,sFAAsF,EAAE,CAAC;QAChM,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACjC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,cAAc,OAAO,CAAC,MAAM,wFAAwF,EAAE,CAAC;QAChO,CAAC;QAED,wEAAwE;QACxE,yEAAyE;QACzE,wEAAwE;QACxE,0EAA0E;QAC1E,uEAAuE;QACvE,wEAAwE;QACxE,iCAAiC;QACjC,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa,EAAE,OAAO;eACjD,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;QACvD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;YACzD,QAAQ,CAAC,gBAAgB,EAAE;gBACzB,SAAS;gBACT,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,SAAS,EAAE,OAAO;gBAClB,QAAQ,EAAE,eAAe;aAC1B,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;YACpD,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO;oBACL,GAAG,QAAQ;oBACX,QAAQ,EAAE;wBACR,GAAG,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC;wBAC5B,qBAAqB,OAAO,sCAAsC,eAAe,yFAAyF,OAAO,CAAC,YAAY,oDAAoD;qBACnP;iBACF,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,SAAS;gBACT,KAAK,EAAE,OAAO,CAAC,YAAY;gBAC3B,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,gBAAgB;gBAC5B,UAAU,EAAE,qBAAqB,OAAO,qCAAqC,eAAe,4FAA4F;aACzL,CAAC;QACJ,CAAC;QAED,wEAAwE;QACxE,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QACnE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnB,KAAK,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAC7C,QAAQ,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;YACnH,sEAAsE;YACtE,uEAAuE;YACvE,4CAA4C;YAC5C,IAAI,UAAU,GAAG,2DAA2D,CAAC;YAC7E,MAAM,IAAI,GAAG,oCAAoC,CAAC,MAAM,CAAC,CAAC;YAC1D,IAAI,IAAI,CAAC,MAAM;gBAAE,UAAU,IAAI,YAAY,IAAI,CAAC,MAAM,GAAG,CAAC;YAC1D,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,QAAQ,EAAE,CAAC;gBACb,UAAU,IAAI,4CAA4C,QAAQ,CAAC,OAAO,EAAE;oBAC1E,uBAAuB,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS;oBAC7D,+DAA+D;oBAC/D,uDAAuD;oBACvD,yCAAyC,CAAC;YAC9C,CAAC;YACD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;QAC1H,CAAC;QACD,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,GAAG,SAAS,CAAC;QAEjD,wEAAwE;QACxE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAEnF,uEAAuE;QACvE,qEAAqE;QACrE,IAAI,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,WAAW;YACzD,QAAQ,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC3E,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxD,CAAC;QAED,wEAAwE;QACxE,IAAI,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC;QACpF,CAAC;QAED,yEAAyE;QACzE,IAAI,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,wEAAwE;QACxE,mEAAmE;QACnE,OAAO,CAAC,gBAAgB,GAAG,EAAE,CAAC,cAAc,CAAC;QAE7C,IAAI,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC;QAED,wEAAwE;QACxE,OAAO,IAAI,CAAC,kBAAkB,CAC5B,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,iBAAiB,EAAE,EAAE,CAAC,cAAc,CAC7E,CAAC;IACJ,CAAC;IAED;;;;;;iFAM6E;IAC7E,KAAK,CAAC,OAAO,CACX,SAAiB,EACjB,MAAc,EACd,gBAAiC,EACjC,OAAgB;QAEhB,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAC5E,CAAC;IAED;kFAC8E;IAC9E,KAAK,CAAC,cAAc,CAClB,OAAmB,EACnB,UAAkB;QAElB,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QAC1C,MAAM,KAAK,GAAsB;YAC/B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,OAAO,EAAE,UAAU,KAAK,WAAW;YACnC,UAAU,EAAE,UAA6C;YACzD,eAAe,EAAE,OAAO,CAAC,YAAY;YACrC,iBAAiB,EAAE,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;YACjD,cAAc,EAAE,OAAO,CAAC,YAAY;SACrC,CAAC;QACF,MAAM,OAAO,CAAC,UAAU,CACtB,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACpE,CAAC;IACJ,CAAC;CACF"}
@@ -3,7 +3,8 @@
3
3
  * LoopForge intentionally does not implement MCP Tasks: the external Agent
4
4
  * owns long-running execution while LoopForge persists round state.
5
5
  */
6
- import { type LoopStore } from "../loop-store.js";
6
+ import type { LoopStore } from "../loop-store.js";
7
+ export declare const SERVER_INSTRUCTIONS: string;
7
8
  export declare class McpServer {
8
9
  private readonly mgr;
9
10
  private requestQueue;
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAA0B,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AA6F1E,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAiB;IACrC,OAAO,CAAC,YAAY,CAAoC;gBAE5C,KAAK,CAAC,EAAE,SAAS;IAI7B,KAAK,IAAI,IAAI;YAiBC,UAAU;IA2CxB,OAAO,CAAC,KAAK;YAUC,QAAQ;YA0CR,WAAW;CA+D1B"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAkBlD,eAAO,MAAM,mBAAmB,QAStB,CAAC;AAyDX,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAiB;IACrC,OAAO,CAAC,YAAY,CAAoC;gBAE5C,KAAK,CAAC,EAAE,SAAS;IAI7B,KAAK,IAAI,IAAI;YAiBC,UAAU;IA4BxB,OAAO,CAAC,KAAK;YAUC,QAAQ;YAyCR,WAAW;CA0E1B"}
@@ -5,30 +5,24 @@
5
5
  */
6
6
  import { createInterface } from "node:readline";
7
7
  import { appendFileSync } from "node:fs";
8
- import { StorageCorruptionError } from "../loop-store.js";
9
8
  import { SessionManager } from "./session.js";
10
- import { TOOL_HANDLERS, TOOL_SCHEMAS, ToolInputValidationError, validateToolInput, } from "./tools.js";
9
+ import { TOOL_HANDLERS, TOOL_SCHEMAS, ToolInputValidationError, validateToolInput, validateToolOutput, } from "./tools.js";
11
10
  import { isRecord } from "../token-utils.js";
12
- const SERVER_INFO = { name: "loopforge-mcp", version: "3.0.0" };
11
+ const SERVER_INFO = { name: "loopforge-mcp", version: "3.2.1" };
13
12
  const SUPPORTED_PROTOCOL_VERSIONS = new Set([
14
13
  "2024-11-05",
15
14
  "2025-03-26",
16
15
  "2025-06-18",
17
16
  ]);
18
17
  const LATEST_PROTOCOL_VERSION = "2025-06-18";
19
- /** Notifications the server understands; any other notification is ignored
20
- * (JSON-RPC notifications never receive a response). */
21
- const KNOWN_NOTIFICATIONS = new Set([
22
- "notifications/initialized",
23
- "notifications/cancelled",
24
- "notifications/roots/list_changed",
25
- ]);
26
- const SERVER_INSTRUCTIONS = [
27
- "Use LoopForge directly for long-running work. Start by calling loopforge_status with scope=all ",
28
- "to find a recoverable loop, or loopforge_start for a new one. ",
29
- "Before each agent-process boundary, call loopforge_next with honest evidence, ",
30
- "remaining criteria, and a canonical RoundReport. Follow reject or backtrack prompts ",
31
- "and retry loopforge_next. Keep one LoopForge session across outer agent rounds. ",
18
+ export const SERVER_INSTRUCTIONS = [
19
+ "Use LoopForge directly for long-running work. Start by calling loopforge_status ",
20
+ "with view=all to list loops, then loopforge_status for a matching session or ",
21
+ "loopforge_start for a new one. ",
22
+ "Before each agent-process boundary, call loopforge_next with the roundId from ",
23
+ "the most recent response, honest evidence, remaining criteria, and a concrete ",
24
+ "next action. Follow reject or backtrack prompts and retry loopforge_next. ",
25
+ "Keep one LoopForge session across outer agent rounds. ",
32
26
  "Do not replace these MCP calls with shell or CLI wrappers.",
33
27
  ].join("");
34
28
  class JsonRpcError extends Error {
@@ -49,12 +43,8 @@ function isJsonRpcRequest(value) {
49
43
  return false;
50
44
  return !("params" in value && value.params !== undefined && !isRecord(value.params));
51
45
  }
52
- function errorResponse(id, code, message, data) {
53
- return JSON.stringify({
54
- jsonrpc: "2.0",
55
- id: id ?? null,
56
- error: { code, message, ...(data ? { data } : {}) },
57
- });
46
+ function errorResponse(id, code, message) {
47
+ return JSON.stringify({ jsonrpc: "2.0", id: id ?? null, error: { code, message } });
58
48
  }
59
49
  function okResponse(id, result) {
60
50
  return id === undefined ? "" : JSON.stringify({ jsonrpc: "2.0", id, result });
@@ -79,7 +69,7 @@ export class McpServer {
79
69
  });
80
70
  });
81
71
  rl.once("close", () => this.mgr.close());
82
- process.stderr.write(`[loopforge-mcp] started (package ${SERVER_INFO.version})\n`);
72
+ process.stderr.write(`[loopforge-mcp] v${SERVER_INFO.version} started\n`);
83
73
  }
84
74
  async handleLine(line) {
85
75
  this.trace("request", line);
@@ -95,14 +85,8 @@ export class McpServer {
95
85
  process.stdout.write(errorResponse(undefined, -32600, "Invalid Request") + "\n");
96
86
  return;
97
87
  }
98
- if (parsed.id === undefined) {
99
- // Notification: never respond, but keep known and unknown notifications
100
- // distinguishable in the trace for protocol debugging.
101
- if (!KNOWN_NOTIFICATIONS.has(parsed.method)) {
102
- this.trace("notification", `ignored unknown notification ${parsed.method}`);
103
- }
88
+ if (parsed.id === undefined)
104
89
  return;
105
- }
106
90
  try {
107
91
  const result = await this.dispatch(parsed);
108
92
  const response = okResponse(parsed.id, result);
@@ -112,15 +96,7 @@ export class McpServer {
112
96
  catch (error) {
113
97
  const message = error instanceof Error ? error.message : String(error);
114
98
  const code = error instanceof JsonRpcError ? error.code : -32603;
115
- const data = error instanceof StorageCorruptionError ? {
116
- code: error.code,
117
- kind: error.kind,
118
- path: error.path,
119
- loopId: error.loopId,
120
- sequence: error.sequence,
121
- recoverable: error.recoverable,
122
- } : undefined;
123
- const response = errorResponse(parsed.id, code, message, data);
99
+ const response = errorResponse(parsed.id, code, message);
124
100
  this.trace("response", response);
125
101
  process.stdout.write(response + "\n");
126
102
  }
@@ -155,8 +131,6 @@ export class McpServer {
155
131
  }
156
132
  if (req.method === "tools/list")
157
133
  return { tools: TOOL_SCHEMAS };
158
- if (req.method === "ping")
159
- return {};
160
134
  if (req.method !== "tools/call") {
161
135
  throw new JsonRpcError(-32601, `Unknown method: ${req.method}`);
162
136
  }
@@ -186,7 +160,19 @@ export class McpServer {
186
160
  throw error;
187
161
  }
188
162
  const output = await handler(this.mgr, args);
189
- const isError = output.error !== undefined && output.error !== null;
163
+ // v2.14: enforce the declared output contracts — a handler output that
164
+ // violates its outputSchema is a contract bug, surfaced as a clean
165
+ // JSON-RPC error instead of silently shipping a schema-violating result.
166
+ try {
167
+ validateToolOutput(name, output);
168
+ }
169
+ catch (error) {
170
+ if (error instanceof ToolInputValidationError) {
171
+ throw new JsonRpcError(-32603, `Tool "${name}" returned schema-violating output: ${error.message}`);
172
+ }
173
+ throw error;
174
+ }
175
+ const isError = typeof output.error === "string";
190
176
  // Extract the compiled prompt (present in start/next/resume responses).
191
177
  // MCP content annotations signal priority to the host so it can
192
178
  // preserve critical assistant-facing content during compaction.
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -2,55 +2,54 @@
2
2
  *
3
3
  * Each McpSession = one complete multi-round loop.
4
4
  * SessionManager holds Map<sessionId, McpSession> and drives
5
- * the advance() cycle: validate report → commit round event → check stop → compile next.
5
+ * the advance() cycle: extract → feedback → check stop → compile next.
6
+ *
7
+ * Since v2.14 the round state machine lives in RoundLifecycle
8
+ * (round-lifecycle.ts). SessionManager owns "who may touch a session":
9
+ * the in-memory registry, per-session serialization queue, and cross-process
10
+ * lease fencing. RoundLifecycle owns "what happens to a session": crash
11
+ * recovery, transaction execution, disposition result building, and the
12
+ * advance pipeline. All round processing still goes through the
13
+ * SessionManager → RoundDriver → RoundCoordinator path.
6
14
  */
15
+ import type { ExternalContextProvider, LoopTerminalSink, SelfEvaluation } from "../protocol.js";
7
16
  import type { LoopStore } from "../loop-store.js";
8
- import type { ExternalContextProvider, LoopTerminalSink } from "../protocol.js";
9
- import { type PolicyMetricsSnapshot } from "../policy-metrics.js";
17
+ import type { PolicyMetricsSnapshot } from "../policy-metrics.js";
10
18
  import type { SessionStateStore } from "../storage.js";
11
- import type { McpSession, McpSessionSummary, StartInput, AdvanceResult } from "./session-types.js";
12
- import type { GateActionDescriptor, RoundReport } from "../protocol.js";
13
- export type { McpSession, McpSessionSummary, StartInput, AdvanceResult } from "./session-types.js";
14
- export declare class SessionManager {
19
+ import type { McpSession, McpSessionSummary, StartInput, AdvanceResult, SessionRegistry } from "./round-lifecycle.js";
20
+ export type { McpSession, McpSessionSummary, StartInput, AdvanceResult, } from "./round-lifecycle.js";
21
+ export declare class SessionManager implements SessionRegistry {
15
22
  private sessions;
16
23
  /** Serializes state transitions for each session. */
17
24
  private sessionQueues;
18
- private backend;
19
- private eventWriter;
25
+ private readonly loopStore;
20
26
  private sessionStore;
21
27
  private readonly ownerId;
22
28
  private readonly leaseMs;
23
29
  private readonly leaseRenewIntervalMs;
24
30
  private leaseTimer;
31
+ private readonly lifecycle;
25
32
  /** Explicit context provider; never auto-discovered. */
26
33
  contextProvider?: ExternalContextProvider;
27
34
  private readonly terminalSinks;
28
- /** Vault-replayed policy metrics, keyed by loop. The signature covers every
29
- * entry's task_id/timestamp/sequence so both appends and idempotent
30
- * replacements (same task_id) invalidate the cache. */
31
- private derivedMetricsCache;
32
- constructor(storeOrBackend?: LoopStore, sessionStore?: SessionStateStore);
33
- private appendCanonicalEvent;
35
+ constructor(store?: LoopStore, sessionStore?: SessionStateStore);
34
36
  /** Stable process-local owner token used for cross-process session leases. */
35
37
  getOwnerId(): string;
36
38
  addTerminalSink(sink: LoopTerminalSink): () => void;
37
39
  /** Release owned sessions and stop lease maintenance. */
38
40
  close(): void;
41
+ values(): Iterable<McpSession>;
42
+ /** Register (or replace) a session in the in-memory registry. */
43
+ upsert(session: McpSession): void;
39
44
  private findSessionEntry;
40
45
  private claimSessionEntry;
41
46
  private renewSessionLease;
42
47
  private renewOwnedLeases;
43
48
  private leaseConflictResult;
49
+ private withSessionQueue;
44
50
  create(input: StartInput): Promise<AdvanceResult>;
45
51
  get(sessionId: string): McpSession | undefined;
46
52
  getLeaseStatus(loopId: string): Record<string, unknown> | null;
47
- audit(loopId: string): Record<string, unknown>;
48
- inspect(loopId: string, round: number): Record<string, unknown> | null;
49
- retry(sessionId: string, report: RoundReport): Promise<AdvanceResult>;
50
- backtrack(sessionId: string): Promise<AdvanceResult>;
51
- cognitiveProjection(sessionId: string): Record<string, unknown> | null;
52
- checkGate(action: GateActionDescriptor): Record<string, unknown>;
53
- resolveGate(sessionId: string, gateId: string, action: GateActionDescriptor, approved: boolean, note: string): Record<string, unknown>;
54
53
  delete(sessionId: string): boolean;
55
54
  /** v1.18: Pause a running session. The session state is persisted to
56
55
  * vault so it survives process restarts. Returns the session status.
@@ -60,99 +59,52 @@ export declare class SessionManager {
60
59
  round: number;
61
60
  status: string;
62
61
  };
63
- private restoredPromptResult;
64
- /** Reconcile the crash window where a round event committed but session_state
65
- * still points at the old prompt. Returns null when no commit is pending. */
66
- private reconcileCommittedRound;
67
- /** v1.18: Resume a paused session. Reconstructs from vault state and
68
- * compiles the next prompt. Returns null if no paused session exists
69
- * for this loopId. */
70
- unpause(loopId: string): Promise<AdvanceResult | null>;
71
- /** Persist session state to vault for cross-process recovery.
72
- * The filtered vault and replacement entry are written once under the
73
- * backend lock, so recovery never observes the old two-write gap. */
62
+ /** Persist session state to vault for cross-process recovery. Delegates to
63
+ * the round lifecycle, which owns the durable session document shape. */
74
64
  save(session: McpSession): void;
75
- /** Reconstruct a McpSession from a vault session_state entry.
76
- * Returns null if the entry is not "running" status.
77
- * Shared by resume() and autoResumeAll(). */
78
- private reconstructSession;
79
65
  /** Resume a loop from vault state.
80
66
  * Reconstructs the session and compiles the prompt for the next round.
81
67
  * Returns null if no session_state entry exists for this loopId. */
82
- resume(loopId: string): Promise<AdvanceResult | null>;
68
+ resume(loopId: string): AdvanceResult | null;
69
+ /** v1.18: Resume a paused session. Reconstructs from vault state and
70
+ * compiles the next prompt. Returns null if no paused session exists
71
+ * for this loopId. */
72
+ unpause(loopId: string): Promise<AdvanceResult | null>;
83
73
  /** Auto-resume all "running" sessions from vault on server startup.
84
74
  * Scans vault for session_state entries, reconstructs each as an in-memory
85
75
  * McpSession (without compiling — the next loopforge_next will do that).
86
76
  * Returns the number of sessions resumed. */
87
77
  autoResumeAll(): number;
88
78
  list(): McpSessionSummary[];
89
- /** Stable signature over the vault event list. A changed signature means the
90
- * vault has grown or an idempotent replacement landed, so the cached
91
- * snapshot must be recomputed. Physical order is stable: writeEntry appends,
92
- * and replacements update in place. */
93
- private metricsSignature;
94
- /** Policy metrics that survive process restarts: durable events are
95
- * replayed through derivePolicyMetrics and merged with live in-process
96
- * observations (rejections never reach the vault). */
97
- getLoopPolicyMetrics(loopId: string): PolicyMetricsSnapshot;
98
- /** Append a durable session_end event for a terminal transition. Call after
99
- * the session_state write so a failure here only loses a metric, never the
100
- * stopped status. The fixed task_id makes repeated terminals idempotent. */
101
- persistTerminalEvent(session: McpSession, stopReason: string, extra?: Record<string, unknown>): void;
79
+ /** Classify a flat gate text. Read-only — no vault writes. */
80
+ checkGate(gateText: string): Record<string, unknown>;
81
+ /** Record a user decision for a recorded gate. The gateId embeds the
82
+ * canonicalized action hash — if the action changed, the match fails and
83
+ * the old approval expires automatically. */
84
+ resolveGate(sessionId: string, gateId: string, approved: boolean, note?: string): Record<string, unknown>;
85
+ /** Typed cognitive state projection for an active session. Derived on
86
+ * demand — zero persistence. Null when nothing meaningful exists yet. */
87
+ getProjection(sessionId: string): Record<string, unknown> | null;
88
+ /** Read-only end-of-loop audit (verification view). Never writes. */
89
+ getAudit(loopId: string): Record<string, unknown> | null;
90
+ /** v2.12: Policy metrics that survive restarts — vault-derived round
91
+ * statistics (A4 port) folded with this process's live observations.
92
+ * Non-durable fields (evidence, vault errors) come from live only. */
93
+ getPolicyMetrics(loopId: string): PolicyMetricsSnapshot;
102
94
  /** Get loop health for a loop (in-memory or vault).
103
95
  * Computes goal alignment, constraint integrity, drift, strategy stability. */
104
96
  getHealth(loopId: string): Record<string, unknown> | null;
105
- /** Core cycle for a canonical structured round report. Free-form output is
106
- * intentionally ignored; the runtime never guesses state from text. */
107
- advance(sessionId: string, report: RoundReport): Promise<AdvanceResult>;
108
- /** Execute the round transaction and apply global rejection tracking.
109
- * MUTATES: session.roundSnapshot, session.consecutiveRejections,
110
- * session.escalatedRejectionChecks, session.lastRoundProjection,
111
- * session.successTrajectory, session.driftClarificationStreak */
112
- private executeRoundTransaction;
113
- /** v2.12: Update the clarification streak based on the round result.
114
- * - Substantive clarification (anchors present): keep streak — genuine pivot.
115
- * - No intent_drift this round: reset streak to 0.
116
- * - Weak clarification rejected by R7: streak was already consumed by
117
- * enforceIntentDrift to decide reject vs terminate; staleness is handled
118
- * on the enforcement side. We sync the persisted counter for crash recovery.
119
- * MUTATES: session.driftClarificationStreak */
120
- private updateClarificationStreak;
121
- /** Persist terminal-rule escalation independently for each enforcement
122
- * check. A non-rejection ends the current rejection episode and clears the
123
- * set; rejected rules retain their marker until the episode resolves. */
124
- private updateEscalationChecks;
125
- /** Build a rejection result: compile a retry prompt, persist, return.
126
- * MUTATES: session.roundSnapshot, session.currentPrompt, session.currentLevel */
127
- private buildRejectionResult;
128
- /** v2.10: Build a backtrack result — roll back to last clean round.
129
- * Resets the round counter to the restore target + 1, merges preserved
130
- * discoveries, compiles from the restored state, and injects the
131
- * backtrack prompt at the top.
132
- * MUTATES: session.currentRound, session.roundSnapshot,
133
- * session.currentPrompt, session.currentLevel,
134
- * session.consecutiveRejections, session.lastRoundProjection */
135
- private buildBacktrackResult;
136
- /** Build a termination result: persist stopped status, notify sinks.
137
- * MUTATES: session.status, session.currentPrompt */
138
- private buildTerminationResult;
139
- /** Build a stop result: persist stopped/stalled status, notify sinks.
140
- * MUTATES: session.status, session.currentPrompt */
141
- private buildStopResult;
142
- /** Compile the next round's prompt and advance the session.
143
- * Includes the commit fence (pause/delete race guard) and context provider.
144
- * MUTATES: session.currentRound, session.currentPrompt, session.currentLevel,
145
- * session.evidenceBaseline, session.roundSnapshot */
146
- private advanceToNextRound;
147
- private advanceUnlocked;
148
- /** Write back loop knowledge to long-term memory.
149
- * Uses shared base builder from policy.ts. Called when a loop terminates. */
150
- private notifyTerminal;
97
+ /** Core cycle: extract self-eval → record feedback → check stop → compile next.
98
+ * The lease + per-session queue wrap the RoundLifecycle state machine.
99
+ * @param preExtractedEval Optional pre-built SelfEvaluation from MCP tool parameter.
100
+ * When provided (MCP path with evaluation parameter), skips regex extraction.
101
+ * When undefined (runtime/CLI path), falls back to regex extraction from output.
102
+ * @param roundId v3.0.1: The roundId of the round this submission reports on
103
+ * (from the last start/next/resume response). Anchors the submission so a
104
+ * stale or duplicate submission is not processed against a later round.
105
+ * Optional for library callers — when absent the anchor check is skipped. */
106
+ advance(sessionId: string, output: string, preExtractedEval?: SelfEvaluation, roundId?: string): Promise<AdvanceResult>;
151
107
  /** Replay timeline for a session — creates ReplayBackend from the stored backend. */
152
108
  replayTimeline(sessionId: string): Record<string, unknown>[] | null;
153
- replayTimelineByLoop(loopId: string, fromSequence?: number, toSequence?: number, limit?: number): {
154
- timeline: Record<string, unknown>[];
155
- nextSequence: number | null;
156
- };
157
109
  }
158
110
  //# sourceMappingURL=session.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/mcp/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/mcp/session.ts"],"names":[],"mappings":"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"}