cli-jaw 2.1.1 → 2.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (477) hide show
  1. package/README.ja.md +8 -6
  2. package/README.ko.md +8 -6
  3. package/README.md +18 -11
  4. package/README.zh-CN.md +8 -6
  5. package/dist/bin/cli-jaw.js +19 -3
  6. package/dist/bin/cli-jaw.js.map +1 -1
  7. package/dist/bin/commands/browser.js +1 -1
  8. package/dist/bin/commands/browser.js.map +1 -1
  9. package/dist/bin/commands/chat-search.js +71 -0
  10. package/dist/bin/commands/chat-search.js.map +1 -0
  11. package/dist/bin/commands/chat.js +98 -58
  12. package/dist/bin/commands/chat.js.map +1 -1
  13. package/dist/bin/commands/dispatch.js +130 -5
  14. package/dist/bin/commands/dispatch.js.map +1 -1
  15. package/dist/bin/commands/goal.js +66 -9
  16. package/dist/bin/commands/goal.js.map +1 -1
  17. package/dist/bin/commands/history.js +61 -0
  18. package/dist/bin/commands/history.js.map +1 -0
  19. package/dist/bin/commands/lock.js +104 -0
  20. package/dist/bin/commands/lock.js.map +1 -0
  21. package/dist/bin/commands/memory.js +23 -2
  22. package/dist/bin/commands/memory.js.map +1 -1
  23. package/dist/bin/commands/orchestrate.js.map +1 -1
  24. package/dist/bin/commands/project.js +4 -1
  25. package/dist/bin/commands/project.js.map +1 -1
  26. package/dist/bin/commands/tui/fullscreen-mode.js +237 -0
  27. package/dist/bin/commands/tui/fullscreen-mode.js.map +1 -0
  28. package/dist/bin/commands/tui/input-handler.js +139 -52
  29. package/dist/bin/commands/tui/input-handler.js.map +1 -1
  30. package/dist/bin/commands/tui/overlays.js +177 -70
  31. package/dist/bin/commands/tui/overlays.js.map +1 -1
  32. package/dist/bin/commands/tui/renderer.js +70 -20
  33. package/dist/bin/commands/tui/renderer.js.map +1 -1
  34. package/dist/bin/commands/tui/simple-mode.js +1 -2
  35. package/dist/bin/commands/tui/simple-mode.js.map +1 -1
  36. package/dist/bin/commands/tui/tui-io.js +8 -0
  37. package/dist/bin/commands/tui/tui-io.js.map +1 -0
  38. package/dist/bin/commands/tui/types.js +9 -0
  39. package/dist/bin/commands/tui/types.js.map +1 -1
  40. package/dist/bin/commands/tui/ws-handler.js +115 -23
  41. package/dist/bin/commands/tui/ws-handler.js.map +1 -1
  42. package/dist/bin/commands/worker.js +159 -0
  43. package/dist/bin/commands/worker.js.map +1 -0
  44. package/dist/bin/postinstall.js +0 -76
  45. package/dist/bin/postinstall.js.map +1 -1
  46. package/dist/lib/mcp/format-converters.js +21 -2
  47. package/dist/lib/mcp/format-converters.js.map +1 -1
  48. package/dist/lib/mcp/mcp-registry.js +75 -0
  49. package/dist/lib/mcp/mcp-registry.js.map +1 -0
  50. package/dist/lib/stt.js +1 -1
  51. package/dist/lib/stt.js.map +1 -1
  52. package/dist/lib/upload.js +7 -0
  53. package/dist/lib/upload.js.map +1 -1
  54. package/dist/scripts/fresh-install-smoke.js +1 -1
  55. package/dist/scripts/fresh-install-smoke.js.map +1 -1
  56. package/dist/server.js +151 -22
  57. package/dist/server.js.map +1 -1
  58. package/dist/src/agent/agy-runtime.js +1 -0
  59. package/dist/src/agent/agy-runtime.js.map +1 -1
  60. package/dist/src/agent/agy-transcript-watcher.js +78 -0
  61. package/dist/src/agent/agy-transcript-watcher.js.map +1 -0
  62. package/dist/src/agent/agy-transcript.js +158 -0
  63. package/dist/src/agent/agy-transcript.js.map +1 -0
  64. package/dist/src/agent/args.js +51 -5
  65. package/dist/src/agent/args.js.map +1 -1
  66. package/dist/src/agent/claude-e-runtime.js +1 -1
  67. package/dist/src/agent/claude-e-runtime.js.map +1 -1
  68. package/dist/src/agent/codex-app-client.js +2 -2
  69. package/dist/src/agent/codex-app-client.js.map +1 -1
  70. package/dist/src/agent/cursor-runtime.js +1 -0
  71. package/dist/src/agent/cursor-runtime.js.map +1 -1
  72. package/dist/src/agent/error-classifier.js +6 -1
  73. package/dist/src/agent/error-classifier.js.map +1 -1
  74. package/dist/src/agent/events/claude.js +1 -0
  75. package/dist/src/agent/events/claude.js.map +1 -1
  76. package/dist/src/agent/events/codex.js +0 -44
  77. package/dist/src/agent/events/codex.js.map +1 -1
  78. package/dist/src/agent/events/helpers.js +52 -5
  79. package/dist/src/agent/events/helpers.js.map +1 -1
  80. package/dist/src/agent/events/opencode.js +6 -2
  81. package/dist/src/agent/events/opencode.js.map +1 -1
  82. package/dist/src/agent/events/summary.js +3 -2
  83. package/dist/src/agent/events/summary.js.map +1 -1
  84. package/dist/src/agent/events/tool-labels.js +8 -5
  85. package/dist/src/agent/events/tool-labels.js.map +1 -1
  86. package/dist/src/agent/kiro-auth.js +213 -0
  87. package/dist/src/agent/kiro-auth.js.map +1 -0
  88. package/dist/src/agent/kiro-models.js +79 -0
  89. package/dist/src/agent/kiro-models.js.map +1 -0
  90. package/dist/src/agent/kiro-runtime.js +314 -0
  91. package/dist/src/agent/kiro-runtime.js.map +1 -0
  92. package/dist/src/agent/lifecycle-handler.js +208 -23
  93. package/dist/src/agent/lifecycle-handler.js.map +1 -1
  94. package/dist/src/agent/memory-flush-controller.js +3 -4
  95. package/dist/src/agent/memory-flush-controller.js.map +1 -1
  96. package/dist/src/agent/resume-classifier.js +18 -1
  97. package/dist/src/agent/resume-classifier.js.map +1 -1
  98. package/dist/src/agent/session-persistence.js +2 -2
  99. package/dist/src/agent/session-persistence.js.map +1 -1
  100. package/dist/src/agent/smoke-detector.js +3 -0
  101. package/dist/src/agent/smoke-detector.js.map +1 -1
  102. package/dist/src/agent/spawn/queue.js +11 -5
  103. package/dist/src/agent/spawn/queue.js.map +1 -1
  104. package/dist/src/agent/spawn/resume.js +6 -1
  105. package/dist/src/agent/spawn/resume.js.map +1 -1
  106. package/dist/src/agent/spawn-env.js +1 -1
  107. package/dist/src/agent/spawn-env.js.map +1 -1
  108. package/dist/src/agent/spawn.js +231 -43
  109. package/dist/src/agent/spawn.js.map +1 -1
  110. package/dist/src/agent/watchdog.js +1 -1
  111. package/dist/src/agent/watchdog.js.map +1 -1
  112. package/dist/src/browser/actions.js +0 -8
  113. package/dist/src/browser/actions.js.map +1 -1
  114. package/dist/src/browser/adaptive-fetch/browser-escalation.js +5 -29
  115. package/dist/src/browser/adaptive-fetch/browser-escalation.js.map +1 -1
  116. package/dist/src/browser/adaptive-fetch/browser-runtime.js +5 -14
  117. package/dist/src/browser/adaptive-fetch/browser-runtime.js.map +1 -1
  118. package/dist/src/browser/adaptive-fetch/browser-session.js +14 -28
  119. package/dist/src/browser/adaptive-fetch/browser-session.js.map +1 -1
  120. package/dist/src/browser/adaptive-fetch/challenge-detector.js +4 -26
  121. package/dist/src/browser/adaptive-fetch/challenge-detector.js.map +1 -1
  122. package/dist/src/browser/adaptive-fetch/content-scorer.js +5 -29
  123. package/dist/src/browser/adaptive-fetch/content-scorer.js.map +1 -1
  124. package/dist/src/browser/adaptive-fetch/endpoint-resolvers.js +0 -64
  125. package/dist/src/browser/adaptive-fetch/endpoint-resolvers.js.map +1 -1
  126. package/dist/src/browser/adaptive-fetch/fetcher.js +4 -19
  127. package/dist/src/browser/adaptive-fetch/fetcher.js.map +1 -1
  128. package/dist/src/browser/adaptive-fetch/human-loop.js +0 -26
  129. package/dist/src/browser/adaptive-fetch/human-loop.js.map +1 -1
  130. package/dist/src/browser/adaptive-fetch/index.js +74 -145
  131. package/dist/src/browser/adaptive-fetch/index.js.map +1 -1
  132. package/dist/src/browser/adaptive-fetch/metadata.js +1 -41
  133. package/dist/src/browser/adaptive-fetch/metadata.js.map +1 -1
  134. package/dist/src/browser/adaptive-fetch/output.js +1 -18
  135. package/dist/src/browser/adaptive-fetch/output.js.map +1 -1
  136. package/dist/src/browser/adaptive-fetch/reader-adapters.js +43 -75
  137. package/dist/src/browser/adaptive-fetch/reader-adapters.js.map +1 -1
  138. package/dist/src/browser/adaptive-fetch/safety.js +5 -48
  139. package/dist/src/browser/adaptive-fetch/safety.js.map +1 -1
  140. package/dist/src/browser/adaptive-fetch/third-party-readers.js +0 -11
  141. package/dist/src/browser/adaptive-fetch/third-party-readers.js.map +1 -1
  142. package/dist/src/browser/adaptive-fetch/trace.js +3 -18
  143. package/dist/src/browser/adaptive-fetch/trace.js.map +1 -1
  144. package/dist/src/browser/adaptive-fetch/transforms.js +0 -23
  145. package/dist/src/browser/adaptive-fetch/transforms.js.map +1 -1
  146. package/dist/src/browser/adaptive-fetch/types.js +3 -0
  147. package/dist/src/browser/adaptive-fetch/types.js.map +1 -0
  148. package/dist/src/browser/adaptive-fetch/validators.js +0 -17
  149. package/dist/src/browser/adaptive-fetch/validators.js.map +1 -1
  150. package/dist/src/browser/adaptive-fetch/waf-profiles.js +0 -10
  151. package/dist/src/browser/adaptive-fetch/waf-profiles.js.map +1 -1
  152. package/dist/src/browser/connection.js +1 -1
  153. package/dist/src/browser/connection.js.map +1 -1
  154. package/dist/src/browser/web-ai/chatgpt-response.js +0 -1
  155. package/dist/src/browser/web-ai/chatgpt-response.js.map +1 -1
  156. package/dist/src/browser/web-ai/chatgpt.js +0 -33
  157. package/dist/src/browser/web-ai/chatgpt.js.map +1 -1
  158. package/dist/src/browser/web-ai/diagnostics.js +0 -16
  159. package/dist/src/browser/web-ai/diagnostics.js.map +1 -1
  160. package/dist/src/browser/web-ai/doctor.js.map +1 -1
  161. package/dist/src/browser/web-ai/errors.js +1 -1
  162. package/dist/src/browser/web-ai/errors.js.map +1 -1
  163. package/dist/src/browser/web-ai/grok-live.js +2 -0
  164. package/dist/src/browser/web-ai/grok-live.js.map +1 -1
  165. package/dist/src/cli/claude-models.js +2 -2
  166. package/dist/src/cli/claude-models.js.map +1 -1
  167. package/dist/src/cli/command-context.js.map +1 -1
  168. package/dist/src/cli/commands.js +16 -4
  169. package/dist/src/cli/commands.js.map +1 -1
  170. package/dist/src/cli/compact.js +2 -1
  171. package/dist/src/cli/compact.js.map +1 -1
  172. package/dist/src/cli/handlers/session-handlers.js +34 -0
  173. package/dist/src/cli/handlers/session-handlers.js.map +1 -0
  174. package/dist/src/cli/handlers-project.js.map +1 -1
  175. package/dist/src/cli/handlers-runtime.js +2 -0
  176. package/dist/src/cli/handlers-runtime.js.map +1 -1
  177. package/dist/src/cli/handlers-workflows.js +85 -17
  178. package/dist/src/cli/handlers-workflows.js.map +1 -1
  179. package/dist/src/cli/handlers.js +84 -43
  180. package/dist/src/cli/handlers.js.map +1 -1
  181. package/dist/src/cli/readiness.js +17 -1
  182. package/dist/src/cli/readiness.js.map +1 -1
  183. package/dist/src/cli/registry-live.js +17 -0
  184. package/dist/src/cli/registry-live.js.map +1 -0
  185. package/dist/src/cli/registry.js +51 -10
  186. package/dist/src/cli/registry.js.map +1 -1
  187. package/dist/src/cli/tui/composer.js +135 -5
  188. package/dist/src/cli/tui/composer.js.map +1 -1
  189. package/dist/src/cli/tui/diffview.js +41 -0
  190. package/dist/src/cli/tui/diffview.js.map +1 -0
  191. package/dist/src/cli/tui/editor.js +45 -0
  192. package/dist/src/cli/tui/editor.js.map +1 -0
  193. package/dist/src/cli/tui/file-mention.js +78 -0
  194. package/dist/src/cli/tui/file-mention.js.map +1 -0
  195. package/dist/src/cli/tui/highlight.js +82 -0
  196. package/dist/src/cli/tui/highlight.js.map +1 -0
  197. package/dist/src/cli/tui/keymap.js +21 -0
  198. package/dist/src/cli/tui/keymap.js.map +1 -1
  199. package/dist/src/cli/tui/markdown.js +124 -0
  200. package/dist/src/cli/tui/markdown.js.map +1 -0
  201. package/dist/src/cli/tui/mode.js +26 -0
  202. package/dist/src/cli/tui/mode.js.map +1 -0
  203. package/dist/src/cli/tui/overlay.js +121 -98
  204. package/dist/src/cli/tui/overlay.js.map +1 -1
  205. package/dist/src/cli/tui/render/frame.js +72 -0
  206. package/dist/src/cli/tui/render/frame.js.map +1 -0
  207. package/dist/src/cli/tui/render/layout.js +22 -0
  208. package/dist/src/cli/tui/render/layout.js.map +1 -0
  209. package/dist/src/cli/tui/render/mouse.js +25 -0
  210. package/dist/src/cli/tui/render/mouse.js.map +1 -0
  211. package/dist/src/cli/tui/render/scheduler.js +37 -0
  212. package/dist/src/cli/tui/render/scheduler.js.map +1 -0
  213. package/dist/src/cli/tui/render/viewport.js +82 -0
  214. package/dist/src/cli/tui/render/viewport.js.map +1 -0
  215. package/dist/src/cli/tui/renderers.js +37 -0
  216. package/dist/src/cli/tui/renderers.js.map +1 -1
  217. package/dist/src/cli/tui/stream.js +48 -0
  218. package/dist/src/cli/tui/stream.js.map +1 -0
  219. package/dist/src/cli/tui/text-buffer.js +143 -0
  220. package/dist/src/cli/tui/text-buffer.js.map +1 -0
  221. package/dist/src/cli/tui/theme.js +128 -0
  222. package/dist/src/cli/tui/theme.js.map +1 -0
  223. package/dist/src/cli/tui/transcript.js +4 -0
  224. package/dist/src/cli/tui/transcript.js.map +1 -1
  225. package/dist/src/command-contract/help-renderer.js +1 -1
  226. package/dist/src/command-contract/help-renderer.js.map +1 -1
  227. package/dist/src/core/chat-sessions.js +63 -0
  228. package/dist/src/core/chat-sessions.js.map +1 -0
  229. package/dist/src/core/cli-detection.js +14 -0
  230. package/dist/src/core/cli-detection.js.map +1 -1
  231. package/dist/src/core/compact.js +43 -11
  232. package/dist/src/core/compact.js.map +1 -1
  233. package/dist/src/core/config.js +14 -1
  234. package/dist/src/core/config.js.map +1 -1
  235. package/dist/src/core/db.js +52 -12
  236. package/dist/src/core/db.js.map +1 -1
  237. package/dist/src/core/employees.js +2 -2
  238. package/dist/src/core/employees.js.map +1 -1
  239. package/dist/src/core/main-session.js +3 -2
  240. package/dist/src/core/main-session.js.map +1 -1
  241. package/dist/src/discord/bot.js.map +1 -1
  242. package/dist/src/discord/discord-file.js +1 -1
  243. package/dist/src/discord/discord-file.js.map +1 -1
  244. package/dist/src/discord/send-only-client.js +1 -3
  245. package/dist/src/discord/send-only-client.js.map +1 -1
  246. package/dist/src/goal/heartbeat.js +113 -7
  247. package/dist/src/goal/heartbeat.js.map +1 -1
  248. package/dist/src/goal/store.js +44 -5
  249. package/dist/src/goal/store.js.map +1 -1
  250. package/dist/src/ide/diff.js +37 -0
  251. package/dist/src/ide/diff.js.map +1 -1
  252. package/dist/src/manager/launchd-service.js +1 -1
  253. package/dist/src/manager/launchd-service.js.map +1 -1
  254. package/dist/src/manager/lifecycle-helpers.js +14 -0
  255. package/dist/src/manager/lifecycle-helpers.js.map +1 -1
  256. package/dist/src/manager/lifecycle-store.js.map +1 -1
  257. package/dist/src/manager/lifecycle.js +94 -5
  258. package/dist/src/manager/lifecycle.js.map +1 -1
  259. package/dist/src/manager/notes/routes.js +0 -31
  260. package/dist/src/manager/notes/routes.js.map +1 -1
  261. package/dist/src/manager/notes/ws.js.map +1 -1
  262. package/dist/src/manager/preview-link-policy.js +11 -4
  263. package/dist/src/manager/preview-link-policy.js.map +1 -1
  264. package/dist/src/manager/registry.js.map +1 -1
  265. package/dist/src/manager/routes/dashboard-memory.js.map +1 -1
  266. package/dist/src/manager/scan.js +36 -1
  267. package/dist/src/manager/scan.js.map +1 -1
  268. package/dist/src/manager/server.js +42 -7
  269. package/dist/src/manager/server.js.map +1 -1
  270. package/dist/src/manager/shutdown.js +8 -3
  271. package/dist/src/manager/shutdown.js.map +1 -1
  272. package/dist/src/manager/systemd-service.js +1 -1
  273. package/dist/src/manager/systemd-service.js.map +1 -1
  274. package/dist/src/memory/indexing.js +49 -1
  275. package/dist/src/memory/indexing.js.map +1 -1
  276. package/dist/src/memory/keyword-expand.js +0 -187
  277. package/dist/src/memory/keyword-expand.js.map +1 -1
  278. package/dist/src/memory/runtime.js +3 -2
  279. package/dist/src/memory/runtime.js.map +1 -1
  280. package/dist/src/memory/shared.js.map +1 -1
  281. package/dist/src/messaging/send.js +66 -7
  282. package/dist/src/messaging/send.js.map +1 -1
  283. package/dist/src/orchestrator/collect.js +3 -2
  284. package/dist/src/orchestrator/collect.js.map +1 -1
  285. package/dist/src/orchestrator/distribute.js +9 -3
  286. package/dist/src/orchestrator/distribute.js.map +1 -1
  287. package/dist/src/orchestrator/friction.js +59 -0
  288. package/dist/src/orchestrator/friction.js.map +1 -0
  289. package/dist/src/orchestrator/gateway.js +4 -4
  290. package/dist/src/orchestrator/gateway.js.map +1 -1
  291. package/dist/src/orchestrator/pipeline.js +89 -45
  292. package/dist/src/orchestrator/pipeline.js.map +1 -1
  293. package/dist/src/orchestrator/sanitize.js +69 -0
  294. package/dist/src/orchestrator/sanitize.js.map +1 -0
  295. package/dist/src/orchestrator/seed.js +50 -0
  296. package/dist/src/orchestrator/seed.js.map +1 -0
  297. package/dist/src/orchestrator/state-machine.js +215 -76
  298. package/dist/src/orchestrator/state-machine.js.map +1 -1
  299. package/dist/src/orchestrator/worker-monitor.js +1 -1
  300. package/dist/src/orchestrator/worker-monitor.js.map +1 -1
  301. package/dist/src/orchestrator/worker-progress.js +29 -0
  302. package/dist/src/orchestrator/worker-progress.js.map +1 -0
  303. package/dist/src/orchestrator/worker-registry.js +63 -2
  304. package/dist/src/orchestrator/worker-registry.js.map +1 -1
  305. package/dist/src/prompt/builder.js +190 -115
  306. package/dist/src/prompt/builder.js.map +1 -1
  307. package/dist/src/prompt/templates/a1-system.md +124 -61
  308. package/dist/src/prompt/templates/control-system.md +2 -2
  309. package/dist/src/prompt/templates/employee.md +41 -56
  310. package/dist/src/prompt/templates/orchestration.md +23 -8
  311. package/dist/src/prompt/templates/skills.md +6 -0
  312. package/dist/src/routes/browser.js +3 -3
  313. package/dist/src/routes/browser.js.map +1 -1
  314. package/dist/src/routes/employees.js +4 -4
  315. package/dist/src/routes/employees.js.map +1 -1
  316. package/dist/src/routes/goal.js +48 -4
  317. package/dist/src/routes/goal.js.map +1 -1
  318. package/dist/src/routes/heartbeat.js +1 -1
  319. package/dist/src/routes/heartbeat.js.map +1 -1
  320. package/dist/src/routes/i18n.js +1 -1
  321. package/dist/src/routes/i18n.js.map +1 -1
  322. package/dist/src/routes/jaw-memory.js +1 -1
  323. package/dist/src/routes/jaw-memory.js.map +1 -1
  324. package/dist/src/routes/memory.js.map +1 -1
  325. package/dist/src/routes/messaging.js +8 -3
  326. package/dist/src/routes/messaging.js.map +1 -1
  327. package/dist/src/routes/orchestrate.js +267 -117
  328. package/dist/src/routes/orchestrate.js.map +1 -1
  329. package/dist/src/routes/quota-agy-reverse.js +6 -5
  330. package/dist/src/routes/quota-agy-reverse.js.map +1 -1
  331. package/dist/src/routes/quota-kiro-reverse.js +187 -0
  332. package/dist/src/routes/quota-kiro-reverse.js.map +1 -0
  333. package/dist/src/routes/quota.js +68 -6
  334. package/dist/src/routes/quota.js.map +1 -1
  335. package/dist/src/routes/settings.js +37 -8
  336. package/dist/src/routes/settings.js.map +1 -1
  337. package/dist/src/routes/skills.js.map +1 -1
  338. package/dist/src/security/path-guards.js +0 -3
  339. package/dist/src/security/path-guards.js.map +1 -1
  340. package/dist/src/security/security-audit-log.js.map +1 -1
  341. package/dist/src/shared/shell-command-display.js +51 -0
  342. package/dist/src/shared/shell-command-display.js.map +1 -0
  343. package/dist/src/telegram/bot.js.map +1 -1
  344. package/dist/src/trace/store.js +32 -0
  345. package/dist/src/trace/store.js.map +1 -1
  346. package/dist/src/types/cli-engine.js +1 -0
  347. package/dist/src/types/cli-engine.js.map +1 -1
  348. package/dist/src/workflows/employee-boundary.js +7 -7
  349. package/dist/src/workflows/employee-boundary.js.map +1 -1
  350. package/dist/src/workflows/handoff.js +16 -16
  351. package/dist/src/workflows/handoff.js.map +1 -1
  352. package/dist/src/workflows/scope-sandbox.js +58 -0
  353. package/dist/src/workflows/scope-sandbox.js.map +1 -0
  354. package/package.json +1 -1
  355. package/public/assets/providers/kiro-color.svg +15 -0
  356. package/public/assets/providers/kiro.svg +14 -0
  357. package/public/css/chat.css +27 -0
  358. package/public/css/modals.css +79 -0
  359. package/public/css/orc-state.css +10 -6
  360. package/public/css/sidebar.css +85 -0
  361. package/public/css/variables.css +6 -2
  362. package/public/dist/assets/{Agent-CIUGaUVn.js → Agent-DBKNQ6tp.js} +1 -1
  363. package/public/dist/assets/{DocPanel-C1pGgE-S.js → DocPanel-BU16GUlB.js} +1 -1
  364. package/public/dist/assets/DocPanel-gU-WkgyA.css +1 -0
  365. package/public/dist/assets/Employees-F0ssNuO-.js +1 -0
  366. package/public/dist/assets/{FolderPanel-DSkanaGN.js → FolderPanel-DT0fU8f2.js} +1 -1
  367. package/public/dist/assets/Heartbeat-fsuLzY9c.js +1 -0
  368. package/public/dist/assets/Mcp-_Yq4N3Sk.js +4 -0
  369. package/public/dist/assets/{Memory-BgN8djV4.js → Memory-CRR8kotI.js} +1 -1
  370. package/public/dist/assets/{ModelProvider-DHQ1Zvw0.js → ModelProvider-DQgISbKw.js} +1 -1
  371. package/public/dist/assets/agent-meta-C4mauPL5.js +1 -0
  372. package/public/dist/assets/app-0OQhPpTG.css +1 -0
  373. package/public/dist/assets/app-CSqIyg9A.js +55 -0
  374. package/public/dist/assets/constants-BHMkzpN_.js +1 -0
  375. package/public/dist/assets/{employees-DiNLzEXS.js → employees-CZdWHH-r.js} +7 -7
  376. package/public/dist/assets/idb-cache-0LNMskFB.js +1 -0
  377. package/public/dist/assets/idb-cache-5H89a4l8.js +1 -0
  378. package/public/dist/assets/manager-CGTQ5EIm.js +12 -0
  379. package/public/dist/assets/manager-UBunDqMH.css +1 -0
  380. package/public/dist/assets/{memory-B_nn0A4v.js → memory-B3QSmj_e.js} +9 -9
  381. package/public/dist/assets/memory-DOBqiuPc.js +1 -0
  382. package/public/dist/assets/{provider-icons-XEfJPGTe.js → provider-icons-Crv6yvlG.js} +35 -6
  383. package/public/dist/assets/render-J11oxfnl.js +28 -0
  384. package/public/dist/assets/settings-BV_2Bh0_.js +1 -0
  385. package/public/dist/assets/settings-m_cim0ov.js +151 -0
  386. package/public/dist/assets/sidebar-ZBXdBgF7.js +49 -0
  387. package/public/dist/assets/{skills-COa4iSwL.js → skills-CjaBmIPV.js} +6 -6
  388. package/public/dist/assets/skills-Xm3fl1zr.js +1 -0
  389. package/public/dist/assets/{slash-commands-C_ePvrPi.js → slash-commands-71jc07Wf.js} +1 -1
  390. package/public/dist/assets/slash-commands-BO6ssnAz.js +1 -0
  391. package/public/dist/assets/{trace-drawer-CY4z_Ie8.js → trace-drawer-Czvf2P2o.js} +1 -1
  392. package/public/dist/assets/ui-CverZJnd.js +1 -0
  393. package/public/dist/assets/ui-qKxy-4p9.js +142 -0
  394. package/public/dist/index.html +113 -86
  395. package/public/dist/manager/index.html +2 -2
  396. package/public/index.html +111 -84
  397. package/public/js/constants.ts +34 -11
  398. package/public/js/features/chat-messages.ts +13 -2
  399. package/public/js/features/chat-search.ts +5 -1
  400. package/public/js/features/chat.ts +86 -44
  401. package/public/js/features/employees.ts +7 -2
  402. package/public/js/features/idb-cache.ts +4 -0
  403. package/public/js/features/media-lightbox.ts +40 -0
  404. package/public/js/features/message-history.ts +55 -7
  405. package/public/js/features/pending-queue.ts +28 -4
  406. package/public/js/features/process-block.ts +32 -17
  407. package/public/js/features/process-log-adapter.ts +11 -2
  408. package/public/js/features/settings-cli-status-render.ts +161 -0
  409. package/public/js/features/settings-cli-status.ts +136 -187
  410. package/public/js/features/settings-core.ts +5 -1
  411. package/public/js/features/settings-mcp.ts +513 -7
  412. package/public/js/features/settings-types.ts +1 -0
  413. package/public/js/features/settings.ts +1 -1
  414. package/public/js/features/tool-ui.ts +18 -4
  415. package/public/js/features/transport-status-row.ts +3 -0
  416. package/public/js/features/ui-status.ts +5 -1
  417. package/public/js/main.ts +5 -0
  418. package/public/js/preview-parent-origin.ts +14 -0
  419. package/public/js/provider-icons.ts +6 -1
  420. package/public/js/render/file-links.ts +10 -2
  421. package/public/js/render/markdown.ts +16 -0
  422. package/public/js/ui.ts +8 -1
  423. package/public/js/virtual-scroll.ts +19 -0
  424. package/public/js/ws.ts +151 -15
  425. package/public/locales/en.json +9 -2
  426. package/public/locales/ja.json +9 -2
  427. package/public/locales/ko.json +9 -2
  428. package/public/locales/zh.json +9 -2
  429. package/public/manager/src/App.tsx +13 -70
  430. package/public/manager/src/InstancePreview.tsx +56 -11
  431. package/public/manager/src/SidebarRailRouter.tsx +32 -4
  432. package/public/manager/src/components/InstanceRow.tsx +0 -1
  433. package/public/manager/src/components/WorkbenchHeader.tsx +17 -7
  434. package/public/manager/src/doc-panel/DocPanel.tsx +14 -1
  435. package/public/manager/src/doc-panel/doc-panel.css +16 -0
  436. package/public/manager/src/folder-panel/FolderPanel.tsx +13 -2
  437. package/public/manager/src/hooks/useElectronDroppedPaths.ts +89 -0
  438. package/public/manager/src/hooks/useInstanceMessageEvents.ts +4 -15
  439. package/public/manager/src/manager-components.css +35 -1
  440. package/public/manager/src/manager-polish.css +11 -1
  441. package/public/manager/src/manager-shortcut-runner.ts +107 -0
  442. package/public/manager/src/manager-shortcuts.ts +15 -0
  443. package/public/manager/src/panels/desktop-bridge.ts +13 -0
  444. package/public/manager/src/settings/SettingsSidebar.tsx +1 -1
  445. package/public/manager/src/settings/components/sidebar-filter.ts +2 -0
  446. package/public/manager/src/settings/pages/Mcp.tsx +311 -43
  447. package/public/manager/src/settings/pages/components/McpServerCard.tsx +89 -55
  448. package/public/manager/src/settings/pages/components/agent/agent-meta.ts +32 -9
  449. package/public/manager/src/settings/pages/components/employees-helpers.ts +1 -0
  450. package/public/manager/src/settings/pages/components/heartbeat-helpers.ts +1 -0
  451. package/public/manager/src/settings/pages/mcp-helpers.ts +54 -12
  452. package/public/manager/src/settings/types.ts +1 -0
  453. package/public/manager/src/types.ts +2 -1
  454. package/scripts/fresh-install-smoke.ts +1 -1
  455. package/scripts/smoke/agy-transcript-tail-smoke.mjs +89 -0
  456. package/public/dist/assets/DocPanel-CL1scIfq.css +0 -1
  457. package/public/dist/assets/Employees-BL9MAzzx.js +0 -1
  458. package/public/dist/assets/Heartbeat-D64JCg4t.js +0 -1
  459. package/public/dist/assets/Mcp-wYwJA_61.js +0 -3
  460. package/public/dist/assets/agent-meta-BhEbjy4P.js +0 -1
  461. package/public/dist/assets/app-2Rz848bQ.js +0 -48
  462. package/public/dist/assets/app-BW-Xz2p6.css +0 -1
  463. package/public/dist/assets/constants-ahKI_aEG.js +0 -1
  464. package/public/dist/assets/idb-cache-BnZfG5FD.js +0 -1
  465. package/public/dist/assets/idb-cache-CZ3JdK8r.js +0 -1
  466. package/public/dist/assets/manager-CfyZloIP.js +0 -12
  467. package/public/dist/assets/manager-DyrwJLZr.css +0 -1
  468. package/public/dist/assets/memory-CCjNFWmO.js +0 -1
  469. package/public/dist/assets/render-CgDEBoCX.js +0 -28
  470. package/public/dist/assets/settings-CY_6tGuS.js +0 -1
  471. package/public/dist/assets/settings-DWW4GzNc.js +0 -66
  472. package/public/dist/assets/sidebar-DQKE5IA1.js +0 -23
  473. package/public/dist/assets/skills-DYTlqoke.js +0 -1
  474. package/public/dist/assets/slash-commands-D7CU5oso.js +0 -1
  475. package/public/dist/assets/ui-Car1OUvV.js +0 -1
  476. package/public/dist/assets/ui-DK_9ndj0.js +0 -140
  477. /package/public/dist/assets/{locale-DT1WRaeJ.js → locale-BHMJIzyw.js} +0 -0
@@ -5,10 +5,33 @@ import { stripUndefined } from '../core/strip-undefined.js';
5
5
  import { assertSendFilePath } from '../security/path-guards.js';
6
6
  import { getLastActiveTarget, getLatestSeenTarget, clearTargetState } from './runtime.js';
7
7
  const sendFns = new Map();
8
+ const OUTBOUND_TYPES = new Set(['text', 'voice', 'photo', 'document']);
9
+ const CHANNELS = new Set(['telegram', 'discord', 'active']);
8
10
  export function registerSendTransport(channel, fn) {
9
11
  sendFns.set(channel, fn);
10
12
  }
11
13
  // ─── Normalize ──────────────────────────────────────
14
+ function badRequest(code) {
15
+ return Object.assign(new Error(code), { statusCode: 400, code });
16
+ }
17
+ function normalizeOutboundType(value) {
18
+ const type = value == null || value === ''
19
+ ? 'text'
20
+ : String(value).trim().toLowerCase();
21
+ if (!OUTBOUND_TYPES.has(type)) {
22
+ throw badRequest('invalid_outbound_type');
23
+ }
24
+ return type;
25
+ }
26
+ function normalizeChannel(value) {
27
+ const channel = value == null || value === ''
28
+ ? 'active'
29
+ : String(value).trim().toLowerCase();
30
+ if (!CHANNELS.has(channel)) {
31
+ throw badRequest('invalid_channel');
32
+ }
33
+ return channel;
34
+ }
12
35
  export function normalizeChannelSendRequest(body) {
13
36
  const rawPath = body["file_path"] || body["filePath"];
14
37
  let filePath;
@@ -16,13 +39,13 @@ export function normalizeChannelSendRequest(body) {
16
39
  filePath = assertSendFilePath(String(rawPath), settings["workingDir"] || undefined, settings["projectDirs"] || null);
17
40
  }
18
41
  return stripUndefined({
19
- channel: body["channel"] || 'active',
20
- type: (body["type"] || 'text'),
42
+ channel: normalizeChannel(body["channel"]),
43
+ type: normalizeOutboundType(body["type"]),
21
44
  text: body["text"],
22
45
  filePath,
23
46
  caption: body["caption"],
24
47
  target: body["target"],
25
- chatId: body["chat_id"] || body["chatId"],
48
+ chatId: body["chat_id"] ?? body["chatId"],
26
49
  });
27
50
  }
28
51
  // ─── Resolve Target ─────────────────────────────────
@@ -62,10 +85,10 @@ function getConfiguredFallbackTarget(channel) {
62
85
  return null;
63
86
  }
64
87
  /**
65
- * Validate a cached target against the current channel's configured allowlist.
88
+ * Validate a target against the current channel's configured allowlist.
66
89
  * Returns true if the target is valid for the given channel.
67
90
  */
68
- export function validateTarget(target, channel) {
91
+ export function validateTarget(target, channel, options = {}) {
69
92
  if (!target || !target.targetId)
70
93
  return false;
71
94
  if (target.channel !== channel)
@@ -79,20 +102,56 @@ export function validateTarget(target, channel) {
79
102
  if (!inAllowlist)
80
103
  return false;
81
104
  }
105
+ else if (options.requireConfiguredAllowlist) {
106
+ return false;
107
+ }
82
108
  }
83
109
  else if (channel === 'telegram') {
84
110
  const allowed = settings["telegram"]?.allowedChatIds;
85
111
  if (allowed?.length && !allowed.map(String).includes(String(target.targetId)))
86
112
  return false;
113
+ if (!allowed?.length && options.requireConfiguredAllowlist)
114
+ return false;
87
115
  }
88
116
  return true;
89
117
  }
118
+ function targetFromChatId(channel, chatId) {
119
+ return channel === 'telegram'
120
+ ? {
121
+ channel: 'telegram',
122
+ targetKind: 'user',
123
+ peerKind: 'direct',
124
+ targetId: String(chatId),
125
+ }
126
+ : {
127
+ channel: 'discord',
128
+ targetKind: 'channel',
129
+ peerKind: 'channel',
130
+ targetId: String(chatId),
131
+ };
132
+ }
133
+ export function validateExplicitChatId(channel, chatId) {
134
+ return validateTarget(targetFromChatId(channel, chatId), channel, { requireConfiguredAllowlist: true });
135
+ }
90
136
  export async function sendChannelOutput(req) {
91
137
  const channel = resolveChannel(req);
138
+ if (!OUTBOUND_TYPES.has(req.type)) {
139
+ return { ok: false, status: 400, error: `Invalid outbound type: ${String(req.type)}` };
140
+ }
141
+ if (req.chatId != null && String(req.chatId).trim()) {
142
+ const explicitTarget = targetFromChatId(channel, req.chatId);
143
+ if (!validateTarget(explicitTarget, channel, { requireConfiguredAllowlist: true })) {
144
+ return { ok: false, status: 403, error: `Explicit ${channel} chatId is not in the configured allowlist` };
145
+ }
146
+ if (req.target && (req.target.targetId !== explicitTarget.targetId || req.target.channel !== explicitTarget.channel)) {
147
+ return { ok: false, status: 400, error: 'chatId and target refer to different destinations' };
148
+ }
149
+ req.target = req.target || explicitTarget;
150
+ }
92
151
  // Validate explicit target (shape + allowlist)
93
152
  if (req.target) {
94
- if (!validateTarget(req.target, channel)) {
95
- return { ok: false, error: `Invalid or disallowed target for ${channel}: ${req.target.targetId || '(empty)'}` };
153
+ if (!validateTarget(req.target, channel, { requireConfiguredAllowlist: true })) {
154
+ return { ok: false, status: 403, error: `Invalid or disallowed target for ${channel}: ${req.target.targetId || '(empty)'}` };
96
155
  }
97
156
  }
98
157
  // Resolve target: explicit > validated lastActive > validated latestSeen > configured fallback > error
@@ -1 +1 @@
1
- {"version":3,"file":"send.js","sourceRoot":"","sources":["../../../src/messaging/send.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"send.js","sourceRoot":"","sources":["../../../src/messaging/send.ts"],"names":[],"mappings":"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"}
@@ -18,13 +18,14 @@ export function orchestrateAndCollect(prompt, meta = {}, locale = 'ko') {
18
18
  }, IDLE_TIMEOUT);
19
19
  }
20
20
  const handler = (type, data) => {
21
- if (type === 'agent_chunk' || type === 'agent_tool' ||
21
+ // Live assistant chunks arrive as agent_output (Web UI + spawn.ts); legacy alias agent_chunk.
22
+ if (type === 'agent_chunk' || type === 'agent_output' || type === 'agent_tool' ||
22
23
  type === 'agent_status' || type === 'agent_retry' ||
23
24
  type === 'agent_done' || type === 'agent_fallback' ||
24
25
  type === 'round_start' || type === 'round_done') {
25
26
  resetTimeout();
26
27
  }
27
- // NOTE: agent_output removed no broadcast emits this event (dead branch)
28
+ // agent_output is the live stream event; agent_done remains authoritative.
28
29
  if (type === 'agent_done' && data["error"] && data["text"]) {
29
30
  collected = collected || data["text"];
30
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"collect.js","sourceRoot":"","sources":["../../../src/orchestrator/collect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collect.js","sourceRoot":"","sources":["../../../src/orchestrator/collect.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ import { startWorkerMonitor } from './worker-monitor.js';
10
10
  import { isSessionPersistingCli } from '../agent/cli-helpers.js';
11
11
  import { buildWorkspaceContextBlock } from './workspace-context.js';
12
12
  import { updateWorkerPhase } from './worker-registry.js';
13
+ import { sanitizeToolLogForDurableStorage } from '../shared/tool-log-sanitize.js';
13
14
  // ─── Phase Constants (shared with pipeline.ts) ───────
14
15
  export const PHASES = { 1: 'Planning', 2: 'Plan Audit', 3: 'Development', 4: 'Debug/Check', 5: 'Integration' };
15
16
  // Employee-scoped phase agenda. Do NOT include delegation language
@@ -214,12 +215,12 @@ Output with empty subtasks and your answer in direct_answer:
214
215
  - false: 자동으로 done 처리
215
216
 
216
217
  #### Dev Skills Reference
217
- Each employee auto-receives role-matched dev skills:
218
+ Each employee receives a compact role contract and absolute skill paths:
218
219
  - frontend → dev-frontend SKILL.md (UI/component guide)
219
220
  - backend → dev-backend SKILL.md (API/server guide)
220
221
  - data → dev-data SKILL.md (data pipeline guide)
221
222
  - docs → documentation SKILL.md
222
- These include coding conventions, project structure, and testing rules.
223
+ Skill bodies are read on demand instead of preloaded into every employee prompt.
223
224
 
224
225
  ### ⚡ Parallel Execution (Tier 1-2 only)
225
226
  When 2+ subtasks modify **completely independent file sets**, mark them \`"parallel": true\`.
@@ -309,7 +310,10 @@ export async function runSingleAgent(ap, emp, worklog, round, meta, priorResults
309
310
  promptEmployee.id = emp.id;
310
311
  if (empCli)
311
312
  promptEmployee.cli = empCli;
312
- const sysPrompt = getEmployeePromptV2(promptEmployee, text(ap["role"]), currentPhase);
313
+ const sysPrompt = getEmployeePromptV2(promptEmployee, text(ap["role"]), currentPhase, {
314
+ mutable: ap["mutable"] === true,
315
+ scope: typeof ap["scope"] === 'string' ? ap["scope"] : null,
316
+ });
313
317
  const executionContext = ap["parallel"]
314
318
  ? buildParallelContext(ap, parallelPeers)
315
319
  : buildSequentialContext(ap, priorResults);
@@ -445,6 +449,7 @@ ${worklogBlock}`.trim();
445
449
  throw err;
446
450
  }
447
451
  const resultText = text(r["text"]);
452
+ const resultTools = Array.isArray(r["tools"]) ? sanitizeToolLogForDurableStorage(r["tools"]) : [];
448
453
  const isSuccess = r["code"] === 0 || (r["code"] == null && resultText.trim().length > 0);
449
454
  if (isSuccess && r["sessionId"] && isSessionPersistingCli(String(emp["cli"] || ''))) {
450
455
  const empOutputLen = typeof r["outputLen"] === 'number' ? r["outputLen"] : 0;
@@ -459,6 +464,7 @@ ${worklogBlock}`.trim();
459
464
  phase: currentPhase, phaseLabel,
460
465
  status: isSuccess ? 'done' : 'error',
461
466
  text: diagnosticText,
467
+ tools: resultTools,
462
468
  };
463
469
  // Parse phases_completed from agent output (supports both plain-text and legacy JSON)
464
470
  const responseText = diagnosticText;
@@ -1 +1 @@
1
- {"version":3,"file":"distribute.js","sourceRoot":"","sources":["../../../src/orchestrator/distribute.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,sDAAsD;AAEtD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAChG,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,wDAAwD;AAExD,MAAM,CAAC,MAAM,MAAM,GAA2B,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC;AAEvI,mEAAmE;AACnE,oFAAoF;AACpF,iFAAiF;AACjF,MAAM,CAAC,MAAM,kBAAkB,GAA2B;IACtD,CAAC,EAAE;;;;mEAI4D;IAC/D,CAAC,EAAE;;;;;4CAKqC;IACxC,CAAC,EAAE;;;mDAG4C;IAC/C,CAAC,EAAE;;6HAEsH;IACzH,CAAC,EAAE;;iEAE0D;CAChE,CAAC;AAEF,6EAA6E;AAC7E,6EAA6E;AAC7E,iEAAiE;AACjE,MAAM,CAAC,MAAM,iBAAiB,GAA2B;IACrD,CAAC,EAAE,0GAA0G;IAC7G,CAAC,EAAE,wOAAwO;IAC3O,CAAC,EAAE,oEAAoE;IACvE,CAAC,EAAE,oFAAoF;IACvF,CAAC,EAAE,uEAAuE;CAC7E,CAAC;AAmCF,SAAS,IAAI,CAAC,KAAc,EAAE,QAAQ,GAAG,EAAE;IACvC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AACxD,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IAC/B,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,cAAc,CAAC,EAAkB;IACtC,OAAO,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC;QACjC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;QACnE,CAAC,CAAC,EAAE,CAAC;AACb,CAAC;AAED,SAAS,eAAe,CAAC,EAAkB;IACvC,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC;IAC9C,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/F,CAAC;AAED,wDAAwD;AAExD,MAAM,UAAU,oBAAoB,CAAC,EAAkB,EAAE,KAAuB;IAC5E,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,sBAAsB,CAAC;IACtG,MAAM,QAAQ,GAAG,KAAK;SACjB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;SACvC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,aAAa,EAAE,CAAC;SAC7F,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC;IAE5B,OAAO;;6BAEkB,EAAE,CAAC,MAAM,CAAC;;;;;EAKrC,OAAO;;;EAGP,QAAQ,EAAE,CAAC;AACb,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,EAAkB,EAAE,YAA8B;IACrF,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC;QACxC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACvH,CAAC,CAAC,2BAA2B,CAAC;IAElC,OAAO;;6BAEkB,EAAE,CAAC,MAAM,CAAC;;;EAGrC,YAAY,EAAE,CAAC;AACjB,CAAC;AAED,wDAAwD;AAExD,MAAM,UAAU,YAAY,CAAC,IAAoB,EAAE,EAAkB;IACjE,kEAAkE;IAClE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,sCAAsC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QAClF,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,4BAA4B;IAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACxD,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC;IACxB,oCAAoC;IACpC,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACpC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;IACrF,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAClB,+CAA+C;IAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;QACxB,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACrC,OAAO,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;IAC7G,CAAC,CAAC,CAAC;IACH,IAAI,KAAK;QAAE,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC7F,OAAO,KAAK,IAAI,IAAI,CAAC;AACzB,CAAC;AAED,wDAAwD;AAExD,MAAM,UAAU,sBAAsB,CAAC,WAA6B;IAChE,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAChE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO;IAEtC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC1C,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;QAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,QAAQ,IAAI,QAAQ,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvC,OAAO,CAAC,IAAI,CACR,iDAAiD,IAAI,MAAM;oBAC3D,IAAI,QAAQ,UAAU,EAAE,CAAC,OAAO,CAAC,0BAA0B;oBAC3D,gBAAgB,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAChD,CAAC;gBACF,EAAE,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC;gBACvB,MAAM;YACV,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC;IACL,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAiB,EAAE,CAAiB;IAC/D,MAAM,KAAK,GAAG;QACV,yCAAyC;QACzC,SAAS,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE;QACnC,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,SAAS,EAAE;QAChC,SAAS,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS,EAAE;QACpC,YAAY,CAAC,CAAC,MAAM,CAAC,IAAI,SAAS,EAAE;QACpC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,aAAa,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACxE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,cAAc,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;KAC/E,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,wDAAwD;AAExD,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,WAAmB,EAAE,IAAoB;IACrF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,IAAI,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE3H,OAAO;EACT,MAAM;;;EAGN,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAmIO,WAAW;+BACI,CAAC;AAChC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAChC,EAAkB,EAClB,GAAiB,EACjB,OAAgC,EAChC,KAAa,EACb,IAA6B,EAC7B,YAA8B,EAC9B,gBAAkC,EAAE;IAEpC,MAAM,YAAY,GAAG,WAAW,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IACrD,MAAM,eAAe,GAAG,WAAW,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC3D,MAAM,YAAY,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IACxC,MAAM,cAAc,GAAwE;QACxF,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;KACvB,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,OAAO;QAAE,cAAc,CAAC,IAAI,GAAG,OAAO,CAAC;IAC3C,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ;QAAE,cAAc,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC;IACzF,IAAI,MAAM;QAAE,cAAc,CAAC,GAAG,GAAG,MAAM,CAAC;IACxC,MAAM,SAAS,GAAG,mBAAmB,CAAC,cAAc,EAAE,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IAEtF,MAAM,gBAAgB,GAAG,EAAE,CAAC,UAAU,CAAC;QACnC,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE,aAAa,CAAC;QACzC,CAAC,CAAC,sBAAsB,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IAE/C,MAAM,eAAe,GAAG,YAAY;SAC/B,KAAK,CAAC,eAAe,CAAC;SACtB,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;SACxC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEf,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,MAAM,UAAU,GAAI,QAAQ,CAAC,aAAa,CAAqB,IAAI,IAAI,CAAC;IACxE,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,oBAAoB,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,UAAU,IAAI,UAAU;QAC3C,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC,IAAI,CAAC;IACX,MAAM,aAAa,GAAG,WAAW;QAC7B,CAAC,CAAC,CAAC,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC;QACvE,CAAC,CAAC,UAAU,CAAC;IACjB,MAAM,cAAc,GAAG,0BAA0B,CAAC;QAC9C,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI;QAC1C,WAAW,EAAE,aAAa;QAC1B,WAAW;QACX,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;KACzB,CAAC,CAAC;IACH,sFAAsF;IACtF,mFAAmF;IACnF,6CAA6C;IAC7C,MAAM,YAAY,GAAG,WAAW;QAC5B,CAAC,CAAC;;+FAEqF,WAAW,EAAE;QACpG,CAAC,CAAC,EAAE,CAAC;IAET,MAAM,UAAU,GAAG,GAAG,cAAc;;uBAEjB,UAAU;EAC/B,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;;;;;;;;;;;oBAWE,EAAE,CAAC,cAAc,CAAC,KAAK,UAAU;EACnD,WAAW;;uBAEU,eAAe;;;;;;;;;;;oBAWlB,YAAY,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;EAIhE,gBAAgB;;EAEhB,YAAY,EAAE,CAAC,IAAI,EAAE,CAAC;IAEpB,SAAS,CAAC,cAAc,EAAE;QACtB,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC;QAC1C,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,EAAE,UAAU;QACxD,UAAU,EAAE,IAAI;KACnB,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9B,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC;IAEjE,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAA+B,CAAC;IAC/E,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,CAAC,CAAC,CAChB,sBAAsB,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;WAC7C,YAAY;WACZ,UAAU,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC;WAClC,MAAM,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,aAAa,CAC3D,CAAC;IACF,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,UAAU,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;QAClF,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,OAAO,GAAG,kBAAkB,CAAC;QAC/B,OAAO,EAAE,KAAK;QACd,gBAAgB,EAAE,OAAO;QACzB,aAAa,EAAE,OAAO;QACtB,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QAC1G,YAAY,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,qBAAqB,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QAC/G,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE;YACd,SAAS,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1F,aAAa,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;KACJ,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,SAAS,IAAI,OAAO,UAAU,EAAE,CAAC,YAAY,CAAC,KAAK,QAAQ;QAClF,CAAC,CAAC,UAAU,CAAC,YAAY,CAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,UAAU,EAAE;QACvC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAChE,QAAQ,EAAE,CAAC,SAAS;QACpB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChG,SAAS,EAAE,SAAS;QACpB,gBAAgB,EAAE,cAAc;QAChC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;QACnC,GAAG,EAAE;YACD,iBAAiB,EAAE,GAAG;YACtB,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,iBAAiB,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC1D,kBAAkB,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE;YACtE,GAAG,CAAC,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE;gBAClD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;gBAC1C,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;oBACpB,OAAO,CAAC,IAAI,CAAC,0CAA0C,GAAG,CAAC,MAAM,4BAA4B,CAAC,CAAC;oBAC/F,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpE,CAAC;gBACD,OAAO,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC;YACrC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACV,gBAAgB,EAAE,WAAW,IAAI,EAAE;YACnC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;SAC1C;QACD,SAAS,EAAE;YACP,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAmD,CAAC;YAC1F,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;SACvC;KACJ,CAAC,CAAC;IACH,IAAI,CAAiB,CAAC;IACtB,IAAI,CAAC;QACD,CAAC,GAAG,MAAM,OAAyB,CAAC;QACpC,OAAO,CAAC,IAAI,EAAE,CAAC;IACnB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,MAAM,GAAG,CAAC;IACd,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACnC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACzF,IAAI,SAAS,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,sBAAsB,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;QAClF,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,qBAAqB,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;IAC9F,CAAC;SAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;QAC3D,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IACD,MAAM,cAAc,GAAG,UAAU,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACtF,MAAM,MAAM,GAAG;QACX,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC;QACnD,KAAK,EAAE,YAAY,EAAE,UAAU;QAC/B,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;QACpC,IAAI,EAAE,cAAc;KACvB,CAAC;IAEF,sFAAsF;IACtF,MAAM,YAAY,GAAG,cAAc,CAAC;IAEpC,gFAAgF;IAChF,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACnE,wDAAwD;IACxD,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAEhG,IAAI,eAAe,GAAoB,IAAI,CAAC;IAE5C,IAAI,UAAU,EAAE,CAAC;QACb,MAAM,KAAK,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3H,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,eAAe,GAAG,KAAK,CAAC;IAClD,CAAC;SAAM,IAAI,SAAS,EAAE,CAAC;QACnB,IAAI,CAAC;YACD,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvE,eAAe,GAAG,EAAE,CAAC,gBAAgB,CAAC;YAC1C,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAAC,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAAC,CAAC;IAC7E,CAAC;IAED,IAAI,eAAe,EAAE,CAAC;QAClB,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC;QACvE,IAAI,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;YACZ,EAAE,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC;QACrF,CAAC;aAAM,IAAI,MAAM,GAAG,eAAe,GAAG,CAAC,EAAE,CAAC;YACtC,EAAE,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC;YAC/B,EAAE,CAAC,cAAc,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC,cAAc,CAAC,gBAAgB,eAAe,GAAG,CAAC,CAAC;QAC1H,CAAC;IACL,CAAC;IAED,SAAS,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9I,IAAI,WAAW,EAAE,CAAC;QACd,eAAe,CAAC,WAAW,EAAE,eAAe,EACxC,aAAa,KAAK,MAAM,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,gBAAgB,MAAM,CAAC,MAAM,eAAe,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CACpJ,CAAC;IACN,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"distribute.js","sourceRoot":"","sources":["../../../src/orchestrator/distribute.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import { createHash } from 'crypto';
2
+ const ledger = new Map();
3
+ function normalizeError(error) {
4
+ return error
5
+ .toLowerCase()
6
+ .replace(/\d+:\d+/g, 'L:C')
7
+ .replace(/\/[\w/.-]+\//g, '.../')
8
+ .replace(/\s+/g, ' ')
9
+ .trim()
10
+ .slice(0, 500);
11
+ }
12
+ export function recordFriction(tool, error) {
13
+ const normalized = normalizeError(error);
14
+ const hash = createHash('sha256').update(`${tool}:${normalized}`).digest('hex');
15
+ const now = new Date().toISOString();
16
+ const existing = ledger.get(hash);
17
+ if (!existing) {
18
+ ledger.set(hash, {
19
+ toolOrPhase: tool,
20
+ errorFingerprint: hash,
21
+ count: 1,
22
+ firstSeen: now,
23
+ lastSeen: now,
24
+ });
25
+ return 'retry';
26
+ }
27
+ existing.count++;
28
+ existing.lastSeen = now;
29
+ if (existing.count >= 3)
30
+ return 'stop';
31
+ if (existing.count >= 2)
32
+ return 'escalate';
33
+ return 'retry';
34
+ }
35
+ export function resetFriction() {
36
+ ledger.clear();
37
+ }
38
+ export function getFrictionSummary() {
39
+ return Array.from(ledger.values())
40
+ .filter(s => s.count >= 2)
41
+ .sort((a, b) => b.count - a.count);
42
+ }
43
+ // P3-3: Oscillation detection (done→needs_fix→done→needs_fix)
44
+ const verdictHistory = [];
45
+ export function recordVerdict(verdict) {
46
+ verdictHistory.push(verdict);
47
+ if (verdictHistory.length > 10)
48
+ verdictHistory.shift();
49
+ }
50
+ export function detectOscillation() {
51
+ if (verdictHistory.length < 4)
52
+ return false;
53
+ const last4 = verdictHistory.slice(-4);
54
+ return last4[0] === last4[2] && last4[1] === last4[3] && last4[0] !== last4[1];
55
+ }
56
+ export function resetVerdictHistory() {
57
+ verdictHistory.length = 0;
58
+ }
59
+ //# sourceMappingURL=friction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"friction.js","sourceRoot":"","sources":["../../../src/orchestrator/friction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAUpC,MAAM,MAAM,GAAG,IAAI,GAAG,EAA6B,CAAC;AAEpD,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,KAAK;SACT,WAAW,EAAE;SACb,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC;SAC1B,OAAO,CAAC,eAAe,EAAE,MAAM,CAAC;SAChC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,IAAI,EAAE;SACN,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACnB,CAAC;AAID,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,KAAa;IACxD,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAChF,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE;YACf,WAAW,EAAE,IAAI;YACjB,gBAAgB,EAAE,IAAI;YACtB,KAAK,EAAE,CAAC;YACR,SAAS,EAAE,GAAG;YACd,QAAQ,EAAE,GAAG;SACd,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,QAAQ,CAAC,QAAQ,GAAG,GAAG,CAAC;IAExB,IAAI,QAAQ,CAAC,KAAK,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC;IACvC,IAAI,QAAQ,CAAC,KAAK,IAAI,CAAC;QAAE,OAAO,UAAU,CAAC;IAC3C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,MAAM,CAAC,KAAK,EAAE,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;SAC/B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;SACzB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AAED,8DAA8D;AAC9D,MAAM,cAAc,GAAa,EAAE,CAAC;AAEpC,MAAM,UAAU,aAAa,CAAC,OAAe;IAC3C,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7B,IAAI,cAAc,CAAC,MAAM,GAAG,EAAE;QAAE,cAAc,CAAC,KAAK,EAAE,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC;AACjF,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;AAC5B,CAAC"}
@@ -5,6 +5,7 @@ import { randomUUID } from 'node:crypto';
5
5
  import { isAgentBusy, enqueueMessage, messageQueue } from '../agent/spawn.js';
6
6
  import { hasBlockingWorkers } from './worker-registry.js';
7
7
  import { insertMessage } from '../core/db.js';
8
+ import { getActiveChatSession } from '../core/chat-sessions.js';
8
9
  import { settings } from '../core/config.js';
9
10
  import { stripUndefined } from '../core/strip-undefined.js';
10
11
  import { broadcast } from '../core/bus.js';
@@ -70,7 +71,7 @@ export function submitMessage(text, meta) {
70
71
  if (getState(scope) === 'IDLE' && isContinueIntent(trimmed)) {
71
72
  if (isAgentBusy())
72
73
  return { action: 'rejected', reason: 'busy' };
73
- insertMessage.run('user', display, meta.origin, '', settings["workingDir"] || null);
74
+ insertMessage.run('user', display, meta.origin, '', settings["workingDir"] || null, getActiveChatSession());
74
75
  broadcast('new_message', { role: 'user', content: display, source: meta.origin });
75
76
  if (!meta.skipOrchestrate) {
76
77
  runDetached(orchestrateContinue({ origin: meta.origin, target: meta.target, chatId: meta.chatId, requestId, _skipInsert: true }), 'continue', { ...meta, requestId });
@@ -79,7 +80,7 @@ export function submitMessage(text, meta) {
79
80
  }
80
81
  // ── reset intent ──
81
82
  if (isResetIntent(trimmed)) {
82
- insertMessage.run('user', display, meta.origin, '', settings["workingDir"] || null);
83
+ insertMessage.run('user', display, meta.origin, '', settings["workingDir"] || null, getActiveChatSession());
83
84
  broadcast('new_message', { role: 'user', content: display, source: meta.origin });
84
85
  if (!meta.skipOrchestrate) {
85
86
  runDetached(orchestrateReset({ origin: meta.origin, target: meta.target, chatId: meta.chatId, requestId, _skipInsert: true }), 'reset', { ...meta, requestId });
@@ -95,11 +96,10 @@ export function submitMessage(text, meta) {
95
96
  // documented in devlog/_plan/260417_message_duplication/02_*.
96
97
  if (isAgentBusy() || hasBlockingWorkers()) {
97
98
  const queuedId = enqueueMessage(trimmed, meta.origin, stripUndefined({ target: meta.target, chatId: meta.chatId, requestId, scope }));
98
- broadcast('new_message', { role: 'user', content: display, source: meta.origin });
99
99
  return { action: 'queued', pending: messageQueue.length, queued: true, requestId, queuedId };
100
100
  }
101
101
  // ── idle → start immediately ──
102
- insertMessage.run('user', display, meta.origin, '', settings["workingDir"] || null);
102
+ insertMessage.run('user', display, meta.origin, '', settings["workingDir"] || null, getActiveChatSession());
103
103
  broadcast('new_message', { role: 'user', content: display, source: meta.origin });
104
104
  if (!meta.skipOrchestrate) {
105
105
  runDetached(orchestrate(trimmed, { origin: meta.origin, target: meta.target, chatId: meta.chatId, requestId, _skipInsert: true }), 'orchestrate', { ...meta, requestId });
@@ -1 +1 @@
1
- {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../../src/orchestrator/gateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../../src/orchestrator/gateway.ts"],"names":[],"mappings":"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"}
@@ -5,13 +5,17 @@ import crypto from 'crypto';
5
5
  import { resolve } from 'node:path';
6
6
  import { broadcast } from '../core/bus.js';
7
7
  import { settings } from '../core/config.js';
8
- import { clearAllEmployeeSessions, upsertEmployeeSession, getRecentMessages, getLatestUnconsumedAnchor, } from '../core/db.js';
8
+ import { clearAllEmployeeSessions, getRecentMessagesLite, getLatestUnconsumedAnchor, } from '../core/db.js';
9
+ import { getActiveChatSession } from '../core/chat-sessions.js';
9
10
  import { clearPromptCache } from '../prompt/builder.js';
10
11
  import { spawnAgent, killAgentById } from '../agent/spawn.js';
11
12
  import { createWorklog, readLatestWorklog, appendToWorklog, upsertWorklogSection, updateWorklogStatus, } from '../memory/worklog.js';
12
- import { claimWorker, finishWorker, failWorker, listPendingWorkerResults, claimWorkerReplay, markWorkerReplayed, releaseWorkerReplay, getActiveWorkers, cancelWorker, clearAllWorkers, } from './worker-registry.js';
13
+ import { listPendingWorkerResults, claimWorkerReplay, markWorkerReplayed, releaseWorkerReplay, getActiveWorkers, cancelWorker, clearAllWorkers, } from './worker-registry.js';
13
14
  import { processQueue } from '../agent/spawn.js';
14
15
  import { getState, getPrefix, resetState, setState, getStatePrompt, getCtx, } from './state-machine.js';
16
+ import { resetFriction } from './friction.js';
17
+ import { stripInterviewTracker } from './sanitize.js';
18
+ // scope is globally 'default' — resolveOrcScope/findActiveScope no longer needed here
15
19
  import { buildMemoryInjection } from '../memory/injection.js';
16
20
  // ─── Parser re-exports ─────────────────────────────
17
21
  import { isContinueIntent, isResetIntent, isApproveIntent, parseDirectAnswer, stripSubtaskJSON, resolveNumericReference, } from './parser.js';
@@ -60,34 +64,6 @@ export function buildApprovedPlanPromptBlock(ctx, state, workingDir) {
60
64
  '---',
61
65
  ].filter(Boolean).join('\n');
62
66
  }
63
- async function executePreparedWorkerTask(prepared, args) {
64
- const { task, emp, workerPhase } = prepared;
65
- upsertEmployeeSession.run(emp["id"], null, emp["cli"], String(emp["model"] || ''), 0);
66
- claimWorker(emp, task["task"]);
67
- try {
68
- const result = await args.runSingle({
69
- ...task,
70
- phaseProfile: [workerPhase],
71
- currentPhaseIdx: 0,
72
- currentPhase: workerPhase,
73
- completed: false,
74
- history: [],
75
- }, emp, { path: args.worklogPath }, 1, { origin: args.origin }, args.priorResults || [], args.parallelPeers || []);
76
- if (result["status"] === 'done') {
77
- finishWorker(emp["id"], String(result["text"] || ''));
78
- }
79
- else {
80
- failWorker(emp["id"], String(result["text"] || `[worker error] ${emp["id"]}`));
81
- }
82
- return { emp, result, dispatched: true, ran: true };
83
- }
84
- catch (err) {
85
- failWorker(emp["id"], err.message || String(err));
86
- console.error(`[jaw:pabcd] worker ${emp["id"]} failed:`, err.message);
87
- return { emp, result: null, dispatched: true, ran: false };
88
- }
89
- }
90
- const ACTIVE_PABCD_DISPATCH_STATES = new Set(['P', 'A', 'B', 'C']);
91
67
  // ─── drainPendingReplays ─────────────────────────────
92
68
  // Feed completed-but-unreceived worker results back to Boss. Safe to call
93
69
  // from any idle caller (dispatch route on client-disconnect, processQueue
@@ -150,7 +126,7 @@ export async function orchestrate(prompt, meta = {}) {
150
126
  clearPromptCache();
151
127
  ctx = getCtx(scope);
152
128
  const numericResolution = state === 'P' && !ctx?.plan
153
- ? resolveNumericReference(userText, getRecentMessages.all(settings["workingDir"] || null, 20))
129
+ ? resolveNumericReference(userText, getRecentMessagesLite.all(settings["workingDir"] || null, getActiveChatSession(), 20))
154
130
  : null;
155
131
  if (numericResolution?.needsConfirmation) {
156
132
  broadcast('orchestrate_done', {
@@ -257,7 +233,7 @@ export async function orchestrate(prompt, meta = {}) {
257
233
  }
258
234
  }
259
235
  const source = meta["_workerResult"] ? 'worker' : 'user';
260
- const prefix = getPrefix(state, source);
236
+ const prefix = getPrefix(state, source, getCtx(scope));
261
237
  if (prefix && !skipPrefix) {
262
238
  prompt = prefix + '\n' + prompt;
263
239
  }
@@ -293,20 +269,84 @@ export async function orchestrate(prompt, meta = {}) {
293
269
  if (state === 'I' && !meta["_workerResult"]) {
294
270
  const ivCtx = getCtx(scope);
295
271
  if (ivCtx?.interview) {
296
- const trackerMatch = (result["text"] || '').match(/<interview_tracker>\s*\n?known:\s*(\[.*?\])\s*\n?unknown:\s*(\[.*?\])\s*\n?<\/interview_tracker>/s);
297
- if (trackerMatch) {
272
+ const originalText = result["text"] || '';
273
+ // Strip tracker from user-visible text (shared sanitizer)
274
+ result["text"] = stripInterviewTracker(originalText);
275
+ // P0-2 + P1-1: parse Evidence-Ref or legacy string format
276
+ // Try XML-tagged block first, then fallback to raw known:/unknown: in text
277
+ const xmlBlock = originalText.match(/<interview_tracker>([\s\S]*?)<\/interview_tracker>/);
278
+ const body = xmlBlock
279
+ ? xmlBlock[1]
280
+ : (originalText.includes('known:') ? originalText : null);
281
+ if (body) {
298
282
  try {
299
- const rawKnown = JSON.parse(trackerMatch[1]);
300
- const rawUnknown = JSON.parse(trackerMatch[2]);
301
- const known = Array.isArray(rawKnown) ? rawKnown.filter((v) => typeof v === 'string') : [];
302
- const unknown = Array.isArray(rawUnknown) ? rawUnknown.filter((v) => typeof v === 'string') : [];
303
- setState('I', {
304
- ...ivCtx,
305
- interview: { ...ivCtx.interview, round: ivCtx.interview.round + 1, known, unknown },
306
- }, scope, 'Interview');
283
+ const knownMatch = body.match(/known:\s*(\[[\s\S]*?\])\s*(?:unknown:|$)/);
284
+ const unknownMatch = body.match(/unknown:\s*(\[[\s\S]*?\])/)
285
+ || body.match(/unknown:\s*(\[[\s\S]*\])\s*$/);
286
+ const rawKnown = knownMatch ? JSON.parse(knownMatch[1]) : [];
287
+ const rawUnknown = unknownMatch ? JSON.parse(unknownMatch[1]) : [];
288
+ const nextRound = ivCtx.interview.round + 1;
289
+ const VALID_SOURCES = ['user_statement', 'repo_fact', 'inference', 'assumption', 'default'];
290
+ const VALID_DIMS = ['goal', 'constraint', 'success', 'ontology'];
291
+ // P1-1: parse known as Evidence[] (with string fallback)
292
+ const known = Array.isArray(rawKnown)
293
+ ? rawKnown.map((v) => {
294
+ if (typeof v === 'string' && v.trim().length > 0) {
295
+ return { fact: v.trim(), source: 'inference', confidence: 0.5, turnNumber: nextRound };
296
+ }
297
+ if (typeof v === 'object' && v && 'fact' in v) {
298
+ const ev = v;
299
+ const eFact = String(ev['fact'] || '').trim();
300
+ const eSrc = String(ev['source'] || 'inference');
301
+ const eConf = ev['confidence'];
302
+ const eTurn = ev['turnNumber'];
303
+ const eDim = String(ev['dimension'] || '');
304
+ return {
305
+ fact: eFact,
306
+ source: (VALID_SOURCES.includes(eSrc) ? eSrc : 'inference'),
307
+ confidence: typeof eConf === 'number' ? eConf : 0.5,
308
+ turnNumber: typeof eTurn === 'number' ? eTurn : nextRound,
309
+ ...(VALID_DIMS.includes(eDim) ? { dimension: eDim } : {}),
310
+ };
311
+ }
312
+ return null;
313
+ }).filter((v) => v !== null && v.fact.length > 0)
314
+ : [];
315
+ const unknown = Array.isArray(rawUnknown)
316
+ ? rawUnknown.filter((v) => typeof v === 'string' && v.trim().length > 0)
317
+ : [];
318
+ // P2-2: parse assessment if present
319
+ let assessment;
320
+ const assessMatch = body.match(/assessment:\s*(\{[^}]+\})/);
321
+ if (assessMatch) {
322
+ try {
323
+ const raw = JSON.parse(assessMatch[1]);
324
+ const VALID_LEVELS = ['low', 'medium', 'high', 'xhigh', 'max'];
325
+ if (raw && VALID_LEVELS.includes(raw['goal']) && VALID_LEVELS.includes(raw['constraint'])) {
326
+ assessment = {
327
+ goal: raw['goal'], constraint: raw['constraint'],
328
+ success: raw['success'] || 'low', ontology: raw['ontology'] || 'low',
329
+ };
330
+ }
331
+ }
332
+ catch { /* skip */ }
333
+ }
334
+ if (known.length || unknown.length) {
335
+ // Gap B: drop any prior-round assessment from the carried state so a
336
+ // missing assessment block can't silently persist a stale score (drift).
337
+ // Re-add only when THIS round actually emitted a fresh assessment.
338
+ const { assessment: _stale, ...prevInterview } = ivCtx.interview;
339
+ void _stale;
340
+ setState('I', {
341
+ ...ivCtx,
342
+ interview: {
343
+ ...prevInterview, round: nextRound, known, unknown,
344
+ ...(assessment ? { assessment } : {}),
345
+ },
346
+ }, scope, 'Interview');
347
+ }
307
348
  }
308
- catch { /* malformed JSONkeep existing state */ }
309
- result["text"] = result["text"].replace(/<interview_tracker>[\s\S]*?<\/interview_tracker>/g, '').trim();
349
+ catch { /* parse failedstate unchanged, tracker already stripped */ }
310
350
  }
311
351
  }
312
352
  }
@@ -336,8 +376,11 @@ export async function orchestrate(prompt, meta = {}) {
336
376
  }
337
377
  }
338
378
  }
379
+ // Final safety strip: shared sanitizer regardless of state
380
+ if (typeof result["text"] === 'string') {
381
+ result["text"] = stripInterviewTracker(result["text"]);
382
+ }
339
383
  // Normal response → broadcast
340
- // (Worker JSON dispatch removed in patch3 — Boss calls `cli-jaw dispatch` directly)
341
384
  broadcast('orchestrate_done', {
342
385
  text: result["text"] || '',
343
386
  origin,
@@ -383,6 +426,7 @@ export async function orchestrateReset(meta = {}) {
383
426
  }
384
427
  clearAllWorkers();
385
428
  clearAllEmployeeSessions.run();
429
+ resetFriction();
386
430
  const scope = 'default';
387
431
  resetState(scope);
388
432
  try {