clinkx 0.2.3 → 1.0.0

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 (574) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/LICENSE +10 -0
  3. package/README.md +113 -18
  4. package/clinkx-workflows/dist/allowed-roots.d.ts +1 -0
  5. package/clinkx-workflows/dist/allowed-roots.js +5 -0
  6. package/clinkx-workflows/dist/allowed-roots.js.map +1 -0
  7. package/clinkx-workflows/dist/artifacts.d.ts +20 -1
  8. package/clinkx-workflows/dist/artifacts.js +38 -9
  9. package/clinkx-workflows/dist/artifacts.js.map +1 -1
  10. package/clinkx-workflows/dist/backend.d.ts +4 -0
  11. package/clinkx-workflows/dist/citation-check.d.ts +40 -0
  12. package/clinkx-workflows/dist/citation-check.js +348 -0
  13. package/clinkx-workflows/dist/citation-check.js.map +1 -0
  14. package/clinkx-workflows/dist/clink-client.d.ts +2 -1
  15. package/clinkx-workflows/dist/clink-client.js +17 -4
  16. package/clinkx-workflows/dist/clink-client.js.map +1 -1
  17. package/clinkx-workflows/dist/config.d.ts +145 -16
  18. package/clinkx-workflows/dist/config.js +384 -26
  19. package/clinkx-workflows/dist/config.js.map +1 -1
  20. package/clinkx-workflows/dist/contained-file.d.ts +172 -0
  21. package/clinkx-workflows/dist/contained-file.js +483 -0
  22. package/clinkx-workflows/dist/contained-file.js.map +1 -0
  23. package/clinkx-workflows/dist/context-builder-lifecycle-contract.d.ts +416 -0
  24. package/clinkx-workflows/dist/context-builder-lifecycle-contract.js +328 -0
  25. package/clinkx-workflows/dist/context-builder-lifecycle-contract.js.map +1 -0
  26. package/clinkx-workflows/dist/context-builder-lifecycle-router.d.ts +24 -0
  27. package/clinkx-workflows/dist/context-builder-lifecycle-router.js +39 -0
  28. package/clinkx-workflows/dist/context-builder-lifecycle-router.js.map +1 -0
  29. package/clinkx-workflows/dist/context-cache-key.d.ts +53 -0
  30. package/clinkx-workflows/dist/context-cache-key.js +91 -0
  31. package/clinkx-workflows/dist/context-cache-key.js.map +1 -0
  32. package/clinkx-workflows/dist/context-mode-resolver.d.ts +27 -0
  33. package/clinkx-workflows/dist/context-mode-resolver.js +126 -0
  34. package/clinkx-workflows/dist/context-mode-resolver.js.map +1 -0
  35. package/clinkx-workflows/dist/context-preflight.d.ts +184 -0
  36. package/clinkx-workflows/dist/context-preflight.js +91 -0
  37. package/clinkx-workflows/dist/context-preflight.js.map +1 -0
  38. package/clinkx-workflows/dist/council-expander.d.ts +1 -1
  39. package/clinkx-workflows/dist/council-expander.js +2 -1
  40. package/clinkx-workflows/dist/council-expander.js.map +1 -1
  41. package/clinkx-workflows/dist/dashboard/activity-contract.d.ts +165 -0
  42. package/clinkx-workflows/dist/dashboard/activity-contract.js +105 -0
  43. package/clinkx-workflows/dist/dashboard/activity-contract.js.map +1 -0
  44. package/clinkx-workflows/dist/dashboard/activity-lease.d.ts +25 -0
  45. package/clinkx-workflows/dist/dashboard/activity-lease.js +34 -0
  46. package/clinkx-workflows/dist/dashboard/activity-lease.js.map +1 -0
  47. package/clinkx-workflows/dist/dashboard/activity-reader.d.ts +86 -0
  48. package/clinkx-workflows/dist/dashboard/activity-reader.js +480 -0
  49. package/clinkx-workflows/dist/dashboard/activity-reader.js.map +1 -0
  50. package/clinkx-workflows/dist/dashboard/api-routes.d.ts +36 -0
  51. package/clinkx-workflows/dist/dashboard/api-routes.js +1047 -0
  52. package/clinkx-workflows/dist/dashboard/api-routes.js.map +1 -0
  53. package/clinkx-workflows/dist/dashboard/artifact-index.d.ts +37 -0
  54. package/clinkx-workflows/dist/dashboard/artifact-index.js +145 -0
  55. package/clinkx-workflows/dist/dashboard/artifact-index.js.map +1 -0
  56. package/clinkx-workflows/dist/dashboard/auth/challenge-store.d.ts +31 -0
  57. package/clinkx-workflows/dist/dashboard/auth/challenge-store.js +65 -0
  58. package/clinkx-workflows/dist/dashboard/auth/challenge-store.js.map +1 -0
  59. package/clinkx-workflows/dist/dashboard/auth/controller.d.ts +26 -0
  60. package/clinkx-workflows/dist/dashboard/auth/controller.js +596 -0
  61. package/clinkx-workflows/dist/dashboard/auth/controller.js.map +1 -0
  62. package/clinkx-workflows/dist/dashboard/auth/credential-store.d.ts +60 -0
  63. package/clinkx-workflows/dist/dashboard/auth/credential-store.js +776 -0
  64. package/clinkx-workflows/dist/dashboard/auth/credential-store.js.map +1 -0
  65. package/clinkx-workflows/dist/dashboard/auth/enrollment-gate.d.ts +9 -0
  66. package/clinkx-workflows/dist/dashboard/auth/enrollment-gate.js +44 -0
  67. package/clinkx-workflows/dist/dashboard/auth/enrollment-gate.js.map +1 -0
  68. package/clinkx-workflows/dist/dashboard/auth/session-store.d.ts +17 -0
  69. package/clinkx-workflows/dist/dashboard/auth/session-store.js +77 -0
  70. package/clinkx-workflows/dist/dashboard/auth/session-store.js.map +1 -0
  71. package/clinkx-workflows/dist/dashboard/auth/webauthn-service.d.ts +25 -0
  72. package/clinkx-workflows/dist/dashboard/auth/webauthn-service.js +71 -0
  73. package/clinkx-workflows/dist/dashboard/auth/webauthn-service.js.map +1 -0
  74. package/clinkx-workflows/dist/dashboard/context-run-liveness.d.ts +37 -0
  75. package/clinkx-workflows/dist/dashboard/context-run-liveness.js +49 -0
  76. package/clinkx-workflows/dist/dashboard/context-run-liveness.js.map +1 -0
  77. package/clinkx-workflows/dist/dashboard/context-run-reader.d.ts +222 -0
  78. package/clinkx-workflows/dist/dashboard/context-run-reader.js +1178 -0
  79. package/clinkx-workflows/dist/dashboard/context-run-reader.js.map +1 -0
  80. package/clinkx-workflows/dist/dashboard/contracts.d.ts +8936 -0
  81. package/clinkx-workflows/dist/dashboard/contracts.js +1157 -0
  82. package/clinkx-workflows/dist/dashboard/contracts.js.map +1 -0
  83. package/clinkx-workflows/dist/dashboard/generation.d.ts +14 -0
  84. package/clinkx-workflows/dist/dashboard/generation.js +41 -0
  85. package/clinkx-workflows/dist/dashboard/generation.js.map +1 -0
  86. package/clinkx-workflows/dist/dashboard/index.d.ts +28 -0
  87. package/clinkx-workflows/dist/dashboard/index.js +16 -0
  88. package/clinkx-workflows/dist/dashboard/index.js.map +1 -0
  89. package/clinkx-workflows/dist/dashboard/lazy-content.d.ts +101 -0
  90. package/clinkx-workflows/dist/dashboard/lazy-content.js +748 -0
  91. package/clinkx-workflows/dist/dashboard/lazy-content.js.map +1 -0
  92. package/clinkx-workflows/dist/dashboard/progress-report-contract.d.ts +303 -0
  93. package/clinkx-workflows/dist/dashboard/progress-report-contract.js +221 -0
  94. package/clinkx-workflows/dist/dashboard/progress-report-contract.js.map +1 -0
  95. package/clinkx-workflows/dist/dashboard/progress-report-reader.d.ts +50 -0
  96. package/clinkx-workflows/dist/dashboard/progress-report-reader.js +581 -0
  97. package/clinkx-workflows/dist/dashboard/progress-report-reader.js.map +1 -0
  98. package/clinkx-workflows/dist/dashboard/progress-report-status-overlay.d.ts +89 -0
  99. package/clinkx-workflows/dist/dashboard/progress-report-status-overlay.js +71 -0
  100. package/clinkx-workflows/dist/dashboard/progress-report-status-overlay.js.map +1 -0
  101. package/clinkx-workflows/dist/dashboard/progress-report-status-store.d.ts +28 -0
  102. package/clinkx-workflows/dist/dashboard/progress-report-status-store.js +110 -0
  103. package/clinkx-workflows/dist/dashboard/progress-report-status-store.js.map +1 -0
  104. package/clinkx-workflows/dist/dashboard/read-model.d.ts +86 -0
  105. package/clinkx-workflows/dist/dashboard/read-model.js +440 -0
  106. package/clinkx-workflows/dist/dashboard/read-model.js.map +1 -0
  107. package/clinkx-workflows/dist/dashboard/request-admission.d.ts +31 -0
  108. package/clinkx-workflows/dist/dashboard/request-admission.js +126 -0
  109. package/clinkx-workflows/dist/dashboard/request-admission.js.map +1 -0
  110. package/clinkx-workflows/dist/dashboard/scanner.d.ts +75 -0
  111. package/clinkx-workflows/dist/dashboard/scanner.js +1110 -0
  112. package/clinkx-workflows/dist/dashboard/scanner.js.map +1 -0
  113. package/clinkx-workflows/dist/dashboard/server-factory.d.ts +50 -0
  114. package/clinkx-workflows/dist/dashboard/server-factory.js +431 -0
  115. package/clinkx-workflows/dist/dashboard/server-factory.js.map +1 -0
  116. package/clinkx-workflows/dist/dashboard/session-log-contract.d.ts +2611 -0
  117. package/clinkx-workflows/dist/dashboard/session-log-contract.js +480 -0
  118. package/clinkx-workflows/dist/dashboard/session-log-contract.js.map +1 -0
  119. package/clinkx-workflows/dist/dashboard/session-log-identity.d.ts +21 -0
  120. package/clinkx-workflows/dist/dashboard/session-log-identity.js +101 -0
  121. package/clinkx-workflows/dist/dashboard/session-log-identity.js.map +1 -0
  122. package/clinkx-workflows/dist/dashboard/session-log-journal.d.ts +43 -0
  123. package/clinkx-workflows/dist/dashboard/session-log-journal.js +522 -0
  124. package/clinkx-workflows/dist/dashboard/session-log-journal.js.map +1 -0
  125. package/clinkx-workflows/dist/dashboard/session-log-reader.d.ts +61 -0
  126. package/clinkx-workflows/dist/dashboard/session-log-reader.js +378 -0
  127. package/clinkx-workflows/dist/dashboard/session-log-reader.js.map +1 -0
  128. package/clinkx-workflows/dist/dashboard/session-log-redaction.d.ts +6 -0
  129. package/clinkx-workflows/dist/dashboard/session-log-redaction.js +367 -0
  130. package/clinkx-workflows/dist/dashboard/session-log-redaction.js.map +1 -0
  131. package/clinkx-workflows/dist/dashboard/session-log-retention.d.ts +23 -0
  132. package/clinkx-workflows/dist/dashboard/session-log-retention.js +212 -0
  133. package/clinkx-workflows/dist/dashboard/session-log-retention.js.map +1 -0
  134. package/clinkx-workflows/dist/dashboard/static-responses.d.ts +10 -0
  135. package/clinkx-workflows/dist/dashboard/static-responses.js +94 -0
  136. package/clinkx-workflows/dist/dashboard/static-responses.js.map +1 -0
  137. package/clinkx-workflows/dist/dashboard/worker-lock-observer.d.ts +28 -0
  138. package/clinkx-workflows/dist/dashboard/worker-lock-observer.js +241 -0
  139. package/clinkx-workflows/dist/dashboard/worker-lock-observer.js.map +1 -0
  140. package/clinkx-workflows/dist/dashboard-ui/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff +0 -0
  141. package/clinkx-workflows/dist/dashboard-ui/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2 +0 -0
  142. package/clinkx-workflows/dist/dashboard-ui/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff +0 -0
  143. package/clinkx-workflows/dist/dashboard-ui/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2 +0 -0
  144. package/clinkx-workflows/dist/dashboard-ui/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2 +0 -0
  145. package/clinkx-workflows/dist/dashboard-ui/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff +0 -0
  146. package/clinkx-workflows/dist/dashboard-ui/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2 +0 -0
  147. package/clinkx-workflows/dist/dashboard-ui/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff +0 -0
  148. package/clinkx-workflows/dist/dashboard-ui/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff +0 -0
  149. package/clinkx-workflows/dist/dashboard-ui/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2 +0 -0
  150. package/clinkx-workflows/dist/dashboard-ui/assets/index-DOkMXTfB.js +25 -0
  151. package/clinkx-workflows/dist/dashboard-ui/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff +0 -0
  152. package/clinkx-workflows/dist/dashboard-ui/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2 +0 -0
  153. package/clinkx-workflows/dist/dashboard-ui/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2 +0 -0
  154. package/clinkx-workflows/dist/dashboard-ui/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff +0 -0
  155. package/clinkx-workflows/dist/dashboard-ui/assets/style-ChJsn0KD.css +1 -0
  156. package/clinkx-workflows/dist/dashboard-ui/contracts/council-plan-review-input-v1.json +158 -0
  157. package/clinkx-workflows/dist/dashboard-ui/index.html +15 -0
  158. package/clinkx-workflows/dist/dashboard-ui/licenses/IBM-Plex-Mono-OFL.txt +93 -0
  159. package/clinkx-workflows/dist/dashboard-ui/licenses/IBM-Plex-Sans-OFL.txt +93 -0
  160. package/clinkx-workflows/dist/dashboard-ui/licenses/JetBrains-Mono-OFL.txt +93 -0
  161. package/clinkx-workflows/dist/dashboard-ui/licenses/NOTICE.md +32 -0
  162. package/clinkx-workflows/dist/dashboard-ui/theme-init.js +8 -0
  163. package/clinkx-workflows/dist/definition-normalizer.d.ts +19 -0
  164. package/clinkx-workflows/dist/definition-normalizer.js.map +1 -1
  165. package/clinkx-workflows/dist/delegate-validate.d.ts +78 -0
  166. package/clinkx-workflows/dist/delegate-validate.js +97 -0
  167. package/clinkx-workflows/dist/delegate-validate.js.map +1 -0
  168. package/clinkx-workflows/dist/engine.d.ts +141 -0
  169. package/clinkx-workflows/dist/engine.js +882 -28
  170. package/clinkx-workflows/dist/engine.js.map +1 -1
  171. package/clinkx-workflows/dist/errors.d.ts +2 -0
  172. package/clinkx-workflows/dist/errors.js.map +1 -1
  173. package/clinkx-workflows/dist/fingerprint.d.ts +1 -1
  174. package/clinkx-workflows/dist/fingerprint.js +1 -1
  175. package/clinkx-workflows/dist/index.d.ts +19 -0
  176. package/clinkx-workflows/dist/index.js +15 -0
  177. package/clinkx-workflows/dist/index.js.map +1 -1
  178. package/clinkx-workflows/dist/loader.d.ts +9 -3
  179. package/clinkx-workflows/dist/loader.js +92 -21
  180. package/clinkx-workflows/dist/loader.js.map +1 -1
  181. package/clinkx-workflows/dist/plan-review/admission.d.ts +160 -0
  182. package/clinkx-workflows/dist/plan-review/admission.js +290 -0
  183. package/clinkx-workflows/dist/plan-review/admission.js.map +1 -0
  184. package/clinkx-workflows/dist/plan-review/context-policy.d.ts +55 -0
  185. package/clinkx-workflows/dist/plan-review/context-policy.js +146 -0
  186. package/clinkx-workflows/dist/plan-review/context-policy.js.map +1 -0
  187. package/clinkx-workflows/dist/plan-review/contract.d.ts +763 -0
  188. package/clinkx-workflows/dist/plan-review/contract.js +289 -0
  189. package/clinkx-workflows/dist/plan-review/contract.js.map +1 -0
  190. package/clinkx-workflows/dist/plan-review/digest.d.ts +68 -0
  191. package/clinkx-workflows/dist/plan-review/digest.js +241 -0
  192. package/clinkx-workflows/dist/plan-review/digest.js.map +1 -0
  193. package/clinkx-workflows/dist/plan-review/discovery.d.ts +45 -0
  194. package/clinkx-workflows/dist/plan-review/discovery.js +36 -0
  195. package/clinkx-workflows/dist/plan-review/discovery.js.map +1 -0
  196. package/clinkx-workflows/dist/plan-review/execution-contract.d.ts +298 -0
  197. package/clinkx-workflows/dist/plan-review/execution-contract.js +194 -0
  198. package/clinkx-workflows/dist/plan-review/execution-contract.js.map +1 -0
  199. package/clinkx-workflows/dist/plan-review/expander.d.ts +48 -0
  200. package/clinkx-workflows/dist/plan-review/expander.js +243 -0
  201. package/clinkx-workflows/dist/plan-review/expander.js.map +1 -0
  202. package/clinkx-workflows/dist/plan-review/projector.d.ts +126 -0
  203. package/clinkx-workflows/dist/plan-review/projector.js +437 -0
  204. package/clinkx-workflows/dist/plan-review/projector.js.map +1 -0
  205. package/clinkx-workflows/dist/plan-review/publication.d.ts +95 -0
  206. package/clinkx-workflows/dist/plan-review/publication.js +182 -0
  207. package/clinkx-workflows/dist/plan-review/publication.js.map +1 -0
  208. package/clinkx-workflows/dist/plan-review/ranking-reducer.d.ts +34 -0
  209. package/clinkx-workflows/dist/plan-review/ranking-reducer.js +139 -0
  210. package/clinkx-workflows/dist/plan-review/ranking-reducer.js.map +1 -0
  211. package/clinkx-workflows/dist/plan-review/resume.d.ts +38 -0
  212. package/clinkx-workflows/dist/plan-review/resume.js +122 -0
  213. package/clinkx-workflows/dist/plan-review/resume.js.map +1 -0
  214. package/clinkx-workflows/dist/plan-review/rubric.d.ts +7 -0
  215. package/clinkx-workflows/dist/plan-review/rubric.js +24 -0
  216. package/clinkx-workflows/dist/plan-review/rubric.js.map +1 -0
  217. package/clinkx-workflows/dist/plan-review/run-state.d.ts +398 -0
  218. package/clinkx-workflows/dist/plan-review/run-state.js +183 -0
  219. package/clinkx-workflows/dist/plan-review/run-state.js.map +1 -0
  220. package/clinkx-workflows/dist/plan-review/runtime-policy.d.ts +74 -0
  221. package/clinkx-workflows/dist/plan-review/runtime-policy.js +186 -0
  222. package/clinkx-workflows/dist/plan-review/runtime-policy.js.map +1 -0
  223. package/clinkx-workflows/dist/plan-review/snapshot.d.ts +81 -0
  224. package/clinkx-workflows/dist/plan-review/snapshot.js +170 -0
  225. package/clinkx-workflows/dist/plan-review/snapshot.js.map +1 -0
  226. package/clinkx-workflows/dist/plan-review/stage-error.d.ts +19 -0
  227. package/clinkx-workflows/dist/plan-review/stage-error.js +20 -0
  228. package/clinkx-workflows/dist/plan-review/stage-error.js.map +1 -0
  229. package/clinkx-workflows/dist/post-processors/index.d.ts +20 -0
  230. package/clinkx-workflows/dist/post-processors/index.js +21 -0
  231. package/clinkx-workflows/dist/post-processors/index.js.map +1 -0
  232. package/clinkx-workflows/dist/prompt-budget.d.ts +7 -0
  233. package/clinkx-workflows/dist/prompt-budget.js +7 -1
  234. package/clinkx-workflows/dist/prompt-budget.js.map +1 -1
  235. package/clinkx-workflows/dist/reducers/index.js +2 -0
  236. package/clinkx-workflows/dist/reducers/index.js.map +1 -1
  237. package/clinkx-workflows/dist/run-lock-heartbeat.d.ts +2 -0
  238. package/clinkx-workflows/dist/run-lock-heartbeat.js +3 -0
  239. package/clinkx-workflows/dist/run-lock-heartbeat.js.map +1 -0
  240. package/clinkx-workflows/dist/run-summary/cards/council-plan-review.d.ts +34 -0
  241. package/clinkx-workflows/dist/run-summary/cards/council-plan-review.js +74 -0
  242. package/clinkx-workflows/dist/run-summary/cards/council-plan-review.js.map +1 -0
  243. package/clinkx-workflows/dist/run-summary/cards/index.js +5 -0
  244. package/clinkx-workflows/dist/run-summary/cards/index.js.map +1 -1
  245. package/clinkx-workflows/dist/run-summary.d.ts +13 -0
  246. package/clinkx-workflows/dist/run-summary.js +29 -1
  247. package/clinkx-workflows/dist/run-summary.js.map +1 -1
  248. package/clinkx-workflows/dist/schema.d.ts +76 -21
  249. package/clinkx-workflows/dist/schema.js +10 -1
  250. package/clinkx-workflows/dist/schema.js.map +1 -1
  251. package/clinkx-workflows/dist/seed-terms.d.ts +30 -0
  252. package/clinkx-workflows/dist/seed-terms.js +176 -0
  253. package/clinkx-workflows/dist/seed-terms.js.map +1 -0
  254. package/clinkx-workflows/dist/server.d.ts +5 -2
  255. package/clinkx-workflows/dist/server.js +82 -52
  256. package/clinkx-workflows/dist/server.js.map +1 -1
  257. package/clinkx-workflows/dist/shutdown.d.ts +18 -20
  258. package/clinkx-workflows/dist/shutdown.js +43 -61
  259. package/clinkx-workflows/dist/shutdown.js.map +1 -1
  260. package/clinkx-workflows/dist/state-schema.d.ts +38 -0
  261. package/clinkx-workflows/dist/state.d.ts +170 -3
  262. package/clinkx-workflows/dist/state.js +1275 -28
  263. package/clinkx-workflows/dist/state.js.map +1 -1
  264. package/clinkx-workflows/dist/transport.d.ts +15 -0
  265. package/clinkx-workflows/dist/transport.js +19 -10
  266. package/clinkx-workflows/dist/transport.js.map +1 -1
  267. package/clinkx-workflows/dist/types.d.ts +14 -2
  268. package/clinkx-workflows/dist/validators/council.d.ts +318 -85
  269. package/clinkx-workflows/dist/validators/council.js +52 -13
  270. package/clinkx-workflows/dist/validators/council.js.map +1 -1
  271. package/clinkx-workflows/dist/validators/index.d.ts +1 -0
  272. package/clinkx-workflows/dist/validators/index.js +3 -0
  273. package/clinkx-workflows/dist/validators/index.js.map +1 -1
  274. package/clinkx-workflows/dist/validators/plan-review.d.ts +398 -0
  275. package/clinkx-workflows/dist/validators/plan-review.js +316 -0
  276. package/clinkx-workflows/dist/validators/plan-review.js.map +1 -0
  277. package/clinkx-workflows/dist/workflow-receipt.js +188 -4
  278. package/clinkx-workflows/dist/workflow-receipt.js.map +1 -1
  279. package/clinkx-workflows/dist/workflow-tools.d.ts +48 -3
  280. package/clinkx-workflows/dist/workflow-tools.js +1402 -59
  281. package/clinkx-workflows/dist/workflow-tools.js.map +1 -1
  282. package/clinkx-workflows/dist/workspace-signature.d.ts +16 -0
  283. package/clinkx-workflows/dist/workspace-signature.js +388 -0
  284. package/clinkx-workflows/dist/workspace-signature.js.map +1 -0
  285. package/clinkx-workflows/templates/council/answer-specialist.txt +2 -1
  286. package/clinkx-workflows/templates/council/code-review-chairman.txt +13 -0
  287. package/clinkx-workflows/templates/council/code-review-cross-reviewer.txt +4 -1
  288. package/clinkx-workflows/templates/council/code-review-reviewer.txt +19 -3
  289. package/clinkx-workflows/templates/council/debug-debugger.txt +2 -1
  290. package/clinkx-workflows/templates/council/discover-analyst.txt +2 -1
  291. package/clinkx-workflows/templates/council/member.txt +2 -1
  292. package/clinkx-workflows/templates/council/plan-review-chairman.txt +68 -0
  293. package/clinkx-workflows/templates/council/plan-review-cross-reviewer.txt +51 -0
  294. package/clinkx-workflows/templates/council/plan-review-reviewer.txt +60 -0
  295. package/clinkx-workflows/templates/plan-review/chairman.txt +48 -0
  296. package/clinkx-workflows/templates/plan-review/cross-review.txt +52 -0
  297. package/clinkx-workflows/templates/plan-review/ranking.txt +16 -0
  298. package/clinkx-workflows/templates/plan-review/reviewer.txt +57 -0
  299. package/clinkx-workflows/workflows/council-answer.yaml +97 -8
  300. package/clinkx-workflows/workflows/council-code-review.yaml +103 -8
  301. package/clinkx-workflows/workflows/council-debug.yaml +97 -8
  302. package/clinkx-workflows/workflows/council-default.yaml +97 -8
  303. package/clinkx-workflows/workflows/council-discover.yaml +97 -8
  304. package/clinkx-workflows/workflows/council-plan-review.yaml +250 -0
  305. package/clinkx-workflows/workflows/plan-review-receipts.yaml +230 -0
  306. package/conf/adapters/agy.json +49 -0
  307. package/conf/adapters/claude.json +5 -0
  308. package/conf/adapters/codex-app-server.json +44 -0
  309. package/conf/adapters/codex.json +7 -2
  310. package/conf/adapters/glm.json +5 -0
  311. package/conf/adapters/grok.json +60 -0
  312. package/conf/adapters/hapi/agy.json +52 -0
  313. package/conf/adapters/hapi/claude.json +5 -0
  314. package/conf/adapters/hapi/codex.json +7 -2
  315. package/conf/adapters/hapi/glm.json +5 -0
  316. package/conf/prompts/json-codereviewer.txt +1 -0
  317. package/conf/prompts/json.txt +1 -0
  318. package/dist/activity-journal.d.ts +42 -0
  319. package/dist/activity-journal.js +381 -0
  320. package/dist/activity-journal.js.map +1 -0
  321. package/dist/allowed-roots.d.ts +53 -0
  322. package/dist/allowed-roots.js +216 -0
  323. package/dist/allowed-roots.js.map +1 -0
  324. package/dist/codex/activity-session-log.d.ts +14 -0
  325. package/dist/codex/activity-session-log.js +206 -0
  326. package/dist/codex/activity-session-log.js.map +1 -0
  327. package/dist/codex/agent-tools.d.ts +23 -0
  328. package/dist/codex/agent-tools.js +1270 -0
  329. package/dist/codex/agent-tools.js.map +1 -0
  330. package/dist/codex/app-server-client.d.ts +76 -0
  331. package/dist/codex/app-server-client.js +582 -0
  332. package/dist/codex/app-server-client.js.map +1 -0
  333. package/dist/codex/app-server-registry.d.ts +389 -0
  334. package/dist/codex/app-server-registry.js +1407 -0
  335. package/dist/codex/app-server-registry.js.map +1 -0
  336. package/dist/codex/client-types.d.ts +109 -0
  337. package/dist/codex/client-types.js +2 -0
  338. package/dist/codex/client-types.js.map +1 -0
  339. package/dist/codex/protocol.d.ts +5375 -0
  340. package/dist/codex/protocol.js +614 -0
  341. package/dist/codex/protocol.js.map +1 -0
  342. package/dist/codex/session.d.ts +263 -0
  343. package/dist/codex/session.js +466 -0
  344. package/dist/codex/session.js.map +1 -0
  345. package/dist/config.d.ts +185 -19
  346. package/dist/config.js +82 -16
  347. package/dist/config.js.map +1 -1
  348. package/dist/context-builder/anchors.d.ts +12 -0
  349. package/dist/context-builder/anchors.js +22 -0
  350. package/dist/context-builder/anchors.js.map +1 -0
  351. package/dist/context-builder/bundle.d.ts +109 -0
  352. package/dist/context-builder/bundle.js +1498 -0
  353. package/dist/context-builder/bundle.js.map +1 -0
  354. package/dist/context-builder/codemap.d.ts +22 -0
  355. package/dist/context-builder/codemap.js +675 -0
  356. package/dist/context-builder/codemap.js.map +1 -0
  357. package/dist/context-builder/config.d.ts +61 -0
  358. package/dist/context-builder/config.js +216 -0
  359. package/dist/context-builder/config.js.map +1 -0
  360. package/dist/context-builder/context-run-catalog.d.ts +17 -0
  361. package/dist/context-builder/context-run-catalog.js +99 -0
  362. package/dist/context-builder/context-run-catalog.js.map +1 -0
  363. package/dist/context-builder/delegate-packet.d.ts +219 -0
  364. package/dist/context-builder/delegate-packet.js +1190 -0
  365. package/dist/context-builder/delegate-packet.js.map +1 -0
  366. package/dist/context-builder/delegate-reconstruction.d.ts +13 -0
  367. package/dist/context-builder/delegate-reconstruction.js +220 -0
  368. package/dist/context-builder/delegate-reconstruction.js.map +1 -0
  369. package/dist/context-builder/delegate-validation.d.ts +27 -0
  370. package/dist/context-builder/delegate-validation.js +479 -0
  371. package/dist/context-builder/delegate-validation.js.map +1 -0
  372. package/dist/context-builder/delegate.d.ts +26 -0
  373. package/dist/context-builder/delegate.js +134 -0
  374. package/dist/context-builder/delegate.js.map +1 -0
  375. package/dist/context-builder/diagnostics.d.ts +36 -0
  376. package/dist/context-builder/diagnostics.js +107 -0
  377. package/dist/context-builder/diagnostics.js.map +1 -0
  378. package/dist/context-builder/discovery.d.ts +146 -0
  379. package/dist/context-builder/discovery.js +2129 -0
  380. package/dist/context-builder/discovery.js.map +1 -0
  381. package/dist/context-builder/globs.d.ts +14 -0
  382. package/dist/context-builder/globs.js +175 -0
  383. package/dist/context-builder/globs.js.map +1 -0
  384. package/dist/context-builder/handler.d.ts +41 -0
  385. package/dist/context-builder/handler.js +2590 -0
  386. package/dist/context-builder/handler.js.map +1 -0
  387. package/dist/context-builder/lifecycle-contract.d.ts +424 -0
  388. package/dist/context-builder/lifecycle-contract.js +523 -0
  389. package/dist/context-builder/lifecycle-contract.js.map +1 -0
  390. package/dist/context-builder/lifecycle-journal.d.ts +62 -0
  391. package/dist/context-builder/lifecycle-journal.js +88 -0
  392. package/dist/context-builder/lifecycle-journal.js.map +1 -0
  393. package/dist/context-builder/lifecycle-observer.d.ts +102 -0
  394. package/dist/context-builder/lifecycle-observer.js +258 -0
  395. package/dist/context-builder/lifecycle-observer.js.map +1 -0
  396. package/dist/context-builder/lifecycle-reconcile.d.ts +32 -0
  397. package/dist/context-builder/lifecycle-reconcile.js +191 -0
  398. package/dist/context-builder/lifecycle-reconcile.js.map +1 -0
  399. package/dist/context-builder/lifecycle-recovery.d.ts +2 -0
  400. package/dist/context-builder/lifecycle-recovery.js +14 -0
  401. package/dist/context-builder/lifecycle-recovery.js.map +1 -0
  402. package/dist/context-builder/path-signals.d.ts +7 -0
  403. package/dist/context-builder/path-signals.js +70 -0
  404. package/dist/context-builder/path-signals.js.map +1 -0
  405. package/dist/context-builder/paths.d.ts +30 -0
  406. package/dist/context-builder/paths.js +153 -0
  407. package/dist/context-builder/paths.js.map +1 -0
  408. package/dist/context-builder/progress.d.ts +17 -0
  409. package/dist/context-builder/progress.js +93 -0
  410. package/dist/context-builder/progress.js.map +1 -0
  411. package/dist/context-builder/receipt.d.ts +91 -0
  412. package/dist/context-builder/receipt.js +180 -0
  413. package/dist/context-builder/receipt.js.map +1 -0
  414. package/dist/context-builder/refine-handler.d.ts +14 -0
  415. package/dist/context-builder/refine-handler.js +790 -0
  416. package/dist/context-builder/refine-handler.js.map +1 -0
  417. package/dist/context-builder/review-coverage.d.ts +84 -0
  418. package/dist/context-builder/review-coverage.js +437 -0
  419. package/dist/context-builder/review-coverage.js.map +1 -0
  420. package/dist/context-builder/run-id.d.ts +7 -0
  421. package/dist/context-builder/run-id.js +31 -0
  422. package/dist/context-builder/run-id.js.map +1 -0
  423. package/dist/context-builder/schema.d.ts +669 -0
  424. package/dist/context-builder/schema.js +399 -0
  425. package/dist/context-builder/schema.js.map +1 -0
  426. package/dist/context-builder/secrets.d.ts +41 -0
  427. package/dist/context-builder/secrets.js +1651 -0
  428. package/dist/context-builder/secrets.js.map +1 -0
  429. package/dist/context-builder/selection.d.ts +56 -0
  430. package/dist/context-builder/selection.js +1111 -0
  431. package/dist/context-builder/selection.js.map +1 -0
  432. package/dist/context-builder/session-log-identity.d.ts +1 -0
  433. package/dist/context-builder/session-log-identity.js +66 -0
  434. package/dist/context-builder/session-log-identity.js.map +1 -0
  435. package/dist/context-builder/slice-range-math.d.ts +16 -0
  436. package/dist/context-builder/slice-range-math.js +137 -0
  437. package/dist/context-builder/slice-range-math.js.map +1 -0
  438. package/dist/context-builder/status.d.ts +66 -0
  439. package/dist/context-builder/status.js +160 -0
  440. package/dist/context-builder/status.js.map +1 -0
  441. package/dist/context-builder/storage.d.ts +118 -0
  442. package/dist/context-builder/storage.js +1003 -0
  443. package/dist/context-builder/storage.js.map +1 -0
  444. package/dist/context-builder/token-estimate.d.ts +19 -0
  445. package/dist/context-builder/token-estimate.js +90 -0
  446. package/dist/context-builder/token-estimate.js.map +1 -0
  447. package/dist/context-builder/versions.d.ts +29 -0
  448. package/dist/context-builder/versions.js +30 -0
  449. package/dist/context-builder/versions.js.map +1 -0
  450. package/dist/context-builder/workflow-runner.d.ts +69 -0
  451. package/dist/context-builder/workflow-runner.js +1051 -0
  452. package/dist/context-builder/workflow-runner.js.map +1 -0
  453. package/dist/context-builder/write-watchdog.d.ts +14 -0
  454. package/dist/context-builder/write-watchdog.js +38 -0
  455. package/dist/context-builder/write-watchdog.js.map +1 -0
  456. package/dist/dashboard-adapter-catalog.d.ts +9 -0
  457. package/dist/dashboard-adapter-catalog.js +46 -0
  458. package/dist/dashboard-adapter-catalog.js.map +1 -0
  459. package/dist/dashboard-cli.d.ts +79 -0
  460. package/dist/dashboard-cli.js +585 -0
  461. package/dist/dashboard-cli.js.map +1 -0
  462. package/dist/dashboard-companion/client.d.ts +36 -0
  463. package/dist/dashboard-companion/client.js +210 -0
  464. package/dist/dashboard-companion/client.js.map +1 -0
  465. package/dist/dashboard-companion/config.d.ts +8 -0
  466. package/dist/dashboard-companion/config.js +52 -0
  467. package/dist/dashboard-companion/config.js.map +1 -0
  468. package/dist/dashboard-companion/http-proxy.d.ts +10 -0
  469. package/dist/dashboard-companion/http-proxy.js +234 -0
  470. package/dist/dashboard-companion/http-proxy.js.map +1 -0
  471. package/dist/dashboard-companion/protocol.d.ts +80 -0
  472. package/dist/dashboard-companion/protocol.js +455 -0
  473. package/dist/dashboard-companion/protocol.js.map +1 -0
  474. package/dist/dashboard-companion/standalone-assets.d.ts +12 -0
  475. package/dist/dashboard-companion/standalone-assets.js +72 -0
  476. package/dist/dashboard-companion/standalone-assets.js.map +1 -0
  477. package/dist/dashboard-companion/standalone-entry.d.ts +1 -0
  478. package/dist/dashboard-companion/standalone-entry.js +17 -0
  479. package/dist/dashboard-companion/standalone-entry.js.map +1 -0
  480. package/dist/dashboard-gateway/config.d.ts +9 -0
  481. package/dist/dashboard-gateway/config.js +44 -0
  482. package/dist/dashboard-gateway/config.js.map +1 -0
  483. package/dist/dashboard-gateway/index.d.ts +11 -0
  484. package/dist/dashboard-gateway/index.js +755 -0
  485. package/dist/dashboard-gateway/index.js.map +1 -0
  486. package/dist/dashboard-gateway/main.d.ts +1 -0
  487. package/dist/dashboard-gateway/main.js +25 -0
  488. package/dist/dashboard-gateway/main.js.map +1 -0
  489. package/dist/dashboard-pairing-token.d.ts +1 -0
  490. package/dist/dashboard-pairing-token.js +5 -0
  491. package/dist/dashboard-pairing-token.js.map +1 -0
  492. package/dist/elaris/client.d.ts +73 -0
  493. package/dist/elaris/client.js +825 -0
  494. package/dist/elaris/client.js.map +1 -0
  495. package/dist/elaris/config.d.ts +18 -0
  496. package/dist/elaris/config.js +75 -0
  497. package/dist/elaris/config.js.map +1 -0
  498. package/dist/elaris/errors.d.ts +41 -0
  499. package/dist/elaris/errors.js +205 -0
  500. package/dist/elaris/errors.js.map +1 -0
  501. package/dist/elaris/github-repo.d.ts +18 -0
  502. package/dist/elaris/github-repo.js +89 -0
  503. package/dist/elaris/github-repo.js.map +1 -0
  504. package/dist/elaris/index.d.ts +10 -0
  505. package/dist/elaris/index.js +11 -0
  506. package/dist/elaris/index.js.map +1 -0
  507. package/dist/elaris/redact.d.ts +89 -0
  508. package/dist/elaris/redact.js +423 -0
  509. package/dist/elaris/redact.js.map +1 -0
  510. package/dist/elaris/run-id.d.ts +5 -0
  511. package/dist/elaris/run-id.js +20 -0
  512. package/dist/elaris/run-id.js.map +1 -0
  513. package/dist/elaris/status.d.ts +45 -0
  514. package/dist/elaris/status.js +122 -0
  515. package/dist/elaris/status.js.map +1 -0
  516. package/dist/elaris/tool-schemas.d.ts +314 -0
  517. package/dist/elaris/tool-schemas.js +208 -0
  518. package/dist/elaris/tool-schemas.js.map +1 -0
  519. package/dist/elaris/tools.d.ts +73 -0
  520. package/dist/elaris/tools.js +1065 -0
  521. package/dist/elaris/tools.js.map +1 -0
  522. package/dist/elaris/types.d.ts +1541 -0
  523. package/dist/elaris/types.js +252 -0
  524. package/dist/elaris/types.js.map +1 -0
  525. package/dist/errors.d.ts +16 -0
  526. package/dist/errors.js +19 -0
  527. package/dist/errors.js.map +1 -1
  528. package/dist/handler.d.ts +4 -0
  529. package/dist/handler.js +10 -1
  530. package/dist/handler.js.map +1 -1
  531. package/dist/index.d.ts +2 -1
  532. package/dist/index.js +13 -3
  533. package/dist/index.js.map +1 -1
  534. package/dist/local-clink-backend.d.ts +3 -0
  535. package/dist/local-clink-backend.js +4 -0
  536. package/dist/local-clink-backend.js.map +1 -1
  537. package/dist/package-info.d.ts +2 -0
  538. package/dist/package-info.js +18 -0
  539. package/dist/package-info.js.map +1 -0
  540. package/dist/parsers/codex-jsonl.js +48 -3
  541. package/dist/parsers/codex-jsonl.js.map +1 -1
  542. package/dist/parsers/extract.d.ts +10 -1
  543. package/dist/parsers/extract.js +11 -3
  544. package/dist/parsers/extract.js.map +1 -1
  545. package/dist/paths.d.ts +8 -0
  546. package/dist/paths.js +31 -43
  547. package/dist/paths.js.map +1 -1
  548. package/dist/pipeline.d.ts +51 -3
  549. package/dist/pipeline.js +264 -47
  550. package/dist/pipeline.js.map +1 -1
  551. package/dist/run-dir.d.ts +24 -0
  552. package/dist/run-dir.js +201 -2
  553. package/dist/run-dir.js.map +1 -1
  554. package/dist/runner.d.ts +13 -0
  555. package/dist/runner.js +184 -15
  556. package/dist/runner.js.map +1 -1
  557. package/dist/safety.d.ts +4 -4
  558. package/dist/safety.js +4 -4
  559. package/dist/schema.d.ts +7 -7
  560. package/dist/server.d.ts +2 -0
  561. package/dist/server.js +396 -24
  562. package/dist/server.js.map +1 -1
  563. package/dist/session-log-stream.d.ts +18 -0
  564. package/dist/session-log-stream.js +319 -0
  565. package/dist/session-log-stream.js.map +1 -0
  566. package/package.json +47 -5
  567. package/conf/adapters/gemini.json +0 -44
  568. package/conf/adapters/hapi/gemini.json +0 -47
  569. package/dist/artifacts.d.ts +0 -9
  570. package/dist/artifacts.js +0 -24
  571. package/dist/artifacts.js.map +0 -1
  572. package/dist/parsers/gemini-json.d.ts +0 -2
  573. package/dist/parsers/gemini-json.js +0 -72
  574. package/dist/parsers/gemini-json.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EACL,uBAAuB,GAExB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAqC,MAAM,4BAA4B,CAAC;AACrG,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAuCrC,SAAS,uBAAuB,CAC9B,IAAY,EACZ,GAAY,EACZ,aAAqB,EACrB,iBAAoC;IAKpC,MAAM,WAAW,GAAG,wBAAwB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC5D,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACzB,MAAM,IAAI,uBAAuB,CAC/B,0CAA0C,IAAI,KAAK;YACjD,WAAW,CAAC,KAAK,CAAC,MAAM;iBACrB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;iBAC3D,IAAI,CAAC,IAAI,CAAC,CAChB,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC;IACpC,gBAAgB,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,mBAAmB,CAAC,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACxE,OAAO;QACL,UAAU;QACV,UAAU,EAAE,oBAAoB,CAAC,UAAU,EAAE,SAAS,CAAC;KACxD,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAC1B,IAAY,EACZ,OAAsB;IAEtB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAEnD,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,uBAAuB,CACxD,IAAI,EACJ,QAAQ,CAAC,GAAG,EACZ,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,iBAAiB,CAC1B,CAAC;IAEF,OAAO;QACL,UAAU;QACV,UAAU;QACV,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;KAChC,CAAC;AACJ,CAAC;AAQD;;;GAGG;AACH,SAAS,kBAAkB,CACzB,IAAY,EACZ,OAAsB;IAEtB,sCAAsC;IACtC,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAC;IACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAEnC,iDAAiD;IACjD,MAAM,aAAa,GAAG,qBAAqB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAExC,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;QACpB,2DAA2D;QAC3D,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,CACT,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,EACrC,oDAAoD,CACrD,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC7C,CAAC;IAED,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;QACpB,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5E,CAAC;IAED,oDAAoD;IACpD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACxE,MAAM,IAAI,uBAAuB,CAC/B,sBAAsB,IAAI,iBAAiB,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC7E,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAC3B,aAAsB,EACtB,UAA+B,EAAE;IAEjC,MAAM,OAAO,GAAG,mBAAmB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAC5D,OAAO,IAAI,GAAG,CACZ,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CACxE,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,aAAsB,EACtB,UAA+B,EAAE;IAEjC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAgC,CAAC;IACxD,MAAM,eAAe,GAAG,OAAO,CAAC,qBAAqB,KAAK,IAAI;QAC5D,CAAC,CAAC;YACE,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,gBAAgB,EAAE;YAC1D,iBAAiB,EAAE,uBAAuB,EAAE;SAC7C;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,kDAAkD;IAClD,MAAM,aAAa,GAAG,qBAAqB,CACzC,aAAa,EACb,OAAO,CAAC,qBAAqB,KAAK,IAAI,CACvC,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,aAAa,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACtB,MAAM,WAAW,GAAG,wBAAwB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC5D,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACxB,IAAI,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC;YAClC,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;gBAClC,IAAI,CAAC;oBACH,UAAU,GAAG,uBAAuB,CAClC,IAAI,EACJ,GAAG,EACH,eAAe,CAAC,aAAa,EAC7B,eAAe,CAAC,iBAAiB,CAClC,CAAC,UAAU,CAAC;gBACf,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,IAAI,uBAAuB,CAC/B,4CAA4C,KAAK,CAAC,QAAQ,MACxD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE;gBAChB,UAAU;gBACV,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,KAAK,CAAC,QAAQ;gBACpB,YAAY,EAAE,KAAK;aACpB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,CAAC,qBAAqB,KAAK,IAAI,EAAE,CAAC;gBAC3C,MAAM,IAAI,uBAAuB,CAC/B,4CAA4C,KAAK,CAAC,QAAQ,KAAK;oBAC7D,WAAW,CAAC,KAAK,CAAC,MAAM;yBACrB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;yBAC3D,IAAI,CAAC,IAAI,CAAC,CAChB,CAAC;YACJ,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,gCAAgC,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IAED,mFAAmF;IACnF,MAAM,QAAQ,GAAG,mBAAmB,EAAE,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,QAAQ,EAAE,CAAC;QACnC,MAAM,WAAW,GAAG,wBAAwB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC5D,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACxB,MAAM,UAAU,GAAG,eAAe,KAAK,SAAS;gBAC9C,CAAC,CAAC,WAAW,CAAC,IAAI;gBAClB,CAAC,CAAC,uBAAuB,CACrB,IAAI,EACJ,GAAG,EACH,eAAe,CAAC,aAAa,EAC7B,eAAe,CAAC,iBAAiB,CAClC,CAAC,UAAU,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE;gBAChB,UAAU;gBACV,MAAM,EAAE,SAAS;gBACjB,YAAY,EAAE,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;aACtC,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,IAAI,uBAAuB,CAC/B,mDAAmD,IAAI,KAAK;gBAC1D,WAAW,CAAC,KAAK,CAAC,MAAM;qBACrB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;qBAC3D,IAAI,CAAC,IAAI,CAAC,CAChB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,8EAA8E;AAC9E,+BAA+B;AAC/B,8EAA8E;AAE9E;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,YAAqB;IAChD,MAAM,GAAG,GAAG,YAAY,IAAI,gBAAgB,EAAE,CAAC;IAC/C,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,GAAG,CAAC;IACb,CAAC;IACD,sEAAsE;IACtE,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACvD,OAAO,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;AACnC,CAAC;AAED;;;;GAIG;AACH,SAAS,qBAAqB,CAC5B,YAAqB,EACrB,qBAAqB,GAAG,KAAK;IAE7B,MAAM,MAAM,GAAG,IAAI,GAAG,EAA8C,CAAC;IACrE,MAAM,GAAG,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAE9C,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,gEAAgE;QAChE,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,MAAM;YAAE,SAAS;QAEhD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACrC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAChD,MAAM,MAAM,GAAY,SAAS,CAAC,OAAO,CAAC,CAAC;YAE3C,IAAI,MAAM,IAAI,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACjD,IAAI,qBAAqB,EAAE,CAAC;oBAC1B,MAAM,IAAI,uBAAuB,CAC/B,4CAA4C,QAAQ,2BAA2B,CAChF,CAAC;gBACJ,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,yDAAyD,CAAC,CAAC;gBAC3F,SAAS;YACX,CAAC;YAED,MAAM,GAAG,GAAG,MAAiC,CAAC;YAC9C,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;YACzB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;gBAC5C,IAAI,qBAAqB,EAAE,CAAC;oBAC1B,MAAM,IAAI,uBAAuB,CAC/B,4CAA4C,QAAQ,iBAAiB,CACtE,CAAC;gBACJ,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,mDAAmD,CAAC,CAAC;gBACrF,SAAS;YACX,CAAC;YAED,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrB,IAAI,qBAAqB,EAAE,CAAC;oBAC1B,MAAM,IAAI,uBAAuB,CAC/B,4CAA4C,QAAQ,+BAA+B,IAAI,GAAG,CAC3F,CAAC;gBACJ,CAAC;gBACD,MAAM,CAAC,IAAI,CACT,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EACxB,wDAAwD,CACzD,CAAC;gBACF,SAAS;YACX,CAAC;YAED,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,qBAAqB,EAAE,CAAC;gBAC1B,IAAI,GAAG,YAAY,uBAAuB;oBAAE,MAAM,GAAG,CAAC;gBACtD,MAAM,IAAI,uBAAuB,CAC/B,4CAA4C,QAAQ,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,CACxE,CAAC;YACJ,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,oCAAoC,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8EAA8E;AAC9E,mCAAmC;AACnC,8EAA8E;AAE9E;;;GAGG;AACH,SAAS,gBAAgB,CACvB,GAAuB,EACvB,iBAAoC;IAEpC,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC5B,6BAA6B,CAAC,GAAG,CAAC,CAAC;IACnC,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC5B,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxB,6BAA6B,CAAC,GAAG,CAAC,CAAC;IACnC,kCAAkC,CAAC,GAAG,CAAC,CAAC;IACxC,+BAA+B,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;IACxD,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC5B,qBAAqB,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;GAMG;AACH,SAAS,sBAAsB,CAAC,GAAuB;IACrD,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC;YACjC,IAAI,IAAI,IAAI,IAAI;gBAAE,SAAS;YAC3B,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;gBACnC,MAAM,IAAI,uBAAuB,CAC/B,SAAS,IAAI,CAAC,EAAE,eAAe,KAAK,CAAC,EAAE,aAAa;oBAClD,mBAAmB,IAAI,2BAA2B,CACrD,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,4CAA4C;AAC5C,SAAS,sBAAsB,CAAC,GAAuB;IACrD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,uBAAuB,CAC/B,wBAAwB,KAAK,CAAC,EAAE,GAAG,CACpC,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;AACH,CAAC;AAED,yCAAyC;AACzC,SAAS,6BAA6B,CAAC,GAAuB;IAC5D,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,uBAAuB,CAC/B,sBAAsB,IAAI,CAAC,EAAE,eAAe,KAAK,CAAC,EAAE,GAAG,CACxD,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;AACH,CAAC;AAED,wBAAwB;AACxB,SAAS,sBAAsB,CAAC,GAAuB;IACrD,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,uBAAuB,CAC/B,UAAU,KAAK,CAAC,EAAE,gBAAgB,CACnC,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,8CAA8C;AAC9C,SAAS,kBAAkB,CAAC,GAAuB;IACjD,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACpD,IAAI,SAAS,IAAI,IAAI;QAAE,OAAO,CAAC,qCAAqC;IACpE,IAAI,SAAS,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,uBAAuB,CAC/B,gBAAgB,SAAS,CAAC,EAAE,gCAAgC;YAC1D,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAC1C,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,6BAA6B,CAAC,GAAuB;IAC5D,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC7C,MAAM,YAAY,GAAG,IAAI,GAAG,EAAuB,CAAC;IAEpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC;QAC7B,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvB,CAAC;QACD,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC;QAC7B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI;gBAAE,SAAS;YAExC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpC,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAClC,MAAM,UAAU,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;gBACtE,MAAM,SAAS,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;gBAE5E,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAC/C,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;oBACxB,MAAM,IAAI,uBAAuB,CAC/B,2BAA2B,GAAG,cAAc,IAAI,CAAC,EAAE,aAAa,KAAK,CAAC,EAAE,KAAK;wBAC3E,6BAA6B,UAAU,GAAG,CAC7C,CAAC;gBACJ,CAAC;gBAED,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;oBACrB,MAAM,IAAI,uBAAuB,CAC/B,4CAA4C,IAAI,CAAC,EAAE,aAAa,KAAK,CAAC,EAAE,KAAK;wBAC3E,qBAAqB,UAAU,wBAAwB,CAC1D,CAAC;gBACJ,CAAC;gBAED,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;oBACtB,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBAC9C,IAAI,QAAQ,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;wBACjD,MAAM,IAAI,uBAAuB,CAC/B,2BAA2B,GAAG,cAAc,IAAI,CAAC,EAAE,aAAa,KAAK,CAAC,EAAE,KAAK;4BAC3E,4BAA4B,SAAS,eAAe,UAAU,GAAG,CACpE,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,2DAA2D;AAC3D,SAAS,kCAAkC,CAAC,GAAuB;IACjE,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI;gBAAE,SAAS;YACxC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;YAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBAClB,MAAM,IAAI,uBAAuB,CAC/B,qCAAqC,GAAG,cAAc,IAAI,CAAC,EAAE,aAAa,KAAK,CAAC,EAAE,IAAI,CACvF,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,+BAA+B,CACtC,GAAuB,EACvB,iBAAoC;IAEpC,0CAA0C;IAC1C,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IAE1C,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;QAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI;gBAAE,SAAS;YACxC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpC,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAClC,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;oBACpB,iEAAiE;oBACjE,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;oBACtD,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;wBACrB,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;4BACrC,eAAe,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC9C,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC3B,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QAE3C,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;QACvD,IAAI,KAAK,IAAI,IAAI;YAAE,SAAS,CAAC,4CAA4C;QACzE,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;QACtD,IAAI,IAAI,IAAI,IAAI;YAAE,SAAS;QAE3B,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,EAAE,CAAC;YACrC,MAAM,IAAI,uBAAuB,CAC/B,SAAS,MAAM,eAAe,OAAO,kCAAkC;gBACrE,iFAAiF,CACpF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACrD,MAAM,IAAI,uBAAuB,CAC/B,SAAS,MAAM,eAAe,OAAO,iCAAiC;gBACpE,IAAI,IAAI,CAAC,mBAAmB,6BAA6B;gBACzD,cAAc,iBAAiB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACrD,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,qBAAqB,CAAC,IAAwB;IACrD,+DAA+D;IAC/D,kFAAkF;IAClF,6CAA6C;AAC/C,CAAC"}
@@ -0,0 +1,160 @@
1
+ import { type CouncilPlanReviewInput } from "./contract.js";
2
+ import { type CouncilPlanReviewExecutionContract } from "./execution-contract.js";
3
+ export declare const PLAN_REVIEW_RECEIPTS_WORKFLOW = "plan-review-receipts";
4
+ /**
5
+ * Workflow name typed plan-review runs were persisted under before the rename
6
+ * to `plan-review-receipts`. Since the rename this name identifies the GENERIC
7
+ * plan-review council, so persisted-run readers must NEVER key typed detection
8
+ * on this name alone — use {@link isPlanReviewRunState}.
9
+ */
10
+ export declare const LEGACY_PLAN_REVIEW_RECEIPTS_WORKFLOW_NAME = "council-plan-review";
11
+ /**
12
+ * The persisted-state fields that identify a typed plan-review run. Structural
13
+ * on purpose: every RunState-shaped reader (state store, status projection,
14
+ * dashboard scanner/lazy-content) can use it without importing state-schema.
15
+ */
16
+ export interface PlanReviewRunStateMarkers {
17
+ readonly workflowName: string;
18
+ readonly plan_review_state?: unknown;
19
+ readonly plan_review_error?: unknown;
20
+ }
21
+ /**
22
+ * Typed plan-review detection over PERSISTED run state.
23
+ *
24
+ * Keys on plan-review state/contract PRESENCE first, then the current workflow
25
+ * name. The legacy workflow name is deliberately not consulted: after the
26
+ * rename it also names the generic plan-review council, so a legacy-name run
27
+ * is typed exactly when it carries `plan_review_state` (any run that reached
28
+ * dispatch) or a structured `plan_review_error` (post-state init failures).
29
+ * A new `plan-review-receipts` run is typed by name even before its
30
+ * `plan_review_state` commit lands.
31
+ */
32
+ export declare function isPlanReviewRunState(state: PlanReviewRunStateMarkers): boolean;
33
+ export interface PlanReviewCallMapping {
34
+ readonly seat_id: string;
35
+ readonly reviewer_call_id: string;
36
+ readonly cross_review_call_id: string;
37
+ }
38
+ export interface CouncilPlanReviewAdmission {
39
+ readonly input: CouncilPlanReviewInput;
40
+ readonly execution_contract: CouncilPlanReviewExecutionContract;
41
+ readonly execution_contract_digest: string;
42
+ readonly call_mappings: readonly PlanReviewCallMapping[];
43
+ }
44
+ export interface AdmitCouncilPlanReviewInput {
45
+ readonly workflow: string;
46
+ readonly planReview: unknown;
47
+ readonly variables: Readonly<Record<string, unknown>>;
48
+ readonly availableCliNames?: readonly string[] | undefined;
49
+ }
50
+ /**
51
+ * Bytes reserved for everything in a dispatched call's prompt that the budget
52
+ * formula does not model explicitly: the rendered packaged template, the seat
53
+ * binding block, the snapshot delimiter block, and the per-call context summary
54
+ * string.
55
+ *
56
+ * SET FROM MEASUREMENT, not chosen. `tests/plan-review-prompt-headroom.test.ts`
57
+ * measures per-call overhead from the SHIPPED templates and renderers at the
58
+ * maximum 10-seat roster, with every seat binding at its CONTRACT MAXIMUM — a
59
+ * 64-char `seat_id`, the longest permitted `cli_name`, and the longest permitted
60
+ * `stance`, all probed from the shipped schemas rather than sampled. The worst
61
+ * call measures **8,007 bytes** (a reviewer: the reviewer template is the
62
+ * largest of the three, and only reviewers carry a seat binding block;
63
+ * cross-review measures 6,298 and the chairman 6,223). This constant is that
64
+ * measurement with a **2x safety factor**, rounded up to the next 4 KiB:
65
+ * ceil(8_007 * 2 / 4096) * 4096 = 16_384.
66
+ *
67
+ * ## 8,007 is a CONSERVATIVE SYNTHETIC UPPER BOUND, not an engine-actual trace
68
+ *
69
+ * Be precise about what that number is, because a guard justified by a
70
+ * mismeasurement is the defect class this file's surrounding work exists to
71
+ * delete. The test applies ONE worst-case context summary — every reviewer,
72
+ * every cross-review, the ranking artifact, each at its validator ceiling, plus
73
+ * a failure reference for every seat — UNIFORMLY to every call shape. That is a
74
+ * chairman-shaped context. Real reviewer calls declare no `context_from`
75
+ * (`workflows/plan-review-receipts.yaml:119-125`) and empty references render no
76
+ * context at all (`artifacts.ts:198-209`), so a real reviewer call carries LESS
77
+ * than 8,007.
78
+ *
79
+ * The over-count is deliberate and is the SAFE direction here: this constant
80
+ * reserves budget, so over-measuring the overhead only ever makes admission
81
+ * stricter than dispatch. It is an upper bound over all actor call shapes,
82
+ * which is exactly what a reserve needs, and it is stable against a future YAML
83
+ * change that gives reviewers a `context_from`. Do NOT "correct" it by
84
+ * re-measuring a per-shape actual: that would trade a provable bound for a
85
+ * figure coupled to today's wiring, and shrink the reserve on the way.
86
+ *
87
+ * That test pins BOTH halves of this claim, which is why it is the ratchet and
88
+ * not merely a bound: it asserts measured <= this constant, AND it asserts this
89
+ * constant >= 2x measured — the published safety factor itself. The second
90
+ * assertion is the load-bearing one. Without it, templates growing to ~16,000
91
+ * bytes would still satisfy `measured <= 16_384` while the real factor eroded to
92
+ * ~1.02x, silently turning the "2x" published here, in `CLAUDE.md`, in
93
+ * `README.md`, and in `docs/architecture.md` into four unbacked numbers. Growing
94
+ * the templates past half this reserve must force a deliberate choice: raise the
95
+ * constant, or correct every doc that claims 2x.
96
+ *
97
+ * The reserve does NOT scale with roster size — only the context summary grows
98
+ * with seat count, and the test pins that the per-call template overhead stays
99
+ * roster-independent.
100
+ */
101
+ export declare const PLAN_REVIEW_PROMPT_TEMPLATE_HEADROOM_BYTES = 16384;
102
+ /**
103
+ * D9-by-inlining moved the plan snapshot from an attached file into the prompt
104
+ * itself, so a fan-in prompt now stacks the snapshot on top of every peer
105
+ * artifact. That sum is a function of roster size and plan size and is knowable
106
+ * BEFORE any seat is dispatched — so an unsatisfiable roster is rejected with an
107
+ * actionable message instead of dying mid-run on the Nth seat.
108
+ *
109
+ * WHERE THIS RUNS — post-slot, pre-state, pre-dispatch. NOT "pre-mutex" and not
110
+ * "up front": the caller (`preparePlanReviewSnapshot`) already holds the
111
+ * process-wide concurrency slot, because inlining forced the snapshot read ahead
112
+ * of `WorkflowStateStore.create`. So an oversized request transiently occupies
113
+ * that slot for the duration of one bounded (<=512 KiB) read before being
114
+ * rejected. That is accepted deliberately: hoisting the read above the cap would
115
+ * let unbounded concurrent REJECTED requests do filesystem work ahead of
116
+ * duplicate-run rejection — a worse availability story than the contention it
117
+ * would avoid.
118
+ *
119
+ * WHAT IS GUARANTEED — and the error CODE is not uniform, so do not overstate
120
+ * it. This function throws `-32602`, but only the ASYNC path surfaces that code
121
+ * to the caller. `executeWorkflowRun` wraps the sync path (including this
122
+ * prepare step) in its generic failure handler, so the McpError is caught and
123
+ * formatted into an `isError` TEXT result that CARRIES the message but not the
124
+ * code. Both are pinned in `tests/plan-review-workflow-tools.test.ts`
125
+ * ("rejects an oversized roster with -32602 and NO persisted state" /
126
+ * "sync: surfaces an oversized roster as isError, still with NO persisted state").
127
+ *
128
+ * The invariant that holds on BOTH paths — the one worth relying on — is:
129
+ * an oversized roster leaves NO run directory, NO persisted state, and does no
130
+ * provider work. That is unlike a digest mismatch, which is CARRIED and raised
131
+ * as a post-state `failed` run.
132
+ *
133
+ * The binding call is the CHAIRMAN, not a cross-review. `plan-review-receipts.yaml`
134
+ * gives the chairman `context_from: [reviewers, cross_review, ranking_analysis]`,
135
+ * so it receives ALL N reviewer artifacts plus ALL N cross-review artifacts —
136
+ * hence `seatCount`, not `seatCount - 1`. (The chairman occupies a roster seat
137
+ * but is not additional to the count; a cross-review sees only N-1 peers and is
138
+ * therefore never the worst case.)
139
+ *
140
+ * SCOPE — this models INTRINSIC fit only: the snapshot plus the roster's own
141
+ * artifacts plus the engine reserve and template headroom. It deliberately does
142
+ * NOT model caller-supplied `context_files` / `context_bundle_files`, whose size
143
+ * is not knowable here. It is therefore a conservative fail-FAST pre-check, and
144
+ * `enforcePromptBudget` (`engine.ts`) remains the AUTHORITATIVE gate: it bills
145
+ * actual bytes per invocation at dispatch. A roster admitted here can still be
146
+ * rejected there once real context is attached — that direction is safe. The
147
+ * reverse (admitting what dispatch rejects) is the bug this guard must not have.
148
+ *
149
+ * Truncation is deliberately NOT offered: silently dropping peer evidence would
150
+ * make a chairman synthesize over a plan it never fully saw.
151
+ */
152
+ export declare function assertPlanReviewPromptBudget(input: {
153
+ readonly seatCount: number;
154
+ readonly snapshotBytes: number;
155
+ readonly maxPromptBytes: number;
156
+ }): void;
157
+ export declare function admitCouncilPlanReview(request: AdmitCouncilPlanReviewInput & {
158
+ readonly workflow: typeof PLAN_REVIEW_RECEIPTS_WORKFLOW;
159
+ }): CouncilPlanReviewAdmission;
160
+ export declare function admitCouncilPlanReview(request: AdmitCouncilPlanReviewInput): CouncilPlanReviewAdmission | undefined;
@@ -0,0 +1,290 @@
1
+ import { ErrorCode, McpError } from "@modelcontextprotocol/sdk/types.js";
2
+ import { CouncilPlanReviewInputSchema, } from "./contract.js";
3
+ import { PLAN_REVIEW_CROSS_REVIEW_MAX_BYTES, PLAN_REVIEW_RANKING_REDUCER_MAX_BYTES, PLAN_REVIEW_REVIEWER_MAX_BYTES, } from "../validators/plan-review.js";
4
+ import { DEFAULT_RESERVE_BYTES } from "../prompt-budget.js";
5
+ import { computeCouncilPlanReviewExecutionContractDigest, } from "./execution-contract.js";
6
+ import { PACKAGED_PLAN_REVIEW_RUBRIC_DIGEST } from "./rubric.js";
7
+ export const PLAN_REVIEW_RECEIPTS_WORKFLOW = "plan-review-receipts";
8
+ /**
9
+ * Workflow name typed plan-review runs were persisted under before the rename
10
+ * to `plan-review-receipts`. Since the rename this name identifies the GENERIC
11
+ * plan-review council, so persisted-run readers must NEVER key typed detection
12
+ * on this name alone — use {@link isPlanReviewRunState}.
13
+ */
14
+ export const LEGACY_PLAN_REVIEW_RECEIPTS_WORKFLOW_NAME = "council-plan-review";
15
+ /**
16
+ * Typed plan-review detection over PERSISTED run state.
17
+ *
18
+ * Keys on plan-review state/contract PRESENCE first, then the current workflow
19
+ * name. The legacy workflow name is deliberately not consulted: after the
20
+ * rename it also names the generic plan-review council, so a legacy-name run
21
+ * is typed exactly when it carries `plan_review_state` (any run that reached
22
+ * dispatch) or a structured `plan_review_error` (post-state init failures).
23
+ * A new `plan-review-receipts` run is typed by name even before its
24
+ * `plan_review_state` commit lands.
25
+ */
26
+ export function isPlanReviewRunState(state) {
27
+ return (state.plan_review_state !== undefined ||
28
+ state.plan_review_error !== undefined ||
29
+ state.workflowName === PLAN_REVIEW_RECEIPTS_WORKFLOW);
30
+ }
31
+ function invalid(message) {
32
+ throw new McpError(ErrorCode.InvalidParams, message);
33
+ }
34
+ function parsePlanReview(value) {
35
+ const parsed = CouncilPlanReviewInputSchema.safeParse(value);
36
+ if (!parsed.success) {
37
+ const details = parsed.error.issues
38
+ .map((issue) => `${issue.path.join(".") || "plan_review"}: ${issue.message}`)
39
+ .join("; ");
40
+ invalid(`Invalid plan_review: ${details}`);
41
+ }
42
+ return parsed.data;
43
+ }
44
+ function numberToCanonicalDecimal(value) {
45
+ if (Object.is(value, -0))
46
+ return "0";
47
+ const raw = String(value);
48
+ if (!/[eE]/.test(raw))
49
+ return raw;
50
+ const match = /^([+-]?)([0-9]+)(?:\.([0-9]+))?[eE]([+-]?[0-9]+)$/.exec(raw);
51
+ if (match == null) {
52
+ invalid(`threshold cannot be represented canonically: ${raw}`);
53
+ }
54
+ const sign = match[1] === "-" ? "-" : "";
55
+ const integer = match[2];
56
+ const fraction = match[3] ?? "";
57
+ const exponent = Number(match[4]);
58
+ const digits = integer + fraction;
59
+ const decimalIndex = integer.length + exponent;
60
+ const expanded = decimalIndex <= 0
61
+ ? `0.${"0".repeat(-decimalIndex)}${digits}`
62
+ : decimalIndex >= digits.length
63
+ ? `${digits}${"0".repeat(decimalIndex - digits.length)}`
64
+ : `${digits.slice(0, decimalIndex)}.${digits.slice(decimalIndex)}`;
65
+ return `${sign}${expanded}`;
66
+ }
67
+ /**
68
+ * Bytes reserved for everything in a dispatched call's prompt that the budget
69
+ * formula does not model explicitly: the rendered packaged template, the seat
70
+ * binding block, the snapshot delimiter block, and the per-call context summary
71
+ * string.
72
+ *
73
+ * SET FROM MEASUREMENT, not chosen. `tests/plan-review-prompt-headroom.test.ts`
74
+ * measures per-call overhead from the SHIPPED templates and renderers at the
75
+ * maximum 10-seat roster, with every seat binding at its CONTRACT MAXIMUM — a
76
+ * 64-char `seat_id`, the longest permitted `cli_name`, and the longest permitted
77
+ * `stance`, all probed from the shipped schemas rather than sampled. The worst
78
+ * call measures **8,007 bytes** (a reviewer: the reviewer template is the
79
+ * largest of the three, and only reviewers carry a seat binding block;
80
+ * cross-review measures 6,298 and the chairman 6,223). This constant is that
81
+ * measurement with a **2x safety factor**, rounded up to the next 4 KiB:
82
+ * ceil(8_007 * 2 / 4096) * 4096 = 16_384.
83
+ *
84
+ * ## 8,007 is a CONSERVATIVE SYNTHETIC UPPER BOUND, not an engine-actual trace
85
+ *
86
+ * Be precise about what that number is, because a guard justified by a
87
+ * mismeasurement is the defect class this file's surrounding work exists to
88
+ * delete. The test applies ONE worst-case context summary — every reviewer,
89
+ * every cross-review, the ranking artifact, each at its validator ceiling, plus
90
+ * a failure reference for every seat — UNIFORMLY to every call shape. That is a
91
+ * chairman-shaped context. Real reviewer calls declare no `context_from`
92
+ * (`workflows/plan-review-receipts.yaml:119-125`) and empty references render no
93
+ * context at all (`artifacts.ts:198-209`), so a real reviewer call carries LESS
94
+ * than 8,007.
95
+ *
96
+ * The over-count is deliberate and is the SAFE direction here: this constant
97
+ * reserves budget, so over-measuring the overhead only ever makes admission
98
+ * stricter than dispatch. It is an upper bound over all actor call shapes,
99
+ * which is exactly what a reserve needs, and it is stable against a future YAML
100
+ * change that gives reviewers a `context_from`. Do NOT "correct" it by
101
+ * re-measuring a per-shape actual: that would trade a provable bound for a
102
+ * figure coupled to today's wiring, and shrink the reserve on the way.
103
+ *
104
+ * That test pins BOTH halves of this claim, which is why it is the ratchet and
105
+ * not merely a bound: it asserts measured <= this constant, AND it asserts this
106
+ * constant >= 2x measured — the published safety factor itself. The second
107
+ * assertion is the load-bearing one. Without it, templates growing to ~16,000
108
+ * bytes would still satisfy `measured <= 16_384` while the real factor eroded to
109
+ * ~1.02x, silently turning the "2x" published here, in `CLAUDE.md`, in
110
+ * `README.md`, and in `docs/architecture.md` into four unbacked numbers. Growing
111
+ * the templates past half this reserve must force a deliberate choice: raise the
112
+ * constant, or correct every doc that claims 2x.
113
+ *
114
+ * The reserve does NOT scale with roster size — only the context summary grows
115
+ * with seat count, and the test pins that the per-call template overhead stays
116
+ * roster-independent.
117
+ */
118
+ export const PLAN_REVIEW_PROMPT_TEMPLATE_HEADROOM_BYTES = 16_384;
119
+ /** Per-seat artifact bytes the chairman fans in: one reviewer + one cross-review. */
120
+ const PER_SEAT_ARTIFACT_BYTES = PLAN_REVIEW_REVIEWER_MAX_BYTES +
121
+ PLAN_REVIEW_CROSS_REVIEW_MAX_BYTES;
122
+ /** Everything in the chairman's worst case that does not scale with the roster. */
123
+ function fixedBudgetBytes(snapshotBytes) {
124
+ return snapshotBytes +
125
+ PLAN_REVIEW_RANKING_REDUCER_MAX_BYTES +
126
+ DEFAULT_RESERVE_BYTES +
127
+ PLAN_REVIEW_PROMPT_TEMPLATE_HEADROOM_BYTES;
128
+ }
129
+ /**
130
+ * D9-by-inlining moved the plan snapshot from an attached file into the prompt
131
+ * itself, so a fan-in prompt now stacks the snapshot on top of every peer
132
+ * artifact. That sum is a function of roster size and plan size and is knowable
133
+ * BEFORE any seat is dispatched — so an unsatisfiable roster is rejected with an
134
+ * actionable message instead of dying mid-run on the Nth seat.
135
+ *
136
+ * WHERE THIS RUNS — post-slot, pre-state, pre-dispatch. NOT "pre-mutex" and not
137
+ * "up front": the caller (`preparePlanReviewSnapshot`) already holds the
138
+ * process-wide concurrency slot, because inlining forced the snapshot read ahead
139
+ * of `WorkflowStateStore.create`. So an oversized request transiently occupies
140
+ * that slot for the duration of one bounded (<=512 KiB) read before being
141
+ * rejected. That is accepted deliberately: hoisting the read above the cap would
142
+ * let unbounded concurrent REJECTED requests do filesystem work ahead of
143
+ * duplicate-run rejection — a worse availability story than the contention it
144
+ * would avoid.
145
+ *
146
+ * WHAT IS GUARANTEED — and the error CODE is not uniform, so do not overstate
147
+ * it. This function throws `-32602`, but only the ASYNC path surfaces that code
148
+ * to the caller. `executeWorkflowRun` wraps the sync path (including this
149
+ * prepare step) in its generic failure handler, so the McpError is caught and
150
+ * formatted into an `isError` TEXT result that CARRIES the message but not the
151
+ * code. Both are pinned in `tests/plan-review-workflow-tools.test.ts`
152
+ * ("rejects an oversized roster with -32602 and NO persisted state" /
153
+ * "sync: surfaces an oversized roster as isError, still with NO persisted state").
154
+ *
155
+ * The invariant that holds on BOTH paths — the one worth relying on — is:
156
+ * an oversized roster leaves NO run directory, NO persisted state, and does no
157
+ * provider work. That is unlike a digest mismatch, which is CARRIED and raised
158
+ * as a post-state `failed` run.
159
+ *
160
+ * The binding call is the CHAIRMAN, not a cross-review. `plan-review-receipts.yaml`
161
+ * gives the chairman `context_from: [reviewers, cross_review, ranking_analysis]`,
162
+ * so it receives ALL N reviewer artifacts plus ALL N cross-review artifacts —
163
+ * hence `seatCount`, not `seatCount - 1`. (The chairman occupies a roster seat
164
+ * but is not additional to the count; a cross-review sees only N-1 peers and is
165
+ * therefore never the worst case.)
166
+ *
167
+ * SCOPE — this models INTRINSIC fit only: the snapshot plus the roster's own
168
+ * artifacts plus the engine reserve and template headroom. It deliberately does
169
+ * NOT model caller-supplied `context_files` / `context_bundle_files`, whose size
170
+ * is not knowable here. It is therefore a conservative fail-FAST pre-check, and
171
+ * `enforcePromptBudget` (`engine.ts`) remains the AUTHORITATIVE gate: it bills
172
+ * actual bytes per invocation at dispatch. A roster admitted here can still be
173
+ * rejected there once real context is attached — that direction is safe. The
174
+ * reverse (admitting what dispatch rejects) is the bug this guard must not have.
175
+ *
176
+ * Truncation is deliberately NOT offered: silently dropping peer evidence would
177
+ * make a chairman synthesize over a plan it never fully saw.
178
+ */
179
+ export function assertPlanReviewPromptBudget(input) {
180
+ const worstCase = fixedBudgetBytes(input.snapshotBytes) +
181
+ input.seatCount * PER_SEAT_ARTIFACT_BYTES;
182
+ if (worstCase <= input.maxPromptBytes)
183
+ return;
184
+ // Invert the same formula. No `Math.max(1, ...)` clamp: when nothing fits,
185
+ // the honest answer is 0 seats, not a suggestion the caller cannot satisfy.
186
+ const maxSeats = Math.max(0, Math.floor((input.maxPromptBytes - fixedBudgetBytes(input.snapshotBytes)) /
187
+ PER_SEAT_ARTIFACT_BYTES));
188
+ invalid(`plan-review-receipts roster does not fit the prompt budget: ${String(input.seatCount)} seats ` +
189
+ `× up to ${String(PER_SEAT_ARTIFACT_BYTES)} bytes of fanned-in artifacts ` +
190
+ `(${String(PLAN_REVIEW_REVIEWER_MAX_BYTES)} reviewer + ${String(PLAN_REVIEW_CROSS_REVIEW_MAX_BYTES)} cross-review) ` +
191
+ `+ a ${String(input.snapshotBytes)}-byte plan snapshot ` +
192
+ `+ ${String(PLAN_REVIEW_RANKING_REDUCER_MAX_BYTES)} bytes of ranking artifact ` +
193
+ `+ ${String(DEFAULT_RESERVE_BYTES)} bytes of engine reserve ` +
194
+ `+ ${String(PLAN_REVIEW_PROMPT_TEMPLATE_HEADROOM_BYTES)} bytes of template headroom = ` +
195
+ `${String(worstCase)} bytes, over the ${String(input.maxPromptBytes)}-byte limit ` +
196
+ `(CLINKX_WORKFLOWS_MAX_PROMPT_BYTES). ` +
197
+ (maxSeats === 0
198
+ ? `No roster fits this plan snapshot: shorten the plan or raise CLINKX_WORKFLOWS_MAX_PROMPT_BYTES.`
199
+ : `Reduce the roster to at most ${String(maxSeats)} seats, ` +
200
+ `shorten the plan, or raise CLINKX_WORKFLOWS_MAX_PROMPT_BYTES.`));
201
+ }
202
+ function resolveRubric(variables) {
203
+ const text = variables["rubric_text"];
204
+ const digest = variables["rubric_digest"];
205
+ if (text !== undefined) {
206
+ invalid("variables.rubric_text is not supported; plan-review-receipts uses the packaged v1 rubric");
207
+ }
208
+ if (digest !== undefined && digest !== PACKAGED_PLAN_REVIEW_RUBRIC_DIGEST) {
209
+ invalid("variables.rubric_digest must exactly match the packaged v1 rubric digest");
210
+ }
211
+ return { digest: PACKAGED_PLAN_REVIEW_RUBRIC_DIGEST };
212
+ }
213
+ export function admitCouncilPlanReview(request) {
214
+ if (request.workflow !== PLAN_REVIEW_RECEIPTS_WORKFLOW) {
215
+ if (request.planReview !== undefined) {
216
+ invalid(`plan_review parameter is not supported for workflow "${request.workflow}"`);
217
+ }
218
+ return undefined;
219
+ }
220
+ if (request.planReview === undefined) {
221
+ invalid('Missing required "plan_review" parameter for plan-review-receipts');
222
+ }
223
+ const input = parsePlanReview(request.planReview);
224
+ const knownCliNames = request.availableCliNames == null
225
+ ? undefined
226
+ : new Set(request.availableCliNames);
227
+ const callMappings = input.seats.map((seat, index) => ({
228
+ seat_id: seat.seat_id,
229
+ reviewer_call_id: `seat_${String(index).padStart(3, "0")}`,
230
+ cross_review_call_id: `cross_${String(index).padStart(3, "0")}`,
231
+ }));
232
+ const executionSeats = input.seats.map((seat, index) => {
233
+ // Roster hygiene, NOT enforcement: a seat naming an adapter this server has
234
+ // never heard of is unrunnable, so it fails here rather than at dispatch.
235
+ if (knownCliNames != null && !knownCliNames.has(seat.cli_name)) {
236
+ invalid(`plan_review.seats[${String(index)}].cli_name is not a known adapter`);
237
+ }
238
+ const mapping = callMappings[index];
239
+ return {
240
+ seat_id: seat.seat_id,
241
+ internal_call_id: mapping.reviewer_call_id,
242
+ cross_review_call_id: mapping.cross_review_call_id,
243
+ reviewer: seat.reviewer,
244
+ cli_name: seat.cli_name,
245
+ stance: seat.stance,
246
+ };
247
+ });
248
+ const contractInput = {
249
+ schema_version: "execution-contract-v1",
250
+ workspace_schema: input.workspace_schema,
251
+ digest_profile: input.digest_profile,
252
+ bindings: {
253
+ repository_id: input.repository_id,
254
+ review_id: input.review_id,
255
+ iteration: String(input.iteration),
256
+ plan_id: input.plan_id,
257
+ revision: String(input.revision),
258
+ plan_digest: input.digest,
259
+ },
260
+ seats: executionSeats,
261
+ rubric: resolveRubric(request.variables),
262
+ threshold: numberToCanonicalDecimal(input.threshold),
263
+ designated_editor: input.designated_editor,
264
+ chairman_seat: input.chairman_seat,
265
+ mutation_enforcement: "prompt-only",
266
+ deliberation_policy: {
267
+ fallback_allowed: false,
268
+ seat_substitution_allowed: false,
269
+ deliberation_receipts_allowed: false,
270
+ partial_transport_is_approval: false,
271
+ },
272
+ context_evidence_policy: {
273
+ immutable_snapshot_only: true,
274
+ snapshot_digest: input.digest,
275
+ original_plan_context_allowed: false,
276
+ plan_workspace_context_allowed: false,
277
+ },
278
+ };
279
+ const computed = computeCouncilPlanReviewExecutionContractDigest(contractInput);
280
+ if (computed.digest !== input.expected_execution_contract_digest) {
281
+ invalid("plan_review.expected_execution_contract_digest does not match the normalized execution contract");
282
+ }
283
+ return {
284
+ input,
285
+ execution_contract: computed.contract,
286
+ execution_contract_digest: computed.digest,
287
+ call_mappings: callMappings,
288
+ };
289
+ }
290
+ //# sourceMappingURL=admission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admission.js","sourceRoot":"","sources":["../../src/plan-review/admission.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * A-7 — the non-overridable plan-review context policy.
3
+ *
4
+ * Reviewers see the immutable snapshot and repo source evidence — never the
5
+ * mutable original plan, and never some *other* plan workspace's `PLAN.md`.
6
+ * Because preflight runs a default-on full curator+finalizer delegate, one
7
+ * exclusion point is not enough, so this module supplies both:
8
+ *
9
+ * (a) PRE-DISPATCH — forced exclude globs folded into the curator's input,
10
+ * so the curator never selects the plan in the first place.
11
+ * (b) POST-FILTER — the finalized selection is stripped of anything that
12
+ * resolves to an excluded plan, because caller
13
+ * `cb_include_globs`/`cb_focus_paths` can otherwise
14
+ * re-admit exactly what (a) excluded.
15
+ *
16
+ * Neither is redundant: (a) stops the curator from wasting budget on the plan
17
+ * and from embedding it in the bundle body; (b) is what makes the exclusion
18
+ * actually SURVIVE caller globs and focus anchors.
19
+ */
20
+ import type { PlanReviewContextPolicy } from "./run-state.js";
21
+ /**
22
+ * Any plan-workspace plan document. `generate-implementation-plan` owns this layout, so the
23
+ * pattern is fixed rather than caller-configurable.
24
+ */
25
+ export declare const PLAN_WORKSPACE_EXCLUDE_GLOB = "**/.ai/plans/**/PLAN.md";
26
+ /** Whether `absolutePath` is a plan-workspace `.ai/plans/**\/PLAN.md`. */
27
+ export declare function isPlanWorkspacePlanPath(absolutePath: string): boolean;
28
+ /** Build the enforced policy for one run. `planFile` is the caller's original. */
29
+ export declare function buildPlanReviewContextPolicy(planFile: string): PlanReviewContextPolicy;
30
+ /**
31
+ * Whether `path` is force-excluded: it IS the bound original plan, or it is any
32
+ * plan-workspace `PLAN.md`.
33
+ */
34
+ export declare function isExcludedPlanPath(policy: PlanReviewContextPolicy, path: string, workspaceRoot?: string): boolean;
35
+ /**
36
+ * Fold the enforced exclusions into a caller's `cb_exclude_globs` (A-7a).
37
+ * Order is caller-first then enforced, deduped, so the enforced entries are
38
+ * always present regardless of what the caller supplied — including `[]`.
39
+ */
40
+ export declare function foldPlanReviewExcludeGlobs(policy: PlanReviewContextPolicy, callerExcludeGlobs: readonly string[]): string[];
41
+ /** Strip every force-excluded path from a finalized path list (A-7b). */
42
+ export declare function filterExcludedPlanPaths(policy: PlanReviewContextPolicy, paths: readonly string[], workspaceRoot?: string): {
43
+ kept: string[];
44
+ removed: string[];
45
+ };
46
+ export interface PlanReviewContextRejection {
47
+ readonly variable: string;
48
+ readonly path: string;
49
+ }
50
+ /**
51
+ * Reject caller-supplied context anchors that resolve to the original plan or
52
+ * any plan-workspace `PLAN.md`. Returns every offender so the caller gets one
53
+ * complete rejection rather than a whack-a-mole loop.
54
+ */
55
+ export declare function findRejectedPlanContextAnchors(policy: PlanReviewContextPolicy, variables: Readonly<Record<string, unknown>>, workspaceRoot?: string): PlanReviewContextRejection[];