wicked-crew 0.7.39 → 0.7.45

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 (380) hide show
  1. package/dist/api/audit.d.ts +3 -0
  2. package/dist/api/audit.d.ts.map +1 -1
  3. package/dist/api/audit.js +2 -0
  4. package/dist/api/audit.js.map +1 -1
  5. package/dist/api/capture.d.ts +149 -0
  6. package/dist/api/capture.d.ts.map +1 -0
  7. package/dist/api/capture.js +330 -0
  8. package/dist/api/capture.js.map +1 -0
  9. package/dist/api/chat-citations.d.ts +174 -0
  10. package/dist/api/chat-citations.d.ts.map +1 -0
  11. package/dist/api/chat-citations.js +528 -0
  12. package/dist/api/chat-citations.js.map +1 -0
  13. package/dist/api/chat-scope.d.ts +37 -1
  14. package/dist/api/chat-scope.d.ts.map +1 -1
  15. package/dist/api/chat-scope.js +131 -7
  16. package/dist/api/chat-scope.js.map +1 -1
  17. package/dist/api/chat-transcripts.d.ts +20 -1
  18. package/dist/api/chat-transcripts.d.ts.map +1 -1
  19. package/dist/api/chat-transcripts.js +29 -0
  20. package/dist/api/chat-transcripts.js.map +1 -1
  21. package/dist/api/delivery-cache.d.ts +2 -2
  22. package/dist/api/delivery-freeze.d.ts +66 -0
  23. package/dist/api/delivery-freeze.d.ts.map +1 -0
  24. package/dist/api/delivery-freeze.js +104 -0
  25. package/dist/api/delivery-freeze.js.map +1 -0
  26. package/dist/api/delivery-index.d.ts +53 -9
  27. package/dist/api/delivery-index.d.ts.map +1 -1
  28. package/dist/api/delivery-index.js +115 -22
  29. package/dist/api/delivery-index.js.map +1 -1
  30. package/dist/api/demo.d.ts +90 -0
  31. package/dist/api/demo.d.ts.map +1 -0
  32. package/dist/api/demo.js +492 -0
  33. package/dist/api/demo.js.map +1 -0
  34. package/dist/api/diagnostics.d.ts +64 -1
  35. package/dist/api/diagnostics.d.ts.map +1 -1
  36. package/dist/api/diagnostics.js +129 -1
  37. package/dist/api/diagnostics.js.map +1 -1
  38. package/dist/api/eval-sample.d.ts +6 -6
  39. package/dist/api/governance-steering.d.ts +2 -2
  40. package/dist/api/mcp.d.ts +282 -0
  41. package/dist/api/mcp.d.ts.map +1 -0
  42. package/dist/api/mcp.js +521 -0
  43. package/dist/api/mcp.js.map +1 -0
  44. package/dist/api/plan-schema.d.ts +56 -0
  45. package/dist/api/plan-schema.d.ts.map +1 -0
  46. package/dist/api/plan-schema.js +26 -0
  47. package/dist/api/plan-schema.js.map +1 -0
  48. package/dist/api/roster-standing.d.ts +15 -2
  49. package/dist/api/roster-standing.d.ts.map +1 -1
  50. package/dist/api/roster-standing.js +55 -3
  51. package/dist/api/roster-standing.js.map +1 -1
  52. package/dist/api/routes.d.ts +647 -59
  53. package/dist/api/routes.d.ts.map +1 -1
  54. package/dist/api/routes.js +906 -146
  55. package/dist/api/routes.js.map +1 -1
  56. package/dist/api/run-files.d.ts.map +1 -1
  57. package/dist/api/run-files.js +31 -2
  58. package/dist/api/run-files.js.map +1 -1
  59. package/dist/api/run-liveness.d.ts +41 -0
  60. package/dist/api/run-liveness.d.ts.map +1 -0
  61. package/dist/api/run-liveness.js +166 -0
  62. package/dist/api/run-liveness.js.map +1 -0
  63. package/dist/api/run-timing-index.d.ts +10 -0
  64. package/dist/api/run-timing-index.d.ts.map +1 -1
  65. package/dist/api/run-timing-index.js +24 -0
  66. package/dist/api/run-timing-index.js.map +1 -1
  67. package/dist/api/seat-health.d.ts.map +1 -1
  68. package/dist/api/seat-health.js +20 -4
  69. package/dist/api/seat-health.js.map +1 -1
  70. package/dist/api/seat-probe.d.ts +141 -0
  71. package/dist/api/seat-probe.d.ts.map +1 -0
  72. package/dist/api/seat-probe.js +257 -0
  73. package/dist/api/seat-probe.js.map +1 -0
  74. package/dist/api/seat-record.d.ts +40 -0
  75. package/dist/api/seat-record.d.ts.map +1 -0
  76. package/dist/api/seat-record.js +218 -0
  77. package/dist/api/seat-record.js.map +1 -0
  78. package/dist/api/seat-signin.d.ts.map +1 -1
  79. package/dist/api/seat-signin.js +3 -1
  80. package/dist/api/seat-signin.js.map +1 -1
  81. package/dist/api/seat-standing.d.ts +24 -4
  82. package/dist/api/seat-standing.d.ts.map +1 -1
  83. package/dist/api/seat-standing.js +50 -3
  84. package/dist/api/seat-standing.js.map +1 -1
  85. package/dist/api/server.d.ts +34 -48
  86. package/dist/api/server.d.ts.map +1 -1
  87. package/dist/api/server.js +316 -116
  88. package/dist/api/server.js.map +1 -1
  89. package/dist/api/skills.d.ts +3 -1
  90. package/dist/api/skills.d.ts.map +1 -1
  91. package/dist/api/skills.js +7 -2
  92. package/dist/api/skills.js.map +1 -1
  93. package/dist/api/stall-watchdog.d.ts +34 -3
  94. package/dist/api/stall-watchdog.d.ts.map +1 -1
  95. package/dist/api/stall-watchdog.js +107 -8
  96. package/dist/api/stall-watchdog.js.map +1 -1
  97. package/dist/api/steering-landing.d.ts +6 -6
  98. package/dist/api/steering-landing.d.ts.map +1 -1
  99. package/dist/api/steering-landing.js +7 -9
  100. package/dist/api/steering-landing.js.map +1 -1
  101. package/dist/api/testing.d.ts +6 -4
  102. package/dist/api/testing.d.ts.map +1 -1
  103. package/dist/api/testing.js +82 -47
  104. package/dist/api/testing.js.map +1 -1
  105. package/dist/campaign/boot-resume.d.ts +34 -0
  106. package/dist/campaign/boot-resume.d.ts.map +1 -0
  107. package/dist/campaign/boot-resume.js +45 -0
  108. package/dist/campaign/boot-resume.js.map +1 -0
  109. package/dist/campaigns/rollup.d.ts +4 -1
  110. package/dist/campaigns/rollup.d.ts.map +1 -1
  111. package/dist/campaigns/rollup.js +6 -1
  112. package/dist/campaigns/rollup.js.map +1 -1
  113. package/dist/campaigns/routes.d.ts +2 -2
  114. package/dist/cli/bearer.d.ts +27 -1
  115. package/dist/cli/bearer.d.ts.map +1 -1
  116. package/dist/cli/bearer.js +62 -2
  117. package/dist/cli/bearer.js.map +1 -1
  118. package/dist/cli/governance.d.ts +11 -0
  119. package/dist/cli/governance.d.ts.map +1 -1
  120. package/dist/cli/governance.js +8 -2
  121. package/dist/cli/governance.js.map +1 -1
  122. package/dist/cli/index.d.ts.map +1 -1
  123. package/dist/cli/index.js +140 -75
  124. package/dist/cli/index.js.map +1 -1
  125. package/dist/cli/mcp.d.ts +11 -0
  126. package/dist/cli/mcp.d.ts.map +1 -1
  127. package/dist/cli/mcp.js +40 -9
  128. package/dist/cli/mcp.js.map +1 -1
  129. package/dist/cli/service.d.ts +78 -0
  130. package/dist/cli/service.d.ts.map +1 -0
  131. package/dist/cli/service.js +334 -0
  132. package/dist/cli/service.js.map +1 -0
  133. package/dist/core/adapter.d.ts +247 -14
  134. package/dist/core/adapter.d.ts.map +1 -1
  135. package/dist/core/adapter.js +638 -161
  136. package/dist/core/adapter.js.map +1 -1
  137. package/dist/core/bridge-reaper.d.ts +4 -1
  138. package/dist/core/bridge-reaper.d.ts.map +1 -1
  139. package/dist/core/bridge-reaper.js +15 -1
  140. package/dist/core/bridge-reaper.js.map +1 -1
  141. package/dist/core/bus-notice.d.ts +27 -0
  142. package/dist/core/bus-notice.d.ts.map +1 -0
  143. package/dist/core/bus-notice.js +24 -0
  144. package/dist/core/bus-notice.js.map +1 -0
  145. package/dist/core/bus.d.ts +99 -0
  146. package/dist/core/bus.d.ts.map +1 -0
  147. package/dist/core/bus.js +176 -0
  148. package/dist/core/bus.js.map +1 -0
  149. package/dist/core/deliver-exclusions.d.ts +71 -0
  150. package/dist/core/deliver-exclusions.d.ts.map +1 -0
  151. package/dist/core/deliver-exclusions.js +110 -0
  152. package/dist/core/deliver-exclusions.js.map +1 -0
  153. package/dist/core/deliver-text.d.ts +61 -14
  154. package/dist/core/deliver-text.d.ts.map +1 -1
  155. package/dist/core/deliver-text.js +178 -30
  156. package/dist/core/deliver-text.js.map +1 -1
  157. package/dist/core/deliver-triage.d.ts +11 -2
  158. package/dist/core/deliver-triage.d.ts.map +1 -1
  159. package/dist/core/deliver-triage.js +19 -1
  160. package/dist/core/deliver-triage.js.map +1 -1
  161. package/dist/core/deliver.d.ts +161 -3
  162. package/dist/core/deliver.d.ts.map +1 -1
  163. package/dist/core/deliver.js +463 -25
  164. package/dist/core/deliver.js.map +1 -1
  165. package/dist/core/deliverable-floor.d.ts.map +1 -1
  166. package/dist/core/deliverable-floor.js +5 -7
  167. package/dist/core/deliverable-floor.js.map +1 -1
  168. package/dist/core/engine-bus.d.ts +40 -0
  169. package/dist/core/engine-bus.d.ts.map +1 -0
  170. package/dist/core/engine-bus.js +27 -0
  171. package/dist/core/engine-bus.js.map +1 -0
  172. package/dist/core/estate-mcp-client.d.ts +87 -5
  173. package/dist/core/estate-mcp-client.d.ts.map +1 -1
  174. package/dist/core/estate-mcp-client.js +90 -11
  175. package/dist/core/estate-mcp-client.js.map +1 -1
  176. package/dist/core/linked-issues.d.ts +46 -0
  177. package/dist/core/linked-issues.d.ts.map +1 -0
  178. package/dist/core/linked-issues.js +123 -0
  179. package/dist/core/linked-issues.js.map +1 -0
  180. package/dist/core/run-identity.d.ts +100 -0
  181. package/dist/core/run-identity.d.ts.map +1 -0
  182. package/dist/core/run-identity.js +178 -0
  183. package/dist/core/run-identity.js.map +1 -0
  184. package/dist/core/shutdown.d.ts +16 -0
  185. package/dist/core/shutdown.d.ts.map +1 -0
  186. package/dist/core/shutdown.js +39 -0
  187. package/dist/core/shutdown.js.map +1 -0
  188. package/dist/core/types.d.ts +15 -1
  189. package/dist/core/types.d.ts.map +1 -1
  190. package/dist/core/types.js +4 -0
  191. package/dist/core/types.js.map +1 -1
  192. package/dist/interactive/bridge-pool.d.ts +67 -3
  193. package/dist/interactive/bridge-pool.d.ts.map +1 -1
  194. package/dist/interactive/bridge-pool.js +129 -13
  195. package/dist/interactive/bridge-pool.js.map +1 -1
  196. package/dist/interactive/bridge-root.d.ts +9 -0
  197. package/dist/interactive/bridge-root.d.ts.map +1 -1
  198. package/dist/interactive/bridge-root.js +11 -4
  199. package/dist/interactive/bridge-root.js.map +1 -1
  200. package/dist/interactive/chat-events.d.ts +14 -9
  201. package/dist/interactive/chat-events.d.ts.map +1 -1
  202. package/dist/interactive/chat-events.js +55 -57
  203. package/dist/interactive/chat-events.js.map +1 -1
  204. package/dist/interactive/council-outcome.d.ts +1 -0
  205. package/dist/interactive/council-outcome.d.ts.map +1 -1
  206. package/dist/interactive/council-outcome.js +33 -0
  207. package/dist/interactive/council-outcome.js.map +1 -1
  208. package/dist/interactive/draft-events.d.ts +36 -17
  209. package/dist/interactive/draft-events.d.ts.map +1 -1
  210. package/dist/interactive/draft-events.js +121 -92
  211. package/dist/interactive/draft-events.js.map +1 -1
  212. package/dist/interactive/draft-skill.d.ts +59 -0
  213. package/dist/interactive/draft-skill.d.ts.map +1 -1
  214. package/dist/interactive/draft-skill.js +233 -0
  215. package/dist/interactive/draft-skill.js.map +1 -1
  216. package/dist/interactive/edit-events.d.ts +1 -14
  217. package/dist/interactive/edit-events.d.ts.map +1 -1
  218. package/dist/interactive/edit-events.js +37 -70
  219. package/dist/interactive/edit-events.js.map +1 -1
  220. package/dist/interactive/proxy-routes.d.ts +2 -2
  221. package/dist/interactive/proxy-routes.d.ts.map +1 -1
  222. package/dist/interactive/proxy-routes.js +4 -13
  223. package/dist/interactive/proxy-routes.js.map +1 -1
  224. package/dist/interactive/ws-relay.d.ts +9 -10
  225. package/dist/interactive/ws-relay.d.ts.map +1 -1
  226. package/dist/interactive/ws-relay.js +23 -50
  227. package/dist/interactive/ws-relay.js.map +1 -1
  228. package/dist/mcp/broker.d.ts +88 -0
  229. package/dist/mcp/broker.d.ts.map +1 -0
  230. package/dist/mcp/broker.js +307 -0
  231. package/dist/mcp/broker.js.map +1 -0
  232. package/dist/mcp/call-records.d.ts +61 -0
  233. package/dist/mcp/call-records.d.ts.map +1 -0
  234. package/dist/mcp/call-records.js +135 -0
  235. package/dist/mcp/call-records.js.map +1 -0
  236. package/dist/mcp/classify.d.ts +45 -0
  237. package/dist/mcp/classify.d.ts.map +1 -0
  238. package/dist/mcp/classify.js +83 -0
  239. package/dist/mcp/classify.js.map +1 -0
  240. package/dist/mcp/discovery.d.ts +24 -0
  241. package/dist/mcp/discovery.d.ts.map +1 -0
  242. package/dist/mcp/discovery.js +78 -0
  243. package/dist/mcp/discovery.js.map +1 -0
  244. package/dist/mcp/invoke.d.ts +36 -0
  245. package/dist/mcp/invoke.d.ts.map +1 -0
  246. package/dist/mcp/invoke.js +80 -0
  247. package/dist/mcp/invoke.js.map +1 -0
  248. package/dist/mcp/policies.d.ts +110 -0
  249. package/dist/mcp/policies.d.ts.map +1 -0
  250. package/dist/mcp/policies.js +400 -0
  251. package/dist/mcp/policies.js.map +1 -0
  252. package/dist/mcp/probe.d.ts +66 -0
  253. package/dist/mcp/probe.d.ts.map +1 -0
  254. package/dist/mcp/probe.js +116 -0
  255. package/dist/mcp/probe.js.map +1 -0
  256. package/dist/mcp/redact.d.ts +34 -0
  257. package/dist/mcp/redact.d.ts.map +1 -0
  258. package/dist/mcp/redact.js +84 -0
  259. package/dist/mcp/redact.js.map +1 -0
  260. package/dist/mcp/registry-store.d.ts +69 -0
  261. package/dist/mcp/registry-store.d.ts.map +1 -0
  262. package/dist/mcp/registry-store.js +82 -0
  263. package/dist/mcp/registry-store.js.map +1 -0
  264. package/dist/mcp/registry.d.ts +147 -0
  265. package/dist/mcp/registry.d.ts.map +1 -0
  266. package/dist/mcp/registry.js +509 -0
  267. package/dist/mcp/registry.js.map +1 -0
  268. package/dist/mcp/rest.d.ts +111 -0
  269. package/dist/mcp/rest.d.ts.map +1 -0
  270. package/dist/mcp/rest.js +606 -0
  271. package/dist/mcp/rest.js.map +1 -0
  272. package/dist/mcp/secrets.d.ts +66 -0
  273. package/dist/mcp/secrets.d.ts.map +1 -0
  274. package/dist/mcp/secrets.js +180 -0
  275. package/dist/mcp/secrets.js.map +1 -0
  276. package/dist/mcp/tool-list.d.ts +25 -0
  277. package/dist/mcp/tool-list.d.ts.map +1 -0
  278. package/dist/mcp/tool-list.js +62 -0
  279. package/dist/mcp/tool-list.js.map +1 -0
  280. package/dist/mcp/upstream-error.d.ts +12 -0
  281. package/dist/mcp/upstream-error.d.ts.map +1 -0
  282. package/dist/mcp/upstream-error.js +14 -0
  283. package/dist/mcp/upstream-error.js.map +1 -0
  284. package/dist/mcp/usage.d.ts +31 -0
  285. package/dist/mcp/usage.d.ts.map +1 -0
  286. package/dist/mcp/usage.js +159 -0
  287. package/dist/mcp/usage.js.map +1 -0
  288. package/dist/presets/routes.d.ts +53 -0
  289. package/dist/presets/routes.d.ts.map +1 -0
  290. package/dist/presets/routes.js +115 -0
  291. package/dist/presets/routes.js.map +1 -0
  292. package/dist/projects/activity.d.ts +6 -18
  293. package/dist/projects/activity.d.ts.map +1 -1
  294. package/dist/projects/activity.js +17 -60
  295. package/dist/projects/activity.js.map +1 -1
  296. package/dist/projects/events.d.ts +6 -5
  297. package/dist/projects/events.d.ts.map +1 -1
  298. package/dist/projects/events.js +33 -58
  299. package/dist/projects/events.js.map +1 -1
  300. package/dist/projects/graph.d.ts +11 -0
  301. package/dist/projects/graph.d.ts.map +1 -1
  302. package/dist/projects/graph.js +12 -0
  303. package/dist/projects/graph.js.map +1 -1
  304. package/dist/projects/routes.d.ts.map +1 -1
  305. package/dist/projects/routes.js +19 -0
  306. package/dist/projects/routes.js.map +1 -1
  307. package/dist/projects/state-home-preflight.d.ts.map +1 -1
  308. package/dist/projects/state-home-preflight.js +7 -0
  309. package/dist/projects/state-home-preflight.js.map +1 -1
  310. package/dist/projects/state-home-registry.d.ts.map +1 -1
  311. package/dist/projects/state-home-registry.js +9 -1
  312. package/dist/projects/state-home-registry.js.map +1 -1
  313. package/dist/qe/acceptance.d.ts +28 -28
  314. package/dist/qe/acceptance.d.ts.map +1 -1
  315. package/dist/qe/acceptance.js +60 -61
  316. package/dist/qe/acceptance.js.map +1 -1
  317. package/dist/qe/test-sets.d.ts +3 -5
  318. package/dist/qe/test-sets.d.ts.map +1 -1
  319. package/dist/qe/test-sets.js +5 -7
  320. package/dist/qe/test-sets.js.map +1 -1
  321. package/dist/skills/installed.d.ts +51 -0
  322. package/dist/skills/installed.d.ts.map +1 -0
  323. package/dist/skills/installed.js +46 -0
  324. package/dist/skills/installed.js.map +1 -0
  325. package/dist/skills/phase-skill-gaps.d.ts +108 -0
  326. package/dist/skills/phase-skill-gaps.d.ts.map +1 -0
  327. package/dist/skills/phase-skill-gaps.js +199 -0
  328. package/dist/skills/phase-skill-gaps.js.map +1 -0
  329. package/dist/skills/runtime.d.ts +1 -1
  330. package/dist/skills/runtime.d.ts.map +1 -1
  331. package/dist/skills/runtime.js +2 -1
  332. package/dist/skills/runtime.js.map +1 -1
  333. package/dist/standing-orders/evaluator.d.ts +113 -0
  334. package/dist/standing-orders/evaluator.d.ts.map +1 -0
  335. package/dist/standing-orders/evaluator.js +225 -0
  336. package/dist/standing-orders/evaluator.js.map +1 -0
  337. package/dist/standing-orders/history.d.ts +58 -0
  338. package/dist/standing-orders/history.d.ts.map +1 -0
  339. package/dist/standing-orders/history.js +117 -0
  340. package/dist/standing-orders/history.js.map +1 -0
  341. package/dist/standing-orders/parse.d.ts +19 -0
  342. package/dist/standing-orders/parse.d.ts.map +1 -0
  343. package/dist/standing-orders/parse.js +75 -0
  344. package/dist/standing-orders/parse.js.map +1 -0
  345. package/dist/standing-orders/routes.d.ts +180 -0
  346. package/dist/standing-orders/routes.d.ts.map +1 -0
  347. package/dist/standing-orders/routes.js +95 -0
  348. package/dist/standing-orders/routes.js.map +1 -0
  349. package/dist/standing-orders/store.d.ts +154 -0
  350. package/dist/standing-orders/store.d.ts.map +1 -0
  351. package/dist/standing-orders/store.js +189 -0
  352. package/dist/standing-orders/store.js.map +1 -0
  353. package/dist/studio/assets/index-CvV5qITf.css +32 -0
  354. package/dist/studio/assets/index-jCOy6Ns7.js +568 -0
  355. package/dist/studio/index.html +3 -3
  356. package/dist/studio/testid-inventory.json +3307 -897
  357. package/dist/team/key.d.ts +5 -0
  358. package/dist/team/key.d.ts.map +1 -0
  359. package/dist/team/key.js +21 -0
  360. package/dist/team/key.js.map +1 -0
  361. package/dist/team/routes.d.ts +196 -0
  362. package/dist/team/routes.d.ts.map +1 -0
  363. package/dist/team/routes.js +274 -0
  364. package/dist/team/routes.js.map +1 -0
  365. package/dist/team/ws-relay.d.ts +39 -0
  366. package/dist/team/ws-relay.d.ts.map +1 -0
  367. package/dist/team/ws-relay.js +63 -0
  368. package/dist/team/ws-relay.js.map +1 -0
  369. package/endpoint-manifest.json +502 -6
  370. package/package.json +6 -6
  371. package/dist/interactive/demo-events.d.ts +0 -367
  372. package/dist/interactive/demo-events.d.ts.map +0 -1
  373. package/dist/interactive/demo-events.js +0 -1293
  374. package/dist/interactive/demo-events.js.map +0 -1
  375. package/dist/qe/gate-events.d.ts +0 -113
  376. package/dist/qe/gate-events.d.ts.map +0 -1
  377. package/dist/qe/gate-events.js +0 -172
  378. package/dist/qe/gate-events.js.map +0 -1
  379. package/dist/studio/assets/index-BRDAN35i.js +0 -548
  380. package/dist/studio/assets/index-Drfcsy8b.css +0 -32
@@ -56,9 +56,6 @@ import type { WorkflowDef } from '../core/types.js';
56
56
  export declare const CHAT_POSTED = "wicked.interactive.chat.posted";
57
57
  /** Exact-type filter with a domain guard — no wildcard, one event type is the whole trigger. */
58
58
  export declare const INTERACTIVE_CHAT_BUS_FILTER = "wicked.interactive.chat.posted@wicked-interactive";
59
- /** Dedicated durable-cursor identity — NOT the draft/edit seams', so the three interactive
60
- * seams advance independent cursors and stopping one never strands another. */
61
- export declare const INTERACTIVE_CHAT_BUS_PLUGIN = "wicked-crew-interactive-chat";
62
59
  export declare const INTERACTIVE_CHAT_WORKFLOW = "interactive-chat";
63
60
  /**
64
61
  * The governed workflow that fulfils an iteration ask. Two agent phases — understand (recon)
@@ -120,15 +117,24 @@ export interface DocHead {
120
117
  */
121
118
  export declare function readDocHead(docsRoot: string, documentId: string): DocHead | null;
122
119
  /**
123
- * Contract (b)'s kind half: `true` when a doc of this manifest kind is this seam's to answer.
120
+ * Contract (b)'s kind half: `true` when a doc of this manifest kind is THIS seam's to answer.
124
121
  * `source` is the spec's spelling (recorded by no released interactive yet, accepted for the
125
122
  * day a manifest carries it); `doc` is the absent-default every REAL source (and plain html)
126
123
  * doc reads as — interactive's initManifest keeps non-demo kinds implicit. Explicit foreign
127
- * kinds (`demo`, anything future) belong to their own loops.
124
+ * kinds belong to their own loops.
125
+ */
126
+ export declare function chatSeamAnswers(kind: string): boolean;
127
+ /**
128
+ * `true` when SOME seam answers a thread ask on a doc of this kind — the proxy refuses the rest
129
+ * with a typed 422 (`askRefusalFor`). A `demo` document has no answerer: demos are made in
130
+ * studio's Demo mode (the `demo` preset, studio#373).
128
131
  */
129
132
  export declare function isAnswerableDocKind(kind: string): boolean;
130
- /** The thread's answer to an ask on a doc no seam answers (F-RECON-013) — demo gets the specific
131
- * remedy, any other foreign kind the generic one. Mirrors the proxy's 422 (`askRefusalFor`). */
133
+ /** Why a demo DOCUMENT's feedback or ask has no answerer (studio#373, M9b): demos are made by a
134
+ * governed run of the `demo` preset in studio's Demo mode, which re-records at its review gate. */
135
+ export declare const DEMO_DOC_MOVED_MESSAGE: string;
136
+ /** The thread's answer to an ask on a doc no seam answers (F-RECON-013). Mirrors the proxy's 422
137
+ * (`askRefusalFor`). */
132
138
  export declare function foreignKindAskMessage(kind: string): string;
133
139
  /**
134
140
  * The run's problem statement (the engine scopes it per phase and folds each phase's
@@ -147,8 +153,7 @@ export declare function foreignKindAskMessage(kind: string): string;
147
153
  export declare function chatProblem(ask: ChatAsk, currentPath: string, outPath: string, intent?: RecallIntent): string;
148
154
  /** Options for {@link startInteractiveChatSubscriber}. */
149
155
  export interface InteractiveChatOptions {
150
- /** Bus SQLite db path. Omit to let wicked-bus resolve its own default
151
- * (honors `WICKED_BUS_DATA_DIR`) — where interactive's service emits unless redirected. */
156
+ /** The bus db the daemon handed its engine (core/bus.ts); without one the seam does not arm. */
152
157
  dbPath?: string;
153
158
  /** Poll cadence, ms (default 2000; tests shorten it). */
154
159
  pollIntervalMs?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"chat-events.d.ts","sourceRoot":"","sources":["../../src/interactive/chat-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-events.d.ts","sourceRoot":"","sources":["../../src/interactive/chat-events.ts"],"names":[],"mappings":"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"}
@@ -58,15 +58,13 @@ import { crewStateHome } from '../projects/state-home.js';
58
58
  import { resolveProjectGraphBinding } from '../projects/graph.js';
59
59
  import { resolveInteractiveRoot } from './bridge-root.js';
60
60
  import { DELIVERABLE_FLOOR_PHASE_ID } from '../core/deliverable-floor.js';
61
- import { acpFallbackLine, councilAgreementPct, councilOutcomeSuffix, ungatedGateNote, workerToolCallDeniedLine, } from './council-outcome.js';
61
+ import { acpFallbackLine, ungatedGateNote, unitDistributedLine, workerToolCallDeniedLine, } from './council-outcome.js';
62
62
  import { busSubscriberErrorReporter } from './bus-subscriber-errors.js';
63
+ import { emitOnBus, requireEngineBus, tapBus } from '../core/bus.js';
63
64
  // ── Vocabulary constants (interactive's, verbatim — src/service/events.js is the truth) ──────
64
65
  export const CHAT_POSTED = 'wicked.interactive.chat.posted';
65
66
  /** Exact-type filter with a domain guard — no wildcard, one event type is the whole trigger. */
66
67
  export const INTERACTIVE_CHAT_BUS_FILTER = `${CHAT_POSTED}@${INTERACTIVE_DOMAIN}`;
67
- /** Dedicated durable-cursor identity — NOT the draft/edit seams', so the three interactive
68
- * seams advance independent cursors and stopping one never strands another. */
69
- export const INTERACTIVE_CHAT_BUS_PLUGIN = 'wicked-crew-interactive-chat';
70
68
  // ── The workflow (workflows-as-data) ─────────────────────────────────────────────────────────
71
69
  export const INTERACTIVE_CHAT_WORKFLOW = 'interactive-chat';
72
70
  /**
@@ -86,7 +84,6 @@ export const INTERACTIVE_CHAT_WORKFLOW = 'interactive-chat';
86
84
  */
87
85
  export const INTERACTIVE_CHAT_WORKFLOW_DEF = {
88
86
  id: INTERACTIVE_CHAT_WORKFLOW,
89
- is_system: true,
90
87
  phases: [
91
88
  {
92
89
  id: 'understand',
@@ -210,24 +207,33 @@ export function readDocHead(docsRoot, documentId) {
210
207
  }
211
208
  }
212
209
  /**
213
- * Contract (b)'s kind half: `true` when a doc of this manifest kind is this seam's to answer.
210
+ * Contract (b)'s kind half: `true` when a doc of this manifest kind is THIS seam's to answer.
214
211
  * `source` is the spec's spelling (recorded by no released interactive yet, accepted for the
215
212
  * day a manifest carries it); `doc` is the absent-default every REAL source (and plain html)
216
213
  * doc reads as — interactive's initManifest keeps non-demo kinds implicit. Explicit foreign
217
- * kinds (`demo`, anything future) belong to their own loops.
214
+ * kinds belong to their own loops.
218
215
  */
219
- export function isAnswerableDocKind(kind) {
216
+ export function chatSeamAnswers(kind) {
220
217
  return kind === 'source' || kind === 'doc';
221
218
  }
222
- /** The thread's answer to an ask on a doc no seam answers (F-RECON-013) — demo gets the specific
223
- * remedy, any other foreign kind the generic one. Mirrors the proxy's 422 (`askRefusalFor`). */
219
+ /**
220
+ * `true` when SOME seam answers a thread ask on a doc of this kind — the proxy refuses the rest
221
+ * with a typed 422 (`askRefusalFor`). A `demo` document has no answerer: demos are made in
222
+ * studio's Demo mode (the `demo` preset, studio#373).
223
+ */
224
+ export function isAnswerableDocKind(kind) {
225
+ return chatSeamAnswers(kind);
226
+ }
227
+ /** Why a demo DOCUMENT's feedback or ask has no answerer (studio#373, M9b): demos are made by a
228
+ * governed run of the `demo` preset in studio's Demo mode, which re-records at its review gate. */
229
+ export const DEMO_DOC_MOVED_MESSAGE = 'This is a demo document. Demos are made in studio\'s Demo mode now (a governed demo run: plan, ' +
230
+ 'record, review), which re-records a chapter from its review gate. Nothing was changed; start a new ' +
231
+ 'demo there.';
232
+ /** The thread's answer to an ask on a doc no seam answers (F-RECON-013). Mirrors the proxy's 422
233
+ * (`askRefusalFor`). */
224
234
  export function foreignKindAskMessage(kind) {
225
- if (kind === 'demo') {
226
- return ('Asks on demo storyboards are not supported yet — a demo is re-authored from STEP feedback, not from ' +
227
- 'the thread. Nothing was launched for this message. To change the demo, highlight the step and send ' +
228
- 'that as feedback (the demo seam re-authors the spec and re-records); to retry the recording as ' +
229
- 'authored, use Re-record.');
230
- }
235
+ if (kind === 'demo')
236
+ return DEMO_DOC_MOVED_MESSAGE;
231
237
  return (`Asks on documents of kind '${kind}' have no answering seam on this daemon — nothing was launched for ` +
232
238
  'this message.');
233
239
  }
@@ -291,22 +297,14 @@ function rosterOf(adapter, roster) {
291
297
  export async function startInteractiveChatSubscriber(adapter, opts = {}) {
292
298
  const log = opts.log ?? ((m) => console.error(m));
293
299
  let draftSkillHeld = false; // set at arm time (draft-skill.ts); read at launch for the task clause
294
- let bus;
300
+ // This seam reads and writes the bus through the engine that holds it (wicked-core#631,
301
+ // core/bus.ts). Checked here so a bus no engine holds disables the seam before anything is armed.
302
+ let busDbPath;
295
303
  try {
296
- bus = await import('wicked-bus');
304
+ busDbPath = requireEngineBus(opts.dbPath);
297
305
  }
298
306
  catch (err) {
299
- log(`[interactive-chat] wicked-bus is not importable — governed iteration disabled: ${err instanceof Error ? err.message : String(err)}`);
300
- return null;
301
- }
302
- let db;
303
- let config;
304
- try {
305
- config = bus.loadConfig(opts.dbPath !== undefined ? { db_path: opts.dbPath } : {});
306
- db = bus.openDb(opts.dbPath !== undefined ? { db_path: opts.dbPath } : {});
307
- }
308
- catch (err) {
309
- log(`[interactive-chat] could not open the bus db${opts.dbPath !== undefined ? ` at ${opts.dbPath}` : ''} — governed iteration disabled: ${err instanceof Error ? err.message : String(err)}`);
307
+ log(`[interactive-chat] has no bus${opts.dbPath !== undefined ? ` at ${opts.dbPath}` : ''} — governed iteration disabled: ${err instanceof Error ? err.message : String(err)}`);
310
308
  return null;
311
309
  }
312
310
  // The workflow rides the normal registration path — core validates the def BEFORE it is
@@ -337,10 +335,10 @@ export async function startInteractiveChatSubscriber(adapter, opts = {}) {
337
335
  const landingGates = new Map(); // documentId → post-completion gate
338
336
  /** Emit onto interactive's vocabulary as the `wi-crew` producer. Never throws into the
339
337
  * caller: narration/announce failures are logged — a lost status line must not kill the
340
- * subscription, and a duplicate announce (WB-002) is the idempotency key WORKING. */
341
- function emitInteractive(type, payload, idempotencyKey) {
338
+ * subscription, and a duplicate announce (its key already on the bus) is the idempotency key WORKING. */
339
+ async function emitInteractive(type, payload, idempotencyKey) {
342
340
  try {
343
- bus.emit(db, config, {
341
+ await emitOnBus(busDbPath, {
344
342
  event_type: type,
345
343
  domain: INTERACTIVE_DOMAIN,
346
344
  subdomain: type === DRAFT_COMPLETED ? 'generation' : 'status',
@@ -351,11 +349,6 @@ export async function startInteractiveChatSubscriber(adapter, opts = {}) {
351
349
  return true;
352
350
  }
353
351
  catch (err) {
354
- const code = err.error;
355
- if (code === 'WB-002') {
356
- // Duplicate idempotency key — the emit already happened (redelivery race). Success.
357
- return true;
358
- }
359
352
  log(`[interactive-chat] emit ${type} failed: ${err instanceof Error ? err.message : String(err)}`);
360
353
  return false;
361
354
  }
@@ -391,8 +384,11 @@ export async function startInteractiveChatSubscriber(adapter, opts = {}) {
391
384
  }
392
385
  /** Contract (c): the doc is busy while ANY governed run is working it — our own chat runs
393
386
  * plus whatever the sibling draft/edit seams report through `isDocBusy`. */
387
+ /** Docs whose run completed but whose announce is still on its way to the bus writer: busy,
388
+ * so no drain snapshots the head before `finalize` has set the landing gate. */
389
+ const finalizing = new Set();
394
390
  function docBusy(documentId) {
395
- return docHasFlight(documentId) || opts.isDocBusy?.(documentId) === true;
391
+ return docHasFlight(documentId) || finalizing.has(documentId) || opts.isDocBusy?.(documentId) === true;
396
392
  }
397
393
  /** Terminal-event fold: turn the governed run's own events into interactive narration, and
398
394
  * close the loop with `draft.completed` when the run lands. */
@@ -431,11 +427,9 @@ export async function startInteractiveChatSubscriber(adapter, opts = {}) {
431
427
  if (isFloorOrd(event))
432
428
  return;
433
429
  const ord = typeof event.ord === 'number' ? event.ord : 0;
434
- const who = typeof event.cli === 'string' ? event.cli : 'a worker';
435
- const agreement = councilAgreementPct(event);
436
- const pct = agreement !== null ? ` (${agreement}% agreement)` : '';
437
- // Honest about a council that held on a fraction of its seats (F-4R2-007).
438
- narrate(flight, `Council picked ${who} for ${phaseName(ord)}${pct}${councilOutcomeSuffix(event)}…`);
430
+ // One helper narrates the frame by `routingMethod` (S5 `teamed` = "Routed …", a recorded
431
+ // council = "Council picked …" honest about its benched seats, F-4R2-007).
432
+ narrate(flight, unitDistributedLine(event, `for ${phaseName(ord)}`));
439
433
  return;
440
434
  }
441
435
  if (event.type === 'unitDispatched') {
@@ -490,8 +484,15 @@ export async function startInteractiveChatSubscriber(adapter, opts = {}) {
490
484
  }
491
485
  if (event.type === 'sessionCompleted') {
492
486
  endFlight(runId);
493
- finalize(flight, runId);
494
- drainDoc(flight.documentId);
487
+ // The announce awaits the bus writer; a throw is logged, as a synchronous one was. The doc
488
+ // stays busy until it returns: finalize sets the landing gate the drain must see.
489
+ finalizing.add(flight.documentId);
490
+ finalize(flight, runId)
491
+ .catch((err) => log(`[interactive-chat] finalizing run ${runId} failed: ${err instanceof Error ? err.message : String(err)}`))
492
+ .finally(() => {
493
+ finalizing.delete(flight.documentId);
494
+ drainDoc(flight.documentId);
495
+ });
495
496
  return;
496
497
  }
497
498
  if (event.type === 'stepFailed') {
@@ -517,7 +518,7 @@ export async function startInteractiveChatSubscriber(adapter, opts = {}) {
517
518
  drainDoc(flight.documentId);
518
519
  }
519
520
  });
520
- function finalize(flight, runId) {
521
+ async function finalize(flight, runId) {
521
522
  const { key, documentId, projectId, outPath } = flight;
522
523
  let ok = false;
523
524
  try {
@@ -538,10 +539,10 @@ export async function startInteractiveChatSubscriber(adapter, opts = {}) {
538
539
  }
539
540
  // Announce on the SAME wire the first draft rides (ADR-0019 D5: by path — the service
540
541
  // reads the file and lands it as a generated version). The deterministic per-ask key
541
- // makes a re-announce a WB-002 no-op.
542
- const emitted = emitInteractive(DRAFT_COMPLETED, { ...docScope(documentId, projectId), html_path: outPath }, `crew:interactive.chat:${key}`);
542
+ // makes a re-announce a no-op (the key resolves to the existing row).
543
+ const emitted = await emitInteractive(DRAFT_COMPLETED, { ...docScope(documentId, projectId), html_path: outPath }, `crew:interactive.chat:${key}`);
543
544
  if (!emitted) {
544
- // The bus refused the announce (non-WB-002): the revision exists on disk but never
545
+ // The bus refused the announce: the revision exists on disk but never
545
546
  // reached the service. Fail HONEST — leaving the row launched-but-never-closed would
546
547
  // silently eat a redelivery of this ask (the launch gate is `ledger.has`).
547
548
  ledger.recordFailure(key);
@@ -577,7 +578,7 @@ export async function startInteractiveChatSubscriber(adapter, opts = {}) {
577
578
  const { ask, key } = queued;
578
579
  const docsRoot = resolveDocsRoot(ask.projectId);
579
580
  const doc = readDocHead(docsRoot, ask.documentId);
580
- if (doc === null || !isAnswerableDocKind(doc.kind)) {
581
+ if (doc === null || !chatSeamAnswers(doc.kind)) {
581
582
  // The doc moved out from under a parked ask (deleted / never ours). Not an error the
582
583
  // thread needs — contract (b) simply stopped holding.
583
584
  log(`[interactive-chat] ask ${key} dropped at launch: doc ${ask.documentId} ${doc === null ? 'not found' : `has kind '${doc.kind}'`} under ${docsRoot}`);
@@ -824,7 +825,7 @@ export async function startInteractiveChatSubscriber(adapter, opts = {}) {
824
825
  log(`[interactive-chat] chat.posted for unknown doc ${ask.documentId} under ${docsRoot} — ignored`);
825
826
  return;
826
827
  }
827
- if (!isAnswerableDocKind(doc.kind)) {
828
+ if (!chatSeamAnswers(doc.kind)) {
828
829
  // F-RECON-013: NOT a silent decline. The proxy refuses such an ask with a typed 422 before it
829
830
  // reaches the bus (proxy-routes.ts `askRefusalFor`); one that still arrives (an older skin, a
830
831
  // direct bridge client) gets an honest `error` status on the thread — the thread would
@@ -835,7 +836,7 @@ export async function startInteractiveChatSubscriber(adapter, opts = {}) {
835
836
  state: 'error',
836
837
  message: foreignKindAskMessage(doc.kind),
837
838
  });
838
- log(`[interactive-chat] doc ${ask.documentId} has kind '${doc.kind}' — demo (and other foreign-kind) docs are not ` +
839
+ log(`[interactive-chat] doc ${ask.documentId} has kind '${doc.kind}' — foreign-kind docs are not ` +
839
840
  `this seam's to answer; the ask was declined on the thread with an error status, not dropped`);
840
841
  return;
841
842
  }
@@ -858,16 +859,13 @@ export async function startInteractiveChatSubscriber(adapter, opts = {}) {
858
859
  // visible, replayable, incapable of hot-looping.
859
860
  await launchAsk(queued);
860
861
  }
861
- const sub = bus.subscribe({
862
- db,
863
- plugin: INTERACTIVE_CHAT_BUS_PLUGIN,
862
+ const sub = await tapBus({
863
+ dbPath: busDbPath,
864
864
  filter: INTERACTIVE_CHAT_BUS_FILTER,
865
865
  // Live triggers only: replaying a bus backlog would answer asks whose moment has passed.
866
- cursor_init: 'latest',
867
866
  pollIntervalMs: opts.pollIntervalMs ?? 2000,
868
867
  // Our own ledger + idempotency key are the dedupe; a bus-level retry of a failed launch
869
868
  // would double-launch precisely because the ledger row is only written on success.
870
- maxRetries: 0,
871
869
  handler: (event) => handleChatPosted(event),
872
870
  onError: busSubscriberErrorReporter({
873
871
  describe: (err, event) => `[interactive-chat] handler error on event ${String(event?.event_id ?? '?')}: ${err.message}`,
@@ -1 +1 @@
1
- {"version":3,"file":"chat-events.js","sourceRoot":"","sources":["../../src/interactive/chat-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-events.js","sourceRoot":"","sources":["../../src/interactive/chat-events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AAEH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACtF,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,QAAQ,EACR,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,OAAO,EACP,aAAa,EACb,YAAY,EAEZ,QAAQ,EAER,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,cAAc,EAAkB,MAAM,kBAAkB,CAAC;AACtH,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAA4B,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,EACL,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAiB,MAAM,gBAAgB,CAAC;AAEpF,gGAAgG;AAEhG,MAAM,CAAC,MAAM,WAAW,GAAG,gCAAgC,CAAC;AAE5D,gGAAgG;AAChG,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,WAAW,IAAI,kBAAkB,EAAE,CAAC;AAElF,gGAAgG;AAEhG,MAAM,CAAC,MAAM,yBAAyB,GAAG,kBAAkB,CAAC;AAE5D;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAgB;IACxD,EAAE,EAAE,yBAAyB;IAC7B,MAAM,EAAE;QACN;YACE,EAAE,EAAE,YAAY;YAChB,IAAI,EAAE,OAAO;YACb,YAAY,EACV,qoBAAqoB;YACvoB,SAAS,EAAE,OAAO;YAClB,IAAI,EAAE,MAAM;YACZ,aAAa,EAAE,KAAK;YACpB,iBAAiB,EAAE,KAAK;YACxB,qBAAqB,EAAE,EAAE;YACzB,UAAU,EAAE,EAAE;YACd,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,IAAI;YACf,cAAc,EAAE,EAAE;YAClB,aAAa,EAAE,IAAI;SACpB;QACD;YACE,EAAE,EAAE,QAAQ;YACZ,IAAI,EAAE,OAAO;YACb,YAAY,EACV,67BAA67B;YAC/7B,SAAS,EAAE,WAAW;YACtB,IAAI,EAAE,MAAM;YACZ,aAAa,EAAE,KAAK;YACpB,iBAAiB,EAAE,KAAK;YACxB,qBAAqB,EAAE,EAAE;YACzB,UAAU,EAAE,CAAC,YAAY,CAAC;YAC1B,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,IAAI;YACf,cAAc,EAAE,EAAE;YAClB,aAAa,EAAE,IAAI;SACpB;KACF;CACF,CAAC;AAgBF;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,SAAiB,EAAE,OAAgB;IACjE,IAAI,SAAS,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAC3C,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjE,MAAM,CAAC,GAAG,OAAkC,CAAC;IAC7C,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,aAAa,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,eAAe,GACnB,OAAO,CAAC,CAAC,mBAAmB,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,mBAAmB,CAAC,CAAC,MAAM,GAAG,CAAC;QAC7E,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC;QACxB,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,SAAS,GACb,OAAO,CAAC,CAAC,YAAY,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClG,OAAO;QACL,UAAU;QACV,IAAI;QACJ,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClD,CAAC;AACJ,CAAC;AAED;;oFAEoF;AACpF,MAAM,mBAAmB,GAAG,+BAA+B,CAAC;AAE5D;0EAC0E;AAC1E,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;AAChD,CAAC;AAED;iGACiG;AACjG,MAAM,UAAU,OAAO,CAAC,UAAkB,EAAE,OAAe,EAAE,eAAwB;IACnF,OAAO,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,UAAU,MAAM,eAAe,EAAE,CAAC,CAAC,CAAC,GAAG,UAAU,MAAM,OAAO,EAAE,CAAC;AAC7G,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,kBAAkB,CAAC,UAAkB,EAAE,OAAe,EAAE,eAAwB;IAC9F,OAAO,yBAAyB,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,eAAe,CAAC,EAAE,CAAC;AAClF,CAAC;AAUD;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAC,QAAgB,EAAE,UAAkB;IAC9D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACvC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,CAI3E,CAAC;QACF,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC3B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACjF,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC5C,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;YACpD,CAAC,CAAC,SAAS,CAAC;QACd,0FAA0F;QAC1F,6FAA6F;QAC7F,sFAAsF;QACtF,MAAM,WAAW,GACf,OAAO,KAAK,EAAE,SAAS,KAAK,QAAQ,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YAChE,CAAC,CAAC,KAAK,CAAC,SAAS;YACjB,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC;QACvB,MAAM,QAAQ,GACZ,QAAQ,CAAC,WAAW,CAAC,KAAK,WAAW,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC;YAClE,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC;QACvB,OAAO;YACL,IAAI,EAAE,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;YAC3F,IAAI;YACJ,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC;SAClC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,KAAK,CAAC;AAC7C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED;oGACoG;AACpG,MAAM,CAAC,MAAM,sBAAsB,GACjC,iGAAiG;IACjG,qGAAqG;IACrG,aAAa,CAAC;AAEhB;yBACyB;AACzB,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,sBAAsB,CAAC;IACnD,OAAO,CACL,8BAA8B,IAAI,qEAAqE;QACvG,eAAe,CAChB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,WAAW,CACzB,GAAY,EACZ,WAAmB,EACnB,OAAe,EACf,MAAqB;IAErB,8FAA8F;IAC9F,gGAAgG;IAChG,0FAA0F;IAC1F,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,OAAO,CACL,2CAA2C,GAAG,CAAC,UAAU,wBAAwB;QACjF,mBAAmB,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG;QAC7C,0FAA0F,WAAW,GAAG;QACxG,GAAG,MAAM,GAAG,OAAO,EAAE;QACrB,qFAAqF,OAAO,EAAE,CAC/F,CAAC;AACJ,CAAC;AA4GD;;+EAE+E;AAC/E,SAAS,eAAe;IACtB,OAAO,aAAa,EAAE,CAAC;AACzB,CAAC;AAED;;;;;;2CAM2C;AAC3C,SAAS,QAAQ,CAAC,OAAoB,EAAE,MAAwB;IAC9D,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,EAAE,CAAC;IAC1C,MAAM,GAAG,GAAI,OAAyD,CAAC,YAAY,CAAC;IACpF,IAAI,OAAO,GAAG,KAAK,UAAU;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxD,OAAQ,OAAO,CAAC,WAAkD,CAAC,MAAM,EAAE,CAAC;AAC9E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,OAAoB,EACpB,OAA+B,EAAE;IAEjC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,IAAI,cAAc,GAAG,KAAK,CAAC,CAAC,uEAAuE;IAEnG,wFAAwF;IACxF,kGAAkG;IAClG,IAAI,SAAiB,CAAC;IACtB,IAAI,CAAC;QACH,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CACD,gCACE,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EACrD,mCAAmC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACtF,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wFAAwF;IACxF,yFAAyF;IACzF,iDAAiD;IACjD,IAAI,CAAC;QACH,4FAA4F;QAC5F,cAAc,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAChE,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC,CAAC;QAC3D,MAAM,OAAO,CAAC,gBAAgB,CAAC,cAAc,CAAC,6BAA6B,EAAE,cAAc,CAAC,CAAC,CAAC;IAChG,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CACD,8CAA8C,yBAAyB,eAAe;YACpF,gCAAgC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACrF,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,wBAAwB,CACzC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,8BAA8B,CAAC,CAC3E,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,mBAAmB,CAAC,CAAC;IAC7E,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC;IAC/C,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC;IACnD,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,IAAI,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC;IACrF,6FAA6F;IAC7F,+FAA+F;IAC/F,MAAM,eAAe,GAAG,6BAA6B,CAAC,MAAM,CAAC,MAAM,CAAC;IACpE,MAAM,UAAU,GAAG,eAAe,GAAG,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAoB,CAAC,CAAC,qBAAqB;IACnE,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC,CAAC,iCAAiC;IAChF,MAAM,YAAY,GAAG,IAAI,GAAG,EAAuB,CAAC,CAAC,oCAAoC;IAEzF;;8GAE0G;IAC1G,KAAK,UAAU,eAAe,CAC5B,IAAY,EACZ,OAAgC,EAChC,cAAuB;QAEvB,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,SAAS,EAAE;gBACzB,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE,kBAAkB;gBAC1B,SAAS,EAAE,IAAI,KAAK,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ;gBAC7D,OAAO,EAAE,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,GAAG,OAAO,EAAE;gBACrD,WAAW,EAAE,oBAAoB;gBACjC,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC7E,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CACD,2BAA2B,IAAI,YAAY,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAC9F,CAAC;YACF,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;6GACyG;IACzG,SAAS,UAAU,CAAC,OAA0B;QAC5C,OAAO,eAAe,CAAC,aAAa,EAAE,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,SAAS,OAAO,CAAC,MAAgB,EAAE,OAAe;QAChD,MAAM,CAAC,SAAS,GAAG,OAAO,CAAC;QAC3B,UAAU,CAAC;YACT,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC;YAChD,KAAK,EAAE,SAAS;YAChB,OAAO;YACP,GAAG,eAAe,CAAC,MAAM,CAAC;SAC3B,CAAC,CAAC;IACL,CAAC;IAED,SAAS,SAAS,CAAC,KAAa;QAC9B,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,MAAM,EAAE,CAAC;YACX,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAChC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,SAAS,YAAY,CAAC,UAAkB;QACtC,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAClC,IAAI,CAAC,CAAC,UAAU,KAAK,UAAU;gBAAE,OAAO,IAAI,CAAC;QAC/C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;iFAC6E;IAC7E;qFACiF;IACjF,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IAErC,SAAS,OAAO,CAAC,UAAkB;QACjC,OAAO,YAAY,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IACzG,CAAC;IAED;oEACgE;IAChE,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,KAAgB,EAAE,EAAE;QACzD,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO;QAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO;QACjC,gGAAgG;QAChG,gGAAgG;QAChG,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC;QACvB,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ;YAAE,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC;QAEnE,wFAAwF;QACxF,oFAAoF;QACpF,MAAM,SAAS,GAAG,CAAC,GAAW,EAAU,EAAE,CACxC,GAAG,GAAG,eAAe;YACnB,CAAC,CAAC,0BAA0B;YAC5B,CAAC,CAAC,CAAC,6BAA6B,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,SAAS,GAAG,EAAE,CAAC,CAAC;QAE5E,2FAA2F;QAC3F,6FAA6F;QAC7F,wFAAwF;QACxF,2DAA2D;QAC3D,MAAM,UAAU,GAAG,CAAC,CAAY,EAAW,EAAE,CAC3C,OAAQ,CAAuB,CAAC,GAAG,KAAK,QAAQ,IAAK,CAAqB,CAAC,GAAG,GAAG,eAAe,CAAC;QAEnG,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACrC,IAAI,UAAU,CAAC,KAAK,CAAC;gBAAE,OAAO;YAC9B,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1D,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAChE,MAAM,OAAO,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC;YACpE,OAAO,CACL,MAAM,EACN,aAAa,OAAO,gBAAgB,GAAG,IAAI,eAAe,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,gBAAgB,GAAG,CAC1G,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACrC,IAAI,UAAU,CAAC,KAAK,CAAC;gBAAE,OAAO;YAC9B,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1D,yFAAyF;YACzF,2EAA2E;YAC3E,OAAO,CAAC,MAAM,EAAE,mBAAmB,CAAC,KAAK,EAAE,OAAO,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACrE,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACpC,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1D,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YAC7B,OAAO,CACL,MAAM,EACN,GAAG,GAAG,eAAe;gBACnB,CAAC,CAAC,cAAc,GAAG,IAAI,UAAU,yDAAyD,KAAK,IAAI;gBACnG,CAAC,CAAC,GAAG,IAAI,eAAe;oBACtB,CAAC,CAAC,cAAc,GAAG,IAAI,UAAU,4BAA4B,KAAK,IAAI;oBACtE,CAAC,CAAC,cAAc,GAAG,IAAI,UAAU,KAAK,KAAK,8CAA8C,CAC9F,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACrF,IAAI,KAAK;gBAAE,OAAO,CAAC,MAAM,EAAE,mBAAmB,KAAK,oBAAoB,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;YACxC,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1D,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;YACrF,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACzD,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1D,OAAO,CACL,MAAM,EACN,GAAG,GAAG,eAAe;gBACnB,CAAC,CAAC,qDAAqD;gBACvD,CAAC,CAAC,GAAG,IAAI,eAAe;oBACtB,CAAC,CAAC,wDAAwD;oBAC1D,CAAC,CAAC,iBAAiB,SAAS,CAAC,GAAG,CAAC,eAAe,CACrD,CAAC;YACF,OAAO;QACT,CAAC;QAED,iGAAiG;QACjG,iGAAiG;QACjG,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACnC,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC1D,OAAO,CAAC,MAAM,EAAE,YAAY,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YACzD,CAAC;YACD,OAAO;QACT,CAAC;QAED,4FAA4F;QAC5F,6FAA6F;QAC7F,IAAI,KAAK,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;YAC1C,OAAO,CAAC,MAAM,EAAE,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;YACjD,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACjC,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YACtC,SAAS,CAAC,KAAK,CAAC,CAAC;YACjB,2FAA2F;YAC3F,kFAAkF;YAClF,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAClC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC;iBACpB,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE,CACtB,GAAG,CAAC,qCAAqC,KAAK,YAAY,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAC9G;iBACA,OAAO,CAAC,GAAG,EAAE;gBACZ,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACrC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC9B,CAAC,CAAC,CAAC;YACL,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAChC,kFAAkF;YAClF,MAAM,MAAM,GAAG,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,CAAC,aAAa,GAAG,MAAM,CAAC;YACrD,OAAO;QACT,CAAC;QAED,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACpE,SAAS,CAAC,KAAK,CAAC,CAAC;YACjB,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjC,MAAM,GAAG,GACP,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7F,UAAU,CAAC;gBACT,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC;gBAChD,KAAK,EAAE,OAAO;gBACd,OAAO,EACL,mCAAmC,KAAK,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,GAAG;oBAChG,QAAQ,KAAK,KAAK,GAAG,kDAAkD,KAAK,6BAA6B;aAC5G,CAAC,CAAC;YACH,GAAG,CAAC,0BAA0B,KAAK,YAAY,MAAM,CAAC,GAAG,WAAW,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAClF,oFAAoF;YACpF,sCAAsC;YACtC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,KAAK,UAAU,QAAQ,CAAC,MAAgB,EAAE,KAAa;QACrD,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;QACvD,IAAI,EAAE,GAAG,KAAK,CAAC;QACf,IAAI,CAAC;YACH,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,EAAE,GAAG,KAAK,CAAC;QACb,CAAC;QACD,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAC1B,UAAU,CAAC;gBACT,GAAG,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC;gBAClC,KAAK,EAAE,OAAO;gBACd,OAAO,EAAE,8DAA8D,OAAO,SAAS,KAAK,iCAAiC;aAC9H,CAAC,CAAC;YACH,GAAG,CAAC,0BAA0B,KAAK,kBAAkB,OAAO,mBAAmB,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QACD,sFAAsF;QACtF,qFAAqF;QACrF,sEAAsE;QACtE,MAAM,OAAO,GAAG,MAAM,eAAe,CACnC,eAAe,EACf,EAAE,GAAG,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,EAC1D,yBAAyB,GAAG,EAAE,CAC/B,CAAC;QACF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,sEAAsE;YACtE,qFAAqF;YACrF,2EAA2E;YAC3E,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAC1B,UAAU,CAAC;gBACT,GAAG,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC;gBAClC,KAAK,EAAE,OAAO;gBACd,OAAO,EACL,wEAAwE,KAAK,KAAK;oBAClF,kBAAkB,OAAO,yDAAyD;aACrF,CAAC,CAAC;YACH,GAAG,CAAC,0DAA0D,GAAG,SAAS,KAAK,yBAAyB,CAAC,CAAC;YAC1G,OAAO;QACT,CAAC;QACD,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC1B,sFAAsF;QACtF,0FAA0F;QAC1F,0FAA0F;QAC1F,kFAAkF;QAClF,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE;YAC3B,OAAO,EAAE,MAAM,CAAC,YAAY,GAAG,CAAC;YAChC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa;SAClC,CAAC,CAAC;QACH,UAAU,CAAC;YACT,GAAG,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC;YAClC,KAAK,EAAE,UAAU;YACjB,OAAO,EAAE,6DAA6D;SACvE,CAAC,CAAC;QACH,GAAG,CAAC,sDAAsD,GAAG,SAAS,KAAK,GAAG,CAAC,CAAC;IAClF,CAAC;IAED;;iGAE6F;IAC7F,KAAK,UAAU,SAAS,CAAC,MAAiB;QACxC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;QAC5B,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,qFAAqF;YACrF,sDAAsD;YACtD,GAAG,CACD,0BAA0B,GAAG,2BAA2B,GAAG,CAAC,UAAU,IACpE,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,IAAI,GACpD,UAAU,QAAQ,EAAE,CACrB,CAAC;YACF,OAAO;QACT,CAAC;QACD,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QAC/E,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,GAAG,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,UAAU,CAAC;gBACT,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,SAAS,CAAC;gBAC1C,KAAK,EAAE,OAAO;gBACd,OAAO,EAAE,+DAA+D,GAAG,CAAC,YAAY,+BAA+B;aACxH,CAAC,CAAC;YACH,GAAG,CAAC,0BAA0B,GAAG,eAAe,GAAG,CAAC,YAAY,mBAAmB,CAAC,CAAC;YACrF,OAAO;QACT,CAAC;QAED,0FAA0F;QAC1F,iFAAiF;QACjF,0FAA0F;QAC1F,qFAAqF;QACrF,2FAA2F;QAC3F,uEAAuE;QACvE,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACtC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAC7C,YAAY,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;QAE3B,wFAAwF;QACxF,uCAAuC;QACvC,UAAU,CAAC;YACT,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,SAAS,CAAC;YAC1C,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,6DAA6D;SACvE,CAAC,CAAC;QAEH,8EAA8E;QAC9E,4FAA4F;QAC5F,uFAAuF;QACvF,yFAAyF;QACzF,2FAA2F;QAC3F,+FAA+F;QAC/F,uEAAuE;QACvE,EAAE;QACF,yFAAyF;QACzF,2FAA2F;QAC3F,+FAA+F;QAC/F,4FAA4F;QAC5F,gCAAgC;QAChC,IAAI,mBAAmB,GAA+B,IAAI,CAAC;QAC3D,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,KAAK,CACxF,CAAC,GAAY,EAAE,EAAE,CAAC,CAAC;gBACjB,OAAO,EAAE,IAAI;gBACb,MAAM,EACJ,kDAAkD;oBAClD,IAAI,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK;oBACzD,wCAAwC;aAC3C,CAAC,CACH,CAAC;YACF,mBAAmB,GAAG,QAAQ,CAAC,OAAO,CAAC;YACvC,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,SAAS,CAAC;gBACtB,yFAAyF;gBACzF,0FAA0F;gBAC1F,wFAAwF;gBACxF,kFAAkF;gBAClF,OAAO,EACL,WAAW,CACT,GAAG,EACH,WAAW,EACX,OAAO,EACP,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CACrE;oBACD,2FAA2F;oBAC3F,yFAAyF;oBACzF,qFAAqF;oBACrF,CAAC,cAAc;wBACb,CAAC,CAAC,GAAG;4BACH,kBAAkB,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;wBACvG,CAAC,CAAC,EAAE,CAAC;gBACT,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACzE,QAAQ,EAAE,yBAAyB;gBACnC,iFAAiF;gBACjF,kFAAkF;gBAClF,2CAA2C;gBAC3C,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpE,0FAA0F;gBAC1F,wFAAwF;gBACxF,2FAA2F;gBAC3F,2FAA2F;gBAC3F,8EAA8E;gBAC9E,GAAG,CAAC,mBAAmB,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9E,wFAAwF;gBACxF,oFAAoF;gBACpF,sFAAsF;gBACtF,yDAAyD;gBACzD,EAAE;gBACF,qFAAqF;gBACrF,uFAAuF;gBACvF,qFAAqF;gBACrF,uFAAuF;gBACvF,wFAAwF;gBACxF,oFAAoF;gBACpF,oEAAoE;gBACpE,eAAe,EAAE,CAAC,MAAM,CAAC;gBACzB,qFAAqF;gBACrF,uFAAuF;gBACvF,0EAA0E;gBAC1E,mBAAmB,EAAE,CAAC,OAAO,CAAC;aAC/B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,kFAAkF;YAClF,0EAA0E;YAC1E,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,UAAU,CAAC;gBACT,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,SAAS,CAAC;gBAC1C,KAAK,EAAE,OAAO;gBACd,OAAO,EAAE,4CAA4C,MAAM,gCAAgC;aAC5F,CAAC,CAAC;YACH,qFAAqF;YACrF,uEAAuE;YACvE,MAAM,GAAG,CAAC;QACZ,CAAC;QACD,wFAAwF;QACxF,qFAAqF;QACrF,yDAAyD;QACzD,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAChC,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS;YAAE,IAAI,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;QAEzE,MAAM,MAAM,GAAa;YACvB,GAAG;YACH,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,OAAO;YACP,YAAY,EAAE,GAAG,CAAC,IAAI;YACtB,SAAS,EAAE,+CAA+C;YAC1D,SAAS,EAAE,WAAW,CAAC,GAAG,EAAE;gBAC1B,oFAAoF;gBACpF,2CAA2C;gBAC3C,UAAU,CAAC;oBACT,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC;oBAChD,KAAK,EAAE,SAAS;oBAChB,OAAO,EAAE,MAAM,CAAC,SAAS;oBACzB,GAAG,eAAe,CAAC,MAAM,CAAC;iBAC3B,CAAC,CAAC;YACL,CAAC,EAAE,WAAW,CAAC;YACf,oDAAoD;SACrD,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;QAC3B,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5B,GAAG,CAAC,0BAA0B,GAAG,mBAAmB,KAAK,MAAM,GAAG,CAAC,IAAI,MAAM,OAAO,GAAG,CAAC,CAAC;IAC3F,CAAC;IAED;;4FAEwF;IACxF,SAAS,SAAS,CAAC,UAAkB,EAAE,SAAkB;QACvD,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC1C,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QACrC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAC5B,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAChC,GAAG,CAAC,uCAAuC,UAAU,2CAA2C,CAAC,CAAC;YAClG,OAAO,KAAK,CAAC;QACf,CAAC;QACD,uFAAuF;QACvF,6BAA6B;QAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,eAAe,CAAC,SAAS,IAAI,IAAI,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;QACnE,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC9C,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC7C,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAChC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;sCAEkC;IAClC,SAAS,QAAQ,CAAC,UAAkB;QAClC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACrC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAC1B,OAAO;QACT,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC;YAAE,OAAO;QACzD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QAC5B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAClD,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACjC,GAAG,CACD,kCAAkC,IAAI,CAAC,GAAG,sBACxC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CACjD,EAAE,CACH,CAAC;YACF,0DAA0D;YAC1D,QAAQ,CAAC,UAAU,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,6FAA6F;IAC7F,uFAAuF;IACvF,wFAAwF;IACxF,wFAAwF;IACxF,4EAA4E;IAC5E,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,YAAY,EAAE,CAAC;YAC9C,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpE,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QACD,KAAK,MAAM,UAAU,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;YAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IACpE,CAAC,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC;IAC9B,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;IAEhB,KAAK,UAAU,gBAAgB,CAAC,KAAe;QAC7C,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7D,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO;QACzB,uFAAuF;QACvF,wFAAwF;QACxF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,GAAG,CAAC,qCAAqC,GAAG,CAAC,UAAU,6CAA6C,CAAC,CAAC;YACtG,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC;QAEzE,sFAAsF;QACtF,oFAAoF;QACpF,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACpB,GAAG,CAAC,0BAA0B,GAAG,0BAA0B,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,oBAAoB,CAAC,CAAC;YACvG,OAAO;QACT,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAClC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG;gBAAE,OAAO;QAC5B,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YAChC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC;gBAAE,OAAO;QACnD,CAAC;QAED,+FAA+F;QAC/F,yFAAyF;QACzF,gEAAgE;QAChE,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACjB,GAAG,CAAC,kDAAkD,GAAG,CAAC,UAAU,UAAU,QAAQ,YAAY,CAAC,CAAC;YACpG,OAAO;QACT,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,8FAA8F;YAC9F,8FAA8F;YAC9F,uFAAuF;YACvF,4FAA4F;YAC5F,2DAA2D;YAC3D,UAAU,CAAC;gBACT,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,SAAS,CAAC;gBAC1C,KAAK,EAAE,OAAO;gBACd,OAAO,EAAE,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC;aACzC,CAAC,CAAC;YACH,GAAG,CACD,0BAA0B,GAAG,CAAC,UAAU,cAAc,GAAG,CAAC,IAAI,gCAAgC;gBAC5F,6FAA6F,CAChG,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAc,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;QAEhE,0FAA0F;QAC1F,4EAA4E;QAC5E,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACtG,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YAC/C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAClC,UAAU,CAAC;gBACT,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,SAAS,CAAC;gBAC1C,KAAK,EAAE,YAAY;gBACnB,OAAO,EACL,+HAA+H;aAClI,CAAC,CAAC;YACH,GAAG,CAAC,0BAA0B,GAAG,2BAA2B,GAAG,CAAC,UAAU,KAAK,KAAK,CAAC,MAAM,WAAW,CAAC,CAAC;YACxG,OAAO;QACT,CAAC;QAED,mFAAmF;QACnF,iDAAiD;QACjD,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC;QACvB,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,2BAA2B;QACnC,yFAAyF;QACzF,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,IAAI;QAC3C,wFAAwF;QACxF,mFAAmF;QACnF,OAAO,EAAE,CAAC,KAAe,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC;QACrD,OAAO,EAAE,0BAA0B,CAAC;YAClC,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CACvB,6CAA6C,MAAM,CAAC,KAAK,EAAE,QAAQ,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,OAAO,EAAE;YAC/F,GAAG;YACH,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,IAAI;SAC5C,CAAC;KACH,CAAC,CAAC;IAEH,OAAO;QACL,MAAM;QACN,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QACjF,WAAW,EAAE,CAAC,UAAkB,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;QACxE,IAAI,EAAE,KAAK,IAAI,EAAE;YACf,aAAa,EAAE,CAAC;YAChB,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAAE,SAAS,CAAC,KAAK,CAAC,CAAC;YAC3D,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -28,6 +28,7 @@ export declare function councilAgreementPct(event: CoreEvent): number | null;
28
28
  * every convened ballot came back.
29
29
  */
30
30
  export declare function councilOutcomeSuffix(event: CoreEvent): string;
31
+ export declare function unitDistributedLine(event: CoreEvent, task: string): string;
31
32
  /**
32
33
  * `gateEvaluated.ungated` (wave 6, F-7R2-005): `true` when NOTHING gated the unit — no
33
34
  * deterministic floor, no agent judge, an empty evaluator-policy selection — the exact default-allow
@@ -1 +1 @@
1
- {"version":3,"file":"council-outcome.d.ts","sourceRoot":"","sources":["../../src/interactive/council-outcome.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAkBlD,yFAAyF;AACzF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI,CAEnE;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAW7D;AAID;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI,CAI/D;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAOjE;AAED;gFACgF;AAChF,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,CAAgE,CAAC;AAErH;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAUxD"}
1
+ {"version":3,"file":"council-outcome.d.ts","sourceRoot":"","sources":["../../src/interactive/council-outcome.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAkBlD,yFAAyF;AACzF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI,CAEnE;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAW7D;AAwBD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAW1E;AAID;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI,CAI/D;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAOjE;AAED;gFACgF;AAChF,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,CAAgE,CAAC;AAErH;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAUxD"}
@@ -57,6 +57,39 @@ export function councilOutcomeSuffix(event) {
57
57
  parts.push(reason);
58
58
  return parts.length === 0 ? '' : ` (${parts.join('; ')})`;
59
59
  }
60
+ /**
61
+ * THE `unitDistributed` line — one helper for every interactive seam (draft / chat / demo / edit),
62
+ * branching on `routingMethod` (wicked-core#590 S5). Since S5 the engine convenes no council to
63
+ * route a unit: every seated unit is routed `teamed` (the first eligible seat its skills admit) and
64
+ * the council-only fields (`agreementPct`, `returned`, `seated`, `dissent`) are `null`, so a teamed
65
+ * frame must read as a routing — "Routed codex for outline…" — never as a council pick. The council
66
+ * wording ("Council picked X for Y (N% agreement) (…)") is kept ONLY for recorded `council` /
67
+ * `degraded` frames and for an older engine that sends no `routingMethod`; `evaluator_distinct` and
68
+ * `tool` frames keep the wording they had. Any other non-empty method — one this build does not
69
+ * know — takes the "Routed …" branch too: the contract (`UnitDistributedEvent.routingMethod` in
70
+ * wicked-crew-api-types) says an unrecognised method renders as routed, never as a council, so a
71
+ * newer engine's method cannot read as a pick. `degradedReason` is quoted on every arm — wave 6
72
+ * sets it on every routing arm whenever the eligible set is smaller than the roster.
73
+ *
74
+ * `task` is the seam's own object: `for outline`, `to write the draft`, `to rework 3 targeted blocks`.
75
+ */
76
+ /** The `routingMethod`s that keep the council-era line: a recorded council, its degrade, and the
77
+ * two (`evaluator_distinct`, `tool`) whose wording is kept as it was. Everything else (`teamed`,
78
+ * or a method this build does not know) is narrated as a routing. A missing method (an older
79
+ * engine) is council-era too. */
80
+ const COUNCIL_WORDED_METHODS = new Set(['council', 'degraded', 'evaluator_distinct', 'tool']);
81
+ export function unitDistributedLine(event, task) {
82
+ const who = str(event, 'cli') ?? 'a worker';
83
+ const method = str(event, 'routingMethod', 'routing_method');
84
+ if (method !== null && !COUNCIL_WORDED_METHODS.has(method)) {
85
+ const reason = str(event, 'degradedReason', 'degraded_reason');
86
+ return `Routed ${who} ${task}${reason !== null ? ` (${reason})` : ''}…`;
87
+ }
88
+ const agreement = councilAgreementPct(event);
89
+ const pct = agreement !== null ? ` (${agreement}% agreement)` : '';
90
+ // Honest about a council that held on a fraction of its seats (F-4R2-007).
91
+ return `Council picked ${who} ${task}${pct}${councilOutcomeSuffix(event)}…`;
92
+ }
60
93
  // ── Wave 6 — the honest gate, the fenced worker, the benched seat ────────────────────────────
61
94
  /**
62
95
  * `gateEvaluated.ungated` (wave 6, F-7R2-005): `true` when NOTHING gated the unit — no
@@ -1 +1 @@
1
- {"version":3,"file":"council-outcome.js","sourceRoot":"","sources":["../../src/interactive/council-outcome.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"council-outcome.js","sourceRoot":"","sources":["../../src/interactive/council-outcome.ts"],"names":[],"mappings":"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"}
@@ -10,19 +10,18 @@
10
10
  * answerer instead — same bus vocabulary, zero interactive-service changes beyond the additive
11
11
  * producer row (`wi-crew`) in interactive's events.js ownership table.
12
12
  *
13
- * Shape mirrors `qe/gate-events.ts` (crew's existing bus seam, Phase 6a): OPT-IN, dynamic
14
- * wicked-bus import, graceful degradation when the bus is absent, durable cursor with
15
- * `cursor_init: 'latest'` under a dedicated plugin name.
13
+ * Shape: graceful degradation when no engine holds the bus, a tap from the newest row and every emit through the engine that
14
+ * holds the bus (`core/bus.ts`, wicked-core#631) — crew opens no SQLite of its own.
16
15
  *
17
16
  * Behavioral invariants honored (recon-verified against interactive):
18
17
  * - Heartbeat: the canvas shows a working veil and the browser fires ~20s
19
18
  * `status.requested` heartbeats; a silent answerer reads as a frozen UI. We narrate
20
19
  * `wicked.interactive.status.posted` on every phase transition AND on a ≤15s timer.
21
- * - Idempotency: the durable cursor redelivers under at-least-once semantics, and a replayed
20
+ * - Idempotency: interactive may re-emit (and a replay tool can re-post) a doc, and a replayed
22
21
  * `doc.created` must not produce a duplicate `_v2.html`. A durable per-doc ledger
23
22
  * (JSON file, atomic rename) gates the launch, and the final `draft.completed` emit carries
24
23
  * a deterministic idempotency key (`crew:interactive.draft:<doc>:v1`) so even a double
25
- * emit dedupes at the bus (WB-002).
24
+ * emit dedupes at the bus (a duplicate key resolves to the existing row).
26
25
  * - INV-2 (`data-wid`): first drafts are whole documents with no pre-existing anchors — the
27
26
  * service instruments fresh ones — so the worker contract explicitly forbids inventing
28
27
  * `data-wid` attributes rather than requiring preservation. The feedback→edit leg (fragment
@@ -35,7 +34,7 @@
35
34
  * forever), so the launch simply omits `projectId` — an unfiled governed run (CREW-UX-2).
36
35
  */
37
36
  import { InteractiveHandoffLedger } from './ledger.js';
38
- import { type SkillHeld } from './draft-skill.js';
37
+ import { type DraftFloorIo, type SkillHeld } from './draft-skill.js';
39
38
  import { type DocGroundingStore } from './doc-grounding.js';
40
39
  import type { CoreAdapter } from '../core/adapter.js';
41
40
  import type { WorkflowDef } from '../core/types.js';
@@ -45,9 +44,6 @@ export declare const DRAFT_COMPLETED = "wicked.interactive.draft.completed";
45
44
  export declare const STATUS_POSTED = "wicked.interactive.status.posted";
46
45
  /** Exact-type filter with a domain guard — no wildcard, one event type is the whole trigger. */
47
46
  export declare const INTERACTIVE_BUS_FILTER = "wicked.interactive.doc.created@wicked-interactive";
48
- /** Dedicated durable-cursor identity — NOT the qe subscriber's `wicked-crew`, so the two
49
- * seams advance independent cursors and stopping one never strands the other. */
50
- export declare const INTERACTIVE_BUS_PLUGIN = "wicked-crew-interactive-draft";
51
47
  /** The producer identity stamped on every event crew's interactive seams emit (this module and
52
48
  * edit-events.ts). Must appear in interactive's events.js ownership table for DRAFT_COMPLETED,
53
49
  * EDIT_COMPLETED, and STATUS_POSTED — the additive vocabulary rows that are the only
@@ -103,9 +99,28 @@ export declare function narrationStamps(flight: {
103
99
  export declare const GROUNDING_BINDING_WAIT_MS = 3000;
104
100
  export declare const INTERACTIVE_DRAFT_WORKFLOW = "interactive-draft";
105
101
  /**
106
- * The governed workflow that produces a first draft. Two agent phases — outline (recon) then
107
- * draft (build, creator role) — so the run narrates a real phase transition and the drafting
108
- * worker builds on a planned structure instead of one-shotting the whole document.
102
+ * The governed workflow that produces a first draft: ONE creator phase that plans, then writes.
103
+ *
104
+ * ## Why one phase (crew#621)
105
+ *
106
+ * It used to be two — a neutral `outline` recon phase, then the `draft` creator — and the split
107
+ * was prose. On the brochure run the neutral phase, whose instruction ended "Do NOT write HTML and
108
+ * do NOT create any files in this phase", authored the ENTIRE 26.6 KB deliverable in its output
109
+ * and signed off with "the HTML above is the complete deliverable; save it"; the creator phase then
110
+ * only wrote that HTML to disk. $1.23 of the run's $1.81 was spent inside the read-only phase, and
111
+ * both phases gated `ungated: true`, so nothing noticed. evaluator≠creator / neutral-recon
112
+ * separation on this seam was a label: a defect in the "planning" phase's grounding was inherited
113
+ * verbatim by a creator whose self-check could not see it.
114
+ *
115
+ * The engine already fences the neutral phase's WRITE (its `mkdir` and its `Write` were denied);
116
+ * what nothing could fence is a recon phase PRODUCING the artifact in its output. Crew cannot pin a
117
+ * validator on a phase's output (see `interactive/draft-skill.ts`), and killing a run whose worker
118
+ * planned-then-drafted in one unit would take the user's document with it. So the phase model is
119
+ * made honest instead of gated: one creator unit whose instruction is "plan the document first,
120
+ * then write it" — one honest phase beats two nominal ones. The plan is still narrated (the worker
121
+ * states its outline before it writes) and the document is still floored, by the two deterministic
122
+ * checks that judge the ARTIFACT: the draft floor (`runDraftFloor`, the skill's own self-check
123
+ * re-derived by crew before the draft is published) and the crew#311 deliverable floor.
109
124
  *
110
125
  * The phase `instructions` adapt the draft-production contract from interactive's assist skill
111
126
  * (Step 5): honor the brief/sources/style, ground content in what the brief supports, produce a
@@ -114,8 +129,11 @@ export declare const INTERACTIVE_DRAFT_WORKFLOW = "interactive-draft";
114
129
  * instructions onto the unit description with a single-line separator, and the PTY seat runner
115
130
  * refuses any prompt carrying an embedded newline (wicked-core FINDING-011).
116
131
  *
117
- * All gates are `auto` with `validator_pin: null` — no human gate, no deterministic floor —
118
- * because the acceptance gate for a draft is the INTERACTIVE side (the service's INV-2
132
+ * The gate is `auto` with `validator_pin: null` — crew cannot provision an engine validator
133
+ * (`interactive/draft-skill.ts`) — so the run's deterministic floors sit on the ARTIFACT: the
134
+ * crew#311 deliverable floor (the file exists, carries bytes, and was written by this run) and
135
+ * crew's re-derivation of the skill's self-check before the draft is published (crew#621/#504).
136
+ * Beyond those the acceptance gate for a draft is the INTERACTIVE side (the service's INV-2
119
137
  * instrument+theme pipeline and the user's own eyes on the canvas). Registered via
120
138
  * `adapter.registerWorkflow()` at arm time (validate-before-persist, hot-registered into the
121
139
  * engine), not added to BUILTIN_WORKFLOWS: this def is crew-only data owned by this seam, not a
@@ -270,9 +288,7 @@ export declare function draftIdempotencyKey(documentId: string): string;
270
288
  export { InteractiveHandoffLedger, type HandoffLedgerEntry } from './ledger.js';
271
289
  /** Options for {@link startInteractiveDraftSubscriber}. */
272
290
  export interface InteractiveDraftOptions {
273
- /** Bus SQLite db path. Omit to let wicked-bus resolve its own default
274
- * (honors `WICKED_BUS_DATA_DIR`) — which is where interactive's service emits unless
275
- * redirected, so the default is usually right. */
291
+ /** The bus db the daemon handed its engine (core/bus.ts); without one the seam does not arm. */
276
292
  dbPath?: string;
277
293
  /** Poll cadence, ms (default 2000; tests shorten it). */
278
294
  pollIntervalMs?: number;
@@ -322,6 +338,9 @@ export interface InteractiveDraftOptions {
322
338
  * the server wires the per-project `interactiveRoot` setting through here, like the sibling seams.
323
339
  * Only consulted when a `groundingStore` is wired. */
324
340
  resolveDocsRoot?: (projectId: string | undefined) => string;
341
+ /** Injectable IO for the draft floor crew re-derives at finalize (crew#621/#504) — tests
342
+ * substitute the plugin root and the check's answer; the daemon passes nothing. */
343
+ draftFloorIo?: DraftFloorIo;
325
344
  /** Diagnostics sink (default: console.error). */
326
345
  log?: (message: string) => void;
327
346
  /** Error-level logger for connection-fatal subscriber errors (the /diagnostics ring folds it); defaults to `log`. */