cli-jaw 2.2.4 → 2.2.5

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 (631) hide show
  1. package/README.md +5 -4
  2. package/dist/bin/cli-jaw.js +9 -1
  3. package/dist/bin/cli-jaw.js.map +1 -1
  4. package/dist/bin/commands/chat.js +9 -1
  5. package/dist/bin/commands/chat.js.map +1 -1
  6. package/dist/bin/commands/design.js +172 -0
  7. package/dist/bin/commands/design.js.map +1 -0
  8. package/dist/bin/commands/dispatch-helpers.js +28 -0
  9. package/dist/bin/commands/dispatch-helpers.js.map +1 -1
  10. package/dist/bin/commands/dispatch.js +133 -31
  11. package/dist/bin/commands/dispatch.js.map +1 -1
  12. package/dist/bin/commands/doctor.js +1 -1
  13. package/dist/bin/commands/doctor.js.map +1 -1
  14. package/dist/bin/commands/init.js +1 -1
  15. package/dist/bin/commands/init.js.map +1 -1
  16. package/dist/bin/commands/map.js +53 -0
  17. package/dist/bin/commands/map.js.map +1 -0
  18. package/dist/bin/commands/mcp.js +1 -1
  19. package/dist/bin/commands/mcp.js.map +1 -1
  20. package/dist/bin/commands/skill.js +64 -3
  21. package/dist/bin/commands/skill.js.map +1 -1
  22. package/dist/bin/commands/status.js +1 -1
  23. package/dist/bin/commands/status.js.map +1 -1
  24. package/dist/bin/commands/tui/channel.js +20 -4
  25. package/dist/bin/commands/tui/channel.js.map +1 -1
  26. package/dist/bin/commands/tui/fullscreen-mode.js +17 -9
  27. package/dist/bin/commands/tui/fullscreen-mode.js.map +1 -1
  28. package/dist/bin/commands/tui/input-handler.js +30 -22
  29. package/dist/bin/commands/tui/input-handler.js.map +1 -1
  30. package/dist/bin/commands/tui/overlays.js +36 -8
  31. package/dist/bin/commands/tui/overlays.js.map +1 -1
  32. package/dist/bin/commands/tui/queue-command.js +71 -0
  33. package/dist/bin/commands/tui/queue-command.js.map +1 -0
  34. package/dist/bin/commands/tui/renderer.js +1 -0
  35. package/dist/bin/commands/tui/renderer.js.map +1 -1
  36. package/dist/bin/commands/tui/simple-mode.js +39 -1
  37. package/dist/bin/commands/tui/simple-mode.js.map +1 -1
  38. package/dist/bin/commands/tui/slash-command-runner.js +92 -4
  39. package/dist/bin/commands/tui/slash-command-runner.js.map +1 -1
  40. package/dist/bin/commands/tui/types.js +6 -4
  41. package/dist/bin/commands/tui/types.js.map +1 -1
  42. package/dist/bin/commands/tui/ws-handler.js +78 -9
  43. package/dist/bin/commands/tui/ws-handler.js.map +1 -1
  44. package/dist/bin/commands/worker.js +1 -3
  45. package/dist/bin/commands/worker.js.map +1 -1
  46. package/dist/bin/postinstall.js +3 -3
  47. package/dist/bin/postinstall.js.map +1 -1
  48. package/dist/server.js +7 -2
  49. package/dist/server.js.map +1 -1
  50. package/dist/src/agent/args.js +3 -0
  51. package/dist/src/agent/args.js.map +1 -1
  52. package/dist/src/agent/lifecycle-handler.js +20 -0
  53. package/dist/src/agent/lifecycle-handler.js.map +1 -1
  54. package/dist/src/agent/spawn.js +24 -2
  55. package/dist/src/agent/spawn.js.map +1 -1
  56. package/dist/src/bgtask/notifier.js +2 -1
  57. package/dist/src/bgtask/notifier.js.map +1 -1
  58. package/dist/src/bgtask/recover.js +8 -7
  59. package/dist/src/bgtask/recover.js.map +1 -1
  60. package/dist/src/bgtask/registry.js +2 -1
  61. package/dist/src/bgtask/registry.js.map +1 -1
  62. package/dist/src/bgtask/runner.js +3 -2
  63. package/dist/src/bgtask/runner.js.map +1 -1
  64. package/dist/src/browser/vision.js +3 -1
  65. package/dist/src/browser/vision.js.map +1 -1
  66. package/dist/src/browser/web-ai/tab-lease-store.js +1 -3
  67. package/dist/src/browser/web-ai/tab-lease-store.js.map +1 -1
  68. package/dist/src/cli/commands.js +26 -4
  69. package/dist/src/cli/commands.js.map +1 -1
  70. package/dist/src/cli/handlers-runtime.js +7 -1
  71. package/dist/src/cli/handlers-runtime.js.map +1 -1
  72. package/dist/src/cli/handlers.js +1 -1
  73. package/dist/src/cli/handlers.js.map +1 -1
  74. package/dist/src/cli/tui/jawcode-bridge.js +13 -14
  75. package/dist/src/cli/tui/jawcode-bridge.js.map +1 -1
  76. package/dist/src/cli/tui/markdown.js +1 -1
  77. package/dist/src/cli/tui/markdown.js.map +1 -1
  78. package/dist/src/cli/tui/overlay.js +65 -10
  79. package/dist/src/cli/tui/overlay.js.map +1 -1
  80. package/dist/src/cli/tui/render/frame.js +109 -103
  81. package/dist/src/cli/tui/render/frame.js.map +1 -1
  82. package/dist/src/cli/tui/transcript.js +31 -9
  83. package/dist/src/cli/tui/transcript.js.map +1 -1
  84. package/dist/src/core/bus.js +2 -0
  85. package/dist/src/core/bus.js.map +1 -1
  86. package/dist/src/core/chat-sessions.js +2 -0
  87. package/dist/src/core/chat-sessions.js.map +1 -1
  88. package/dist/src/core/codex-config.js +2 -1
  89. package/dist/src/core/codex-config.js.map +1 -1
  90. package/dist/src/core/config.js +6 -3
  91. package/dist/src/core/config.js.map +1 -1
  92. package/dist/src/core/event-bus.js +1 -1
  93. package/dist/src/core/event-bus.js.map +1 -1
  94. package/dist/src/core/logger.js +9 -1
  95. package/dist/src/core/logger.js.map +1 -1
  96. package/dist/src/core/main-session.js +2 -1
  97. package/dist/src/core/main-session.js.map +1 -1
  98. package/dist/src/core/runtime-settings.js +2 -1
  99. package/dist/src/core/runtime-settings.js.map +1 -1
  100. package/dist/src/core/session-ops.js +1 -1
  101. package/dist/src/core/session-ops.js.map +1 -1
  102. package/dist/src/core/widget-watcher.js +113 -0
  103. package/dist/src/core/widget-watcher.js.map +1 -0
  104. package/dist/src/discord/bot.js +42 -31
  105. package/dist/src/discord/bot.js.map +1 -1
  106. package/dist/src/discord/channel-types.js +16 -0
  107. package/dist/src/discord/channel-types.js.map +1 -1
  108. package/dist/src/discord/commands.js +8 -6
  109. package/dist/src/discord/commands.js.map +1 -1
  110. package/dist/src/discord/discord-file.js +4 -2
  111. package/dist/src/discord/discord-file.js.map +1 -1
  112. package/dist/src/discord/forwarder.js +10 -6
  113. package/dist/src/discord/forwarder.js.map +1 -1
  114. package/dist/src/ide/diff.js +1 -1
  115. package/dist/src/ide/diff.js.map +1 -1
  116. package/dist/src/manager/dashboard-service.js +5 -5
  117. package/dist/src/manager/dashboard-service.js.map +1 -1
  118. package/dist/src/manager/design/path-guards.js +86 -0
  119. package/dist/src/manager/design/path-guards.js.map +1 -0
  120. package/dist/src/manager/design/schema.js +54 -0
  121. package/dist/src/manager/design/schema.js.map +1 -0
  122. package/dist/src/manager/design/snapshots.js +62 -0
  123. package/dist/src/manager/design/snapshots.js.map +1 -0
  124. package/dist/src/manager/design/store.js +269 -0
  125. package/dist/src/manager/design/store.js.map +1 -0
  126. package/dist/src/manager/design/watcher.js +49 -0
  127. package/dist/src/manager/design/watcher.js.map +1 -0
  128. package/dist/src/manager/memory/embedding/vec-store.js +1 -1
  129. package/dist/src/manager/memory/embedding/vec-store.js.map +1 -1
  130. package/dist/src/manager/registry.js +84 -0
  131. package/dist/src/manager/registry.js.map +1 -1
  132. package/dist/src/manager/routes/dashboard-design.js +234 -0
  133. package/dist/src/manager/routes/dashboard-design.js.map +1 -0
  134. package/dist/src/manager/routes/dashboard-memory.js +1 -1
  135. package/dist/src/manager/routes/dashboard-memory.js.map +1 -1
  136. package/dist/src/manager/routes/embedded-browser.js +497 -0
  137. package/dist/src/manager/routes/embedded-browser.js.map +1 -0
  138. package/dist/src/manager/routes/telegram-hub.js +4 -3
  139. package/dist/src/manager/routes/telegram-hub.js.map +1 -1
  140. package/dist/src/manager/server.js +17 -2
  141. package/dist/src/manager/server.js.map +1 -1
  142. package/dist/src/manager/telegram-hub/hub-bot.js +127 -7
  143. package/dist/src/manager/telegram-hub/hub-bot.js.map +1 -1
  144. package/dist/src/memory/heartbeat.js +15 -14
  145. package/dist/src/memory/heartbeat.js.map +1 -1
  146. package/dist/src/memory/identity.js +3 -2
  147. package/dist/src/memory/identity.js.map +1 -1
  148. package/dist/src/memory/memory.js +3 -2
  149. package/dist/src/memory/memory.js.map +1 -1
  150. package/dist/src/memory/reflect.js +2 -1
  151. package/dist/src/memory/reflect.js.map +1 -1
  152. package/dist/src/memory/runtime.js +3 -2
  153. package/dist/src/memory/runtime.js.map +1 -1
  154. package/dist/src/memory/shared.js +4 -3
  155. package/dist/src/memory/shared.js.map +1 -1
  156. package/dist/src/memory/worklog.js +3 -2
  157. package/dist/src/memory/worklog.js.map +1 -1
  158. package/dist/src/messaging/runtime.js +4 -3
  159. package/dist/src/messaging/runtime.js.map +1 -1
  160. package/dist/src/messaging/send.js +1 -1
  161. package/dist/src/messaging/send.js.map +1 -1
  162. package/dist/src/orchestrator/attestation.js +33 -0
  163. package/dist/src/orchestrator/attestation.js.map +1 -1
  164. package/dist/src/orchestrator/collect.js +9 -4
  165. package/dist/src/orchestrator/collect.js.map +1 -1
  166. package/dist/src/orchestrator/distribute.js +0 -142
  167. package/dist/src/orchestrator/distribute.js.map +1 -1
  168. package/dist/src/orchestrator/gateway.js +3 -3
  169. package/dist/src/orchestrator/gateway.js.map +1 -1
  170. package/dist/src/orchestrator/pipeline.js +19 -1
  171. package/dist/src/orchestrator/pipeline.js.map +1 -1
  172. package/dist/src/orchestrator/state-machine.js +93 -16
  173. package/dist/src/orchestrator/state-machine.js.map +1 -1
  174. package/dist/src/orchestrator/worker-replay-notice.js +31 -11
  175. package/dist/src/orchestrator/worker-replay-notice.js.map +1 -1
  176. package/dist/src/prompt/builder.js +20 -20
  177. package/dist/src/prompt/builder.js.map +1 -1
  178. package/dist/src/prompt/context-hooks.js +2 -1
  179. package/dist/src/prompt/context-hooks.js.map +1 -1
  180. package/dist/src/prompt/templates/a1-system.md +69 -45
  181. package/dist/src/prompt/templates/employee.md +3 -2
  182. package/dist/src/prompt/templates/orchestration.md +13 -15
  183. package/dist/src/prompt/templates/skills.md +1 -0
  184. package/dist/src/routes/avatar.js +4 -3
  185. package/dist/src/routes/avatar.js.map +1 -1
  186. package/dist/src/routes/bgtask.js +2 -1
  187. package/dist/src/routes/bgtask.js.map +1 -1
  188. package/dist/src/routes/browser.js +2 -1
  189. package/dist/src/routes/browser.js.map +1 -1
  190. package/dist/src/routes/command.js +32 -2
  191. package/dist/src/routes/command.js.map +1 -1
  192. package/dist/src/routes/messaging.js +6 -5
  193. package/dist/src/routes/messaging.js.map +1 -1
  194. package/dist/src/routes/orchestrate.js +144 -29
  195. package/dist/src/routes/orchestrate.js.map +1 -1
  196. package/dist/src/routes/quota.js +217 -33
  197. package/dist/src/routes/quota.js.map +1 -1
  198. package/dist/src/routes/settings.js +3 -2
  199. package/dist/src/routes/settings.js.map +1 -1
  200. package/dist/src/routes/static.js +37 -2
  201. package/dist/src/routes/static.js.map +1 -1
  202. package/dist/src/telegram/bot.js +123 -67
  203. package/dist/src/telegram/bot.js.map +1 -1
  204. package/dist/src/telegram/elicitation-buttons.js +71 -0
  205. package/dist/src/telegram/elicitation-buttons.js.map +1 -0
  206. package/dist/src/telegram/fetch-body.js +11 -0
  207. package/dist/src/telegram/fetch-body.js.map +1 -0
  208. package/dist/src/telegram/forwarder.js +3 -5
  209. package/dist/src/telegram/forwarder.js.map +1 -1
  210. package/dist/src/telegram/rich-message.js +85 -11
  211. package/dist/src/telegram/rich-message.js.map +1 -1
  212. package/dist/src/telegram/status-update-buffer.js +15 -0
  213. package/dist/src/telegram/status-update-buffer.js.map +1 -0
  214. package/dist/src/telegram/telegram-file.js +5 -4
  215. package/dist/src/telegram/telegram-file.js.map +1 -1
  216. package/dist/src/telegram/voice.js +5 -4
  217. package/dist/src/telegram/voice.js.map +1 -1
  218. package/dist/src/workflows/planaudit.js +2 -1
  219. package/dist/src/workflows/planaudit.js.map +1 -1
  220. package/dist/src/workflows/repo-map/index.js +157 -0
  221. package/dist/src/workflows/repo-map/index.js.map +1 -0
  222. package/dist/src/workflows/scope-sandbox.js +1 -0
  223. package/dist/src/workflows/scope-sandbox.js.map +1 -1
  224. package/package.json +5 -2
  225. package/public/css/chat.css +17 -1
  226. package/public/css/orc-state.css +2 -1
  227. package/public/css/variables.css +0 -1
  228. package/public/dist/assets/{AdvancedExport-qa01DKDO.js → AdvancedExport-DsDpqXoH.js} +1 -1
  229. package/public/dist/assets/{Agent-CHCXjXSN.js → Agent-CrLn42Jb.js} +1 -1
  230. package/public/dist/assets/{Browser-Df4B5cnl.js → Browser-B52Bdaeu.js} +1 -1
  231. package/public/dist/assets/BrowserPanel-Bh3JpkZO.js +3 -0
  232. package/public/dist/assets/BrowserPanel-DpntR8EJ.css +1 -0
  233. package/public/dist/assets/{ChannelsDiscord-BqPckWSY.js → ChannelsDiscord-Bt1_rtNC.js} +1 -1
  234. package/public/dist/assets/{ChannelsTelegram-B9Feggy7.js → ChannelsTelegram-BLV0m1oq.js} +1 -1
  235. package/public/dist/assets/{CodeCanvas-BzhNLZVF.js → CodeCanvas-COgs1P6U.js} +2 -2
  236. package/public/dist/assets/{DashboardEmbeddingSection-CocnWvOE.js → DashboardEmbeddingSection-DMgHZQnn.js} +1 -1
  237. package/public/dist/assets/{DashboardMeta-C9BshDiw.js → DashboardMeta-B7CVqXcU.js} +1 -1
  238. package/public/dist/assets/DesignPanel-3XpGjuEW.css +1 -0
  239. package/public/dist/assets/DesignPanel-BGMPhZSx.js +2 -0
  240. package/public/dist/assets/{DiffPanel-DsFwEFjd.js → DiffPanel-B_ljObDk.js} +1 -1
  241. package/public/dist/assets/{Display-D_r_BwdJ.js → Display-BF-rACK6.js} +1 -1
  242. package/public/dist/assets/{DocPanel-6Z_RELzd.js → DocPanel-DtYwv3n3.js} +1 -1
  243. package/public/dist/assets/{Employees-DL3R3z7K.js → Employees-D3hnciP0.js} +1 -1
  244. package/public/dist/assets/{FolderPanel-DdlzWAuK.js → FolderPanel-DbPhzzvi.js} +3 -3
  245. package/public/dist/assets/{Heartbeat-BblY8Z4a.js → Heartbeat-Dk-_TtKV.js} +1 -1
  246. package/public/dist/assets/{InlineWarn-DrqqH39Y.js → InlineWarn-DDzeHxQw.js} +1 -1
  247. package/public/dist/assets/{MarkdownRenderer-Cl0oEICj.js → MarkdownRenderer-CHacL2M_.js} +2 -2
  248. package/public/dist/assets/MarkdownRenderer-DyrB9FbZ.js +1 -0
  249. package/public/dist/assets/{Mcp-CP6h9IQP.js → Mcp-SfytKWGX.js} +1 -1
  250. package/public/dist/assets/{Memory-BWcfxzCz.js → Memory-BOicOlcn.js} +1 -1
  251. package/public/dist/assets/{MilkdownWysiwygEditor-B-j0IUe6.js → MilkdownWysiwygEditor-BNoLGbFC.js} +1 -1
  252. package/public/dist/assets/{ModelProvider-D4LBX7K2.js → ModelProvider-DQ2AA0gJ.js} +1 -1
  253. package/public/dist/assets/{Network-TkeE8ldB.js → Network-DISUhige.js} +1 -1
  254. package/public/dist/assets/{NotesGraphWorkspace-B55jfeiE.js → NotesGraphWorkspace-Dm1xUFl8.js} +1 -1
  255. package/public/dist/assets/PanelLayoutProvider-XpTo-i_s.js +1 -0
  256. package/public/dist/assets/{Permissions-Dc5xnPMu.js → Permissions-CnKt44dN.js} +1 -1
  257. package/public/dist/assets/Permissions-DNT0TxYL.js +1 -0
  258. package/public/dist/assets/{Profile-Bacunq6W.js → Profile-B8yBO3Ju.js} +1 -1
  259. package/public/dist/assets/{Prompts-D36Mj9HS.js → Prompts-5lNQ5qOm.js} +1 -1
  260. package/public/dist/assets/{SpeechKeys-Dda4Dt6M.js → SpeechKeys-BepaIHBa.js} +1 -1
  261. package/public/dist/assets/{TelegramHub-CuJoPPib.js → TelegramHub--DNjRAwW.js} +1 -1
  262. package/public/dist/assets/{TerminalPanel-DSCJeGjp.js → TerminalPanel-DQovYfwz.js} +1 -1
  263. package/public/dist/assets/{TransportStatusChips-C5QcQVCy.js → TransportStatusChips-Bld0yXi7.js} +1 -1
  264. package/public/dist/assets/app-BJVZZqTm.js +55 -0
  265. package/public/dist/assets/app-CvNmD8jx.css +1 -0
  266. package/public/dist/assets/architecture-7EHR7CIX-D-6Nx315.js +1 -0
  267. package/public/dist/assets/{architectureDiagram-3BPJPVTR-C4lVLx8A.js → architectureDiagram-3BPJPVTR-q8idz3H3.js} +1 -1
  268. package/public/dist/assets/{bgtask-badge-b7pj_Dbh.js → bgtask-badge-Bz8_kUKd.js} +1 -1
  269. package/public/dist/assets/bgtask-badge-iOk9R0RF.js +1 -0
  270. package/public/dist/assets/{blockDiagram-GPEHLZMM-BHjdqDcb.js → blockDiagram-GPEHLZMM-DGB0dsia.js} +1 -1
  271. package/public/dist/assets/{c4Diagram-AAUBKEIU-B1QuN7gf.js → c4Diagram-AAUBKEIU-ChP5YfVt.js} +1 -1
  272. package/public/dist/assets/channel-ByNDsZsH.js +1 -0
  273. package/public/dist/assets/{chunk-2J33WTMH-D1olIwij.js → chunk-2J33WTMH-D3OPoEHg.js} +1 -1
  274. package/public/dist/assets/{chunk-3OPIFGDE-Cf7991q8.js → chunk-3OPIFGDE-CULJ8ZHF.js} +1 -1
  275. package/public/dist/assets/{chunk-4BX2VUAB-zmO3Vjrm.js → chunk-4BX2VUAB-DGgktZYr.js} +1 -1
  276. package/public/dist/assets/{chunk-4EGX6M5U-B-uS9w6F.js → chunk-4EGX6M5U-BD3v8KR4.js} +1 -1
  277. package/public/dist/assets/chunk-55IACEB6-CQFLXxVc.js +1 -0
  278. package/public/dist/assets/{chunk-5DO6E6H7-AkI69lqb.js → chunk-5DO6E6H7-B-FbGqHn.js} +1 -1
  279. package/public/dist/assets/{chunk-5ZQYHXKU-C3d9OOmT.js → chunk-5ZQYHXKU-DVpWOoGS.js} +1 -1
  280. package/public/dist/assets/{chunk-727SXJPM-BOt5gU_h.js → chunk-727SXJPM-CZjR7q6H.js} +1 -1
  281. package/public/dist/assets/{chunk-AQP2D5EJ-CrRyjYkJ.js → chunk-AQP2D5EJ-BlGjnlsV.js} +1 -1
  282. package/public/dist/assets/{chunk-BR22UD5L-DR9GxWFk.js → chunk-BR22UD5L-MK8KuB9X.js} +1 -1
  283. package/public/dist/assets/{chunk-BSJP7CBP-B24w6Ihw.js → chunk-BSJP7CBP-ypXC4wBv.js} +1 -1
  284. package/public/dist/assets/{chunk-CSCIHK7Q-BPBO8B3q.js → chunk-CSCIHK7Q-CmvetykJ.js} +1 -1
  285. package/public/dist/assets/{chunk-FHYWG6QK-CXhRbK1g.js → chunk-FHYWG6QK-Do5csWDm.js} +1 -1
  286. package/public/dist/assets/{chunk-FMBD7UC4-tu50fn_l.js → chunk-FMBD7UC4-BXpT25MP.js} +1 -1
  287. package/public/dist/assets/{chunk-KSCS5N6A-CnJg0Z_l.js → chunk-KSCS5N6A-DtlfLqto.js} +1 -1
  288. package/public/dist/assets/{chunk-L5ZTLDWV-B3Ak80dW.js → chunk-L5ZTLDWV-Czv9NkHn.js} +1 -1
  289. package/public/dist/assets/{chunk-LZXEDZCA-C3fVGX8q.js → chunk-LZXEDZCA-vD7oFdiq.js} +1 -1
  290. package/public/dist/assets/{chunk-MPE355IW-iQbf4K4s.js → chunk-MPE355IW-2ei0PVn0.js} +1 -1
  291. package/public/dist/assets/{chunk-MZUSXYTE-BEKROhpC.js → chunk-MZUSXYTE-JO_qTk4K.js} +1 -1
  292. package/public/dist/assets/{chunk-N66VUXT2-DUtPpNne.js → chunk-N66VUXT2-BXL-FniY.js} +1 -1
  293. package/public/dist/assets/{chunk-ND2GUHAM-DW2SkbNq.js → chunk-ND2GUHAM-B9SIO-4a.js} +1 -1
  294. package/public/dist/assets/{chunk-NZK2D7GU-SJvHIVX3.js → chunk-NZK2D7GU-CqOo06-Z.js} +1 -1
  295. package/public/dist/assets/{chunk-O5CBEL6O-D_hkyy5c.js → chunk-O5CBEL6O-BWbe_grt.js} +1 -1
  296. package/public/dist/assets/{chunk-PUPMXCY4-DcRmz6F2.js → chunk-PUPMXCY4-aFTMGBaR.js} +1 -1
  297. package/public/dist/assets/chunk-QZHKN3VN-Becu19mF.js +1 -0
  298. package/public/dist/assets/{chunk-UIBZB4QT-CFemVDOF.js → chunk-UIBZB4QT-S8EH0jZR.js} +1 -1
  299. package/public/dist/assets/{chunk-WCWK7LTN-B6ske8a4.js → chunk-WCWK7LTN-EgrNk7Dj.js} +1 -1
  300. package/public/dist/assets/chunk-WU5MYG2G-CkoHFn0F.js +1 -0
  301. package/public/dist/assets/{chunk-XPW4576I-elhPZgkY.js → chunk-XPW4576I-8oydVjY6.js} +1 -1
  302. package/public/dist/assets/classDiagram-4FO5ZUOK-DVGoKviY.js +1 -0
  303. package/public/dist/assets/classDiagram-v2-Q7XG4LA2-BIZeptY-.js +1 -0
  304. package/public/dist/assets/{copy-text-BKruhU_y.js → copy-text-BDs2wKjA.js} +1 -1
  305. package/public/dist/assets/{cose-bilkent-S5V4N54A-B-gwVajW.js → cose-bilkent-S5V4N54A-PNmvcq_6.js} +1 -1
  306. package/public/dist/assets/{dagre-BM42HDAG-C9BDjgRM.js → dagre-BM42HDAG-BP_m3uo9.js} +1 -1
  307. package/public/dist/assets/{dagre-HAOs7bVl.js → dagre-Ct2n78X9.js} +1 -1
  308. package/public/dist/assets/{diagram-2AECGRRQ-CvEawheC.js → diagram-2AECGRRQ-DhgfR-ol.js} +1 -1
  309. package/public/dist/assets/{diagram-5GNKFQAL-Da4DwByP.js → diagram-5GNKFQAL-BRLvmdeK.js} +1 -1
  310. package/public/dist/assets/{diagram-KO2AKTUF-Cnhf5Czo.js → diagram-KO2AKTUF-Co3C18-Q.js} +1 -1
  311. package/public/dist/assets/{diagram-LMA3HP47-CMusMTT2.js → diagram-LMA3HP47-3SwoWQij.js} +1 -1
  312. package/public/dist/assets/{diagram-OG6HWLK6-D5nQR5rT.js → diagram-OG6HWLK6-bjEryAd3.js} +1 -1
  313. package/public/dist/assets/{dist-jZTs_0Zg.js → dist-B6T-R4xY.js} +1 -1
  314. package/public/dist/assets/{dist-woWoxWmX.js → dist-B8V2LYzt.js} +1 -1
  315. package/public/dist/assets/{dist-DL8oabBM.js → dist-BDPUxeoi.js} +1 -1
  316. package/public/dist/assets/{dist-Dpn3ujr3.js → dist-BMC_dTfR.js} +1 -1
  317. package/public/dist/assets/{dist-C4WouNM7.js → dist-BSf40pae.js} +1 -1
  318. package/public/dist/assets/{dist-CPOW-jfg.js → dist-BlMOeJym.js} +1 -1
  319. package/public/dist/assets/dist-BmXnOAlo.js +1 -0
  320. package/public/dist/assets/{dist-C_6E126b.js → dist-BqzMcuh8.js} +1 -1
  321. package/public/dist/assets/{dist-CHB0SFvU.js → dist-BvQlb9-o.js} +1 -1
  322. package/public/dist/assets/{dist-BvgkNZ7r.js → dist-C7pD0dEn.js} +1 -1
  323. package/public/dist/assets/{dist-DvlZh9GF.js → dist-CC2vK_6S.js} +1 -1
  324. package/public/dist/assets/{dist-wdt8RQwr.js → dist-CFU9RsAu.js} +1 -1
  325. package/public/dist/assets/{dist-Y5dy_sSf.js → dist-CS1XLdz3.js} +1 -1
  326. package/public/dist/assets/{dist-CiaEUSjf.js → dist-CjzfPsGt.js} +1 -1
  327. package/public/dist/assets/{dist-DlqIM5Y-.js → dist-CvzAXxlb.js} +1 -1
  328. package/public/dist/assets/{dist-CLMpv9qF.js → dist-D8SW_REQ.js} +1 -1
  329. package/public/dist/assets/dist-DLY5I6dK.js +1 -0
  330. package/public/dist/assets/{dist-DfOlJSUk.js → dist-DMZVNaIe.js} +1 -1
  331. package/public/dist/assets/{dist-BSwjNBYz.js → dist-DN-hkAIC.js} +1 -1
  332. package/public/dist/assets/dist-DPHcMCqI.js +1 -0
  333. package/public/dist/assets/{dist-DQR4gW5j.js → dist-DStWZVZ0.js} +1 -1
  334. package/public/dist/assets/{dist-BpbqDhsq.js → dist-DTcoHNXr.js} +1 -1
  335. package/public/dist/assets/{dist-DRKfpxOd.js → dist-DdJuxxG7.js} +1 -1
  336. package/public/dist/assets/{dist-KuP6Gt4m.js → dist-DhgwoIqj.js} +1 -1
  337. package/public/dist/assets/{dist-nbzW6Sn7.js → dist-DmjSXJAP.js} +1 -1
  338. package/public/dist/assets/{dist-8hLkyg-D.js → dist-cBBDKBli.js} +1 -1
  339. package/public/dist/assets/{dist-CKTQ2eXH.js → dist-ph7PUr0c.js} +1 -1
  340. package/public/dist/assets/{dist-DGJG2rr2.js → dist-qUky5WRy.js} +1 -1
  341. package/public/dist/assets/{dist-CYw9JGM_.js → dist-w2YzIhc5.js} +1 -1
  342. package/public/dist/assets/dist-xHOEvyuU.js +1 -0
  343. package/public/dist/assets/{dockerfile-Bq20q5i6.js → dockerfile-C0jniLkw.js} +1 -1
  344. package/public/dist/assets/{employees-DbgFV33i.js → employees-BYebrTfH.js} +1 -1
  345. package/public/dist/assets/{erDiagram-TEJ5UH35-BnsX5Dzt.js → erDiagram-TEJ5UH35-DQBxHU1q.js} +1 -1
  346. package/public/dist/assets/{error-normalize-DLzj47d_.js → error-normalize-BzeO0SXE.js} +1 -1
  347. package/public/dist/assets/eventmodeling-FCH6USID-BB1OVDLb.js +1 -0
  348. package/public/dist/assets/{factor-BfAVKjvH.js → factor-nzjoQ9cK.js} +1 -1
  349. package/public/dist/assets/{fields-MeoSVgIK.js → fields-zkeByFQW.js} +1 -1
  350. package/public/dist/assets/{flowDiagram-I6XJVG4X-BSy1p30u.js → flowDiagram-I6XJVG4X-BN90fCt5.js} +1 -1
  351. package/public/dist/assets/{ganttDiagram-6RSMTGT7-BILWylat.js → ganttDiagram-6RSMTGT7-B-JAlIhh.js} +1 -1
  352. package/public/dist/assets/gitGraph-WXDBUCRP-DAWTa5Fn.js +1 -0
  353. package/public/dist/assets/{gitGraphDiagram-PVQCEYII-BaRlZZ_k.js → gitGraphDiagram-PVQCEYII-CLL2G5U-.js} +1 -1
  354. package/public/dist/assets/{graphlib-DdtRn62K.js → graphlib-B6dRm8vZ.js} +1 -1
  355. package/public/dist/assets/idb-cache-ZH6lOebk.js +1 -0
  356. package/public/dist/assets/iframe-renderer-Clu9EYLW.js +1 -0
  357. package/public/dist/assets/iframe-renderer-DACMLTYf.js +142 -0
  358. package/public/dist/assets/info-J43DQDTF-C530y5-j.js +1 -0
  359. package/public/dist/assets/{infoDiagram-5YYISTIA-BElvxLr3.js → infoDiagram-5YYISTIA-CftYDPfc.js} +1 -1
  360. package/public/dist/assets/{ishikawaDiagram-YF4QCWOH-DPQZsd5R.js → ishikawaDiagram-YF4QCWOH-BVa5AJbz.js} +1 -1
  361. package/public/dist/assets/javascript-DbM-pSY-.js +1 -0
  362. package/public/dist/assets/{journeyDiagram-JHISSGLW-BJZNR2qA.js → journeyDiagram-JHISSGLW-BeUKm6ME.js} +1 -1
  363. package/public/dist/assets/{kanban-definition-UN3LZRKU-OQLDtH0g.js → kanban-definition-UN3LZRKU-K5DYNY4p.js} +1 -1
  364. package/public/dist/assets/{manager-rHNwUB4e.css → manager-C4eNDNFt.css} +1 -1
  365. package/public/dist/assets/manager-pcvo6od1.js +13 -0
  366. package/public/dist/assets/{memory-QobGT0Kv.js → memory-DLD5Xpk8.js} +1 -1
  367. package/public/dist/assets/memory-oWWwCkg5.js +1 -0
  368. package/public/dist/assets/mermaid-loader-Bd9rYyxD.js +1 -0
  369. package/public/dist/assets/{mermaid-parser.core-D1KUUauv.js → mermaid-parser.core-Cz70RgAa.js} +1 -1
  370. package/public/dist/assets/mermaid-preprocess-0hqEN7sn.js +5 -0
  371. package/public/dist/assets/{mermaid.core-R6dUFqZC.js → mermaid.core-Dj5GOPe1.js} +2 -2
  372. package/public/dist/assets/mermaid.core-TSG49mwm.js +1 -0
  373. package/public/dist/assets/message-history-C6D4juRe.js +1 -0
  374. package/public/dist/assets/message-history-DdIshS4Q.js +1 -0
  375. package/public/dist/assets/{mindmap-definition-RKZ34NQL-B8WJHpYI.js → mindmap-definition-RKZ34NQL-PsH0E_3e.js} +1 -1
  376. package/public/dist/assets/{nsis-CIoRNUaw.js → nsis-BI3I3OhH.js} +1 -1
  377. package/public/dist/assets/packet-YPE3B663-BHcxn4sy.js +1 -0
  378. package/public/dist/assets/{page-shell-BeAyKBJW.js → page-shell-LF7vVVfG.js} +1 -1
  379. package/public/dist/assets/pi-settings-CBUGDAuT.js +1 -0
  380. package/public/dist/assets/pie-LRSECV5Y-DjigSia_.js +1 -0
  381. package/public/dist/assets/{pieDiagram-4H26LBE5-BuBruIcx.js → pieDiagram-4H26LBE5-Dtwtlr0z.js} +1 -1
  382. package/public/dist/assets/{pug-Cb8OCun5.js → pug-DHfNwv1w.js} +1 -1
  383. package/public/dist/assets/{quadrantDiagram-W4KKPZXB-B6rzGZvr.js → quadrantDiagram-W4KKPZXB-CAFUbaV6.js} +1 -1
  384. package/public/dist/assets/radar-GUYGQ44K-DPCrmsHJ.js +1 -0
  385. package/public/dist/assets/{react-dom-CZtrmbYs.js → react-dom-AWKMTIe7.js} +1 -1
  386. package/public/dist/assets/render-E2PXsTyS.js +122 -0
  387. package/public/dist/assets/{requirementDiagram-4Y6WPE33-Cvj5JknB.js → requirementDiagram-4Y6WPE33-CvBM4AjK.js} +1 -1
  388. package/public/dist/assets/{sankeyDiagram-5OEKKPKP-DNGNYR7j.js → sankeyDiagram-5OEKKPKP-cordQgRs.js} +1 -1
  389. package/public/dist/assets/{sequenceDiagram-3UESZ5HK-DuUAH96Z.js → sequenceDiagram-3UESZ5HK-DDAqRdga.js} +1 -1
  390. package/public/dist/assets/{settings-D70uFh8l.js → settings-DYIfnpYq.js} +1 -1
  391. package/public/dist/assets/settings-core-BURhLoX3.js +1 -0
  392. package/public/dist/assets/{settings-core-B2lw2bgO.js → settings-core-DRYE_5Wb.js} +1 -1
  393. package/public/dist/assets/settings-yyDc7X3c.js +1 -0
  394. package/public/dist/assets/{sidebar-BqWm2XWP.js → sidebar-Cn-KLQ0U.js} +3 -3
  395. package/public/dist/assets/{skills-CdNOfXlk.js → skills-Brt3opa5.js} +1 -1
  396. package/public/dist/assets/skills-KHfKUuAJ.js +1 -0
  397. package/public/dist/assets/{slash-commands-4Ntm5N7h.js → slash-commands-jMNf0b43.js} +1 -1
  398. package/public/dist/assets/slash-commands-nb096e6A.js +1 -0
  399. package/public/dist/assets/{stateDiagram-AJRCARHV-DGZNs20Q.js → stateDiagram-AJRCARHV-DUaoSRgZ.js} +1 -1
  400. package/public/dist/assets/stateDiagram-v2-BHNVJYJU-BAesfdhr.js +1 -0
  401. package/public/dist/assets/{timeline-definition-PNZ67QCA-yDl1yISI.js → timeline-definition-PNZ67QCA-D85QNy9b.js} +1 -1
  402. package/public/dist/assets/{trace-drawer-DqAwwHHQ.js → trace-drawer-Dv5cDGLR.js} +1 -1
  403. package/public/dist/assets/treeView-BLDUP644-DmufUMul.js +1 -0
  404. package/public/dist/assets/treemap-LRROVOQU-Cg48uw_D.js +1 -0
  405. package/public/dist/assets/ui-BeyzLs7f.js +2 -0
  406. package/public/dist/assets/ui-DabvyDGc.js +1 -0
  407. package/public/dist/assets/{vennDiagram-CIIHVFJN-C0TNoBYO.js → vennDiagram-CIIHVFJN-CQSILdx8.js} +1 -1
  408. package/public/dist/assets/wardley-L42UT6IY-QZOEXU7f.js +1 -0
  409. package/public/dist/assets/{wardleyDiagram-YWT4CUSO-C6cJR4Ib.js → wardleyDiagram-YWT4CUSO-BZEVMlJ4.js} +1 -1
  410. package/public/dist/assets/{wiki-link-suggestions-BMHWTE4_.js → wiki-link-suggestions-DZQc78gj.js} +1 -1
  411. package/public/dist/assets/{xychartDiagram-2RQKCTM6-DqEqpcox.js → xychartDiagram-2RQKCTM6-C8573Tgs.js} +1 -1
  412. package/public/dist/index.html +2 -2
  413. package/public/dist/manager/index.html +2 -2
  414. package/public/js/diagram/iframe-renderer.ts +197 -49
  415. package/public/js/diagram/widget-validator.ts +17 -3
  416. package/public/js/features/chat-messages.ts +5 -1
  417. package/public/js/features/chat-scroll.ts +10 -5
  418. package/public/js/features/chat.ts +9 -1
  419. package/public/js/features/elicitation.ts +1 -5
  420. package/public/js/features/message-item-html.ts +3 -1
  421. package/public/js/features/process-block.ts +46 -3
  422. package/public/js/features/settings-mcp.ts +1 -1
  423. package/public/js/locale.ts +2 -2
  424. package/public/js/main.ts +15 -4
  425. package/public/js/preview-parent-origin.ts +73 -9
  426. package/public/js/render/chart-json.ts +2 -5
  427. package/public/js/render/compose-block.ts +2 -5
  428. package/public/js/render/dataframe.ts +2 -5
  429. package/public/js/render/diff-viewer.ts +2 -5
  430. package/public/js/render/link-preview.ts +1 -5
  431. package/public/js/render/markdown.ts +22 -0
  432. package/public/js/render/post-render.ts +7 -3
  433. package/public/js/render/sanitize.ts +6 -0
  434. package/public/js/render/search-results.ts +2 -5
  435. package/public/js/streaming-render.ts +12 -1
  436. package/public/js/ui.ts +6 -3
  437. package/public/js/ws.ts +39 -25
  438. package/public/locales/en.json +2 -1
  439. package/public/locales/ja.json +2 -1
  440. package/public/locales/ko.json +2 -1
  441. package/public/locales/zh.json +2 -1
  442. package/public/manager/src/InstancePreview.tsx +35 -0
  443. package/public/manager/src/SidebarRailRouter.tsx +209 -124
  444. package/public/manager/src/browser-panel/BrowserPanel.tsx +714 -17
  445. package/public/manager/src/browser-panel/browser-panel.css +305 -0
  446. package/public/manager/src/browser-panel/use-embedded-target-sync.ts +182 -0
  447. package/public/manager/src/components/DesktopPanelControls.tsx +1 -1
  448. package/public/manager/src/design-panel/DesignPageSelector.tsx +27 -0
  449. package/public/manager/src/design-panel/DesignPanel.tsx +265 -0
  450. package/public/manager/src/design-panel/DesignViewport.tsx +34 -0
  451. package/public/manager/src/design-panel/design-api.ts +106 -0
  452. package/public/manager/src/design-panel/design-panel.css +137 -0
  453. package/public/manager/src/design-panel/design-types.ts +43 -0
  454. package/public/manager/src/folder-panel/FolderPanel.tsx +15 -1
  455. package/public/manager/src/jaw-ceo/JawCeoWorkbenchButton.tsx +10 -5
  456. package/public/manager/src/jaw-ceo/jaw-ceo.css +8 -0
  457. package/public/manager/src/jaw-ceo/useJawCeoDashboardBridge.tsx +2 -1
  458. package/public/manager/src/panels/FileFolderSplitPanel.tsx +97 -0
  459. package/public/manager/src/panels/PanelErrorBoundary.tsx +44 -0
  460. package/public/manager/src/panels/PanelLayoutProvider.tsx +569 -86
  461. package/public/manager/src/panels/RightSidebar.tsx +389 -134
  462. package/public/manager/src/panels/desktop-bridge.ts +88 -0
  463. package/public/manager/src/panels/panel-layout-registry-state.ts +252 -10
  464. package/public/manager/src/panels/panels.css +479 -0
  465. package/public/manager/src/panels/right-sidebar-tab-display.ts +36 -0
  466. package/public/manager/src/panels/types.ts +79 -4
  467. package/public/manager/src/types.ts +11 -0
  468. package/scripts/bundle-sidecar.sh +3 -0
  469. package/scripts/check-strict-baseline.mjs +26 -2
  470. package/scripts/docs/check-docs.mts +87 -0
  471. package/scripts/docs/extract-commands.mts +215 -0
  472. package/scripts/docs/extract-routes.mts +350 -0
  473. package/scripts/release-gates.mjs +32 -0
  474. package/public/dist/assets/BrowserPanel-CV_bbQpM.css +0 -1
  475. package/public/dist/assets/BrowserPanel-Ua0Xck6V.js +0 -1
  476. package/public/dist/assets/MarkdownRenderer-BivJ4hJm.js +0 -1
  477. package/public/dist/assets/Permissions-CddCEaJl.js +0 -1
  478. package/public/dist/assets/app-BPsa7jSJ.css +0 -1
  479. package/public/dist/assets/app-DszWzakT.js +0 -55
  480. package/public/dist/assets/architecture-7EHR7CIX-GJhmD5MC.js +0 -1
  481. package/public/dist/assets/bgtask-badge-DZEQ5fMl.js +0 -1
  482. package/public/dist/assets/channel-Sut8CY6m.js +0 -1
  483. package/public/dist/assets/chunk-55IACEB6-C3KMx7HH.js +0 -1
  484. package/public/dist/assets/chunk-QZHKN3VN-C7Qk10ab.js +0 -1
  485. package/public/dist/assets/chunk-WU5MYG2G-BpCiJpUL.js +0 -1
  486. package/public/dist/assets/classDiagram-4FO5ZUOK-BVeAlcVw.js +0 -1
  487. package/public/dist/assets/classDiagram-v2-Q7XG4LA2-mvRsJL7t.js +0 -1
  488. package/public/dist/assets/dist-BQ6IjZAx.js +0 -1
  489. package/public/dist/assets/dist-CB1yXHdY.js +0 -1
  490. package/public/dist/assets/dist-El7lM3OZ.js +0 -1
  491. package/public/dist/assets/dist-ZXqltO6b.js +0 -1
  492. package/public/dist/assets/eventmodeling-FCH6USID-BASBZB6y.js +0 -1
  493. package/public/dist/assets/gitGraph-WXDBUCRP-C6UAXKTO.js +0 -1
  494. package/public/dist/assets/idb-cache-DQM-odDV.js +0 -1
  495. package/public/dist/assets/info-J43DQDTF-DZvaZ8fx.js +0 -1
  496. package/public/dist/assets/javascript-ocJZALE4.js +0 -1
  497. package/public/dist/assets/manager-CdNOlCyS.js +0 -13
  498. package/public/dist/assets/memory-BT-rs3ag.js +0 -1
  499. package/public/dist/assets/mermaid-loader-BMIvbrMb.js +0 -1
  500. package/public/dist/assets/mermaid-preprocess-CqOBWYEb.js +0 -5
  501. package/public/dist/assets/mermaid.core-CE6des8A.js +0 -1
  502. package/public/dist/assets/message-history-BY1UNJAO.js +0 -1
  503. package/public/dist/assets/message-history-BmP5JKio.js +0 -142
  504. package/public/dist/assets/packet-YPE3B663-Br_gfHDJ.js +0 -1
  505. package/public/dist/assets/pi-settings-BVYmGHWD.js +0 -1
  506. package/public/dist/assets/pie-LRSECV5Y-CPSw09Lc.js +0 -1
  507. package/public/dist/assets/radar-GUYGQ44K-D5jGe4n0.js +0 -1
  508. package/public/dist/assets/render-C3r-9_-J.js +0 -119
  509. package/public/dist/assets/settings-CJm8ZSJs.js +0 -1
  510. package/public/dist/assets/settings-core-gdS0lo1b.js +0 -1
  511. package/public/dist/assets/skills-DG_CbTEf.js +0 -1
  512. package/public/dist/assets/slash-commands-B9kOEhJ_.js +0 -1
  513. package/public/dist/assets/stateDiagram-v2-BHNVJYJU-D2I0t9Bo.js +0 -1
  514. package/public/dist/assets/treeView-BLDUP644-i3ZwrLGf.js +0 -1
  515. package/public/dist/assets/treemap-LRROVOQU-CJRBfbOx.js +0 -1
  516. package/public/dist/assets/ui-Anw2S64o.js +0 -1
  517. package/public/dist/assets/ui-DsK6r0Xv.js +0 -2
  518. package/public/dist/assets/wardley-L42UT6IY-B1NLyOET.js +0 -1
  519. /package/public/dist/assets/{agent-meta-FyI15KAa.js → agent-meta-tiPlp7OI.js} +0 -0
  520. /package/public/dist/assets/{api-DvCd2Uff.js → api-C9dOxby7.js} +0 -0
  521. /package/public/dist/assets/{apl-CUNx2Nxr.js → apl-2tE96F_Y.js} +0 -0
  522. /package/public/dist/assets/{asciiarmor-B9JjJqLb.js → asciiarmor-ynSKiC17.js} +0 -0
  523. /package/public/dist/assets/{asn1-NstwUq_r.js → asn1-CfqO1VY8.js} +0 -0
  524. /package/public/dist/assets/{asterisk-Box6GWx7.js → asterisk-DSiRJoqT.js} +0 -0
  525. /package/public/dist/assets/{brainfuck-DAD60u2v.js → brainfuck-DTcanv-8.js} +0 -0
  526. /package/public/dist/assets/{chunk-AGHRB4JF-BeNb9aN4.js → chunk-AGHRB4JF-BXLzSehp.js} +0 -0
  527. /package/public/dist/assets/{chunk-NNHCCRGN-hPUSf84G.js → chunk-NNHCCRGN-D69GtSOc.js} +0 -0
  528. /package/public/dist/assets/{clike-B-3e4_rA.js → clike-qn72CMAj.js} +0 -0
  529. /package/public/dist/assets/{clojure-DpNVclFl.js → clojure-m8yDiYVc.js} +0 -0
  530. /package/public/dist/assets/{cmake-DzNe63Ys.js → cmake-4AHAWHiF.js} +0 -0
  531. /package/public/dist/assets/{cobol-CoytNvhw.js → cobol-CxxJP5eX.js} +0 -0
  532. /package/public/dist/assets/{coffeescript-Cq3xHp7h.js → coffeescript-BAB3zi48.js} +0 -0
  533. /package/public/dist/assets/{commonlisp-CVjsh9SW.js → commonlisp-BPbWuAds.js} +0 -0
  534. /package/public/dist/assets/{constants-EMUBd5RQ.js → constants-DzwdndBj.js} +0 -0
  535. /package/public/dist/assets/{crystal-BlIILE-v.js → crystal-CGuSsWYR.js} +0 -0
  536. /package/public/dist/assets/{css-D1TAh_-V.js → css-DszbR74r.js} +0 -0
  537. /package/public/dist/assets/{cypher-ZntLuJzU.js → cypher-GUnmv522.js} +0 -0
  538. /package/public/dist/assets/{cytoscape.esm-89N3cqwG.js → cytoscape.esm-D_XyYSBG.js} +0 -0
  539. /package/public/dist/assets/{d-CzwXOQ5h.js → d-Cfm0cznj.js} +0 -0
  540. /package/public/dist/assets/{desktop-bridge-B1whMBS2.js → desktop-bridge-CvdhnJQo.js} +0 -0
  541. /package/public/dist/assets/{diff-DI7-Ikca.js → diff-C6rPA7NX.js} +0 -0
  542. /package/public/dist/assets/{dist-B51C28kc.js → dist-AgQwqBLq.js} +0 -0
  543. /package/public/dist/assets/{dtd-7UKQtPWR.js → dtd-Dxh5tS6M.js} +0 -0
  544. /package/public/dist/assets/{dylan-CM1mkXYp.js → dylan-BdIVFR1j.js} +0 -0
  545. /package/public/dist/assets/{ebnf-Llv_5uW5.js → ebnf-iU-8xYFu.js} +0 -0
  546. /package/public/dist/assets/{ecl-uqtp9saI.js → ecl-DjbzOHI6.js} +0 -0
  547. /package/public/dist/assets/{eiffel-BqzGlVPY.js → eiffel-B2ID8LZ3.js} +0 -0
  548. /package/public/dist/assets/{elm-bajSbBYX.js → elm-B6vPcfMj.js} +0 -0
  549. /package/public/dist/assets/{erlang-B5uEM5Ke.js → erlang-nDQwRdZV.js} +0 -0
  550. /package/public/dist/assets/{esm-3SgqVBY5.js → esm-CT1xxdH5.js} +0 -0
  551. /package/public/dist/assets/{fcl-BcH_K33Z.js → fcl-Bf86o55I.js} +0 -0
  552. /package/public/dist/assets/{folder-drag-payload-DE3ZS9PZ.js → folder-drag-payload-Bhln9Mk2.js} +0 -0
  553. /package/public/dist/assets/{forth-DpLesGXt.js → forth-CeQJji0n.js} +0 -0
  554. /package/public/dist/assets/{fortran--G-GJVGI.js → fortran-Dm_CqDsH.js} +0 -0
  555. /package/public/dist/assets/{gas-DpoQvniR.js → gas-e3EfgE3p.js} +0 -0
  556. /package/public/dist/assets/{gherkin-Dr59UACG.js → gherkin-Dn_7tSzg.js} +0 -0
  557. /package/public/dist/assets/{groovy-Cn2K6Dx3.js → groovy-LaKuGRkK.js} +0 -0
  558. /package/public/dist/assets/{haskell-B7lFmXEG.js → haskell-D9nNX9Mr.js} +0 -0
  559. /package/public/dist/assets/{haxe-BHWvyysr.js → haxe-Rp176QXJ.js} +0 -0
  560. /package/public/dist/assets/{http-DBZ5ODWR.js → http-BOeYLbuM.js} +0 -0
  561. /package/public/dist/assets/{idb-cache-DTKWSF12.js → idb-cache-BzzftUET.js} +0 -0
  562. /package/public/dist/assets/{idl-D6JLbJZt.js → idl-DHv3vdme.js} +0 -0
  563. /package/public/dist/assets/{javascript-CMsRa3Ah.js → javascript-Dk2fbl1a.js} +0 -0
  564. /package/public/dist/assets/{jsx-runtime-B3ZGMGGg.js → jsx-runtime-gFMgZ0TQ.js} +0 -0
  565. /package/public/dist/assets/{julia-BgEiFqoe.js → julia-D7CKCk5I.js} +0 -0
  566. /package/public/dist/assets/{livescript-Bl00ljSh.js → livescript-gRbr9rhj.js} +0 -0
  567. /package/public/dist/assets/{locale-GY3-GGWm.js → locale-DC-ZsWOf.js} +0 -0
  568. /package/public/dist/assets/{lua-C7XaZlrp.js → lua-CgZ_7bxf.js} +0 -0
  569. /package/public/dist/assets/{mathematica-8EcxUjYb.js → mathematica-B6bTyoab.js} +0 -0
  570. /package/public/dist/assets/{mbox-rZy25Spd.js → mbox-C8oQj1cJ.js} +0 -0
  571. /package/public/dist/assets/{mirc-BUmwqSCT.js → mirc-v6L6kZuh.js} +0 -0
  572. /package/public/dist/assets/{mllike-BqDqEdQF.js → mllike-CWu4RdWO.js} +0 -0
  573. /package/public/dist/assets/{modelica-MhacK6Xw.js → modelica-B3NBpX1d.js} +0 -0
  574. /package/public/dist/assets/{mscgen-B_VJszPL.js → mscgen-C8u7qRYw.js} +0 -0
  575. /package/public/dist/assets/{mumps-CEdRH9V2.js → mumps-DHjVG4PS.js} +0 -0
  576. /package/public/dist/assets/{nginx-CnXgGeyP.js → nginx-BMt87X3t.js} +0 -0
  577. /package/public/dist/assets/{notes-graph-settings-BaqO8hYl.js → notes-graph-settings-BgNrT_58.js} +0 -0
  578. /package/public/dist/assets/{ntriples-CyZcmI8c.js → ntriples-C8U-Jud2.js} +0 -0
  579. /package/public/dist/assets/{octave-DGH2kDhB.js → octave-Bq37AoFm.js} +0 -0
  580. /package/public/dist/assets/{oz-DUSpf7eX.js → oz-D6HxSRn3.js} +0 -0
  581. /package/public/dist/assets/{pascal-BYIqfrcG.js → pascal-BBqiAVg6.js} +0 -0
  582. /package/public/dist/assets/{path-utils-DX1HplvB.js → path-utils-LsJeDCKF.js} +0 -0
  583. /package/public/dist/assets/{perl-C7iNkbFR.js → perl-sHANlXjx.js} +0 -0
  584. /package/public/dist/assets/{pi-settings-D6opgoo4.js → pi-settings-Dh5lgb87.js} +0 -0
  585. /package/public/dist/assets/{pig-CR5p2dpV.js → pig-Cufgew--.js} +0 -0
  586. /package/public/dist/assets/{powershell-UK-_nKBG.js → powershell--Q4mDip6.js} +0 -0
  587. /package/public/dist/assets/{properties-CJAqwakm.js → properties-DoVpJ-kT.js} +0 -0
  588. /package/public/dist/assets/{protobuf-D3Vrac9j.js → protobuf-B5OiV2Zv.js} +0 -0
  589. /package/public/dist/assets/{provider-icons-BXm8sy5x.js → provider-icons-stsNmQKx.js} +0 -0
  590. /package/public/dist/assets/{puppet-DxgW6kGv.js → puppet-Ce_CFfqW.js} +0 -0
  591. /package/public/dist/assets/{python-C_ebQp0Y.js → python-pK7Wt6QH.js} +0 -0
  592. /package/public/dist/assets/{q-IMCDaQ03.js → q-Dd3Ltku0.js} +0 -0
  593. /package/public/dist/assets/{r-BXdh3mvZ.js → r-CsX__2f0.js} +0 -0
  594. /package/public/dist/assets/{rough.esm-BJMyUbab.js → rough.esm--LLpAgPj.js} +0 -0
  595. /package/public/dist/assets/{rpm-DA-4RGFa.js → rpm-D78AjDAl.js} +0 -0
  596. /package/public/dist/assets/{ruby-Bl1KGNRx.js → ruby-D_-KI498.js} +0 -0
  597. /package/public/dist/assets/{sas-vK1DtUVf.js → sas-D-GUPiy4.js} +0 -0
  598. /package/public/dist/assets/{scheme-DiOFQmiy.js → scheme-DF9WwQDv.js} +0 -0
  599. /package/public/dist/assets/{settings-client-Di8KLXq_.js → settings-client-CjbBShxm.js} +0 -0
  600. /package/public/dist/assets/{shell-DlO-WCDP.js → shell-BTUwbV-w.js} +0 -0
  601. /package/public/dist/assets/{sieve-CbtkgRpt.js → sieve--Z-EbGZo.js} +0 -0
  602. /package/public/dist/assets/{simple-mode-BlwHYanN.js → simple-mode-BUow4bpn.js} +0 -0
  603. /package/public/dist/assets/{smalltalk-BvKYa3AC.js → smalltalk-C2YIwVx3.js} +0 -0
  604. /package/public/dist/assets/{solr-BR4fru6p.js → solr-CYVq4fbf.js} +0 -0
  605. /package/public/dist/assets/{sparql-DXGln-02.js → sparql-Ccd4fsFv.js} +0 -0
  606. /package/public/dist/assets/{spreadsheet-vehQVAxe.js → spreadsheet-DW0WgMrS.js} +0 -0
  607. /package/public/dist/assets/{sql-DqGFyXDS.js → sql-C71Zp6qn.js} +0 -0
  608. /package/public/dist/assets/{stex-BMDhbycI.js → stex-CKuX0g_6.js} +0 -0
  609. /package/public/dist/assets/{stylus-KnS0CroG.js → stylus-CBH8s0NO.js} +0 -0
  610. /package/public/dist/assets/{swift-DgdcCI7r.js → swift-CfZoxKRA.js} +0 -0
  611. /package/public/dist/assets/{tcl-BdAMpvp9.js → tcl-D5MGbeQu.js} +0 -0
  612. /package/public/dist/assets/{textile-BHP2MzNo.js → textile-DJ3U30FW.js} +0 -0
  613. /package/public/dist/assets/{tiddlywiki-DXpY2p61.js → tiddlywiki-_fe1dHUq.js} +0 -0
  614. /package/public/dist/assets/{tiki-rmXXYsbl.js → tiki-Dd1udTrQ.js} +0 -0
  615. /package/public/dist/assets/{toml-C5KR4pi6.js → toml-xpw8pqjz.js} +0 -0
  616. /package/public/dist/assets/{troff-CCKOxFhE.js → troff-CgWiec8m.js} +0 -0
  617. /package/public/dist/assets/{ttcn-DbUUkNp1.js → ttcn-CSwmFrer.js} +0 -0
  618. /package/public/dist/assets/{ttcn-cfg-DXcL9aHC.js → ttcn-cfg-B5HVIC6z.js} +0 -0
  619. /package/public/dist/assets/{turtle-C8XIIixq.js → turtle-Cl_SuWQk.js} +0 -0
  620. /package/public/dist/assets/{vb-6dJ8H6C5.js → vb-BT131bSf.js} +0 -0
  621. /package/public/dist/assets/{vbscript-DIhYyfyM.js → vbscript-D6S8_XkU.js} +0 -0
  622. /package/public/dist/assets/{velocity-D4VFCVF7.js → velocity-9HkI645n.js} +0 -0
  623. /package/public/dist/assets/{vendor-utils-BgdgpA_R.js → vendor-utils-DJY0EWnQ.js} +0 -0
  624. /package/public/dist/assets/{verilog-CMPJNboz.js → verilog-BzMguKeI.js} +0 -0
  625. /package/public/dist/assets/{vhdl-CnU0dAe0.js → vhdl-bHScWzT1.js} +0 -0
  626. /package/public/dist/assets/{w3c-keyname-_Vjqp3zl.js → w3c-keyname-a_sRwNLm.js} +0 -0
  627. /package/public/dist/assets/{webidl-DrscPGMb.js → webidl-CbgaVHNS.js} +0 -0
  628. /package/public/dist/assets/{wiki-link-resolver-C197VhRP.js → wiki-link-resolver-BfNXN9px.js} +0 -0
  629. /package/public/dist/assets/{xquery-B8_nl088.js → xquery-DWZPmAiC.js} +0 -0
  630. /package/public/dist/assets/{yacas-BCnk2qQq.js → yacas-CEdW4z4K.js} +0 -0
  631. /package/public/dist/assets/{z80-CG_mQV7a.js → z80-CMH3qxNg.js} +0 -0
@@ -84,21 +84,18 @@ export class Screen {
84
84
  cursorRow = 0;
85
85
  fullRedrawPending = false;
86
86
  resizeRedrawPending = false;
87
- lastFillRows = 0;
88
- committedScreenRows = 0;
89
87
  /**
90
- * 260703 F4 1-based bottom row of the on-screen committed block; 0 = the
91
- * block hugs the current fill bottom (legacy). Set at flush time. When the
92
- * frontier hides committed items the frame shrinks and the fill REGROWS
93
- * past the block; scroll-outs must then key off the block bottom, not the
94
- * raw fill, or they push the blank rows above the block into scrollback —
95
- * blank bands between turns (port of jawcode c109b78).
88
+ * 260704 WP6b-v2 (port of jawcode 8baafbc) the committed block is
89
+ * TOP-ANCHORED, glued to the scrollback seam at rows 1..B. This count IS
90
+ * the block geometry: content-only rows, never a blank above or inside.
91
+ * The old bottom-anchored lane (block parked at the fill bottom under
92
+ * blank rows, tracked via committedBottomRow) was retired upstream after
93
+ * every blank-gap regression traced back to its region-top blanks.
96
94
  */
97
- committedBottomRow = 0;
95
+ committedScreenRows = 0;
98
96
  lastWidth = 0;
99
97
  lastHeight = 0;
100
98
  launchClearPending = false;
101
- scrollbackProtected = false;
102
99
  hasNativeCommit = false;
103
100
  pendingCommitLines = [];
104
101
  lastFlushed = 0;
@@ -115,13 +112,10 @@ export class Screen {
115
112
  this.cursorRow = 0;
116
113
  this.fullRedrawPending = false;
117
114
  this.resizeRedrawPending = false;
118
- this.lastFillRows = 0;
119
115
  this.committedScreenRows = 0;
120
- this.committedBottomRow = 0;
121
116
  this.lastWidth = 0;
122
117
  this.lastHeight = 0;
123
118
  this.launchClearPending = true;
124
- this.scrollbackProtected = false;
125
119
  }
126
120
  exit() {
127
121
  if (!this.inlineActive)
@@ -136,13 +130,10 @@ export class Screen {
136
130
  this.cursorRow = 0;
137
131
  this.fullRedrawPending = false;
138
132
  this.resizeRedrawPending = false;
139
- this.lastFillRows = 0;
140
133
  this.committedScreenRows = 0;
141
- this.committedBottomRow = 0;
142
134
  this.lastWidth = 0;
143
135
  this.lastHeight = 0;
144
136
  this.launchClearPending = false;
145
- this.scrollbackProtected = false;
146
137
  }
147
138
  needsResizeRepaint() {
148
139
  if (!this.inlineActive)
@@ -182,116 +173,117 @@ export class Screen {
182
173
  buf += buildLaunchClearSequence();
183
174
  this.cursorRow = 0;
184
175
  this.committedScreenRows = 0;
185
- this.committedBottomRow = 0;
186
176
  this.launchClearPending = false;
187
177
  }
188
- // Flush pending scrollback commits (sub-region, non-destructive).
189
- // Deferred when the rows the commit scroll would push out still hold
190
- // pixels from the previous frame layout (e.g. the launch-anchored
191
- // welcome on the frame that releases the anchor): the flush runs
192
- // BEFORE the diff repaint, so scrolling those rows out would push the
193
- // stale pixels into scrollback, interleaving them with committed
194
- // lines. Skipping leaves the frontier unadvanced; the scheduler
195
- // re-queues the same commit next frame, after the repaint blanked the
196
- // region. (Physical committed-lane residue is invisible to prevLines
197
- // fill rows stay '' in the frame model — so residue still flushes.)
178
+ // Flush pending scrollback commits — 260704 WP6b-v2 port (jawcode
179
+ // 8baafbc): the committed block is TOP-ANCHORED, glued to the
180
+ // scrollback seam at rows 1..B. Commits either write DIRECTLY into the
181
+ // blank fill row below the block (no scroll blanks never move, so no
182
+ // blank can ever cross the seam) or, once the block saturates the
183
+ // fill, scroll region 1..B up by one so the OLDEST committed row
184
+ // (content, never blank) enters the scrollback and the new line lands
185
+ // on the freed bottom row. This retires the bottom-anchored insert
186
+ // geometry whose region-top blank rows stamped the blank bands into
187
+ // history (user repro 260704).
188
+ // Deferred when the direct-write target rows still hold pixels from
189
+ // the previous frame layout (e.g. the launch-anchored welcome on the
190
+ // frame that releases the anchor): the flush runs BEFORE the diff
191
+ // repaint, and the diff would 2K our fresh committed rows (model says
192
+ // those rows are blank fill). Skipping leaves the frontier unadvanced;
193
+ // the scheduler re-queues the same commit next frame, after the
194
+ // repaint blanked the region. (Physical committed-lane residue at rows
195
+ // 1..B is invisible to prevLines — fill rows stay '' in the frame
196
+ // model — so residue is never re-diffed.)
198
197
  this.lastFlushed = 0;
199
198
  this.lastDeferredByStaleRows = false;
200
- const parkedBottom = this.committedBottomRow > 0 && this.committedScreenRows > 0
201
- ? Math.min(this.committedBottomRow, Math.min(normalized.fillRows, height))
202
- : 0;
203
- const flushZoneTop = parkedBottom >= 2 ? parkedBottom : Math.min(normalized.fillRows, height);
204
- if (this.pendingCommitLines.length > 0 && normalized.fillRows >= 2
205
- && !this.commitScrollOutRowsAreBlank(this.pendingCommitLines.length, flushZoneTop)) {
199
+ const fillRows = Math.min(normalized.fillRows, height);
200
+ const blockRows = Math.min(this.committedScreenRows, fillRows);
201
+ if (this.pendingCommitLines.length > 0 && fillRows >= 2
202
+ && !this.commitTargetRowsAreBlank(this.pendingCommitLines.length, blockRows, fillRows)) {
206
203
  // Defer: the repaint below blanks the region; the caller may retry
207
204
  // next frame (this is the only defer reason worth a retry — other
208
205
  // skips are geometry/lane constraints that a retry cannot change).
209
206
  this.lastDeferredByStaleRows = true;
210
207
  }
211
- if (this.pendingCommitLines.length > 0 && normalized.fillRows >= 2 && !this.lastDeferredByStaleRows) {
212
- // 260703 F4: while a committed block is parked above a regrown fill
213
- // (frontier hid its items → shorter frame → taller fill), insert
214
- // DIRECTLY below the block so the committed region stays contiguous
215
- // — inserting at the raw fill bottom would leave blank rows inside
216
- // the history region that later scroll-outs stamp into scrollback.
217
- const liveZoneTop = flushZoneTop;
218
- buf += `\x1b[1;${liveZoneTop}r`;
219
- buf += `\x1b[${liveZoneTop};1H`;
208
+ if (this.pendingCommitLines.length > 0 && fillRows >= 2 && !this.lastDeferredByStaleRows) {
209
+ let b = blockRows;
220
210
  for (const line of this.pendingCommitLines) {
221
- buf += '\r\n\x1b[2K' + line;
211
+ if (b < fillRows) {
212
+ // Blank fill row below the block: write in place, no scroll.
213
+ buf += `\x1b[${b + 1};1H\x1b[2K` + line;
214
+ b++;
215
+ }
216
+ else {
217
+ // Saturated: rows 1..B are all content — scroll the oldest
218
+ // row across the seam, write on the freed bottom row.
219
+ buf += `\x1b[1;${b}r\x1b[${b};1H\r\n\x1b[2K` + line + '\x1b[r';
220
+ }
222
221
  }
223
- buf += '\x1b[r\x1b[H';
222
+ buf += '\x1b[H';
224
223
  this.cursorRow = 0;
225
- this.committedScreenRows = Math.min(this.committedScreenRows + this.pendingCommitLines.length, liveZoneTop);
226
- this.committedBottomRow = liveZoneTop;
224
+ this.committedScreenRows = b;
227
225
  this.lastFlushed = this.pendingCommitLines.length;
228
226
  this.hasNativeCommit = true;
229
- this.scrollbackProtected = true;
230
227
  }
231
228
  this.pendingCommitLines = [];
232
229
  if (!this.resizeRedrawPending && this.committedScreenRows > 0) {
233
- // 260703 F4: scroll the HISTORY REGION, whose bottom is the parked
234
- // committed block's end not the raw fill bottom. While the fill
235
- // is taller than the block (regrowth between turns) growth is
236
- // absorbed by painting the gap; only once the fill drops below the
237
- // block bottom does the block scroll, content-only, into
238
- // scrollback (blank rows above it can never precede it).
239
- const historyBottom = this.committedBottomRow > 0
240
- ? Math.min(this.committedBottomRow, height)
241
- : this.lastFillRows;
230
+ // 260704 WP6b-v2: the committed block is top-anchored at rows 1..B
231
+ // (content-only, no blanks above by construction). When the fill
232
+ // drops below B, the overflow scrolls out through the region top —
233
+ // only committed content ever crosses the seam.
234
+ const historyBottom = Math.min(this.committedScreenRows, height);
242
235
  if (normalized.fillRows < historyBottom) {
243
- // Blank rows sitting ABOVE the committed block inside the
244
- // history region (unsaturated flush, e.g. 1 committed row in a
245
- // 5-row fill) must never reach the scrollback — DELETE them in
246
- // place (DL shifts the block up, opens blanks at the region
247
- // bottom, pushes nothing out); only actual committed content
248
- // scrolls out through the region top (audit trace: overlay
249
- // open drops fill to 0 and stamped 4 blanks before the row).
250
236
  const shrink = historyBottom - normalized.fillRows;
251
- const blanksAbove = Math.max(0, historyBottom - this.committedScreenRows);
252
- const deleteCount = Math.min(shrink, blanksAbove);
253
- const scrollCount = shrink - deleteCount;
254
- if (deleteCount > 0 && historyBottom >= 2) {
255
- buf += `\x1b[1;${historyBottom}r\x1b[1;1H\x1b[${deleteCount}M\x1b[r`;
256
- buf += `\x1b[${Math.min(height - 1, Math.max(0, this.cursorRow)) + 1};1H`;
257
- }
258
- if (scrollCount > 0) {
259
- buf += this.buildShrinkScrollOut(scrollCount, historyBottom - deleteCount);
260
- }
237
+ buf += this.buildShrinkScrollOut(shrink, historyBottom);
261
238
  this.committedScreenRows = Math.min(this.committedScreenRows, normalized.fillRows);
262
- this.committedBottomRow = this.committedScreenRows > 0 ? normalized.fillRows : 0;
263
239
  }
264
240
  }
265
241
  if (this.resizeRedrawPending) {
266
242
  const mode = this.resizeRepaintMode(widthChanged, heightChanged);
267
- if (mode === 'viewport-only') {
268
- if (normalized.fillRows < this.lastFillRows) {
269
- this.committedScreenRows = Math.min(this.committedScreenRows, normalized.fillRows);
270
- }
271
- buf += buildViewportRepaintSequence(lines, height);
272
- }
273
- else {
274
- if (this.scrollbackProtected && this.committedScreenRows > 0 && this.lastFillRows > 0) {
275
- const flushBottom = this.committedBottomRow > 0
276
- ? Math.min(this.committedBottomRow, height) : this.lastFillRows;
277
- buf += this.buildShrinkScrollOut(flushBottom, flushBottom);
243
+ // 260704 WP6b-v2: any repaint below rewrites rows 1..height with
244
+ // frame content (blank fill over the block's rows), so the
245
+ // top-anchored committed block must cross the seam FIRST —
246
+ // content-only, region [1..B]; no blank can precede it. The old
247
+ // geometry pushed the whole [1..fillBottom] region here, stamping
248
+ // the blank rows above the parked block into scrollback on every
249
+ // resize (blank-band user repro 260704); viewport-only repaints
250
+ // erased the block outright without flushing it (content loss).
251
+ if (this.committedScreenRows > 0) {
252
+ let flushRows = Math.min(this.committedScreenRows, height);
253
+ // On a height shrink outside a multiplexer, the terminal has
254
+ // ALREADY pushed the top (oldHeight − newHeight) rows into its
255
+ // scrollback (cursor-anchored shrink) — under the top-anchored
256
+ // geometry those are exactly the oldest committed rows, in
257
+ // order. ADOPT them instead of re-emitting a second copy
258
+ // (jawcode 8baafbc pixel adoption; duplication user repro
259
+ // 260704: partial `╭─ You` copies after window shrinks).
260
+ // Width changes don't gate this: the push is a height effect
261
+ // (adversarial finding 1 — width+height shrink duplicated the
262
+ // block AND stamped trailing blanks). The NET height delta is
263
+ // the right count even across coalesced shrink→grow events:
264
+ // mainstream terminals PULL rows back from scrollback on grow,
265
+ // so only the net-shrunk rows remain pushed.
266
+ if (heightChanged && !isMultiplexerSession()
267
+ && this.lastHeight > 0 && height < this.lastHeight) {
268
+ flushRows = Math.max(0, flushRows - (this.lastHeight - height));
278
269
  }
270
+ if (flushRows > 0)
271
+ buf += this.buildShrinkScrollOut(flushRows, flushRows);
279
272
  this.committedScreenRows = 0;
280
- this.committedBottomRow = 0;
273
+ }
274
+ if (mode !== 'viewport-only') {
281
275
  buf += buildFullClearSequence(mode === 'discard-scrollback');
282
- buf += buildViewportRepaintSequence(lines, height);
283
276
  }
277
+ buf += buildViewportRepaintSequence(lines, height);
284
278
  this.cursorRow = Math.max(0, Math.min(lines.length, height) - 1);
285
279
  this.fullRedrawPending = false;
286
280
  this.resizeRedrawPending = false;
287
281
  }
288
282
  else if (this.fullRedrawPending || this.prevLines.length === 0) {
289
- if (this.fullRedrawPending && this.committedScreenRows > 0 && this.lastFillRows > 0) {
290
- const flushBottom = this.committedBottomRow > 0
291
- ? Math.min(this.committedBottomRow, height) : this.lastFillRows;
292
- buf += this.buildShrinkScrollOut(flushBottom, flushBottom);
283
+ if (this.fullRedrawPending && this.committedScreenRows > 0) {
284
+ const flushRows = Math.min(this.committedScreenRows, height);
285
+ buf += this.buildShrinkScrollOut(flushRows, flushRows);
293
286
  this.committedScreenRows = 0;
294
- this.committedBottomRow = 0;
295
287
  }
296
288
  if (this.fullRedrawPending && this.prevLines.length > 0 && this.cursorRow > 0) {
297
289
  buf += `\x1b[${this.cursorRow}A`;
@@ -391,7 +383,6 @@ export class Screen {
391
383
  }
392
384
  process.stdout.write(buf);
393
385
  this.prevLines = [...lines];
394
- this.lastFillRows = normalized.fillRows;
395
386
  this.lastWidth = width;
396
387
  this.lastHeight = height;
397
388
  }
@@ -418,17 +409,19 @@ export class Screen {
418
409
  return out;
419
410
  }
420
411
  /**
421
- * The commit scroll pushes the top `count` rows of the 1..liveZoneTop
422
- * region into scrollback. Those rows must not hold last-frame pixels
423
- * (prevLines is the painted frame model; committed-lane residue is not in
424
- * it, fill rows read as ''). A fresh screen (nothing painted yet, e.g.
412
+ * The commit flush writes directly into rows [fromRow+1 .. fromRow+count]
413
+ * (1-based; capped at the fill bottom). Those target rows must not hold
414
+ * last-frame pixels (prevLines is the painted frame model; committed-lane
415
+ * residue at rows 1..B is not in it, fill rows read as '') the diff pass
416
+ * after the flush would 2K a fresh committed row wherever the model still
417
+ * shows previous-frame content. A fresh screen (nothing painted yet, e.g.
425
418
  * right after the launch clear in this same render pass) is blank.
426
419
  */
427
- commitScrollOutRowsAreBlank(count, liveZoneTop) {
420
+ commitTargetRowsAreBlank(count, fromRow, fillRows) {
428
421
  if (this.prevLines.length === 0)
429
422
  return true;
430
- const pushed = Math.min(count, liveZoneTop);
431
- for (let i = 0; i < pushed; i++) {
423
+ const end = Math.min(fromRow + count, fillRows);
424
+ for (let i = fromRow; i < end; i++) {
432
425
  const row = this.prevLines[i] ?? '';
433
426
  if (row.replace(/\x1b\[[0-9;]*m/g, '').trim() !== '')
434
427
  return false;
@@ -443,6 +436,15 @@ export class Screen {
443
436
  return false;
444
437
  if (detectHistoryLaneMode() !== 'standard')
445
438
  return false;
439
+ // No fill-capacity preflight here (adversarial finding 3, assessed
440
+ // benign): when the fill lane is under 2 rows the render skips the
441
+ // flush and the frontier stays unmarked, so the caller re-derives the
442
+ // same rows next frame. The preview-hidden rows are exactly the rows
443
+ // beyond the visible window (peekStableCommitRows only commits the
444
+ // overflow), and scroll-up renders through the REAL viewport — so the
445
+ // one-frame optimistic hide is never user-visible. A capacity check
446
+ // against the LAST frame's fill would wrongly refuse the anchor-release
447
+ // commit, whose previous frame legitimately has fillRows = 0.
446
448
  const width = Math.max(1, process.stdout.columns || 80);
447
449
  this.pendingCommitLines.push(...lines.map(line => normalizeFrameRow(line, width)));
448
450
  return true;
@@ -468,6 +470,13 @@ export class Screen {
468
470
  if (!this.inlineActive)
469
471
  return;
470
472
  let buf = '\x1b[?2026h';
473
+ // The erase loop below wipes every physical row — the top-anchored
474
+ // committed block at rows 1..B must cross the seam first (content-only)
475
+ // or its pixels evaporate without ever reaching the scrollback.
476
+ if (this.committedScreenRows > 0) {
477
+ const flushRows = Math.min(this.committedScreenRows, process.stdout.rows || 24);
478
+ buf += this.buildShrinkScrollOut(flushRows, flushRows);
479
+ }
471
480
  if (this.prevLines.length > 0) {
472
481
  if (this.cursorRow > 0)
473
482
  buf += `\x1b[${this.cursorRow}A`;
@@ -485,13 +494,10 @@ export class Screen {
485
494
  process.stdout.write(buf);
486
495
  this.prevLines = [];
487
496
  this.cursorRow = 0;
488
- this.lastFillRows = 0;
489
497
  this.committedScreenRows = 0;
490
- this.committedBottomRow = 0;
491
498
  this.lastWidth = 0;
492
499
  this.lastHeight = 0;
493
500
  this.launchClearPending = false;
494
- this.scrollbackProtected = false;
495
501
  this.fullRedrawPending = true;
496
502
  this.resizeRedrawPending = false;
497
503
  }
@@ -1 +1 @@
1
- {"version":3,"file":"frame.js","sourceRoot":"","sources":["../../../../../src/cli/tui/render/frame.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frame.js","sourceRoot":"","sources":["../../../../../src/cli/tui/render/frame.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,22 @@ export function startAssistantItem(state, agentId) {
13
13
  item.agentId = agentId;
14
14
  state.items.push(item);
15
15
  }
16
+ /** 260704 — session-scoped verbose render mode (jawcode 91bfb40/753ea63
17
+ * parity): every tool/thinking block renders permanently expanded — no
18
+ * minimize when the next tool starts, and the fold toggles become
19
+ * commit-mode-only. Runtime override set at launch (--verbose), not
20
+ * persisted. */
21
+ let verboseRenderMode = false;
22
+ export function setVerboseRenderMode(on) {
23
+ verboseRenderMode = on;
24
+ }
25
+ export function isVerboseRenderMode() {
26
+ return verboseRenderMode;
27
+ }
28
+ /** Collapsed state a block settles into when its run completes. */
29
+ function settledCollapsed() {
30
+ return !verboseRenderMode;
31
+ }
16
32
  export function appendToActiveAssistant(state, chunk) {
17
33
  const last = state.items[state.items.length - 1];
18
34
  if (!last || last.type !== 'assistant' || !last.streaming)
@@ -93,7 +109,7 @@ export function appendThinkingItem(state, text, opts) {
93
109
  text,
94
110
  streaming: opts?.streaming ?? false,
95
111
  timestamp: Date.now(),
96
- collapsed: opts?.collapsed ?? true,
112
+ collapsed: opts?.collapsed ?? settledCollapsed(),
97
113
  };
98
114
  if (opts?.agentId)
99
115
  item.agentId = opts.agentId;
@@ -114,7 +130,7 @@ export function appendThinkingTurnText(state, chunk, agentId) {
114
130
  return true;
115
131
  }
116
132
  }
117
- return appendThinkingItem(state, chunk, { ...(agentId ? { agentId } : {}), streaming: true, collapsed: true });
133
+ return appendThinkingItem(state, chunk, { ...(agentId ? { agentId } : {}), streaming: true, collapsed: settledCollapsed() });
118
134
  }
119
135
  export function finalizeAssistant(state, fallbackText) {
120
136
  const last = state.items[state.items.length - 1];
@@ -175,7 +191,7 @@ export function appendToolItem(state, text, opts) {
175
191
  existing.timestamp = Date.now();
176
192
  if (opts.status) {
177
193
  existing.status = opts.status;
178
- existing.collapsed = opts.status !== 'running';
194
+ existing.collapsed = settledCollapsed() && opts.status !== 'running';
179
195
  }
180
196
  if (opts.agentId)
181
197
  existing.agentId = opts.agentId;
@@ -189,7 +205,7 @@ export function appendToolItem(state, text, opts) {
189
205
  type: 'tool',
190
206
  text,
191
207
  timestamp: Date.now(),
192
- collapsed: opts?.status ? opts.status !== 'running' : false,
208
+ collapsed: settledCollapsed() && (opts?.status ? opts.status !== 'running' : false),
193
209
  };
194
210
  if (opts?.agentId)
195
211
  item.agentId = opts.agentId;
@@ -219,7 +235,7 @@ export function commitThinkingItemOnce(state, input, commitOpts) {
219
235
  ...(input.agentId ? { agentId: input.agentId } : {}),
220
236
  stepRef: input.stepRef,
221
237
  streaming: false,
222
- collapsed: true,
238
+ collapsed: settledCollapsed(),
223
239
  });
224
240
  }
225
241
  return false;
@@ -230,7 +246,7 @@ export function commitThinkingItemOnce(state, input, commitOpts) {
230
246
  ...(input.agentId ? { agentId: input.agentId } : {}),
231
247
  ...(input.stepRef ? { stepRef: input.stepRef } : {}),
232
248
  streaming: false,
233
- collapsed: true,
249
+ collapsed: settledCollapsed(),
234
250
  });
235
251
  }
236
252
  export function upsertLiveToolItem(state, input) {
@@ -286,7 +302,7 @@ export function commitToolItemOnce(state, input, commitOpts) {
286
302
  item.detail = input.detail;
287
303
  if (input.status) {
288
304
  item.status = input.status;
289
- item.collapsed = input.status !== 'running';
305
+ item.collapsed = settledCollapsed() && input.status !== 'running';
290
306
  }
291
307
  item.timestamp = Date.now();
292
308
  break;
@@ -342,19 +358,21 @@ export function commitRemainingLiveToolItems(state, status = 'done') {
342
358
  }
343
359
  }
344
360
  state.liveTools.length = 0;
345
- state.liveToolsExpanded = false;
361
+ state.liveToolsExpanded = verboseRenderMode;
346
362
  return committed;
347
363
  }
348
364
  export function clearLiveToolItems(state) {
349
365
  const items = [...state.liveTools];
350
366
  state.liveTools.length = 0;
351
- state.liveToolsExpanded = false;
367
+ state.liveToolsExpanded = verboseRenderMode;
352
368
  return items;
353
369
  }
354
370
  export function listLiveToolItems(state) {
355
371
  return [...state.liveTools];
356
372
  }
357
373
  export function collapsePreviousTools(state) {
374
+ if (verboseRenderMode)
375
+ return;
358
376
  for (let i = state.items.length - 1; i >= 0; i--) {
359
377
  const item = state.items[i];
360
378
  if (item.type === 'tool' && !item.collapsed)
@@ -368,6 +386,8 @@ export function collapsePreviousTools(state) {
368
386
  // heights from what the terminal actually shows (jawcode parity: committed
369
387
  // components are ineligible for the live expansion toggle).
370
388
  export function toggleToolExpansion(state, fromIndex = 0) {
389
+ if (verboseRenderMode)
390
+ return false;
371
391
  const expandableItems = state.items
372
392
  .slice(Math.max(0, fromIndex))
373
393
  .filter(i => i.type === 'tool' || i.type === 'thinking');
@@ -381,6 +401,8 @@ export function toggleToolExpansion(state, fromIndex = 0) {
381
401
  return true;
382
402
  }
383
403
  export function toggleLatestToolExpansion(state) {
404
+ if (verboseRenderMode)
405
+ return false;
384
406
  for (let i = state.items.length - 1; i >= 0; i--) {
385
407
  const item = state.items[i];
386
408
  if (item.type !== 'tool')