loopforge 3.9.0 → 3.9.2

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 (133) hide show
  1. package/README.md +18 -0
  2. package/dist/audit.d.ts +13 -1
  3. package/dist/audit.d.ts.map +1 -1
  4. package/dist/audit.js +18 -3
  5. package/dist/audit.js.map +1 -1
  6. package/dist/committed-round.d.ts +29 -32
  7. package/dist/committed-round.d.ts.map +1 -1
  8. package/dist/committed-round.js +164 -157
  9. package/dist/committed-round.js.map +1 -1
  10. package/dist/contract-items.d.ts +3 -2
  11. package/dist/contract-items.d.ts.map +1 -1
  12. package/dist/contract-items.js +18 -7
  13. package/dist/contract-items.js.map +1 -1
  14. package/dist/enforcement-gate.d.ts.map +1 -1
  15. package/dist/enforcement-gate.js +13 -61
  16. package/dist/enforcement-gate.js.map +1 -1
  17. package/dist/engine.d.ts.map +1 -1
  18. package/dist/engine.js +16 -9
  19. package/dist/engine.js.map +1 -1
  20. package/dist/evidence-claims.d.ts +6 -5
  21. package/dist/evidence-claims.d.ts.map +1 -1
  22. package/dist/evidence-claims.js +21 -20
  23. package/dist/evidence-claims.js.map +1 -1
  24. package/dist/evidence-provider.d.ts +73 -42
  25. package/dist/evidence-provider.d.ts.map +1 -1
  26. package/dist/evidence-provider.js +437 -138
  27. package/dist/evidence-provider.js.map +1 -1
  28. package/dist/explain.d.ts +18 -3
  29. package/dist/explain.d.ts.map +1 -1
  30. package/dist/explain.js +26 -5
  31. package/dist/explain.js.map +1 -1
  32. package/dist/field-accounting.d.ts +29 -0
  33. package/dist/field-accounting.d.ts.map +1 -0
  34. package/dist/field-accounting.js +132 -0
  35. package/dist/field-accounting.js.map +1 -0
  36. package/dist/files-reconciliation.d.ts +18 -0
  37. package/dist/files-reconciliation.d.ts.map +1 -0
  38. package/dist/files-reconciliation.js +59 -0
  39. package/dist/files-reconciliation.js.map +1 -0
  40. package/dist/index.d.ts +7 -3
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +4 -1
  43. package/dist/index.js.map +1 -1
  44. package/dist/loop-compiler.d.ts +5 -11
  45. package/dist/loop-compiler.d.ts.map +1 -1
  46. package/dist/loop-compiler.js +33 -102
  47. package/dist/loop-compiler.js.map +1 -1
  48. package/dist/loop-store.d.ts +3 -0
  49. package/dist/loop-store.d.ts.map +1 -1
  50. package/dist/loop-store.js +21 -11
  51. package/dist/loop-store.js.map +1 -1
  52. package/dist/mcp/round-lifecycle.d.ts +26 -2
  53. package/dist/mcp/round-lifecycle.d.ts.map +1 -1
  54. package/dist/mcp/round-lifecycle.js +193 -25
  55. package/dist/mcp/round-lifecycle.js.map +1 -1
  56. package/dist/mcp/server.d.ts.map +1 -1
  57. package/dist/mcp/server.js +17 -14
  58. package/dist/mcp/server.js.map +1 -1
  59. package/dist/mcp/session.d.ts +15 -1
  60. package/dist/mcp/session.d.ts.map +1 -1
  61. package/dist/mcp/session.js +34 -1
  62. package/dist/mcp/session.js.map +1 -1
  63. package/dist/mcp/submission-boundary.d.ts +6 -3
  64. package/dist/mcp/submission-boundary.d.ts.map +1 -1
  65. package/dist/mcp/submission-boundary.js +54 -9
  66. package/dist/mcp/submission-boundary.js.map +1 -1
  67. package/dist/mcp/tools.d.ts.map +1 -1
  68. package/dist/mcp/tools.js +73 -39
  69. package/dist/mcp/tools.js.map +1 -1
  70. package/dist/policy-metrics.d.ts +18 -0
  71. package/dist/policy-metrics.d.ts.map +1 -1
  72. package/dist/policy-metrics.js +67 -1
  73. package/dist/policy-metrics.js.map +1 -1
  74. package/dist/prompt-assembler.d.ts.map +1 -1
  75. package/dist/prompt-assembler.js +63 -11
  76. package/dist/prompt-assembler.js.map +1 -1
  77. package/dist/protocol.d.ts +207 -11
  78. package/dist/protocol.d.ts.map +1 -1
  79. package/dist/protocol.js +7 -1
  80. package/dist/protocol.js.map +1 -1
  81. package/dist/replay.d.ts +3 -0
  82. package/dist/replay.d.ts.map +1 -1
  83. package/dist/replay.js +46 -7
  84. package/dist/replay.js.map +1 -1
  85. package/dist/round-contract.d.ts +5 -4
  86. package/dist/round-contract.d.ts.map +1 -1
  87. package/dist/round-contract.js +4 -4
  88. package/dist/round-contract.js.map +1 -1
  89. package/dist/round-coordinator.d.ts +2 -1
  90. package/dist/round-coordinator.d.ts.map +1 -1
  91. package/dist/round-coordinator.js +17 -9
  92. package/dist/round-coordinator.js.map +1 -1
  93. package/dist/round-driver.d.ts +4 -1
  94. package/dist/round-driver.d.ts.map +1 -1
  95. package/dist/round-driver.js +2 -0
  96. package/dist/round-driver.js.map +1 -1
  97. package/dist/round-facts.d.ts +3 -2
  98. package/dist/round-facts.d.ts.map +1 -1
  99. package/dist/round-facts.js +4 -4
  100. package/dist/round-facts.js.map +1 -1
  101. package/dist/round-transaction.d.ts +21 -10
  102. package/dist/round-transaction.d.ts.map +1 -1
  103. package/dist/round-transaction.js +81 -19
  104. package/dist/round-transaction.js.map +1 -1
  105. package/dist/self-eval.d.ts +40 -10
  106. package/dist/self-eval.d.ts.map +1 -1
  107. package/dist/self-eval.js +543 -123
  108. package/dist/self-eval.js.map +1 -1
  109. package/dist/submission-diagnostics.d.ts +12 -0
  110. package/dist/submission-diagnostics.d.ts.map +1 -0
  111. package/dist/submission-diagnostics.js +12 -0
  112. package/dist/submission-diagnostics.js.map +1 -0
  113. package/dist/submission-guidance.d.ts +137 -0
  114. package/dist/submission-guidance.d.ts.map +1 -0
  115. package/dist/submission-guidance.js +855 -0
  116. package/dist/submission-guidance.js.map +1 -0
  117. package/dist/submission-receipt.d.ts +48 -0
  118. package/dist/submission-receipt.d.ts.map +1 -0
  119. package/dist/submission-receipt.js +341 -0
  120. package/dist/submission-receipt.js.map +1 -0
  121. package/dist/token-utils.d.ts +7 -0
  122. package/dist/token-utils.d.ts.map +1 -1
  123. package/dist/token-utils.js +15 -0
  124. package/dist/token-utils.js.map +1 -1
  125. package/dist/verification-gate.d.ts +7 -6
  126. package/dist/verification-gate.d.ts.map +1 -1
  127. package/dist/verification-gate.js +100 -117
  128. package/dist/verification-gate.js.map +1 -1
  129. package/dist/version.d.ts +1 -1
  130. package/dist/version.js +1 -1
  131. package/loop_policy.json +58 -58
  132. package/package.json +2 -1
  133. package/skills/perception/SKILL.md +71 -27
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submission-guidance.js","sourceRoot":"","sources":["../src/submission-guidance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AASH,OAAO,EACL,0BAA0B,EAC1B,SAAS,GACV,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AA2CpD;;8EAE8E;AAC9E,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,SAAS;IACT,gBAAgB;IAChB,uBAAuB;IACvB,iBAAiB;IACjB,gCAAgC;IAChC,iCAAiC;IACjC,uCAAuC;IACvC,mCAAmC;IACnC,iBAAiB;IACjB,kBAAkB;IAClB,wBAAwB;IACxB,mBAAmB;IACnB,sBAAsB;IACtB,uBAAuB;IACvB,0BAA0B;IAC1B,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IACjB,wBAAwB;IACxB,kBAAkB;IAClB,mBAAmB;IACnB,UAAU;IACV,SAAS;IACT,SAAS;IACT,aAAa;IACb,kBAAkB;CACV,CAAC;AAIX,MAAM,MAAM,GAAiB;IAC3B;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,sEAAsE;QAC/E,IAAI,EAAE,yEAAyE;QAC/E,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,0DAA0D;QACtE,eAAe,EACb,6EAA6E;YAC7E,0DAA0D;QAC5D,IAAI,EAAE,IAAI;KACX;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,4DAA4D;QACrE,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,4EAA4E;QACxF,eAAe,EACb,0EAA0E;YAC1E,qCAAqC;QACvC,IAAI,EAAE,IAAI;KACX;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,OAAO,EAAE,gDAAgD;QACzD,IAAI,EAAE,6CAA6C;QACnD,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,0DAA0D;QACtE,eAAe,EACb,wEAAwE;YACxE,gEAAgE;QAClE,IAAI,EAAE,IAAI;KACX;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,mDAAmD;QAC5D,IAAI,EAAE,kFAAkF;QACxF,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,gDAAgD;QAC5D,eAAe,EACb,qEAAqE;YACrE,0BAA0B;QAC5B,IAAI,EAAE,IAAI;KACX;IACD;QACE,IAAI,EAAE,gCAAgC;QACtC,OAAO,EACL,4EAA4E;YAC5E,iEAAiE;QACnE,IAAI,EAAE,iGAAiG;QACvG,MAAM,EAAE,QAAQ;QAChB,UAAU,EACR,6EAA6E;QAC/E,eAAe,EACb,wEAAwE;YACxE,2EAA2E;YAC3E,4EAA4E;YAC5E,6CAA6C;QAC/C,UAAU,EAAE,KAAK;KAClB;IACD;QACE,IAAI,EAAE,iCAAiC;QACvC,OAAO,EAAE,8BAA8B;QACvC,IAAI,EAAE,+DAA+D;QACrE,MAAM,EAAE,QAAQ;QAChB,UAAU,EACR,kGAAkG;QACpG,eAAe,EACb,yEAAyE;YACzE,wEAAwE;YACxE,iCAAiC;KACpC;IACD;QACE,IAAI,EAAE,uCAAuC;QAC7C,OAAO,EAAE,kDAAkD;QAC3D,IAAI,EAAE,yFAAyF;QAC/F,MAAM,EAAE,OAAO;QACf,QAAQ,EAAE,uEAAuE;QACjF,UAAU,EACR,qGAAqG;QACvG,eAAe,EACb,0EAA0E;YAC1E,uEAAuE;YACvE,2EAA2E;YAC3E,gEAAgE;KACnE;IACD;QACE,IAAI,EAAE,mCAAmC;QACzC,OAAO,EAAE,2CAA2C;QACpD,IAAI,EAAE,mEAAmE;QACzE,MAAM,EAAE,OAAO;QACf,QAAQ,EAAE,2DAA2D;QACrE,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QAC1B,UAAU,EAAE,EAAE;QACd,UAAU,EACR,kFAAkF;QACpF,eAAe,EACb,0EAA0E;YAC1E,0EAA0E;YAC1E,2CAA2C;KAC9C;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,qDAAqD;QAC9D,IAAI,EAAE,oFAAoF;QAC1F,MAAM,EAAE,YAAY;QACpB,QAAQ,EAAE,uDAAuD;QACjE,UAAU,EAAE,2EAA2E;QACvF,eAAe,EACb,4EAA4E;YAC5E,uEAAuE;YACvE,wEAAwE;YACxE,oEAAoE;YACpE,4BAA4B;KAC/B;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,kDAAkD;QAC3D,IAAI,EAAE,gEAAgE;QACtE,MAAM,EAAE,YAAY;QACpB,QAAQ,EAAE,wDAAwD;QAClE,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QAC1B,UAAU,EAAE,EAAE;QACd,UAAU,EAAE,yEAAyE;QACrF,eAAe,EACb,0EAA0E;YAC1E,qDAAqD;KACxD;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,OAAO,EAAE,iDAAiD;QAC1D,IAAI,EAAE,+DAA+D;QACrE,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,kDAAkD;QAC5D,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QAChC,UAAU,EAAE,EAAE;QACd,UAAU,EACR,4EAA4E;QAC9E,eAAe,EACb,oEAAoE;YACpE,wEAAwE;YACxE,iEAAiE;KACpE;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,4DAA4D;QACrE,IAAI,EAAE,mEAAmE;QACzE,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,0CAA0C;QACpD,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QAChC,UAAU,EAAE,EAAE;QACd,UAAU,EACR,0FAA0F;QAC5F,eAAe,EACb,0EAA0E;YAC1E,0EAA0E;YAC1E,qBAAqB;KACxB;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,2DAA2D;QACpE,IAAI,EAAE,oEAAoE;QAC1E,MAAM,EAAE,QAAQ;QAChB,UAAU,EACR,uFAAuF;QACzF,eAAe,EACb,0EAA0E;YAC1E,yEAAyE;KAC5E;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,OAAO,EAAE,8DAA8D;QACvE,IAAI,EAAE,sDAAsD;QAC5D,MAAM,EAAE,QAAQ;QAChB,UAAU,EACR,gGAAgG;QAClG,eAAe,EACb,2EAA2E;YAC3E,8CAA8C;KACjD;IACD;QACE,IAAI,EAAE,0BAA0B;QAChC,OAAO,EAAE,2CAA2C;QACpD,IAAI,EAAE,4DAA4D;QAClE,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,oDAAoD;QAChE,eAAe,EACb,yEAAyE;YACzE,sBAAsB;KACzB;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,0DAA0D;QACnE,IAAI,EACF,0EAA0E;YAC1E,wEAAwE;YACxE,qCAAqC;QACvC,MAAM,EAAE,UAAU;QAClB,QAAQ,EAAE,wEAAwE;QAClF,UAAU,EACR,0EAA0E;YAC1E,yBAAyB;QAC3B,eAAe,EACb,wEAAwE;YACxE,sEAAsE;YACtE,mEAAmE;YACnE,qEAAqE;YACrE,wEAAwE;YACxE,uEAAuE;YACvE,2CAA2C;KAC9C;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,4CAA4C;QACrD,IAAI,EAAE,wCAAwC;QAC9C,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,oBAAoB;QAC9B,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QAC1B,UAAU,EAAE,EAAE;QACd,UAAU,EACR,sEAAsE;YACtE,6CAA6C;QAC/C,eAAe,EACb,uEAAuE;YACvE,qEAAqE;YACrE,uEAAuE;YACvE,sEAAsE;YACtE,yBAAyB;QAC3B,UAAU,EAAE,IAAI;KACjB;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,gDAAgD;QACzD,IAAI,EAAE,sDAAsD;QAC5D,MAAM,EAAE,SAAS;QACjB,QAAQ,EAAE,qCAAqC;QAC/C,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QAC1B,UAAU,EAAE,EAAE;QACd,UAAU,EACR,uEAAuE;YACvE,oDAAoD;QACtD,eAAe,EACb,yEAAyE;YACzE,sEAAsE;YACtE,2EAA2E;YAC3E,oDAAoD;KACvD;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,OAAO,EAAE,kCAAkC;QAC3C,IAAI,EAAE,2DAA2D;QACjE,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,sEAAsE;QAChF,YAAY,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QAC1B,UAAU,EAAE,EAAE;QACd,UAAU,EACR,4EAA4E;QAC9E,eAAe,EACb,yEAAyE;YACzE,gEAAgE;KACnE;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,4CAA4C;QACrD,IAAI,EAAE,iDAAiD;QACvD,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,wDAAwD;QACpE,eAAe,EACb,wDAAwD;YACxD,2EAA2E;KAC9E;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,sDAAsD;QAC/D,IAAI,EAAE,oDAAoD;QAC1D,MAAM,EAAE,OAAO;QACf,UAAU,EACR,uFAAuF;QACzF,eAAe,EACb,yEAAyE;YACzE,yEAAyE;YACzE,uEAAuE;KAC1E;IACD;QACE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,kDAAkD;QAC3D,IAAI,EAAE,8EAA8E;QACpF,MAAM,EAAE,SAAS;QACjB,UAAU,EACR,mFAAmF;QACrF,eAAe,EACb,sEAAsE;YACtE,2EAA2E;YAC3E,oEAAoE;KACvE;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,6BAA6B;QACtC,IAAI,EAAE,uEAAuE;QAC7E,MAAM,EAAE,OAAO;QACf,UAAU,EACR,qEAAqE;QACvE,eAAe,EACb,uEAAuE;YACvE,8DAA8D;YAC9D,8CAA8C;KACjD;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,iDAAiD;QAC1D,IAAI,EAAE,iEAAiE;QACvE,MAAM,EAAE,QAAQ;QAChB,UAAU,EACR,0EAA0E;QAC5E,eAAe,EACb,uEAAuE;YACvE,uEAAuE;YACvE,kBAAkB;KACrB;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,4BAA4B;QACrC,IAAI,EAAE,oDAAoD;QAC1D,MAAM,EAAE,SAAS;QACjB,UAAU,EACR,gGAAgG;QAClG,eAAe,EACb,8EAA8E;YAC9E,+DAA+D;KAClE;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,gDAAgD;QACzD,IAAI,EACF,wEAAwE;YACxE,+BAA+B;QACjC,MAAM,EAAE,QAAQ;QAChB,UAAU,EACR,kFAAkF;QACpF,eAAe,EACb,0EAA0E;YAC1E,yEAAyE;YACzE,qEAAqE;KACxE;CACF,CAAC;AAEF,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AAE1E;gFACgF;AAChF,MAAM,cAAc,GAAqC;IACvD,iBAAiB,EACf,mEAAmE;IACrE,oBAAoB,EAClB,sEAAsE;IACxE,0BAA0B,EACxB,kFAAkF;IACpF,WAAW,EACT,iFAAiF;CACpF,CAAC;AAEF,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,eAAe,IAAI,EAAE,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,kBAAkB;IAChC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC3C,CAAC;AAcD,SAAS,eAAe,CAAC,QAAmC;IAC1D,OAAO,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AACtC,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAgC;IAC1D,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,IAAI,IAAI,CAAC;AAC/F,CAAC;AAED;;2CAE2C;AAC3C,MAAM,UAAU,YAAY,CAC1B,IAAY,EACZ,GAAwB;IAExB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,SAAS,CAAC,CAAC,OAAO,KAAK,CAAC;QAC7B,KAAK,gBAAgB,CAAC,CAAC,OAAO,yCAAyC,CAAC;QACxE,KAAK,uBAAuB,CAAC,CAAC,OAAO,EAAE,CAAC;QACxC,KAAK,iBAAiB,CAAC,CAAC,OAAO,IAAI,CAAC;QACpC,KAAK,gCAAgC;YACnC,OAAO,CAAC,uDAAuD,CAAC,CAAC;QACnE,KAAK,iCAAiC;YACpC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QAC9C,KAAK,uCAAuC,CAAC,CAAC,CAAC;YAC7C,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YACjD,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9D,CAAC;QACD,KAAK,mCAAmC,CAAC,CAAC,CAAC;YACzC,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;YACpC,OAAO,SAAS;gBACd,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;gBAClD,CAAC,CAAC,IAAI,CAAC;QACX,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YACvD,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/D,CAAC;QACD,KAAK,kBAAkB;YACrB,OAAO,CAAC,mCAAmC,CAAC,CAAC;QAC/C,KAAK,wBAAwB;YAC3B,OAAO,CAAC,0CAA0C,CAAC,CAAC;QACtD,KAAK,mBAAmB;YACtB,OAAO,CAAC,0DAA0D,CAAC,CAAC;QACtE,KAAK,sBAAsB;YACzB,OAAO,sDAAsD,CAAC;QAChE,KAAK,uBAAuB;YAC1B,OAAO,CAAC,4DAA4D,CAAC,CAAC;QACxE,KAAK,0BAA0B;YAC7B,OAAO,CAAC,EAAE,GAAG,EAAE,iBAAiB,EAAE,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAC9D,KAAK,gBAAgB,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,GAAG,CAAC,6BAA6B,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YACjF,OAAO;gBACL,SAAS,EAAE,+BAA+B;gBAC1C,KAAK,EAAE,CAAC;wBACN,WAAW,EAAE,gDAAgD;wBAC7D,cAAc,EAAE,EAAE;wBAClB,YAAY,EAAE,EAAE;wBAChB,WAAW,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;qBAC/B,CAAC;gBACF,KAAK,EAAE,CAAC,wCAAwC,CAAC;aAClD,CAAC;QACJ,CAAC;QACD,KAAK,gBAAgB;YACnB,OAAO,CAAC;oBACN,OAAO,EAAE,aAAa;oBACtB,YAAY,EAAE,iBAAiB;oBAC/B,OAAO,EAAE,wCAAwC;oBACjD,aAAa,EAAE,4BAA4B;oBAC3C,OAAO,EAAE,SAAS;oBAClB,qBAAqB,EAAE,EAAE;iBAC1B,CAAC,CAAC;QACL,KAAK,iBAAiB;YACpB,OAAO;gBACL,SAAS,EAAE,CAAC,sCAAsC,CAAC;gBACnD,gBAAgB,EAAE,CAAC,2CAA2C,CAAC;aAChE,CAAC;QACJ,KAAK,wBAAwB,CAAC,CAAC,OAAO,KAAK,CAAC;QAC5C,KAAK,kBAAkB,CAAC,CAAC,OAAO,qBAAqB,CAAC;QACtD,KAAK,mBAAmB;YACtB,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,qCAAqC,EAAE,CAAC,CAAC;QACtE,KAAK,UAAU;YACb,OAAO,CAAC,6CAA6C,CAAC,CAAC;QACzD,KAAK,SAAS,CAAC,CAAC,OAAO,SAAS,CAAC;QACjC,KAAK,SAAS,CAAC,CAAC,OAAO,+BAA+B,CAAC;QACvD,KAAK,aAAa,CAAC,CAAC,OAAO,SAAS,CAAC;QACrC,KAAK,kBAAkB,CAAC,CAAC,OAAO,sCAAsC,CAAC;QACvE,OAAO,CAAC,CAAC,OAAO,IAAI,CAAC;IACvB,CAAC;AACH,CAAC;AAiBD;;;;wDAIwD;AACxD,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,KAAoB;IAClE,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,IAAI,KAAK,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAC5B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,gCAAgC,CAAC;QACtC,KAAK,iCAAiC;YACpC,OAAO,IAAI,CAAC;QACd,KAAK,uCAAuC;YAC1C,OAAO,KAAK,CAAC,cAAc,KAAK,IAAI,CAAC;QACvC,KAAK,mCAAmC;YACtC,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3C,KAAK,iBAAiB;YACpB,OAAO,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;QACrD,KAAK,gBAAgB;YACnB,qEAAqE;YACrE,wEAAwE;YACxE,qEAAqE;YACrE,OAAO,KAAK,CAAC,cAAc,KAAK,IAAI;gBAClC,KAAK,CAAC,6BAA6B;gBACnC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAC9B,KAAK,UAAU;YACb,OAAO,KAAK,CAAC,WAAW,CAAC;QAC3B,KAAK,kBAAkB;YACrB,OAAO,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;QACrC;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED;+CAC+C;AAC/C,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,KAAoB;IAChE,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,CAAC,KAAK,EAAE,QAAQ,IAAI,CAAC,KAAK,CAAC,YAAY;QAAE,OAAO,KAAK,CAAC;IAC1D,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5D,OAAO,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACxC,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,kBAAkB,CAAC,KAAoB;IACrD,OAAO,WAAW;SACf,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;SAC9C,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACpB,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,IAAI,MAAM,CAAC,gBAAgB,CAAC;QAChE,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,UAAU,IAAI,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;AACzE,CAAC;AAoBD,SAAS,YAAY,CACnB,MAAc,EACd,QAAmD;IAEnD,OAAO,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC;AACrF,CAAC;AAED,SAAS,sBAAsB,CAAC,GAA0B;IACxD,MAAM,QAAQ,GAAG,GAAG,CAAC,cAAc,CAAC;IACpC,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,KAAK,GAAG;YACZ,qEAAqE;YACrE,KAAK,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,QAAQ,CAAC,EAAE,GAAG;SAC1E,CAAC;QACF,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;YACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC;YACzD,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,WAAW,MAAM,MAAM,iBAAiB,QAAQ,EAAE,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACzC,KAAK,CAAC,IAAI,CAAC,aAAa,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,4BAA4B,CAAC,CAAC;QAC5F,CAAC;QACD,MAAM,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,uCAAuC,CAAC,EAAE,QAAQ;eACrF,uEAAuE,CAAC;QAC7E,KAAK,CAAC,IAAI,CACR,GAAG,aAAa,iDAAiD,EACjE,+EAA+E,EAC/E,gFAAgF,EAChF,gFAAgF,EAChF,qDAAqD,CACtD,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,6BAA6B,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpE,OAAO;YACL,gFAAgF;YAChF,0EAA0E;SAC3E,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,QAAQ;WACjE,wEAAwE,CAAC;IAC9E,OAAO;QACL,GAAG,gBAAgB,oBAAoB;QACvC,SAAS;QACT,IAAI,CAAC,SAAS,CAAC;YACb,cAAc,EAAE;gBACd,SAAS,EAAE,wBAAwB;gBACnC,KAAK,EAAE,CAAC;wBACN,WAAW,EAAE,6BAA6B;wBAC1C,cAAc,EAAE,EAAE;wBAClB,YAAY,EAAE,EAAE;wBAChB,WAAW,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;qBAC/B,CAAC;gBACF,KAAK,EAAE,CAAC,2BAA2B,CAAC;aACrC;SACF,EAAE,IAAI,EAAE,CAAC,CAAC;QACX,KAAK;QACL,oBAAoB,QAAQ,yDAAyD;KACtF,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,GAA0B;IACvD,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAChC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,CAC/D,CAAC;IACF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,MAAM,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,QAAQ;WAChE,uDAAuD,CAAC;IAC7D,OAAO;QACL,qDAAqD;QACrD,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,WAAW,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAC7E,GAAG,cAAc,uDAAuD;KACzE,CAAC;AACJ,CAAC;AAED,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACjC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAE/B,SAAS,iBAAiB,CAAC,IAAY;IACrC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnD,OAAO,SAAS,CAAC,MAAM,GAAG,mBAAmB;QAC3C,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,mBAAmB,GAAG,CAAC,CAAC,GAAG,KAAK;QACrD,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,SAAS,mBAAmB,CAC1B,QAAwC;IAExC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5C,MAAM,MAAM,GAAG,KAAK;SACjB,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CACjB,KAAK,SAAS,CAAC,EAAE,OAAO,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,SAAS,CAAC,MAAM,GAAG,CAAC;SACpF,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO;QACL,oBAAoB,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,yBAAyB,CAAC,CAAC,CAAC,GAAG,EAAE;KACpF,CAAC;AACJ,CAAC;AAED;;wDAEwD;AACxD,SAAS,qBAAqB,CAAC,GAA0B;IACvD,MAAM,KAAK,GAAkB;QAC3B,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,cAAc,EAAE,GAAG,CAAC,cAAc;QAClC,YAAY,EAAE,GAAG,CAAC,YAAY;QAC9B,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,6BAA6B,EAAE,GAAG,CAAC,6BAA6B;QAChE,WAAW,EAAE,GAAG,CAAC,WAAW,KAAK,IAAI;QACrC,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE;KAC7B,CAAC;IACF,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,MAAM,KAAK,GAAG;QACZ,2EAA2E;QAC3E,0EAA0E;QAC1E,oEAAoE;KACrE,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,EAAE,QAAQ;YAAE,SAAS;QAC/B,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,QAAQ,QAAQ,IAAI,QAAQ,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QACtE,IAAI,IAAI,KAAK,mCAAmC,EAAE,CAAC;YACjD,KAAK,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CACzB,KAAsC,EACtC,WAA2C,EAAE;IAE7C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAG;QACZ,kFAAkF;QAClF,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YAClC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACvC,OAAO,OAAO,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC/D,CAAC,CAAC;KACH,CAAC;IACF,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC3C,IAAI,CAAC,KAAK,KAAK,mCAAmC;QAClD,IAAI,CAAC,KAAK,KAAK,kBAAkB;QACjC,IAAI,CAAC,KAAK,KAAK,4BAA4B;QAC3C,IAAI,CAAC,KAAK,KAAK,iCAAiC,CAAC,CAAC;IACpD,IAAI,gBAAgB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,KAAK,CAAC,IAAI,CACR,+EAA+E,EAC/E,0EAA0E,CAC3E,CAAC;IACF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,mBAAmB,CAAC,GAA0B;IAC5D,MAAM,IAAI,GAAG;QACX,OAAO,EAAE,KAAK;QACd,cAAc,EAAE,yCAAyC;QACzD,qBAAqB,EAAE,EAAE;QACzB,eAAe,EAAE,IAAI;KACtB,CAAC;IACF,MAAM,SAAS,GAAwB;QACrC,cAAc,EAAE,GAAG,CAAC,cAAc;QAClC,cAAc,EAAE,GAAG,CAAC,QAAQ;QAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,6BAA6B,EAAE,GAAG,CAAC,6BAA6B;QAChE,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE;KAC7B,CAAC;IACF,MAAM,KAAK,GAAa;QACtB,qCAAqC;QACrC,EAAE;QACF,0BAA0B,GAAG,CAAC,KAAK,6BAA6B;YAC9D,8BAA8B;QAChC,EAAE;QACF,gBAAgB;QAChB,SAAS;QACT,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7B,KAAK;QACL,qEAAqE;QACrE,SAAS;QACT,IAAI,CAAC,SAAS,CAAC;YACb,gBAAgB,EAAE;gBAChB,aAAa,EAAE,YAAY,CAAC,gCAAgC,EAAE,SAAS,CAAC;gBACxE,cAAc,EAAE,YAAY,CAAC,iCAAiC,EAAE,SAAS,CAAC;aAC3E;SACF,EAAE,IAAI,EAAE,CAAC,CAAC;QACX,KAAK;QACL,yEAAyE;QACzE,4EAA4E;QAC5E,qEAAqE;KACtE,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,KAAK,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,KAAK,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,iBAAiB,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;IAC/E,CAAC;IACD,KAAK,CAAC,IAAI,CACR,6DAA6D,EAC7D,yEAAyE,EACzE,2BAA2B,CAC5B,CAAC;IACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAkCD,SAAS,cAAc,CAAC,QAAgC;IACtD,OAAO,QAAQ,CAAC,MAAM,CACpB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,CAC/D,CAAC;AACJ,CAAC;AAED;+DAC+D;AAC/D,MAAM,UAAU,wBAAwB,CACtC,OAA4B,EAC5B,OAAwB;IAExB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,cAAc,GAClB,MAAM,CAAC,QAAQ,EAAE,QAAQ,IAAI,EAAE,CAAC;IAClC,MAAM,UAAU,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ;SACrC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;SACpC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACvC,MAAM,KAAK,GACT,OAAO,CAAC,YAAY,KAAK,IAAI,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI;QAC5D,OAAO,CAAC,YAAY,KAAK,IAAI;QAC7B,CAAC,CAAC,OAAO,CAAC,YAAY;QACtB,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,cAAc,EAAE,KAAK;YAC7C,OAAO,CAAC,mBAAmB,EAAE,eAAe,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC;IAEnE,MAAM,QAAQ,GACZ,OAAO,CAAC,mBAAmB,EAAE,SAAS;QACtC,cAAc,CAAC;YACb,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;IACL,MAAM,KAAK,GAAG,gBAAgB,CAAC;QAC7B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,QAAQ,EAAE,kBAAkB;QAC5B,QAAQ;QACR,QAAQ,EAAE,cAAc;KACzB,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC;IAC5C,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;IACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,mBAAmB,EAAE,kBAAkB,IAAI,EAAE,CAAC;IACvE,MAAM,aAAa,GAAkB;QACnC,KAAK;QACL,cAAc;QACd,YAAY;QACZ,QAAQ;QACR,QAAQ,EAAE,YAAY;QACtB,6BAA6B,EAAE,UAAU,CAAC,6BAA6B;QACvE,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI;QAC1C,QAAQ;KACT,CAAC;IACF,MAAM,UAAU,GAAwB;QACtC,cAAc;QACd,cAAc,EAAE,cAAc,CAAC,QAAQ,CAAC;QACxC,QAAQ,EAAE,YAAY;QACtB,6BAA6B,EAAE,UAAU,CAAC,6BAA6B;QACvE,QAAQ;KACT,CAAC;IACF,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,EAAE,cAAc;QACpD,OAAO,CAAC,mBAAmB,EAAE,eAAe,CAAC;IAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,EAAE,OAAO;QAC5C,QAAQ,OAAO,CAAC,MAAM,UAAU,OAAO,CAAC,YAAY,EAAE,CAAC;IAEzD,OAAO;QACL,QAAQ,EAAE,OAAO;QACjB,eAAe,EAAE,cAAc;YAC7B,CAAC,CAAC;gBACE,EAAE,EAAE,cAAc,CAAC,EAAE;gBACrB,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,cAAc,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5E,iBAAiB,EAAE,cAAc,CAAC,iBAAiB;gBACnD,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACzC,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC;oBAC3C,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;iBACnC,CAAC,CAAC;aACJ;YACH,CAAC,CAAC,IAAI;QACR,iBAAiB,EAAE,YAAY;QAC/B,+BAA+B,EAAE,UAAU,CAAC,6BAA6B;QACzE,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAChD,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC;QACH,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACrC,EAAE,EAAE,SAAS,CAAC,EAAE;YAChB,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,MAAM,EAAE,SAAS,CAAC,MAAM;SACzB,CAAC,CAAC;QACH,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,sBAAsB;YAC3D,CAAC,CAAC;gBACE,QAAQ,EAAE,IAAI;gBACd,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC;gBACpD,WAAW,EAAE,OAAO,CAAC,sBAAsB;aAC5C;YACH,CAAC,CAAC,IAAI,CAAC;QACT,MAAM,EAAE;YACN,KAAK;YACL,gBAAgB,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,eAAe,IAAI,EAAE,CAAC,CAAC;YACxD,kBAAkB,EAAE,QAAQ,EAAE,iBAAiB,KAAK,IAAI;SACzD;QACD,MAAM,EAAE,WAAW;aAChB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;aACxD,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACZ,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;YACvC,OAAO;gBACL,IAAI;gBACJ,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO,EAAE,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC;gBACvC,MAAM,EAAE,KAAK,CAAC,UAAU;aACzB,CAAC;QACJ,CAAC,CAAC;QACJ,QAAQ,EAAE,CAAC,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACzD,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,0DAA0D;AAC1D,8EAA8E;AAE9E,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAChD,CAAC;AACF,MAAM,sBAAsB,GAAG,IAAI,GAAG,CACpC,MAAM;KACH,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;KAC7D,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAChE,CAAC;AAEF;;;;oCAIoC;AACpC,MAAM,UAAU,mBAAmB,CAAC,GAA4B;IAC9D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,GAAG,CAAC,gBAAgB,CAAC;IACpC,MAAM,YAAY,GAChB,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAC5D,CAAC,CAAC,MAAiC;QACnC,CAAC,CAAC,IAAI,CAAC;IACX,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,YAAY;gBACZ,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,CAAC;gBAChC,YAAY,CAAC,GAAG,CAAC,KAAK,SAAS;gBAC/B,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,SAAS,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACrF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,MAA+B;IAE/B,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;SACvB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SACjD,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,GAA4B;IACvE,MAAM,MAAM,GAAG,GAAG,CAAC,gBAAgB,CAAC;IACpC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IAC9E,OAAO,iCAAiC,CAAC,MAAiC,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAA4B;IAChE,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;SACpB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SAC1C,IAAI,EAAE,CAAC;AACZ,CAAC"}
@@ -0,0 +1,48 @@
1
+ /** v3.9.1 — the submission receipt.
2
+ *
3
+ * A receipt is a READ-ONLY projection: it compares existing derivations and
4
+ * reports what the transaction actually did. It is never persisted as its own
5
+ * ledger; a committed round's receipt is rebuilt from its transaction snapshot
6
+ * plus the shared `CommittedRoundView` window.
7
+ *
8
+ * The three facts are deliberately separate:
9
+ * - reports: what was saved (or dropped/truncated/not applied);
10
+ * - effects: which derived state actually changed;
11
+ * - verification: what the machine observed/verified.
12
+ * A saved report is never a verified fact.
13
+ */
14
+ import type { ContractItemStatus, PromptArtifact, SelfEvaluation, SubmissionDiagnostic, SubmissionReceipt, SubGoal } from "./protocol.js";
15
+ import type { ObservationDelta } from "./evidence-provider.js";
16
+ import type { RoundProcessResult } from "./round-coordinator.js";
17
+ import type { RoundTransactionSnapshot } from "./round-transaction.js";
18
+ import type { CommittedRoundView } from "./committed-round.js";
19
+ export interface ReceiptFacts {
20
+ contractBefore: string | null;
21
+ contractAfter: string | null;
22
+ subGoalsBefore: ReadonlyArray<SubGoal>;
23
+ subGoalsAfter: ReadonlyArray<SubGoal> | null;
24
+ /** The next compile's active constraint set, or null when not observed. */
25
+ constraintsActiveAfter: string[] | null;
26
+ }
27
+ export interface ReceiptInput {
28
+ snapshot: RoundTransactionSnapshot;
29
+ selfEval: SelfEvaluation;
30
+ pr: RoundProcessResult;
31
+ disposition: SubmissionReceipt["disposition"];
32
+ diagnostics: SubmissionDiagnostic[];
33
+ submittedFields: string[];
34
+ facts: ReceiptFacts;
35
+ nextArtifact?: PromptArtifact | null;
36
+ contractItems: Array<{
37
+ item_id: string;
38
+ status: ContractItemStatus;
39
+ }>;
40
+ /** The round delta (already derived) used by the evidence posture. */
41
+ evidenceDeltas: ObservationDelta[];
42
+ }
43
+ /** Build a receipt from explicitly supplied before/after facts. */
44
+ export declare function deriveSubmissionReceipt(input: ReceiptInput): SubmissionReceipt;
45
+ /** Rebuild the same receipt from committed history. No new persistence and
46
+ * no second history: `allViews` is the caller's `readOnlyRounds` window. */
47
+ export declare function deriveCommittedSubmissionView(view: CommittedRoundView, allViews: ReadonlyArray<CommittedRoundView>): SubmissionReceipt;
48
+ //# sourceMappingURL=submission-receipt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submission-receipt.d.ts","sourceRoot":"","sources":["../src/submission-receipt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EAEd,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EAEjB,OAAO,EACR,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAS/D,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IACvC,aAAa,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7C,2EAA2E;IAC3E,sBAAsB,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CACzC;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,wBAAwB,CAAC;IACnC,QAAQ,EAAE,cAAc,CAAC;IACzB,EAAE,EAAE,kBAAkB,CAAC;IACvB,WAAW,EAAE,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAC9C,WAAW,EAAE,oBAAoB,EAAE,CAAC;IACpC,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE,YAAY,CAAC;IACpB,YAAY,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IACrC,aAAa,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,kBAAkB,CAAA;KAAE,CAAC,CAAC;IACtE,sEAAsE;IACtE,cAAc,EAAE,gBAAgB,EAAE,CAAC;CACpC;AAwGD,mEAAmE;AACnE,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,YAAY,GAAG,iBAAiB,CAgJ9E;AAED;6EAC6E;AAC7E,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,kBAAkB,EACxB,QAAQ,EAAE,aAAa,CAAC,kBAAkB,CAAC,GAC1C,iBAAiB,CAgGnB"}
@@ -0,0 +1,341 @@
1
+ /** v3.9.1 — the submission receipt.
2
+ *
3
+ * A receipt is a READ-ONLY projection: it compares existing derivations and
4
+ * reports what the transaction actually did. It is never persisted as its own
5
+ * ledger; a committed round's receipt is rebuilt from its transaction snapshot
6
+ * plus the shared `CommittedRoundView` window.
7
+ *
8
+ * The three facts are deliberately separate:
9
+ * - reports: what was saved (or dropped/truncated/not applied);
10
+ * - effects: which derived state actually changed;
11
+ * - verification: what the machine observed/verified.
12
+ * A saved report is never a verified fact.
13
+ */
14
+ import { deriveActiveRoundContract, deriveRoundContractView } from "./round-contract.js";
15
+ import { deriveSubGoals } from "./subgoal-state.js";
16
+ import { deriveEvidenceStatus } from "./verification-gate.js";
17
+ import { fieldGuide } from "./submission-guidance.js";
18
+ import { deriveFieldAccounting } from "./field-accounting.js";
19
+ import { deriveFilesReconciliation } from "./files-reconciliation.js";
20
+ import { getPolicy } from "./policy.js";
21
+ const HANDLING_PRIORITY = {
22
+ "not_applied": 6,
23
+ "dropped": 5,
24
+ "truncated": 4,
25
+ "normalized": 3,
26
+ "saved_not_expanded": 2,
27
+ "saved": 1,
28
+ };
29
+ function stronger(left, right) {
30
+ return HANDLING_PRIORITY[right] > HANDLING_PRIORITY[left] ? right : left;
31
+ }
32
+ function combineDetail(left, right) {
33
+ if (!left)
34
+ return right;
35
+ if (!right)
36
+ return left;
37
+ return `${left}; ${right}`;
38
+ }
39
+ function hasCheck(pr, check) {
40
+ return pr.verificationFlags.some((flag) => flag.check === check);
41
+ }
42
+ function baseReportHandling(path, input) {
43
+ if (input.disposition === "rejected" || input.disposition === "terminated") {
44
+ return { handling: "not_applied" };
45
+ }
46
+ if (input.disposition === "backtracked") {
47
+ return path === "wrong_assumptions"
48
+ ? { handling: "saved", detail: "kept in the recovery brief" }
49
+ : { handling: "not_applied" };
50
+ }
51
+ const guide = fieldGuide(path);
52
+ if (guide?.reportOnly) {
53
+ return {
54
+ handling: "saved_not_expanded",
55
+ detail: "saved as a report; it does not change derived state automatically",
56
+ };
57
+ }
58
+ if (path === "gate_ids" && getPolicy().gate.enabled !== true) {
59
+ return {
60
+ handling: "saved_not_expanded",
61
+ detail: "the gate layer is disabled; the citation has no runtime effect",
62
+ };
63
+ }
64
+ if (path === "prompt_requests") {
65
+ const nextLevel = input.nextArtifact?.level;
66
+ if (!input.nextArtifact || nextLevel === "l0") {
67
+ return {
68
+ handling: "saved_not_expanded",
69
+ detail: "no next prompt consumed it (or the next prompt is L0)",
70
+ };
71
+ }
72
+ }
73
+ if (path === "round_contract" && hasCheck(input.pr, "contract_premature")) {
74
+ return {
75
+ handling: "saved_not_expanded",
76
+ detail: "the active contract is still open; the different proposal was ignored",
77
+ };
78
+ }
79
+ if (path === "no_change_reason") {
80
+ const commands = getPolicy().evidence.commands ?? [];
81
+ if (commands.some((command) => command.enabled)) {
82
+ return {
83
+ handling: "saved_not_expanded",
84
+ detail: "a verification command is configured; the escape is not honored",
85
+ };
86
+ }
87
+ }
88
+ return { handling: "saved" };
89
+ }
90
+ function subGoalDiff(before, after) {
91
+ if (!after)
92
+ return { created: [], updated: [] };
93
+ const beforeById = new Map(before.map((item) => [item.id, item]));
94
+ const created = [];
95
+ const updated = [];
96
+ for (const item of after) {
97
+ const previous = beforeById.get(item.id);
98
+ if (!previous) {
99
+ created.push({ id: item.id, description: item.description });
100
+ continue;
101
+ }
102
+ if (previous.status !== item.status) {
103
+ updated.push({ id: item.id, from: previous.status, to: item.status });
104
+ }
105
+ }
106
+ return { created, updated };
107
+ }
108
+ /** Build a receipt from explicitly supplied before/after facts. */
109
+ export function deriveSubmissionReceipt(input) {
110
+ const { selfEval, pr, disposition } = input;
111
+ const enteredHistory = disposition === "accepted" || disposition === "stopped";
112
+ const record = disposition === "accepted" || disposition === "stopped"
113
+ ? "committed"
114
+ : disposition === "backtracked"
115
+ ? "rollback_directive"
116
+ : "none";
117
+ // ── reports ────────────────────────────────────────────────────────────
118
+ const accounting = deriveFieldAccounting({
119
+ submittedFields: input.submittedFields,
120
+ normalizationDiagnostics: input.diagnostics,
121
+ evaluation: selfEval,
122
+ });
123
+ const retained = new Set(accounting.retained);
124
+ const reports = new Map();
125
+ for (const path of input.submittedFields) {
126
+ const base = baseReportHandling(path, input);
127
+ const detail = !retained.has(path) && accounting.incomplete &&
128
+ base.handling !== "not_applied"
129
+ ? combineDetail(base.detail, "retention unknown (diagnostics were truncated)")
130
+ : base.detail;
131
+ reports.set(path, {
132
+ path,
133
+ handling: base.handling,
134
+ ...(detail ? { detail } : {}),
135
+ });
136
+ }
137
+ for (const diagnostic of input.diagnostics) {
138
+ if (diagnostic.handling === "rejected")
139
+ continue;
140
+ const existing = reports.get(diagnostic.path);
141
+ if (existing) {
142
+ // A partial array loss must not downgrade a retained field: the field
143
+ // survived with some entries. Keep its handling and surface the loss as
144
+ // a detail instead.
145
+ if (retained.has(diagnostic.path) && diagnostic.handling === "dropped") {
146
+ existing.detail = combineDetail(existing.detail, diagnostic.detail);
147
+ continue;
148
+ }
149
+ if (existing.handling === "not_applied") {
150
+ existing.detail = diagnostic.detail;
151
+ }
152
+ else {
153
+ existing.handling = stronger(existing.handling, diagnostic.handling);
154
+ existing.detail = diagnostic.detail;
155
+ }
156
+ }
157
+ else {
158
+ reports.set(diagnostic.path, {
159
+ path: diagnostic.path,
160
+ handling: diagnostic.handling,
161
+ detail: diagnostic.detail,
162
+ });
163
+ }
164
+ }
165
+ // ── effects ────────────────────────────────────────────────────────────
166
+ const diffApplied = disposition === "accepted" || disposition === "stopped";
167
+ const subGoals = diffApplied
168
+ ? subGoalDiff(input.facts.subGoalsBefore, input.facts.subGoalsAfter)
169
+ : { created: [], updated: [] };
170
+ const declared = diffApplied ? [...(selfEval.discovered_constraints ?? [])] : [];
171
+ const retracted = diffApplied ? [...(selfEval.retracted_constraints ?? [])] : [];
172
+ const activeAfter = input.facts.constraintsActiveAfter;
173
+ const activationObserved = diffApplied && activeAfter !== null;
174
+ const notExpanded = activationObserved
175
+ ? declared.filter((item) => !activeAfter.includes(item))
176
+ : [];
177
+ const checkpoint = diffApplied && selfEval.compression_checkpoint === true
178
+ ? {
179
+ label: (selfEval.checkpoint_label ?? "").trim() || `Round ${input.snapshot.round}`,
180
+ round: input.snapshot.round,
181
+ }
182
+ : null;
183
+ const rollback = pr.action === "backtrack"
184
+ ? {
185
+ restore_point: pr.backtrackTarget ?? Math.max(1, input.snapshot.round - 1),
186
+ preserved_discoveries: [...(pr.backtrackSkippedDiscoveries ?? [])],
187
+ wrong_assumptions: [...(pr.backtrackWrongAssumptions ?? [])],
188
+ }
189
+ : null;
190
+ const contractBefore = input.facts.contractBefore;
191
+ const contractAfter = input.facts.contractAfter;
192
+ // ── verification ───────────────────────────────────────────────────────
193
+ const evidence = deriveEvidenceStatus(selfEval, input.evidenceDeltas);
194
+ const filesReconciliation = deriveFilesReconciliation(selfEval.execution_report ?? null, input.evidenceDeltas, {
195
+ attempted: input.submittedFields.includes("execution_report.files_changed"),
196
+ });
197
+ return {
198
+ round_id: input.snapshot.roundId,
199
+ attempt: input.snapshot.attempt,
200
+ disposition,
201
+ record,
202
+ entered_history: enteredHistory,
203
+ reports: [...reports.values()],
204
+ effects: {
205
+ contract: {
206
+ before_id: contractBefore,
207
+ after_id: contractAfter,
208
+ activated: diffApplied && contractAfter !== null && contractBefore !== contractAfter,
209
+ closed: diffApplied && contractBefore !== null && contractBefore !== contractAfter,
210
+ },
211
+ subgoals_created: subGoals.created,
212
+ subgoals_updated: subGoals.updated,
213
+ constraints_declared: declared,
214
+ constraints_retracted: retracted,
215
+ constraints_activation: activationObserved ? "observed" : "not_observed",
216
+ constraints_active_after: activationObserved ? activeAfter : null,
217
+ constraints_not_expanded: notExpanded,
218
+ checkpoint,
219
+ rollback,
220
+ },
221
+ verification: {
222
+ contract_status: pr.verificationStatus,
223
+ evidence_status: evidence.providerStatus,
224
+ checks: pr.verificationFlags.map((flag) => ({
225
+ field: flag.field,
226
+ check: flag.check,
227
+ severity: flag.severity,
228
+ detail: flag.detail,
229
+ })),
230
+ contract_items: input.contractItems,
231
+ },
232
+ files_reconciliation: filesReconciliation,
233
+ prompt: input.nextArtifact
234
+ ? {
235
+ level: input.nextArtifact.level,
236
+ dropped_sections: [...input.nextArtifact.droppedSections],
237
+ prompt_request_effects: [...(input.nextArtifact.promptRequestEffects ?? [])],
238
+ }
239
+ : null,
240
+ diagnostics: input.diagnostics,
241
+ };
242
+ }
243
+ /** Rebuild the same receipt from committed history. No new persistence and
244
+ * no second history: `allViews` is the caller's `readOnlyRounds` window. */
245
+ export function deriveCommittedSubmissionView(view, allViews) {
246
+ const commands = getPolicy().evidence.commands ?? [];
247
+ const beforeRounds = allViews.filter((item) => item.round < view.round);
248
+ const afterRounds = allViews.filter((item) => item.round <= view.round);
249
+ const next = allViews.find((item) => item.round === view.round + 1) ?? null;
250
+ const contractBefore = deriveActiveRoundContract(beforeRounds, commands)?.id ?? null;
251
+ const contractAfter = deriveActiveRoundContract(afterRounds, commands)?.id ?? null;
252
+ const subGoalsBefore = deriveSubGoals({
253
+ loopId: view.loopId,
254
+ currentRound: view.round,
255
+ rounds: beforeRounds,
256
+ });
257
+ const subGoalsAfter = deriveSubGoals({
258
+ loopId: view.loopId,
259
+ currentRound: view.round + 1,
260
+ rounds: afterRounds,
261
+ });
262
+ const contractView = deriveRoundContractView({
263
+ rounds: allViews,
264
+ round: view.round,
265
+ report: view.executionReport,
266
+ deltas: view.observationDelta,
267
+ outcome: view.outcome,
268
+ commands,
269
+ });
270
+ const selfEval = view.evaluation ?? {
271
+ success: view.success,
272
+ output_summary: "",
273
+ constraint_violations: [],
274
+ should_continue: view.action === "continue",
275
+ };
276
+ const pr = view.result ?? {
277
+ action: view.action,
278
+ verificationFlags: view.verificationFlags,
279
+ roundSuccess: view.success,
280
+ gateContradicted: false,
281
+ verificationStatus: "trusted",
282
+ newConsecutiveRejections: 0,
283
+ shouldPushSuccessTrajectory: false,
284
+ ...(view.backtrack
285
+ ? {
286
+ backtrackTarget: view.backtrack.target,
287
+ backtrackSkippedDiscoveries: [],
288
+ }
289
+ : {}),
290
+ };
291
+ const disposition = view.action === "backtrack"
292
+ ? "backtracked"
293
+ : view.action === "stop"
294
+ ? "stopped"
295
+ : "accepted";
296
+ const submittedFields = view.submittedFields;
297
+ const snapshot = {
298
+ schemaVersion: 3,
299
+ roundId: view.roundId,
300
+ loopId: view.loopId,
301
+ round: view.round,
302
+ attempt: view.attempt,
303
+ phase: "committed",
304
+ beforeEvidence: view.beforeEvidence,
305
+ afterEvidence: view.afterEvidence,
306
+ evaluation: view.evaluation ?? undefined,
307
+ result: view.result ?? undefined,
308
+ ...(view.normalizationDiagnostics.length > 0
309
+ ? { normalizationDiagnostics: view.normalizationDiagnostics }
310
+ : {}),
311
+ ...(view.submittedFields.length > 0 ? { submittedFields: view.submittedFields } : {}),
312
+ createdAt: 0,
313
+ updatedAt: 0,
314
+ };
315
+ return deriveSubmissionReceipt({
316
+ snapshot,
317
+ selfEval,
318
+ pr,
319
+ disposition,
320
+ diagnostics: view.normalizationDiagnostics,
321
+ submittedFields,
322
+ facts: {
323
+ contractBefore,
324
+ contractAfter,
325
+ subGoalsBefore,
326
+ subGoalsAfter,
327
+ // A stopped/backtracked round has no next compile to attribute an
328
+ // active set to. A continue round uses the next round's stamped set.
329
+ constraintsActiveAfter: disposition === "accepted"
330
+ ? next?.activeConstraints ?? null
331
+ : null,
332
+ },
333
+ nextArtifact: next?.promptArtifact ?? null,
334
+ contractItems: contractView.statuses.items.map((item) => ({
335
+ item_id: item.itemId,
336
+ status: item.status,
337
+ })),
338
+ evidenceDeltas: view.observationDelta,
339
+ });
340
+ }
341
+ //# sourceMappingURL=submission-receipt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submission-receipt.js","sourceRoot":"","sources":["../src/submission-receipt.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,13 @@ export declare function deriveCriterionId(text: string): string;
38
38
  /** The cr-XXXXXXXX shape — the ONE predicate every criterion-reference reader
39
39
  * uses (round-contract.ts kept an inline copy before v3.8.1). */
40
40
  export declare function isCriterionId(ref: string): boolean;
41
+ /** v3.9.2: ONE criterion identity rule for the compiler, the prompt and the
42
+ * submission boundary. A reference matches a criterion when it is the real
43
+ * cr- id or the exact normalized criterion text. Never similarity. */
44
+ export declare function criterionRefMatches(ref: string, criterion: string | {
45
+ id?: string;
46
+ text: string;
47
+ }): boolean;
41
48
  /** Normalize one contract text field for identity purposes. */
42
49
  export declare function normalizeText(text: string): string;
43
50
  /** The contract-item fields that participate in rci-/rc- identity. Structural
@@ -1 +1 @@
1
- {"version":3,"file":"token-utils.d.ts","sourceRoot":"","sources":["../src/token-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,0EAA0E;AAC1E,wBAAgB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,MAAM,EAAE,CAKzE;AAID;kFACkF;AAClF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAID;;8DAE8D;AAC9D,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAKjD;AAID;;;;qCAIqC;AACrC,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKjD;AAED;;kBAEkB;AAClB,eAAO,MAAM,YAAY,QAAmC,CAAC;AAE7D;;;;;;;iBAOiB;AACjB,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;kEACkE;AAClE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAElD;AAID,+DAA+D;AAC/D,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED;;uDAEuD;AACvD,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;oBAGoB;AACpB,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,EAAE,oBAAoB,EAAE,CAAC;CAC/B,GAAG,MAAM,CAYT;AAED,sDAAsD;AACtD,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC,CAAC,GACpD,MAAM,CAER;AAED;;yEAEyE;AACzE,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,oBAAoB,EAC1B,gBAAgB,EAAE,MAAM,GACvB,MAAM,CASR;AAED;;eAEe;AACf,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,CAAC,oBAAoB,CAAC,GACzC,MAAM,EAAE,CAaV;AASD;;yEAEyE;AACzE,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAI5D"}
1
+ {"version":3,"file":"token-utils.d.ts","sourceRoot":"","sources":["../src/token-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,0EAA0E;AAC1E,wBAAgB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,MAAM,EAAE,CAKzE;AAID;kFACkF;AAClF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAID;;8DAE8D;AAC9D,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAKjD;AAID;;;;qCAIqC;AACrC,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKjD;AAED;;kBAEkB;AAClB,eAAO,MAAM,YAAY,QAAmC,CAAC;AAE7D;;;;;;;iBAOiB;AACjB,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;kEACkE;AAClE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;uEAEuE;AACvE,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,GAAG;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAChD,OAAO,CAWT;AAID,+DAA+D;AAC/D,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED;;uDAEuD;AACvD,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;oBAGoB;AACpB,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,EAAE,oBAAoB,EAAE,CAAC;CAC/B,GAAG,MAAM,CAYT;AAED,sDAAsD;AACtD,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC,CAAC,GACpD,MAAM,CAER;AAED;;yEAEyE;AACzE,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,oBAAoB,EAC1B,gBAAgB,EAAE,MAAM,GACvB,MAAM,CASR;AAED;;eAEe;AACf,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,aAAa,CAAC,oBAAoB,CAAC,GACzC,MAAM,EAAE,CAaV;AASD;;yEAEyE;AACzE,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAI5D"}
@@ -64,6 +64,21 @@ export function deriveCriterionId(text) {
64
64
  export function isCriterionId(ref) {
65
65
  return /^cr-[a-f0-9]{8}$/.test(ref);
66
66
  }
67
+ /** v3.9.2: ONE criterion identity rule for the compiler, the prompt and the
68
+ * submission boundary. A reference matches a criterion when it is the real
69
+ * cr- id or the exact normalized criterion text. Never similarity. */
70
+ export function criterionRefMatches(ref, criterion) {
71
+ const text = typeof criterion === "string" ? criterion : criterion.text;
72
+ const id = typeof criterion === "string"
73
+ ? deriveCriterionId(text)
74
+ : (criterion.id ?? deriveCriterionId(criterion.text));
75
+ if (isCriterionId(ref)) {
76
+ return isCriterionId(text) ? ref === text : ref === id;
77
+ }
78
+ if (isCriterionId(text))
79
+ return deriveCriterionId(ref) === text;
80
+ return normalizeText(ref) === normalizeText(text);
81
+ }
67
82
  // ── v3.8: Contract identity (content-addressed, round-independent) ──────────
68
83
  /** Normalize one contract text field for identity purposes. */
69
84
  export function normalizeText(text) {
@@ -1 +1 @@
1
- {"version":3,"file":"token-utils.js","sourceRoot":"","sources":["../src/token-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"token-utils.js","sourceRoot":"","sources":["../src/token-utils.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@
20
20
  */
21
21
  import type { VaultEntry } from "./loop-store.js";
22
22
  import type { MachineObservation } from "./protocol.js";
23
+ import type { GitDeltaState, ObservationDelta } from "./evidence-provider.js";
23
24
  import type { EntrypointDrift } from "./evidence-provider.js";
24
25
  import type { SelfEvaluation, VerificationResult } from "./protocol.js";
25
26
  import { type ActiveContractView } from "./round-contract.js";
@@ -91,20 +92,20 @@ export declare function collectOutOfScopeFiles(files: string[], scope: string[])
91
92
  export interface EvidenceStatus {
92
93
  /** Whether this round produced a machine-verified observation. */
93
94
  providerStatus: "verified" | "unavailable" | "absent";
94
- /** Git snapshot exists and diffed file changes this round. */
95
+ /** The Git boundary was observed and its change set is known. */
95
96
  gitObserved: boolean;
97
+ /** Applicability vs observability of the Git change set. */
98
+ gitChangeState: GitDeltaState["state"];
96
99
  /** A passed after-phase command snapshot exists. */
97
100
  commandVerified: boolean;
98
101
  /** Agent-reported tests_reported agree with a passed command's parsed stdout. */
99
102
  testsMachineBacked: boolean;
100
- /** Agent-reported files_changed equals the git diff set exactly. */
101
- reportedFilesMatch: boolean;
102
103
  }
103
104
  /** v3.2: Derive the machine-verification status of a round. The verification
104
105
  * capability is modeled explicitly (verified / unavailable / absent) instead
105
106
  * of letting evidence-dependent checks silently disappear when snapshots are
106
107
  * missing — the fix for the "weakest when it matters most" gap. */
107
- export declare function deriveEvidenceStatus(selfEval: SelfEvaluation, evidenceSnapshots: MachineObservation[]): EvidenceStatus;
108
+ export declare function deriveEvidenceStatus(selfEval: SelfEvaluation, evidenceDeltas: ReadonlyArray<ObservationDelta>): EvidenceStatus;
108
109
  /** Per-round machine progress over decoded committed history. */
109
110
  export declare function machineProgressSeries(vaultEntries: VaultEntry[], currentRound: number, lookback: number): boolean[] | null;
110
111
  interface ParsedTestCounts {
@@ -131,8 +132,8 @@ export declare function parseTestOutput(stdout: string): ParsedTestCounts | null
131
132
  * Git diff files are the machine-authoritative "what actually changed" set.
132
133
  * Empty when there is nothing to compare: no active contract, no declared
133
134
  * scope, or no git observation (cannot observe → fail open). */
134
- export declare function roundDriftFiles(activeContract: ActiveContractView | null, evidenceSnapshots: MachineObservation[]): string[];
135
- export declare function verifySelfEvaluation(selfEval: SelfEvaluation, currentRound: number, vaultEntries: VaultEntry[], prevSelfEval?: SelfEvaluation | null, evidenceSnapshots?: MachineObservation[],
135
+ export declare function roundDriftFiles(activeContract: ActiveContractView | null, evidenceDeltas: ReadonlyArray<ObservationDelta>): string[] | null;
136
+ export declare function verifySelfEvaluation(selfEval: SelfEvaluation, currentRound: number, vaultEntries: VaultEntry[], prevSelfEval?: SelfEvaluation | null, evidenceDeltas?: ReadonlyArray<ObservationDelta>,
136
137
  /** v2.13: Files from skipped backtrack rounds. If the agent's
137
138
  * files_changed overlaps significantly with these, the workspace
138
139
  * was not properly restored before working. */
@@ -1 +1 @@
1
- {"version":3,"file":"verification-gate.d.ts","sourceRoot":"","sources":["../src/verification-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAExD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,KAAK,EAEV,cAAc,EAEd,kBAAkB,EACnB,MAAM,eAAe,CAAC;AAQvB,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,qBAAqB,CAAC;AAsB7B,eAAO,MAAM,qCAAqC,oCAAoC,CAAC;AACvF,eAAO,MAAM,uCAAuC,sCAAsC,CAAC;AAI3F,eAAO,MAAM,mCAAmC,kCAAkC,CAAC;AACnF,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,iCAAiC,gCAAgC,CAAC;AAC/E,eAAO,MAAM,kCAAkC,iCAAiC,CAAC;AACjF,eAAO,MAAM,oCAAoC,mCAAmC,CAAC;AACrF,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAC/D,eAAO,MAAM,8BAA8B,6BAA6B,CAAC;AACzE,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAC7D,eAAO,MAAM,6BAA6B,4BAA4B,CAAC;AACvE,eAAO,MAAM,+BAA+B,8BAA8B,CAAC;AAC3E;;;;gDAIgD;AAChD,eAAO,MAAM,sCAAsC,qCAAqC,CAAC;AACzF;mDACmD;AACnD,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAC/D,eAAO,MAAM,sCAAsC,qCAAqC,CAAC;AACzF,eAAO,MAAM,gCAAgC,+BAA+B,CAAC;AAiB7E;;0DAE0D;AAC1D,eAAO,MAAM,+BAA+B,8BAA8B,CAAC;AAC3E;;+DAE+D;AAC/D,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D;;;2CAG2C;AAC3C,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAC7D;;oEAEoE;AACpE,eAAO,MAAM,0BAA0B,yBAAyB,CAAC;AAQjE,MAAM,MAAM,kBAAkB;AAC5B,gFAAgF;AAC9E,wBAAwB;AAC1B,wDAAwD;GACtD,oBAAoB;AACtB;;;2CAG2C;GACzC,eAAe;AACjB;qEACqE;GACnE,mBAAmB,CAAC;AAExB,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CA0BrE,CAAC;AAQF;;yDAEyD;AACzD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMxD;AAED;;;qCAGqC;AACrC,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAUpE;AAED,gFAAgF;AAChF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAEjF;AAQD,MAAM,WAAW,cAAc;IAC7B,kEAAkE;IAClE,cAAc,EAAE,UAAU,GAAG,aAAa,GAAG,QAAQ,CAAC;IACtD,8DAA8D;IAC9D,WAAW,EAAE,OAAO,CAAC;IACrB,oDAAoD;IACpD,eAAe,EAAE,OAAO,CAAC;IACzB,iFAAiF;IACjF,kBAAkB,EAAE,OAAO,CAAC;IAC5B,oEAAoE;IACpE,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AA4CD;;;oEAGoE;AACpE,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,cAAc,EACxB,iBAAiB,EAAE,kBAAkB,EAAE,GACtC,cAAc,CA+ChB;AAED,iEAAiE;AACjE,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,UAAU,EAAE,EAC1B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,GACf,OAAO,EAAE,GAAG,IAAI,CAMlB;AA8ZD,UAAU,gBAAgB;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;gCAQgC;AAChC,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CA4DvE;AAmRD;;;;;;;iEAOiE;AACjE,wBAAgB,eAAe,CAC7B,cAAc,EAAE,kBAAkB,GAAG,IAAI,EACzC,iBAAiB,EAAE,kBAAkB,EAAE,GACtC,MAAM,EAAE,CAMV;AAkJD,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,cAAc,EACxB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,UAAU,EAAE,EAC1B,YAAY,GAAE,cAAc,GAAG,IAAW,EAC1C,iBAAiB,GAAE,kBAAkB,EAAO;AAC5C;;gDAEgD;AAChD,qBAAqB,GAAE,MAAM,EAAO;AACpC;6EAC6E;AAC7E,4BAA4B,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM;AACzD;;yDAEyD;AACzD,sBAAsB,CAAC,EAAE,MAAM;AAC/B;uEACuE;AACvE,WAAW,GAAE,UAAU,EAAO;AAC9B;;6EAE6E;AAC7E,eAAe,GAAE,eAAe,EAAO,EACvC,cAAc,GAAE,kBAAkB,EAAO;AACzC,8EAA8E;AAC9E,oBAAoB,CAAC,EAAE,MAAM,EAAE,GAC9B,kBAAkB,CA+GpB"}
1
+ {"version":3,"file":"verification-gate.d.ts","sourceRoot":"","sources":["../src/verification-gate.ts"],"names":[],"mappings":"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"}