@kenkaiiii/ggcoder 5.49.5 → 5.49.7

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 (956) hide show
  1. package/dist/app-sidecar.js +34 -9
  2. package/dist/app-sidecar.js.map +1 -1
  3. package/dist/core/settings-manager.d.ts +2 -2
  4. package/dist/hf-pull.d.ts +38 -2
  5. package/dist/hf-pull.d.ts.map +1 -1
  6. package/dist/hf-pull.js +122 -6
  7. package/dist/hf-pull.js.map +1 -1
  8. package/package.json +5 -5
  9. package/dist/app-sidecar-auth-broadcast.test.d.ts +0 -2
  10. package/dist/app-sidecar-auth-broadcast.test.d.ts.map +0 -1
  11. package/dist/app-sidecar-auth-broadcast.test.js +0 -383
  12. package/dist/app-sidecar-auth-broadcast.test.js.map +0 -1
  13. package/dist/app-sidecar-sessions.test.d.ts +0 -2
  14. package/dist/app-sidecar-sessions.test.d.ts.map +0 -1
  15. package/dist/app-sidecar-sessions.test.js +0 -178
  16. package/dist/app-sidecar-sessions.test.js.map +0 -1
  17. package/dist/chat-agents/general.test.d.ts +0 -2
  18. package/dist/chat-agents/general.test.d.ts.map +0 -1
  19. package/dist/chat-agents/general.test.js +0 -53
  20. package/dist/chat-agents/general.test.js.map +0 -1
  21. package/dist/chat-agents/jiwa.test.d.ts +0 -2
  22. package/dist/chat-agents/jiwa.test.d.ts.map +0 -1
  23. package/dist/chat-agents/jiwa.test.js +0 -66
  24. package/dist/chat-agents/jiwa.test.js.map +0 -1
  25. package/dist/chat-agents/memory.test.d.ts +0 -2
  26. package/dist/chat-agents/memory.test.d.ts.map +0 -1
  27. package/dist/chat-agents/memory.test.js +0 -165
  28. package/dist/chat-agents/memory.test.js.map +0 -1
  29. package/dist/chat-agents/specialists.test.d.ts +0 -2
  30. package/dist/chat-agents/specialists.test.d.ts.map +0 -1
  31. package/dist/chat-agents/specialists.test.js +0 -98
  32. package/dist/chat-agents/specialists.test.js.map +0 -1
  33. package/dist/cli/command-routing.test.d.ts +0 -2
  34. package/dist/cli/command-routing.test.d.ts.map +0 -1
  35. package/dist/cli/command-routing.test.js +0 -60
  36. package/dist/cli/command-routing.test.js.map +0 -1
  37. package/dist/config.test.d.ts +0 -2
  38. package/dist/config.test.d.ts.map +0 -1
  39. package/dist/config.test.js +0 -148
  40. package/dist/config.test.js.map +0 -1
  41. package/dist/core/agent-mcp-passthrough.test.d.ts +0 -2
  42. package/dist/core/agent-mcp-passthrough.test.d.ts.map +0 -1
  43. package/dist/core/agent-mcp-passthrough.test.js +0 -61
  44. package/dist/core/agent-mcp-passthrough.test.js.map +0 -1
  45. package/dist/core/agent-notifications.test.d.ts +0 -2
  46. package/dist/core/agent-notifications.test.d.ts.map +0 -1
  47. package/dist/core/agent-notifications.test.js +0 -97
  48. package/dist/core/agent-notifications.test.js.map +0 -1
  49. package/dist/core/agent-session-add-dir.test.d.ts +0 -2
  50. package/dist/core/agent-session-add-dir.test.d.ts.map +0 -1
  51. package/dist/core/agent-session-add-dir.test.js +0 -110
  52. package/dist/core/agent-session-add-dir.test.js.map +0 -1
  53. package/dist/core/agent-session-checkpoint-flush.test.d.ts +0 -2
  54. package/dist/core/agent-session-checkpoint-flush.test.d.ts.map +0 -1
  55. package/dist/core/agent-session-checkpoint-flush.test.js +0 -201
  56. package/dist/core/agent-session-checkpoint-flush.test.js.map +0 -1
  57. package/dist/core/agent-session-compaction.test.d.ts +0 -2
  58. package/dist/core/agent-session-compaction.test.d.ts.map +0 -1
  59. package/dist/core/agent-session-compaction.test.js +0 -1157
  60. package/dist/core/agent-session-compaction.test.js.map +0 -1
  61. package/dist/core/agent-session-crash-durability.test.d.ts +0 -2
  62. package/dist/core/agent-session-crash-durability.test.d.ts.map +0 -1
  63. package/dist/core/agent-session-crash-durability.test.js +0 -102
  64. package/dist/core/agent-session-crash-durability.test.js.map +0 -1
  65. package/dist/core/agent-session-marker-anchors.test.d.ts +0 -2
  66. package/dist/core/agent-session-marker-anchors.test.d.ts.map +0 -1
  67. package/dist/core/agent-session-marker-anchors.test.js +0 -326
  68. package/dist/core/agent-session-marker-anchors.test.js.map +0 -1
  69. package/dist/core/agent-session-memory-tail.test.d.ts +0 -2
  70. package/dist/core/agent-session-memory-tail.test.d.ts.map +0 -1
  71. package/dist/core/agent-session-memory-tail.test.js +0 -119
  72. package/dist/core/agent-session-memory-tail.test.js.map +0 -1
  73. package/dist/core/agent-session-model-switch.test.d.ts +0 -2
  74. package/dist/core/agent-session-model-switch.test.d.ts.map +0 -1
  75. package/dist/core/agent-session-model-switch.test.js +0 -161
  76. package/dist/core/agent-session-model-switch.test.js.map +0 -1
  77. package/dist/core/agent-session-notifications.test.d.ts +0 -2
  78. package/dist/core/agent-session-notifications.test.d.ts.map +0 -1
  79. package/dist/core/agent-session-notifications.test.js +0 -114
  80. package/dist/core/agent-session-notifications.test.js.map +0 -1
  81. package/dist/core/agent-session-pre-init-arming.test.d.ts +0 -2
  82. package/dist/core/agent-session-pre-init-arming.test.d.ts.map +0 -1
  83. package/dist/core/agent-session-pre-init-arming.test.js +0 -60
  84. package/dist/core/agent-session-pre-init-arming.test.js.map +0 -1
  85. package/dist/core/agent-session-process-gate.test.d.ts +0 -2
  86. package/dist/core/agent-session-process-gate.test.d.ts.map +0 -1
  87. package/dist/core/agent-session-process-gate.test.js +0 -98
  88. package/dist/core/agent-session-process-gate.test.js.map +0 -1
  89. package/dist/core/agent-session-queue.test.d.ts +0 -2
  90. package/dist/core/agent-session-queue.test.d.ts.map +0 -1
  91. package/dist/core/agent-session-queue.test.js +0 -184
  92. package/dist/core/agent-session-queue.test.js.map +0 -1
  93. package/dist/core/agent-session-review-coverage.test.d.ts +0 -2
  94. package/dist/core/agent-session-review-coverage.test.d.ts.map +0 -1
  95. package/dist/core/agent-session-review-coverage.test.js +0 -191
  96. package/dist/core/agent-session-review-coverage.test.js.map +0 -1
  97. package/dist/core/agent-session-slash-restore.test.d.ts +0 -2
  98. package/dist/core/agent-session-slash-restore.test.d.ts.map +0 -1
  99. package/dist/core/agent-session-slash-restore.test.js +0 -121
  100. package/dist/core/agent-session-slash-restore.test.js.map +0 -1
  101. package/dist/core/agent-session-subagent-policy.test.d.ts +0 -2
  102. package/dist/core/agent-session-subagent-policy.test.d.ts.map +0 -1
  103. package/dist/core/agent-session-subagent-policy.test.js +0 -40
  104. package/dist/core/agent-session-subagent-policy.test.js.map +0 -1
  105. package/dist/core/agent-session-tool-result-policy.test.d.ts +0 -2
  106. package/dist/core/agent-session-tool-result-policy.test.d.ts.map +0 -1
  107. package/dist/core/agent-session-tool-result-policy.test.js +0 -25
  108. package/dist/core/agent-session-tool-result-policy.test.js.map +0 -1
  109. package/dist/core/agent-session-tool-tiers.test.d.ts +0 -2
  110. package/dist/core/agent-session-tool-tiers.test.d.ts.map +0 -1
  111. package/dist/core/agent-session-tool-tiers.test.js +0 -138
  112. package/dist/core/agent-session-tool-tiers.test.js.map +0 -1
  113. package/dist/core/agent-session-verification-flow.test.d.ts +0 -2
  114. package/dist/core/agent-session-verification-flow.test.d.ts.map +0 -1
  115. package/dist/core/agent-session-verification-flow.test.js +0 -125
  116. package/dist/core/agent-session-verification-flow.test.js.map +0 -1
  117. package/dist/core/agent-session-verification-gate.test.d.ts +0 -2
  118. package/dist/core/agent-session-verification-gate.test.d.ts.map +0 -1
  119. package/dist/core/agent-session-verification-gate.test.js +0 -137
  120. package/dist/core/agent-session-verification-gate.test.js.map +0 -1
  121. package/dist/core/agent-tools-allowlist.test.d.ts +0 -2
  122. package/dist/core/agent-tools-allowlist.test.d.ts.map +0 -1
  123. package/dist/core/agent-tools-allowlist.test.js +0 -74
  124. package/dist/core/agent-tools-allowlist.test.js.map +0 -1
  125. package/dist/core/agents.test.d.ts +0 -2
  126. package/dist/core/agents.test.d.ts.map +0 -1
  127. package/dist/core/agents.test.js +0 -147
  128. package/dist/core/agents.test.js.map +0 -1
  129. package/dist/core/auto-update.test.d.ts +0 -2
  130. package/dist/core/auto-update.test.d.ts.map +0 -1
  131. package/dist/core/auto-update.test.js +0 -204
  132. package/dist/core/auto-update.test.js.map +0 -1
  133. package/dist/core/autopilot-cycle.test.d.ts +0 -2
  134. package/dist/core/autopilot-cycle.test.d.ts.map +0 -1
  135. package/dist/core/autopilot-cycle.test.js +0 -375
  136. package/dist/core/autopilot-cycle.test.js.map +0 -1
  137. package/dist/core/autopilot-gate.test.d.ts +0 -2
  138. package/dist/core/autopilot-gate.test.d.ts.map +0 -1
  139. package/dist/core/autopilot-gate.test.js +0 -298
  140. package/dist/core/autopilot-gate.test.js.map +0 -1
  141. package/dist/core/autopilot-verdict.test.d.ts +0 -2
  142. package/dist/core/autopilot-verdict.test.d.ts.map +0 -1
  143. package/dist/core/autopilot-verdict.test.js +0 -153
  144. package/dist/core/autopilot-verdict.test.js.map +0 -1
  145. package/dist/core/checkpoint-store.test.d.ts +0 -2
  146. package/dist/core/checkpoint-store.test.d.ts.map +0 -1
  147. package/dist/core/checkpoint-store.test.js +0 -111
  148. package/dist/core/checkpoint-store.test.js.map +0 -1
  149. package/dist/core/code-retrieval-chunkers.test.d.ts +0 -2
  150. package/dist/core/code-retrieval-chunkers.test.d.ts.map +0 -1
  151. package/dist/core/code-retrieval-chunkers.test.js +0 -203
  152. package/dist/core/code-retrieval-chunkers.test.js.map +0 -1
  153. package/dist/core/compaction/active-context.test.d.ts +0 -2
  154. package/dist/core/compaction/active-context.test.d.ts.map +0 -1
  155. package/dist/core/compaction/active-context.test.js +0 -57
  156. package/dist/core/compaction/active-context.test.js.map +0 -1
  157. package/dist/core/compaction/compactor.test.d.ts +0 -2
  158. package/dist/core/compaction/compactor.test.d.ts.map +0 -1
  159. package/dist/core/compaction/compactor.test.js +0 -1072
  160. package/dist/core/compaction/compactor.test.js.map +0 -1
  161. package/dist/core/compaction/policy.test.d.ts +0 -2
  162. package/dist/core/compaction/policy.test.d.ts.map +0 -1
  163. package/dist/core/compaction/policy.test.js +0 -35
  164. package/dist/core/compaction/policy.test.js.map +0 -1
  165. package/dist/core/compaction/query-aware-selector.test.d.ts +0 -2
  166. package/dist/core/compaction/query-aware-selector.test.d.ts.map +0 -1
  167. package/dist/core/compaction/query-aware-selector.test.js +0 -96
  168. package/dist/core/compaction/query-aware-selector.test.js.map +0 -1
  169. package/dist/core/compaction/token-estimator.test.d.ts +0 -2
  170. package/dist/core/compaction/token-estimator.test.d.ts.map +0 -1
  171. package/dist/core/compaction/token-estimator.test.js +0 -283
  172. package/dist/core/compaction/token-estimator.test.js.map +0 -1
  173. package/dist/core/compaction/tool-result-pruner.test.d.ts +0 -2
  174. package/dist/core/compaction/tool-result-pruner.test.d.ts.map +0 -1
  175. package/dist/core/compaction/tool-result-pruner.test.js +0 -320
  176. package/dist/core/compaction/tool-result-pruner.test.js.map +0 -1
  177. package/dist/core/context-limits.test.d.ts +0 -2
  178. package/dist/core/context-limits.test.d.ts.map +0 -1
  179. package/dist/core/context-limits.test.js +0 -55
  180. package/dist/core/context-limits.test.js.map +0 -1
  181. package/dist/core/continue-replay-inventory.test.d.ts +0 -2
  182. package/dist/core/continue-replay-inventory.test.d.ts.map +0 -1
  183. package/dist/core/continue-replay-inventory.test.js +0 -42
  184. package/dist/core/continue-replay-inventory.test.js.map +0 -1
  185. package/dist/core/encode-cwd.test.d.ts +0 -2
  186. package/dist/core/encode-cwd.test.d.ts.map +0 -1
  187. package/dist/core/encode-cwd.test.js +0 -80
  188. package/dist/core/encode-cwd.test.js.map +0 -1
  189. package/dist/core/event-bus.test.d.ts +0 -2
  190. package/dist/core/event-bus.test.d.ts.map +0 -1
  191. package/dist/core/event-bus.test.js +0 -33
  192. package/dist/core/event-bus.test.js.map +0 -1
  193. package/dist/core/extensions/plugin-bundles.test.d.ts +0 -2
  194. package/dist/core/extensions/plugin-bundles.test.d.ts.map +0 -1
  195. package/dist/core/extensions/plugin-bundles.test.js +0 -110
  196. package/dist/core/extensions/plugin-bundles.test.js.map +0 -1
  197. package/dist/core/foreign-session-import.test.d.ts +0 -2
  198. package/dist/core/foreign-session-import.test.d.ts.map +0 -1
  199. package/dist/core/foreign-session-import.test.js +0 -220
  200. package/dist/core/foreign-session-import.test.js.map +0 -1
  201. package/dist/core/hashline-edit-benchmark.test.d.ts +0 -2
  202. package/dist/core/hashline-edit-benchmark.test.d.ts.map +0 -1
  203. package/dist/core/hashline-edit-benchmark.test.js +0 -190
  204. package/dist/core/hashline-edit-benchmark.test.js.map +0 -1
  205. package/dist/core/ideal-review.test.d.ts +0 -2
  206. package/dist/core/ideal-review.test.d.ts.map +0 -1
  207. package/dist/core/ideal-review.test.js +0 -242
  208. package/dist/core/ideal-review.test.js.map +0 -1
  209. package/dist/core/input-normalization.test.d.ts +0 -2
  210. package/dist/core/input-normalization.test.d.ts.map +0 -1
  211. package/dist/core/input-normalization.test.js +0 -75
  212. package/dist/core/input-normalization.test.js.map +0 -1
  213. package/dist/core/json-mode-flag-parity.test.d.ts +0 -2
  214. package/dist/core/json-mode-flag-parity.test.d.ts.map +0 -1
  215. package/dist/core/json-mode-flag-parity.test.js +0 -66
  216. package/dist/core/json-mode-flag-parity.test.js.map +0 -1
  217. package/dist/core/ken-context.test.d.ts +0 -2
  218. package/dist/core/ken-context.test.d.ts.map +0 -1
  219. package/dist/core/ken-context.test.js +0 -342
  220. package/dist/core/ken-context.test.js.map +0 -1
  221. package/dist/core/ken-model.test.d.ts +0 -2
  222. package/dist/core/ken-model.test.d.ts.map +0 -1
  223. package/dist/core/ken-model.test.js +0 -51
  224. package/dist/core/ken-model.test.js.map +0 -1
  225. package/dist/core/ken-prompt.test.d.ts +0 -2
  226. package/dist/core/ken-prompt.test.d.ts.map +0 -1
  227. package/dist/core/ken-prompt.test.js +0 -191
  228. package/dist/core/ken-prompt.test.js.map +0 -1
  229. package/dist/core/language-detector.test.d.ts +0 -2
  230. package/dist/core/language-detector.test.d.ts.map +0 -1
  231. package/dist/core/language-detector.test.js +0 -109
  232. package/dist/core/language-detector.test.js.map +0 -1
  233. package/dist/core/local-endpoint-store.test.d.ts +0 -2
  234. package/dist/core/local-endpoint-store.test.d.ts.map +0 -1
  235. package/dist/core/local-endpoint-store.test.js +0 -123
  236. package/dist/core/local-endpoint-store.test.js.map +0 -1
  237. package/dist/core/loop-breaker.test.d.ts +0 -2
  238. package/dist/core/loop-breaker.test.d.ts.map +0 -1
  239. package/dist/core/loop-breaker.test.js +0 -238
  240. package/dist/core/loop-breaker.test.js.map +0 -1
  241. package/dist/core/lsp/client-navigation.test.d.ts +0 -2
  242. package/dist/core/lsp/client-navigation.test.d.ts.map +0 -1
  243. package/dist/core/lsp/client-navigation.test.js +0 -135
  244. package/dist/core/lsp/client-navigation.test.js.map +0 -1
  245. package/dist/core/lsp/format.test.d.ts +0 -2
  246. package/dist/core/lsp/format.test.d.ts.map +0 -1
  247. package/dist/core/lsp/format.test.js +0 -56
  248. package/dist/core/lsp/format.test.js.map +0 -1
  249. package/dist/core/lsp/integration.test.d.ts +0 -2
  250. package/dist/core/lsp/integration.test.d.ts.map +0 -1
  251. package/dist/core/lsp/integration.test.js +0 -60
  252. package/dist/core/lsp/integration.test.js.map +0 -1
  253. package/dist/core/lsp/jsonrpc.test.d.ts +0 -2
  254. package/dist/core/lsp/jsonrpc.test.d.ts.map +0 -1
  255. package/dist/core/lsp/jsonrpc.test.js +0 -127
  256. package/dist/core/lsp/jsonrpc.test.js.map +0 -1
  257. package/dist/core/lsp/manager-navigation.test.d.ts +0 -2
  258. package/dist/core/lsp/manager-navigation.test.d.ts.map +0 -1
  259. package/dist/core/lsp/manager-navigation.test.js +0 -121
  260. package/dist/core/lsp/manager-navigation.test.js.map +0 -1
  261. package/dist/core/lsp/manager.test.d.ts +0 -2
  262. package/dist/core/lsp/manager.test.d.ts.map +0 -1
  263. package/dist/core/lsp/manager.test.js +0 -286
  264. package/dist/core/lsp/manager.test.js.map +0 -1
  265. package/dist/core/lsp/pool.test.d.ts +0 -2
  266. package/dist/core/lsp/pool.test.d.ts.map +0 -1
  267. package/dist/core/lsp/pool.test.js +0 -286
  268. package/dist/core/lsp/pool.test.js.map +0 -1
  269. package/dist/core/lsp/servers.test.d.ts +0 -2
  270. package/dist/core/lsp/servers.test.d.ts.map +0 -1
  271. package/dist/core/lsp/servers.test.js +0 -67
  272. package/dist/core/lsp/servers.test.js.map +0 -1
  273. package/dist/core/lsp/uri.test.d.ts +0 -2
  274. package/dist/core/lsp/uri.test.d.ts.map +0 -1
  275. package/dist/core/lsp/uri.test.js +0 -56
  276. package/dist/core/lsp/uri.test.js.map +0 -1
  277. package/dist/core/lsp/windows.test.d.ts +0 -2
  278. package/dist/core/lsp/windows.test.d.ts.map +0 -1
  279. package/dist/core/lsp/windows.test.js +0 -239
  280. package/dist/core/lsp/windows.test.js.map +0 -1
  281. package/dist/core/mcp/catalog-cache.test.d.ts +0 -2
  282. package/dist/core/mcp/catalog-cache.test.d.ts.map +0 -1
  283. package/dist/core/mcp/catalog-cache.test.js +0 -99
  284. package/dist/core/mcp/catalog-cache.test.js.map +0 -1
  285. package/dist/core/mcp/client-session-recovery.test.d.ts +0 -2
  286. package/dist/core/mcp/client-session-recovery.test.d.ts.map +0 -1
  287. package/dist/core/mcp/client-session-recovery.test.js +0 -231
  288. package/dist/core/mcp/client-session-recovery.test.js.map +0 -1
  289. package/dist/core/mcp/content.test.d.ts +0 -2
  290. package/dist/core/mcp/content.test.d.ts.map +0 -1
  291. package/dist/core/mcp/content.test.js +0 -152
  292. package/dist/core/mcp/content.test.js.map +0 -1
  293. package/dist/core/mcp/defaults.test.d.ts +0 -2
  294. package/dist/core/mcp/defaults.test.d.ts.map +0 -1
  295. package/dist/core/mcp/defaults.test.js +0 -60
  296. package/dist/core/mcp/defaults.test.js.map +0 -1
  297. package/dist/core/mcp/elicitation.test.d.ts +0 -2
  298. package/dist/core/mcp/elicitation.test.d.ts.map +0 -1
  299. package/dist/core/mcp/elicitation.test.js +0 -158
  300. package/dist/core/mcp/elicitation.test.js.map +0 -1
  301. package/dist/core/mcp/legacy-negotiation.test.d.ts +0 -2
  302. package/dist/core/mcp/legacy-negotiation.test.d.ts.map +0 -1
  303. package/dist/core/mcp/legacy-negotiation.test.js +0 -80
  304. package/dist/core/mcp/legacy-negotiation.test.js.map +0 -1
  305. package/dist/core/mcp/loopback.test.d.ts +0 -2
  306. package/dist/core/mcp/loopback.test.d.ts.map +0 -1
  307. package/dist/core/mcp/loopback.test.js +0 -87
  308. package/dist/core/mcp/loopback.test.js.map +0 -1
  309. package/dist/core/mcp/oauth-store.test.d.ts +0 -2
  310. package/dist/core/mcp/oauth-store.test.d.ts.map +0 -1
  311. package/dist/core/mcp/oauth-store.test.js +0 -94
  312. package/dist/core/mcp/oauth-store.test.js.map +0 -1
  313. package/dist/core/mcp/parse-add-command.test.d.ts +0 -2
  314. package/dist/core/mcp/parse-add-command.test.d.ts.map +0 -1
  315. package/dist/core/mcp/parse-add-command.test.js +0 -81
  316. package/dist/core/mcp/parse-add-command.test.js.map +0 -1
  317. package/dist/core/mcp/resolve-stdio.test.d.ts +0 -2
  318. package/dist/core/mcp/resolve-stdio.test.d.ts.map +0 -1
  319. package/dist/core/mcp/resolve-stdio.test.js +0 -239
  320. package/dist/core/mcp/resolve-stdio.test.js.map +0 -1
  321. package/dist/core/mcp/session-elicitation-wiring.test.d.ts +0 -2
  322. package/dist/core/mcp/session-elicitation-wiring.test.d.ts.map +0 -1
  323. package/dist/core/mcp/session-elicitation-wiring.test.js +0 -138
  324. package/dist/core/mcp/session-elicitation-wiring.test.js.map +0 -1
  325. package/dist/core/mcp/shared-pool.test.d.ts +0 -2
  326. package/dist/core/mcp/shared-pool.test.d.ts.map +0 -1
  327. package/dist/core/mcp/shared-pool.test.js +0 -425
  328. package/dist/core/mcp/shared-pool.test.js.map +0 -1
  329. package/dist/core/mcp/store.test.d.ts +0 -2
  330. package/dist/core/mcp/store.test.d.ts.map +0 -1
  331. package/dist/core/mcp/store.test.js +0 -110
  332. package/dist/core/mcp/store.test.js.map +0 -1
  333. package/dist/core/mcp/when-connected.test.d.ts +0 -2
  334. package/dist/core/mcp/when-connected.test.d.ts.map +0 -1
  335. package/dist/core/mcp/when-connected.test.js +0 -46
  336. package/dist/core/mcp/when-connected.test.js.map +0 -1
  337. package/dist/core/message-images.test.d.ts +0 -2
  338. package/dist/core/message-images.test.d.ts.map +0 -1
  339. package/dist/core/message-images.test.js +0 -62
  340. package/dist/core/message-images.test.js.map +0 -1
  341. package/dist/core/network-guard.test.d.ts +0 -2
  342. package/dist/core/network-guard.test.d.ts.map +0 -1
  343. package/dist/core/network-guard.test.js +0 -72
  344. package/dist/core/network-guard.test.js.map +0 -1
  345. package/dist/core/persistent-shell.test.d.ts +0 -2
  346. package/dist/core/persistent-shell.test.d.ts.map +0 -1
  347. package/dist/core/persistent-shell.test.js +0 -84
  348. package/dist/core/persistent-shell.test.js.map +0 -1
  349. package/dist/core/process-gate.test.d.ts +0 -2
  350. package/dist/core/process-gate.test.d.ts.map +0 -1
  351. package/dist/core/process-gate.test.js +0 -87
  352. package/dist/core/process-gate.test.js.map +0 -1
  353. package/dist/core/process-manager-dev-server-repro.test.d.ts +0 -2
  354. package/dist/core/process-manager-dev-server-repro.test.d.ts.map +0 -1
  355. package/dist/core/process-manager-dev-server-repro.test.js +0 -225
  356. package/dist/core/process-manager-dev-server-repro.test.js.map +0 -1
  357. package/dist/core/process-manager-notifications.test.d.ts +0 -2
  358. package/dist/core/process-manager-notifications.test.d.ts.map +0 -1
  359. package/dist/core/process-manager-notifications.test.js +0 -245
  360. package/dist/core/process-manager-notifications.test.js.map +0 -1
  361. package/dist/core/process-manager-wake.test.d.ts +0 -2
  362. package/dist/core/process-manager-wake.test.d.ts.map +0 -1
  363. package/dist/core/process-manager-wake.test.js +0 -100
  364. package/dist/core/process-manager-wake.test.js.map +0 -1
  365. package/dist/core/progress/engine.test.d.ts +0 -2
  366. package/dist/core/progress/engine.test.d.ts.map +0 -1
  367. package/dist/core/progress/engine.test.js +0 -136
  368. package/dist/core/progress/engine.test.js.map +0 -1
  369. package/dist/core/progress/git-xp.test.d.ts +0 -2
  370. package/dist/core/progress/git-xp.test.d.ts.map +0 -1
  371. package/dist/core/progress/git-xp.test.js +0 -88
  372. package/dist/core/progress/git-xp.test.js.map +0 -1
  373. package/dist/core/progress/ranks.test.d.ts +0 -2
  374. package/dist/core/progress/ranks.test.d.ts.map +0 -1
  375. package/dist/core/progress/ranks.test.js +0 -100
  376. package/dist/core/progress/ranks.test.js.map +0 -1
  377. package/dist/core/progress/rebuild.test.d.ts +0 -2
  378. package/dist/core/progress/rebuild.test.d.ts.map +0 -1
  379. package/dist/core/progress/rebuild.test.js +0 -103
  380. package/dist/core/progress/rebuild.test.js.map +0 -1
  381. package/dist/core/progress/store.test.d.ts +0 -2
  382. package/dist/core/progress/store.test.d.ts.map +0 -1
  383. package/dist/core/progress/store.test.js +0 -108
  384. package/dist/core/progress/store.test.js.map +0 -1
  385. package/dist/core/project-discovery.test.d.ts +0 -2
  386. package/dist/core/project-discovery.test.d.ts.map +0 -1
  387. package/dist/core/project-discovery.test.js +0 -519
  388. package/dist/core/project-discovery.test.js.map +0 -1
  389. package/dist/core/prompt-commands.test.d.ts +0 -2
  390. package/dist/core/prompt-commands.test.d.ts.map +0 -1
  391. package/dist/core/prompt-commands.test.js +0 -180
  392. package/dist/core/prompt-commands.test.js.map +0 -1
  393. package/dist/core/provider-cache.e2e.test.d.ts +0 -2
  394. package/dist/core/provider-cache.e2e.test.d.ts.map +0 -1
  395. package/dist/core/provider-cache.e2e.test.js +0 -125
  396. package/dist/core/provider-cache.e2e.test.js.map +0 -1
  397. package/dist/core/radio.test.d.ts +0 -2
  398. package/dist/core/radio.test.d.ts.map +0 -1
  399. package/dist/core/radio.test.js +0 -117
  400. package/dist/core/radio.test.js.map +0 -1
  401. package/dist/core/regrounding.test.d.ts +0 -2
  402. package/dist/core/regrounding.test.d.ts.map +0 -1
  403. package/dist/core/regrounding.test.js +0 -38
  404. package/dist/core/regrounding.test.js.map +0 -1
  405. package/dist/core/resolve-start.test.d.ts +0 -2
  406. package/dist/core/resolve-start.test.d.ts.map +0 -1
  407. package/dist/core/resolve-start.test.js +0 -68
  408. package/dist/core/resolve-start.test.js.map +0 -1
  409. package/dist/core/run-claim.test.d.ts +0 -2
  410. package/dist/core/run-claim.test.d.ts.map +0 -1
  411. package/dist/core/run-claim.test.js +0 -107
  412. package/dist/core/run-claim.test.js.map +0 -1
  413. package/dist/core/run-journal.test.d.ts +0 -2
  414. package/dist/core/run-journal.test.d.ts.map +0 -1
  415. package/dist/core/run-journal.test.js +0 -195
  416. package/dist/core/run-journal.test.js.map +0 -1
  417. package/dist/core/run-lifecycle.test.d.ts +0 -2
  418. package/dist/core/run-lifecycle.test.d.ts.map +0 -1
  419. package/dist/core/run-lifecycle.test.js +0 -64
  420. package/dist/core/run-lifecycle.test.js.map +0 -1
  421. package/dist/core/sandbox-feedback.test.d.ts +0 -2
  422. package/dist/core/sandbox-feedback.test.d.ts.map +0 -1
  423. package/dist/core/sandbox-feedback.test.js +0 -32
  424. package/dist/core/sandbox-feedback.test.js.map +0 -1
  425. package/dist/core/sandbox.test.d.ts +0 -2
  426. package/dist/core/sandbox.test.d.ts.map +0 -1
  427. package/dist/core/sandbox.test.js +0 -288
  428. package/dist/core/sandbox.test.js.map +0 -1
  429. package/dist/core/semantic-search-benchmark.test.d.ts +0 -2
  430. package/dist/core/semantic-search-benchmark.test.d.ts.map +0 -1
  431. package/dist/core/semantic-search-benchmark.test.js +0 -89
  432. package/dist/core/semantic-search-benchmark.test.js.map +0 -1
  433. package/dist/core/session-compaction.test.d.ts +0 -2
  434. package/dist/core/session-compaction.test.d.ts.map +0 -1
  435. package/dist/core/session-compaction.test.js +0 -92
  436. package/dist/core/session-compaction.test.js.map +0 -1
  437. package/dist/core/session-export.test.d.ts +0 -2
  438. package/dist/core/session-export.test.d.ts.map +0 -1
  439. package/dist/core/session-export.test.js +0 -353
  440. package/dist/core/session-export.test.js.map +0 -1
  441. package/dist/core/session-history.test.d.ts +0 -2
  442. package/dist/core/session-history.test.d.ts.map +0 -1
  443. package/dist/core/session-history.test.js +0 -272
  444. package/dist/core/session-history.test.js.map +0 -1
  445. package/dist/core/session-injections.test.d.ts +0 -2
  446. package/dist/core/session-injections.test.d.ts.map +0 -1
  447. package/dist/core/session-injections.test.js +0 -117
  448. package/dist/core/session-injections.test.js.map +0 -1
  449. package/dist/core/session-manager.test.d.ts +0 -2
  450. package/dist/core/session-manager.test.d.ts.map +0 -1
  451. package/dist/core/session-manager.test.js +0 -571
  452. package/dist/core/session-manager.test.js.map +0 -1
  453. package/dist/core/session-notification-visibility.test.d.ts +0 -2
  454. package/dist/core/session-notification-visibility.test.d.ts.map +0 -1
  455. package/dist/core/session-notification-visibility.test.js +0 -113
  456. package/dist/core/session-notification-visibility.test.js.map +0 -1
  457. package/dist/core/session-reconstructability.test.d.ts +0 -2
  458. package/dist/core/session-reconstructability.test.d.ts.map +0 -1
  459. package/dist/core/session-reconstructability.test.js +0 -105
  460. package/dist/core/session-reconstructability.test.js.map +0 -1
  461. package/dist/core/session-restore-display.test.d.ts +0 -2
  462. package/dist/core/session-restore-display.test.d.ts.map +0 -1
  463. package/dist/core/session-restore-display.test.js +0 -103
  464. package/dist/core/session-restore-display.test.js.map +0 -1
  465. package/dist/core/session-storage-fd-leak.test.d.ts +0 -2
  466. package/dist/core/session-storage-fd-leak.test.d.ts.map +0 -1
  467. package/dist/core/session-storage-fd-leak.test.js +0 -116
  468. package/dist/core/session-storage-fd-leak.test.js.map +0 -1
  469. package/dist/core/session-storage.test.d.ts +0 -2
  470. package/dist/core/session-storage.test.d.ts.map +0 -1
  471. package/dist/core/session-storage.test.js +0 -277
  472. package/dist/core/session-storage.test.js.map +0 -1
  473. package/dist/core/setup-history.test.d.ts +0 -2
  474. package/dist/core/setup-history.test.d.ts.map +0 -1
  475. package/dist/core/setup-history.test.js +0 -59
  476. package/dist/core/setup-history.test.js.map +0 -1
  477. package/dist/core/shell.test.d.ts +0 -2
  478. package/dist/core/shell.test.d.ts.map +0 -1
  479. package/dist/core/shell.test.js +0 -87
  480. package/dist/core/shell.test.js.map +0 -1
  481. package/dist/core/shutdown.test.d.ts +0 -2
  482. package/dist/core/shutdown.test.d.ts.map +0 -1
  483. package/dist/core/shutdown.test.js +0 -160
  484. package/dist/core/shutdown.test.js.map +0 -1
  485. package/dist/core/sidecar-error-reporter.test.d.ts +0 -2
  486. package/dist/core/sidecar-error-reporter.test.d.ts.map +0 -1
  487. package/dist/core/sidecar-error-reporter.test.js +0 -61
  488. package/dist/core/sidecar-error-reporter.test.js.map +0 -1
  489. package/dist/core/skills-routing.test.d.ts +0 -2
  490. package/dist/core/skills-routing.test.d.ts.map +0 -1
  491. package/dist/core/skills-routing.test.js +0 -310
  492. package/dist/core/skills-routing.test.js.map +0 -1
  493. package/dist/core/slash-commands.test.d.ts +0 -2
  494. package/dist/core/slash-commands.test.d.ts.map +0 -1
  495. package/dist/core/slash-commands.test.js +0 -59
  496. package/dist/core/slash-commands.test.js.map +0 -1
  497. package/dist/core/source-maps.test.d.ts +0 -2
  498. package/dist/core/source-maps.test.d.ts.map +0 -1
  499. package/dist/core/source-maps.test.js +0 -175
  500. package/dist/core/source-maps.test.js.map +0 -1
  501. package/dist/core/speed-benchmark.test.d.ts +0 -2
  502. package/dist/core/speed-benchmark.test.d.ts.map +0 -1
  503. package/dist/core/speed-benchmark.test.js +0 -102
  504. package/dist/core/speed-benchmark.test.js.map +0 -1
  505. package/dist/core/subagent-manager.test.d.ts +0 -2
  506. package/dist/core/subagent-manager.test.d.ts.map +0 -1
  507. package/dist/core/subagent-manager.test.js +0 -536
  508. package/dist/core/subagent-manager.test.js.map +0 -1
  509. package/dist/core/subagent-store.test.d.ts +0 -2
  510. package/dist/core/subagent-store.test.d.ts.map +0 -1
  511. package/dist/core/subagent-store.test.js +0 -106
  512. package/dist/core/subagent-store.test.js.map +0 -1
  513. package/dist/core/subagent-turn-record.test.d.ts +0 -2
  514. package/dist/core/subagent-turn-record.test.d.ts.map +0 -1
  515. package/dist/core/subagent-turn-record.test.js +0 -70
  516. package/dist/core/subagent-turn-record.test.js.map +0 -1
  517. package/dist/core/verification-evidence.test.d.ts +0 -2
  518. package/dist/core/verification-evidence.test.d.ts.map +0 -1
  519. package/dist/core/verification-evidence.test.js +0 -103
  520. package/dist/core/verification-evidence.test.js.map +0 -1
  521. package/dist/core/verification-gate.test.d.ts +0 -2
  522. package/dist/core/verification-gate.test.d.ts.map +0 -1
  523. package/dist/core/verification-gate.test.js +0 -138
  524. package/dist/core/verification-gate.test.js.map +0 -1
  525. package/dist/core/verify-commands.test.d.ts +0 -2
  526. package/dist/core/verify-commands.test.d.ts.map +0 -1
  527. package/dist/core/verify-commands.test.js +0 -81
  528. package/dist/core/verify-commands.test.js.map +0 -1
  529. package/dist/core/workspace-guard.test.d.ts +0 -2
  530. package/dist/core/workspace-guard.test.d.ts.map +0 -1
  531. package/dist/core/workspace-guard.test.js +0 -107
  532. package/dist/core/workspace-guard.test.js.map +0 -1
  533. package/dist/hf-pull.test.d.ts +0 -2
  534. package/dist/hf-pull.test.d.ts.map +0 -1
  535. package/dist/hf-pull.test.js +0 -112
  536. package/dist/hf-pull.test.js.map +0 -1
  537. package/dist/modes/acp-mode.test.d.ts +0 -2
  538. package/dist/modes/acp-mode.test.d.ts.map +0 -1
  539. package/dist/modes/acp-mode.test.js +0 -1067
  540. package/dist/modes/acp-mode.test.js.map +0 -1
  541. package/dist/modes/json-mode.test.d.ts +0 -2
  542. package/dist/modes/json-mode.test.d.ts.map +0 -1
  543. package/dist/modes/json-mode.test.js +0 -84
  544. package/dist/modes/json-mode.test.js.map +0 -1
  545. package/dist/modes/subagent-worker-mode.test.d.ts +0 -2
  546. package/dist/modes/subagent-worker-mode.test.d.ts.map +0 -1
  547. package/dist/modes/subagent-worker-mode.test.js +0 -52
  548. package/dist/modes/subagent-worker-mode.test.js.map +0 -1
  549. package/dist/session.test.d.ts +0 -2
  550. package/dist/session.test.d.ts.map +0 -1
  551. package/dist/session.test.js +0 -35
  552. package/dist/session.test.js.map +0 -1
  553. package/dist/system-prompt.test.d.ts +0 -2
  554. package/dist/system-prompt.test.d.ts.map +0 -1
  555. package/dist/system-prompt.test.js +0 -684
  556. package/dist/system-prompt.test.js.map +0 -1
  557. package/dist/system-prompt.tiering.test.d.ts +0 -2
  558. package/dist/system-prompt.tiering.test.d.ts.map +0 -1
  559. package/dist/system-prompt.tiering.test.js +0 -112
  560. package/dist/system-prompt.tiering.test.js.map +0 -1
  561. package/dist/tools/bash.test.d.ts +0 -2
  562. package/dist/tools/bash.test.d.ts.map +0 -1
  563. package/dist/tools/bash.test.js +0 -248
  564. package/dist/tools/bash.test.js.map +0 -1
  565. package/dist/tools/checkpoint-hook.test.d.ts +0 -2
  566. package/dist/tools/checkpoint-hook.test.d.ts.map +0 -1
  567. package/dist/tools/checkpoint-hook.test.js +0 -65
  568. package/dist/tools/checkpoint-hook.test.js.map +0 -1
  569. package/dist/tools/code-nav.test.d.ts +0 -2
  570. package/dist/tools/code-nav.test.d.ts.map +0 -1
  571. package/dist/tools/code-nav.test.js +0 -136
  572. package/dist/tools/code-nav.test.js.map +0 -1
  573. package/dist/tools/code-skeleton.test.d.ts +0 -2
  574. package/dist/tools/code-skeleton.test.d.ts.map +0 -1
  575. package/dist/tools/code-skeleton.test.js +0 -115
  576. package/dist/tools/code-skeleton.test.js.map +0 -1
  577. package/dist/tools/compress-integration.test.d.ts +0 -2
  578. package/dist/tools/compress-integration.test.d.ts.map +0 -1
  579. package/dist/tools/compress-integration.test.js +0 -59
  580. package/dist/tools/compress-integration.test.js.map +0 -1
  581. package/dist/tools/compress.test.d.ts +0 -2
  582. package/dist/tools/compress.test.d.ts.map +0 -1
  583. package/dist/tools/compress.test.js +0 -60
  584. package/dist/tools/compress.test.js.map +0 -1
  585. package/dist/tools/edit-diff.test.d.ts +0 -2
  586. package/dist/tools/edit-diff.test.d.ts.map +0 -1
  587. package/dist/tools/edit-diff.test.js +0 -329
  588. package/dist/tools/edit-diff.test.js.map +0 -1
  589. package/dist/tools/edit-robustness.test.d.ts +0 -2
  590. package/dist/tools/edit-robustness.test.d.ts.map +0 -1
  591. package/dist/tools/edit-robustness.test.js +0 -417
  592. package/dist/tools/edit-robustness.test.js.map +0 -1
  593. package/dist/tools/edit.test.d.ts +0 -2
  594. package/dist/tools/edit.test.d.ts.map +0 -1
  595. package/dist/tools/edit.test.js +0 -1037
  596. package/dist/tools/edit.test.js.map +0 -1
  597. package/dist/tools/exit-plan.test.d.ts +0 -2
  598. package/dist/tools/exit-plan.test.d.ts.map +0 -1
  599. package/dist/tools/exit-plan.test.js +0 -72
  600. package/dist/tools/exit-plan.test.js.map +0 -1
  601. package/dist/tools/generate-image.test.d.ts +0 -2
  602. package/dist/tools/generate-image.test.d.ts.map +0 -1
  603. package/dist/tools/generate-image.test.js +0 -240
  604. package/dist/tools/generate-image.test.js.map +0 -1
  605. package/dist/tools/grep-parity.test.d.ts +0 -2
  606. package/dist/tools/grep-parity.test.d.ts.map +0 -1
  607. package/dist/tools/grep-parity.test.js +0 -92
  608. package/dist/tools/grep-parity.test.js.map +0 -1
  609. package/dist/tools/grep-recall.test.d.ts +0 -2
  610. package/dist/tools/grep-recall.test.d.ts.map +0 -1
  611. package/dist/tools/grep-recall.test.js +0 -114
  612. package/dist/tools/grep-recall.test.js.map +0 -1
  613. package/dist/tools/grep-spawn.test.d.ts +0 -2
  614. package/dist/tools/grep-spawn.test.d.ts.map +0 -1
  615. package/dist/tools/grep-spawn.test.js +0 -66
  616. package/dist/tools/grep-spawn.test.js.map +0 -1
  617. package/dist/tools/grep.test.d.ts +0 -2
  618. package/dist/tools/grep.test.d.ts.map +0 -1
  619. package/dist/tools/grep.test.js +0 -82
  620. package/dist/tools/grep.test.js.map +0 -1
  621. package/dist/tools/html-extract.test.d.ts +0 -2
  622. package/dist/tools/html-extract.test.d.ts.map +0 -1
  623. package/dist/tools/html-extract.test.js +0 -60
  624. package/dist/tools/html-extract.test.js.map +0 -1
  625. package/dist/tools/index.test.d.ts +0 -2
  626. package/dist/tools/index.test.d.ts.map +0 -1
  627. package/dist/tools/index.test.js +0 -55
  628. package/dist/tools/index.test.js.map +0 -1
  629. package/dist/tools/overflow.test.d.ts +0 -2
  630. package/dist/tools/overflow.test.d.ts.map +0 -1
  631. package/dist/tools/overflow.test.js +0 -59
  632. package/dist/tools/overflow.test.js.map +0 -1
  633. package/dist/tools/path-utils.test.d.ts +0 -2
  634. package/dist/tools/path-utils.test.d.ts.map +0 -1
  635. package/dist/tools/path-utils.test.js +0 -110
  636. package/dist/tools/path-utils.test.js.map +0 -1
  637. package/dist/tools/pdf-extract.test.d.ts +0 -2
  638. package/dist/tools/pdf-extract.test.d.ts.map +0 -1
  639. package/dist/tools/pdf-extract.test.js +0 -15
  640. package/dist/tools/pdf-extract.test.js.map +0 -1
  641. package/dist/tools/plan-mode.test.d.ts +0 -2
  642. package/dist/tools/plan-mode.test.d.ts.map +0 -1
  643. package/dist/tools/plan-mode.test.js +0 -91
  644. package/dist/tools/plan-mode.test.js.map +0 -1
  645. package/dist/tools/read-only-bash.test.d.ts +0 -2
  646. package/dist/tools/read-only-bash.test.d.ts.map +0 -1
  647. package/dist/tools/read-only-bash.test.js +0 -96
  648. package/dist/tools/read-only-bash.test.js.map +0 -1
  649. package/dist/tools/read.test.d.ts +0 -2
  650. package/dist/tools/read.test.d.ts.map +0 -1
  651. package/dist/tools/read.test.js +0 -146
  652. package/dist/tools/read.test.js.map +0 -1
  653. package/dist/tools/screenshot.test.d.ts +0 -2
  654. package/dist/tools/screenshot.test.d.ts.map +0 -1
  655. package/dist/tools/screenshot.test.js +0 -145
  656. package/dist/tools/screenshot.test.js.map +0 -1
  657. package/dist/tools/search-code.test.d.ts +0 -2
  658. package/dist/tools/search-code.test.d.ts.map +0 -1
  659. package/dist/tools/search-code.test.js +0 -83
  660. package/dist/tools/search-code.test.js.map +0 -1
  661. package/dist/tools/source-path.test.d.ts +0 -2
  662. package/dist/tools/source-path.test.d.ts.map +0 -1
  663. package/dist/tools/source-path.test.js +0 -80
  664. package/dist/tools/source-path.test.js.map +0 -1
  665. package/dist/tools/subagent-control.test.d.ts +0 -2
  666. package/dist/tools/subagent-control.test.d.ts.map +0 -1
  667. package/dist/tools/subagent-control.test.js +0 -73
  668. package/dist/tools/subagent-control.test.js.map +0 -1
  669. package/dist/tools/subagent-shared.test.d.ts +0 -2
  670. package/dist/tools/subagent-shared.test.d.ts.map +0 -1
  671. package/dist/tools/subagent-shared.test.js +0 -83
  672. package/dist/tools/subagent-shared.test.js.map +0 -1
  673. package/dist/tools/subagent.test.d.ts +0 -2
  674. package/dist/tools/subagent.test.d.ts.map +0 -1
  675. package/dist/tools/subagent.test.js +0 -180
  676. package/dist/tools/subagent.test.js.map +0 -1
  677. package/dist/tools/task-send.test.d.ts +0 -2
  678. package/dist/tools/task-send.test.d.ts.map +0 -1
  679. package/dist/tools/task-send.test.js +0 -104
  680. package/dist/tools/task-send.test.js.map +0 -1
  681. package/dist/tools/tool-catalog.test.d.ts +0 -2
  682. package/dist/tools/tool-catalog.test.d.ts.map +0 -1
  683. package/dist/tools/tool-catalog.test.js +0 -124
  684. package/dist/tools/tool-catalog.test.js.map +0 -1
  685. package/dist/tools/tool-search.test.d.ts +0 -2
  686. package/dist/tools/tool-search.test.d.ts.map +0 -1
  687. package/dist/tools/tool-search.test.js +0 -127
  688. package/dist/tools/tool-search.test.js.map +0 -1
  689. package/dist/tools/tool-tiers.test.d.ts +0 -2
  690. package/dist/tools/tool-tiers.test.d.ts.map +0 -1
  691. package/dist/tools/tool-tiers.test.js +0 -48
  692. package/dist/tools/tool-tiers.test.js.map +0 -1
  693. package/dist/tools/truncate-utils.test.d.ts +0 -2
  694. package/dist/tools/truncate-utils.test.d.ts.map +0 -1
  695. package/dist/tools/truncate-utils.test.js +0 -93
  696. package/dist/tools/truncate-utils.test.js.map +0 -1
  697. package/dist/tools/truncate.test.d.ts +0 -2
  698. package/dist/tools/truncate.test.d.ts.map +0 -1
  699. package/dist/tools/truncate.test.js +0 -100
  700. package/dist/tools/truncate.test.js.map +0 -1
  701. package/dist/tools/web-fetch.test.d.ts +0 -2
  702. package/dist/tools/web-fetch.test.d.ts.map +0 -1
  703. package/dist/tools/web-fetch.test.js +0 -692
  704. package/dist/tools/web-fetch.test.js.map +0 -1
  705. package/dist/tools/web-search.test.d.ts +0 -2
  706. package/dist/tools/web-search.test.d.ts.map +0 -1
  707. package/dist/tools/web-search.test.js +0 -333
  708. package/dist/tools/web-search.test.js.map +0 -1
  709. package/dist/tools/write.test.d.ts +0 -2
  710. package/dist/tools/write.test.d.ts.map +0 -1
  711. package/dist/tools/write.test.js +0 -176
  712. package/dist/tools/write.test.js.map +0 -1
  713. package/dist/ui/anchor-pad-reclaim.test.d.ts +0 -2
  714. package/dist/ui/anchor-pad-reclaim.test.d.ts.map +0 -1
  715. package/dist/ui/anchor-pad-reclaim.test.js +0 -146
  716. package/dist/ui/anchor-pad-reclaim.test.js.map +0 -1
  717. package/dist/ui/app-items.test.d.ts +0 -2
  718. package/dist/ui/app-items.test.d.ts.map +0 -1
  719. package/dist/ui/app-items.test.js +0 -54
  720. package/dist/ui/app-items.test.js.map +0 -1
  721. package/dist/ui/app-state-persistence.test.d.ts +0 -2
  722. package/dist/ui/app-state-persistence.test.d.ts.map +0 -1
  723. package/dist/ui/app-state-persistence.test.js +0 -71
  724. package/dist/ui/app-state-persistence.test.js.map +0 -1
  725. package/dist/ui/assistant-stream-flush-parity.test.d.ts +0 -2
  726. package/dist/ui/assistant-stream-flush-parity.test.d.ts.map +0 -1
  727. package/dist/ui/assistant-stream-flush-parity.test.js +0 -85
  728. package/dist/ui/assistant-stream-flush-parity.test.js.map +0 -1
  729. package/dist/ui/atomic-flush-regression.test.d.ts +0 -2
  730. package/dist/ui/atomic-flush-regression.test.d.ts.map +0 -1
  731. package/dist/ui/atomic-flush-regression.test.js +0 -218
  732. package/dist/ui/atomic-flush-regression.test.js.map +0 -1
  733. package/dist/ui/chat-layout-pinning.test.d.ts +0 -2
  734. package/dist/ui/chat-layout-pinning.test.d.ts.map +0 -1
  735. package/dist/ui/chat-layout-pinning.test.js +0 -525
  736. package/dist/ui/chat-layout-pinning.test.js.map +0 -1
  737. package/dist/ui/components/ActivityIndicator.test.d.ts +0 -2
  738. package/dist/ui/components/ActivityIndicator.test.d.ts.map +0 -1
  739. package/dist/ui/components/ActivityIndicator.test.js +0 -40
  740. package/dist/ui/components/ActivityIndicator.test.js.map +0 -1
  741. package/dist/ui/components/AssistantMessage.test.d.ts +0 -2
  742. package/dist/ui/components/AssistantMessage.test.d.ts.map +0 -1
  743. package/dist/ui/components/AssistantMessage.test.js +0 -418
  744. package/dist/ui/components/AssistantMessage.test.js.map +0 -1
  745. package/dist/ui/components/Footer.test.d.ts +0 -2
  746. package/dist/ui/components/Footer.test.d.ts.map +0 -1
  747. package/dist/ui/components/Footer.test.js +0 -16
  748. package/dist/ui/components/Footer.test.js.map +0 -1
  749. package/dist/ui/components/InputArea.test.d.ts +0 -2
  750. package/dist/ui/components/InputArea.test.d.ts.map +0 -1
  751. package/dist/ui/components/InputArea.test.js +0 -95
  752. package/dist/ui/components/InputArea.test.js.map +0 -1
  753. package/dist/ui/components/PlanOverlay.test.d.ts +0 -2
  754. package/dist/ui/components/PlanOverlay.test.d.ts.map +0 -1
  755. package/dist/ui/components/PlanOverlay.test.js +0 -24
  756. package/dist/ui/components/PlanOverlay.test.js.map +0 -1
  757. package/dist/ui/components/StreamingArea.test.d.ts +0 -2
  758. package/dist/ui/components/StreamingArea.test.d.ts.map +0 -1
  759. package/dist/ui/components/StreamingArea.test.js +0 -18
  760. package/dist/ui/components/StreamingArea.test.js.map +0 -1
  761. package/dist/ui/components/UserMessage.test.d.ts +0 -2
  762. package/dist/ui/components/UserMessage.test.d.ts.map +0 -1
  763. package/dist/ui/components/UserMessage.test.js +0 -39
  764. package/dist/ui/components/UserMessage.test.js.map +0 -1
  765. package/dist/ui/components/themed-output.test.d.ts +0 -2
  766. package/dist/ui/components/themed-output.test.d.ts.map +0 -1
  767. package/dist/ui/components/themed-output.test.js +0 -111
  768. package/dist/ui/components/themed-output.test.js.map +0 -1
  769. package/dist/ui/footer-jump-regression.test.d.ts +0 -2
  770. package/dist/ui/footer-jump-regression.test.d.ts.map +0 -1
  771. package/dist/ui/footer-jump-regression.test.js +0 -224
  772. package/dist/ui/footer-jump-regression.test.js.map +0 -1
  773. package/dist/ui/footer-status-layout.test.d.ts +0 -2
  774. package/dist/ui/footer-status-layout.test.d.ts.map +0 -1
  775. package/dist/ui/footer-status-layout.test.js +0 -71
  776. package/dist/ui/footer-status-layout.test.js.map +0 -1
  777. package/dist/ui/frame-clip-regression.test.d.ts +0 -2
  778. package/dist/ui/frame-clip-regression.test.d.ts.map +0 -1
  779. package/dist/ui/frame-clip-regression.test.js +0 -215
  780. package/dist/ui/frame-clip-regression.test.js.map +0 -1
  781. package/dist/ui/hooks/stall-retry-duplicate.test.d.ts +0 -2
  782. package/dist/ui/hooks/stall-retry-duplicate.test.d.ts.map +0 -1
  783. package/dist/ui/hooks/stall-retry-duplicate.test.js +0 -94
  784. package/dist/ui/hooks/stall-retry-duplicate.test.js.map +0 -1
  785. package/dist/ui/hooks/useAgentLoop.test.d.ts +0 -2
  786. package/dist/ui/hooks/useAgentLoop.test.d.ts.map +0 -1
  787. package/dist/ui/hooks/useAgentLoop.test.js +0 -66
  788. package/dist/ui/hooks/useAgentLoop.test.js.map +0 -1
  789. package/dist/ui/hooks/useContextCompaction.test.d.ts +0 -2
  790. package/dist/ui/hooks/useContextCompaction.test.d.ts.map +0 -1
  791. package/dist/ui/hooks/useContextCompaction.test.js +0 -135
  792. package/dist/ui/hooks/useContextCompaction.test.js.map +0 -1
  793. package/dist/ui/hooks/useTranscriptHistory.sessionstore.test.d.ts +0 -2
  794. package/dist/ui/hooks/useTranscriptHistory.sessionstore.test.d.ts.map +0 -1
  795. package/dist/ui/hooks/useTranscriptHistory.sessionstore.test.js +0 -81
  796. package/dist/ui/hooks/useTranscriptHistory.sessionstore.test.js.map +0 -1
  797. package/dist/ui/hooks/useTranscriptHistory.test.d.ts +0 -2
  798. package/dist/ui/hooks/useTranscriptHistory.test.d.ts.map +0 -1
  799. package/dist/ui/hooks/useTranscriptHistory.test.js +0 -61
  800. package/dist/ui/hooks/useTranscriptHistory.test.js.map +0 -1
  801. package/dist/ui/hooks/useTranscriptScroll.test.d.ts +0 -2
  802. package/dist/ui/hooks/useTranscriptScroll.test.d.ts.map +0 -1
  803. package/dist/ui/hooks/useTranscriptScroll.test.js +0 -119
  804. package/dist/ui/hooks/useTranscriptScroll.test.js.map +0 -1
  805. package/dist/ui/live-area-clamp.test.d.ts +0 -2
  806. package/dist/ui/live-area-clamp.test.d.ts.map +0 -1
  807. package/dist/ui/live-area-clamp.test.js +0 -125
  808. package/dist/ui/live-area-clamp.test.js.map +0 -1
  809. package/dist/ui/live-area-height.test.d.ts +0 -2
  810. package/dist/ui/live-area-height.test.d.ts.map +0 -1
  811. package/dist/ui/live-area-height.test.js +0 -76
  812. package/dist/ui/live-area-height.test.js.map +0 -1
  813. package/dist/ui/live-frame-height.test.d.ts +0 -2
  814. package/dist/ui/live-frame-height.test.d.ts.map +0 -1
  815. package/dist/ui/live-frame-height.test.js +0 -116
  816. package/dist/ui/live-frame-height.test.js.map +0 -1
  817. package/dist/ui/live-item-flush.test.d.ts +0 -2
  818. package/dist/ui/live-item-flush.test.d.ts.map +0 -1
  819. package/dist/ui/live-item-flush.test.js +0 -437
  820. package/dist/ui/live-item-flush.test.js.map +0 -1
  821. package/dist/ui/long-prompt-regression-harness.test.d.ts +0 -2
  822. package/dist/ui/long-prompt-regression-harness.test.d.ts.map +0 -1
  823. package/dist/ui/long-prompt-regression-harness.test.js +0 -195
  824. package/dist/ui/long-prompt-regression-harness.test.js.map +0 -1
  825. package/dist/ui/plan-overlay.test.d.ts +0 -2
  826. package/dist/ui/plan-overlay.test.d.ts.map +0 -1
  827. package/dist/ui/plan-overlay.test.js +0 -305
  828. package/dist/ui/plan-overlay.test.js.map +0 -1
  829. package/dist/ui/queued-message.test.d.ts +0 -2
  830. package/dist/ui/queued-message.test.d.ts.map +0 -1
  831. package/dist/ui/queued-message.test.js +0 -172
  832. package/dist/ui/queued-message.test.js.map +0 -1
  833. package/dist/ui/render.test.d.ts +0 -2
  834. package/dist/ui/render.test.d.ts.map +0 -1
  835. package/dist/ui/render.test.js +0 -42
  836. package/dist/ui/render.test.js.map +0 -1
  837. package/dist/ui/scroll-stabilization.test.d.ts +0 -2
  838. package/dist/ui/scroll-stabilization.test.d.ts.map +0 -1
  839. package/dist/ui/scroll-stabilization.test.js +0 -64
  840. package/dist/ui/scroll-stabilization.test.js.map +0 -1
  841. package/dist/ui/slash-command-images.test.d.ts +0 -2
  842. package/dist/ui/slash-command-images.test.d.ts.map +0 -1
  843. package/dist/ui/slash-command-images.test.js +0 -110
  844. package/dist/ui/slash-command-images.test.js.map +0 -1
  845. package/dist/ui/startup-banner-order.test.d.ts +0 -2
  846. package/dist/ui/startup-banner-order.test.d.ts.map +0 -1
  847. package/dist/ui/startup-banner-order.test.js +0 -105
  848. package/dist/ui/startup-banner-order.test.js.map +0 -1
  849. package/dist/ui/stores/transcript-scroll-store.test.d.ts +0 -2
  850. package/dist/ui/stores/transcript-scroll-store.test.d.ts.map +0 -1
  851. package/dist/ui/stores/transcript-scroll-store.test.js +0 -73
  852. package/dist/ui/stores/transcript-scroll-store.test.js.map +0 -1
  853. package/dist/ui/streaming-flush-bounce.test.d.ts +0 -2
  854. package/dist/ui/streaming-flush-bounce.test.d.ts.map +0 -1
  855. package/dist/ui/streaming-flush-bounce.test.js +0 -177
  856. package/dist/ui/streaming-flush-bounce.test.js.map +0 -1
  857. package/dist/ui/submit-boundary-gap.test.d.ts +0 -2
  858. package/dist/ui/submit-boundary-gap.test.d.ts.map +0 -1
  859. package/dist/ui/submit-boundary-gap.test.js +0 -180
  860. package/dist/ui/submit-boundary-gap.test.js.map +0 -1
  861. package/dist/ui/terminal-history-repaint.test.d.ts +0 -2
  862. package/dist/ui/terminal-history-repaint.test.d.ts.map +0 -1
  863. package/dist/ui/terminal-history-repaint.test.js +0 -73
  864. package/dist/ui/terminal-history-repaint.test.js.map +0 -1
  865. package/dist/ui/terminal-history-retry-dedup.test.d.ts +0 -2
  866. package/dist/ui/terminal-history-retry-dedup.test.d.ts.map +0 -1
  867. package/dist/ui/terminal-history-retry-dedup.test.js +0 -61
  868. package/dist/ui/terminal-history-retry-dedup.test.js.map +0 -1
  869. package/dist/ui/terminal-history.test.d.ts +0 -2
  870. package/dist/ui/terminal-history.test.d.ts.map +0 -1
  871. package/dist/ui/terminal-history.test.js +0 -557
  872. package/dist/ui/terminal-history.test.js.map +0 -1
  873. package/dist/ui/thinking-level-cycle.test.d.ts +0 -2
  874. package/dist/ui/thinking-level-cycle.test.d.ts.map +0 -1
  875. package/dist/ui/thinking-level-cycle.test.js +0 -45
  876. package/dist/ui/thinking-level-cycle.test.js.map +0 -1
  877. package/dist/ui/tool-group-summary.test.d.ts +0 -2
  878. package/dist/ui/tool-group-summary.test.d.ts.map +0 -1
  879. package/dist/ui/tool-group-summary.test.js +0 -79
  880. package/dist/ui/tool-group-summary.test.js.map +0 -1
  881. package/dist/ui/transcript/spacing.test.d.ts +0 -2
  882. package/dist/ui/transcript/spacing.test.d.ts.map +0 -1
  883. package/dist/ui/transcript/spacing.test.js +0 -187
  884. package/dist/ui/transcript/spacing.test.js.map +0 -1
  885. package/dist/ui/transcript/transcript-lines.test.d.ts +0 -2
  886. package/dist/ui/transcript/transcript-lines.test.d.ts.map +0 -1
  887. package/dist/ui/transcript/transcript-lines.test.js +0 -76
  888. package/dist/ui/transcript/transcript-lines.test.js.map +0 -1
  889. package/dist/ui/transcript-viewport-pinning.test.d.ts +0 -2
  890. package/dist/ui/transcript-viewport-pinning.test.d.ts.map +0 -1
  891. package/dist/ui/transcript-viewport-pinning.test.js +0 -148
  892. package/dist/ui/transcript-viewport-pinning.test.js.map +0 -1
  893. package/dist/ui/tui-history-parity.test.d.ts +0 -2
  894. package/dist/ui/tui-history-parity.test.d.ts.map +0 -1
  895. package/dist/ui/tui-history-parity.test.js +0 -369
  896. package/dist/ui/tui-history-parity.test.js.map +0 -1
  897. package/dist/ui/tui-simulation.test.d.ts +0 -2
  898. package/dist/ui/tui-simulation.test.d.ts.map +0 -1
  899. package/dist/ui/tui-simulation.test.js +0 -145
  900. package/dist/ui/tui-simulation.test.js.map +0 -1
  901. package/dist/ui/tui-terminal-recorder.test.d.ts +0 -2
  902. package/dist/ui/tui-terminal-recorder.test.d.ts.map +0 -1
  903. package/dist/ui/tui-terminal-recorder.test.js +0 -134
  904. package/dist/ui/tui-terminal-recorder.test.js.map +0 -1
  905. package/dist/ui/utils/assistant-stream-split.test.d.ts +0 -2
  906. package/dist/ui/utils/assistant-stream-split.test.d.ts.map +0 -1
  907. package/dist/ui/utils/assistant-stream-split.test.js +0 -74
  908. package/dist/ui/utils/assistant-stream-split.test.js.map +0 -1
  909. package/dist/ui/utils/markdown-renderer.test.d.ts +0 -2
  910. package/dist/ui/utils/markdown-renderer.test.d.ts.map +0 -1
  911. package/dist/ui/utils/markdown-renderer.test.js +0 -63
  912. package/dist/ui/utils/markdown-renderer.test.js.map +0 -1
  913. package/dist/ui/utils/table-text.test.d.ts +0 -2
  914. package/dist/ui/utils/table-text.test.d.ts.map +0 -1
  915. package/dist/ui/utils/table-text.test.js +0 -202
  916. package/dist/ui/utils/table-text.test.js.map +0 -1
  917. package/dist/ui/utils/terminal-graphics.test.d.ts +0 -2
  918. package/dist/ui/utils/terminal-graphics.test.d.ts.map +0 -1
  919. package/dist/ui/utils/terminal-graphics.test.js +0 -100
  920. package/dist/ui/utils/terminal-graphics.test.js.map +0 -1
  921. package/dist/ui/utils/terminal-input.test.d.ts +0 -2
  922. package/dist/ui/utils/terminal-input.test.d.ts.map +0 -1
  923. package/dist/ui/utils/terminal-input.test.js +0 -15
  924. package/dist/ui/utils/terminal-input.test.js.map +0 -1
  925. package/dist/ui/utils/text-utils.test.d.ts +0 -2
  926. package/dist/ui/utils/text-utils.test.d.ts.map +0 -1
  927. package/dist/ui/utils/text-utils.test.js +0 -31
  928. package/dist/ui/utils/text-utils.test.js.map +0 -1
  929. package/dist/utils/git.test.d.ts +0 -2
  930. package/dist/utils/git.test.d.ts.map +0 -1
  931. package/dist/utils/git.test.js +0 -36
  932. package/dist/utils/git.test.js.map +0 -1
  933. package/dist/utils/github.test.d.ts +0 -2
  934. package/dist/utils/github.test.d.ts.map +0 -1
  935. package/dist/utils/github.test.js +0 -23
  936. package/dist/utils/github.test.js.map +0 -1
  937. package/dist/utils/http-body.test.d.ts +0 -2
  938. package/dist/utils/http-body.test.d.ts.map +0 -1
  939. package/dist/utils/http-body.test.js +0 -68
  940. package/dist/utils/http-body.test.js.map +0 -1
  941. package/dist/utils/image.test.d.ts +0 -2
  942. package/dist/utils/image.test.d.ts.map +0 -1
  943. package/dist/utils/image.test.js +0 -139
  944. package/dist/utils/image.test.js.map +0 -1
  945. package/dist/utils/plan-steps.test.d.ts +0 -2
  946. package/dist/utils/plan-steps.test.d.ts.map +0 -1
  947. package/dist/utils/plan-steps.test.js +0 -159
  948. package/dist/utils/plan-steps.test.js.map +0 -1
  949. package/dist/utils/process.test.d.ts +0 -2
  950. package/dist/utils/process.test.d.ts.map +0 -1
  951. package/dist/utils/process.test.js +0 -42
  952. package/dist/utils/process.test.js.map +0 -1
  953. package/dist/utils/text.test.d.ts +0 -2
  954. package/dist/utils/text.test.d.ts.map +0 -1
  955. package/dist/utils/text.test.js +0 -91
  956. package/dist/utils/text.test.js.map +0 -1
@@ -1,116 +0,0 @@
1
- import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
2
- import React from "react";
3
- import { renderToString } from "ink";
4
- import { describe, expect, it } from "vitest";
5
- import { renderTranscriptItem } from "./transcript/TranscriptRenderer.js";
6
- import { getChatControlsLayoutDecision, MIN_LIVE_AREA_ROWS } from "./layout-decisions.js";
7
- import { TerminalSizeProvider } from "./hooks/useTerminalSize.js";
8
- import { useTheme } from "./theme/theme.js";
9
- function stripAnsi(value) {
10
- return value.replace(new RegExp(String.raw `\u001B\[[0-?]*[ -/]*[@-~]`, "g"), "");
11
- }
12
- const noFooterStatus = {
13
- hasBackgroundTasks: false,
14
- hasUpdateNotice: false,
15
- stack: false,
16
- compactBackgroundTasks: false,
17
- };
18
- const ROWS = 24;
19
- const COLUMNS = 60;
20
- // Worst case for the live-frame jump: the agent has just gone idle, so the
21
- // activity/status row disappears and the controls shrink — which grows the live
22
- // area to nearly fill the screen right as the finalized assistant row renders.
23
- const idleControlsRows = getChatControlsLayoutDecision({
24
- rows: ROWS,
25
- columns: COLUMNS,
26
- agentRunning: false,
27
- activityVisible: false,
28
- doneStatusVisible: false,
29
- stallStatusVisible: false,
30
- exitPending: false,
31
- footerStatusLayout: noFooterStatus,
32
- taskBarExpanded: false,
33
- footerFitsOnOneLine: true,
34
- liveToolPanelRows: 0,
35
- }).controlsRows;
36
- // Mirror useChatLayoutMeasurements: rows - controlsRows - 2 (the widened cushion).
37
- const measuredLiveAreaRows = Math.max(MIN_LIVE_AREA_ROWS, ROWS - idleControlsRows - 2);
38
- // A previous tool boundary forces the assistant transcript item's top margin.
39
- const previousToolGroup = {
40
- kind: "tool_group",
41
- id: "tool-group-1",
42
- tools: [],
43
- };
44
- function ThemedTranscriptItem({ item }) {
45
- const theme = useTheme();
46
- const items = [previousToolGroup, item];
47
- return (_jsx(_Fragment, { children: renderTranscriptItem({
48
- item,
49
- index: 1,
50
- items,
51
- version: "0.0.0-test",
52
- currentModel: "test-model",
53
- currentProvider: "anthropic",
54
- displayedCwd: "/tmp",
55
- columns: COLUMNS,
56
- theme,
57
- renderMarkdown: true,
58
- measuredLiveAreaRows,
59
- }) }));
60
- }
61
- function renderFrameLineCount(item) {
62
- const output = renderToString(_jsx(TerminalSizeProvider, { children: _jsx(ThemedTranscriptItem, { item: item }) }), { columns: COLUMNS });
63
- return stripAnsi(output).split("\n").filter(Boolean).length;
64
- }
65
- describe("live frame height", () => {
66
- it("keeps a tall finalized assistant frame (with thinking) below terminal height", () => {
67
- const text = Array.from({ length: ROWS * 3 }, (_, index) => `final line ${index + 1}`).join("\n");
68
- const item = {
69
- kind: "assistant",
70
- id: "assistant-tall-thinking",
71
- text,
72
- thinking: "internal reasoning that collapses to a header",
73
- thinkingMs: 1200,
74
- };
75
- const lines = renderFrameLineCount(item);
76
- // Adding back the controls must never reach the terminal height, or Ink
77
- // enters its fullscreen clearTerminal path and snaps the controls to the top.
78
- expect(lines + idleControlsRows).toBeLessThanOrEqual(ROWS - 1);
79
- });
80
- it("keeps a tall finalized assistant frame (no thinking) below terminal height", () => {
81
- const text = Array.from({ length: ROWS * 3 }, (_, index) => `final line ${index + 1}`).join("\n");
82
- const item = {
83
- kind: "assistant",
84
- id: "assistant-tall-plain",
85
- text,
86
- };
87
- const lines = renderFrameLineCount(item);
88
- expect(lines + idleControlsRows).toBeLessThanOrEqual(ROWS - 1);
89
- });
90
- it("reserves identical controls and live-area rows idle vs running (constant footer)", () => {
91
- const baseInputs = {
92
- rows: ROWS,
93
- columns: COLUMNS,
94
- doneStatusVisible: false,
95
- stallStatusVisible: false,
96
- exitPending: false,
97
- footerStatusLayout: noFooterStatus,
98
- taskBarExpanded: false,
99
- footerFitsOnOneLine: true,
100
- liveToolPanelRows: 0,
101
- };
102
- const idle = getChatControlsLayoutDecision({
103
- ...baseInputs,
104
- agentRunning: false,
105
- activityVisible: false,
106
- });
107
- const running = getChatControlsLayoutDecision({
108
- ...baseInputs,
109
- agentRunning: true,
110
- activityVisible: true,
111
- });
112
- expect(idle.controlsRows).toBe(running.controlsRows);
113
- expect(idle.liveAreaRows).toBe(running.liveAreaRows);
114
- });
115
- });
116
- //# sourceMappingURL=live-frame-height.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"live-frame-height.test.js","sourceRoot":"","sources":["../../src/ui/live-frame-height.test.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=live-item-flush.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"live-item-flush.test.d.ts","sourceRoot":"","sources":["../../src/ui/live-item-flush.test.ts"],"names":[],"mappings":""}
@@ -1,437 +0,0 @@
1
- import { describe, it, expect } from "vitest";
2
- import { pruneHistory, flushOnTurnText, flushOnTurnEnd, countOversizedFlushItems, splitOversizedPinnedItems, MAX_HISTORY_ITEMS, } from "./live-item-flush.js";
3
- import { estimateRenderedRows } from "./utils/assistant-stream-split.js";
4
- // ── Test helpers ──────────────────────────────────────────
5
- let idCounter = 0;
6
- function id() {
7
- return `test-${++idCounter}`;
8
- }
9
- function userItem() {
10
- return { kind: "user", id: id() };
11
- }
12
- function assistantItem() {
13
- return { kind: "assistant", id: id() };
14
- }
15
- function toolStart(toolCallId) {
16
- return { kind: "tool_start", id: id(), toolCallId: toolCallId ?? id() };
17
- }
18
- function toolDone() {
19
- return { kind: "tool_done", id: id() };
20
- }
21
- function subagentGroup() {
22
- return { kind: "subagent_group", id: id() };
23
- }
24
- function errorItem() {
25
- return { kind: "error", id: id() };
26
- }
27
- // ── pruneHistory ──────────────────────────────────────────
28
- describe("pruneHistory", () => {
29
- it("returns items unchanged when under the limit", () => {
30
- const items = [userItem(), assistantItem(), toolDone()];
31
- const result = pruneHistory(items);
32
- expect(result).toBe(items); // same reference, no copy
33
- });
34
- it("returns items unchanged at exactly the limit", () => {
35
- const items = Array.from({ length: MAX_HISTORY_ITEMS }, () => userItem());
36
- const result = pruneHistory(items);
37
- expect(result).toBe(items);
38
- });
39
- it("drops oldest items when over the limit", () => {
40
- const items = Array.from({ length: MAX_HISTORY_ITEMS + 50 }, (_, i) => ({
41
- kind: "user",
42
- id: `item-${i}`,
43
- }));
44
- const result = pruneHistory(items);
45
- expect(result).toHaveLength(MAX_HISTORY_ITEMS);
46
- // Should keep the LAST 500 items (newest)
47
- expect(result[0].id).toBe("item-50");
48
- expect(result[result.length - 1].id).toBe(`item-${MAX_HISTORY_ITEMS + 49}`);
49
- });
50
- it("handles empty array", () => {
51
- const result = pruneHistory([]);
52
- expect(result).toEqual([]);
53
- });
54
- it("handles single item", () => {
55
- const items = [userItem()];
56
- const result = pruneHistory(items);
57
- expect(result).toBe(items);
58
- });
59
- });
60
- // ── flushOnTurnText ───────────────────────────────────────
61
- describe("flushOnTurnText", () => {
62
- it("returns all items for flushing when liveItems is non-empty", () => {
63
- const items = [assistantItem(), toolDone(), toolDone()];
64
- const flushed = flushOnTurnText(items);
65
- expect(flushed).toBe(items);
66
- expect(flushed).toHaveLength(3);
67
- });
68
- it("returns empty array when liveItems is empty", () => {
69
- const flushed = flushOnTurnText([]);
70
- expect(flushed).toEqual([]);
71
- });
72
- it("flushes tool_start items (they are from a completed turn)", () => {
73
- // When onTurnText fires, even stale tool_start items from the same turn
74
- // are complete (tool_end already replaced them in the normal flow, but
75
- // if somehow a tool_start remains, the turn is still over).
76
- const items = [assistantItem(), toolStart(), toolDone()];
77
- const flushed = flushOnTurnText(items);
78
- expect(flushed).toHaveLength(3);
79
- });
80
- it("flushes mixed item types from multi-turn accumulation", () => {
81
- // Simulates items accumulated across multiple turns before flush was added
82
- const items = [
83
- userItem(),
84
- assistantItem(),
85
- toolDone(),
86
- toolDone(),
87
- assistantItem(),
88
- toolDone(),
89
- toolDone(),
90
- toolDone(),
91
- assistantItem(),
92
- ];
93
- const flushed = flushOnTurnText(items);
94
- expect(flushed).toHaveLength(9);
95
- });
96
- it("flushes subagent group items", () => {
97
- const items = [assistantItem(), subagentGroup(), toolDone()];
98
- const flushed = flushOnTurnText(items);
99
- expect(flushed).toHaveLength(3);
100
- });
101
- it("flushes error items", () => {
102
- const items = [errorItem(), assistantItem()];
103
- const flushed = flushOnTurnText(items);
104
- expect(flushed).toHaveLength(2);
105
- });
106
- });
107
- // ── countOversizedFlushItems ──────────────────────────────
108
- describe("countOversizedFlushItems", () => {
109
- const LIVE_ROWS = 20;
110
- const COLUMNS = 80;
111
- const estimate = (text) => estimateRenderedRows(text, COLUMNS);
112
- const shortText = { kind: "assistant", text: "A short answer.", id: "short" };
113
- const stepDone = { kind: "step_done", id: "step" };
114
- // A markdown table tall enough to exceed the live area: header + separator
115
- // + 30 rows, double-counted by the table heuristic.
116
- const tallTable = {
117
- kind: "assistant",
118
- text: [
119
- "| Feature | Detail |",
120
- "| --- | --- |",
121
- ...Array.from({ length: 30 }, (_, i) => `| Row ${i} | some detail text |`),
122
- ].join("\n"),
123
- id: "table",
124
- };
125
- it("returns 0 when every assistant item fits the live area", () => {
126
- expect(countOversizedFlushItems([shortText, stepDone], estimate, LIVE_ROWS)).toBe(0);
127
- });
128
- it("flushes through the oversized assistant item (the table-cut-off bug)", () => {
129
- expect(countOversizedFlushItems([tallTable], estimate, LIVE_ROWS)).toBe(1);
130
- });
131
- it("flushes earlier siblings too, preserving transcript order", () => {
132
- // [short, step_done, tallTable, short] — flushing only the table would
133
- // print it to scrollback BEFORE the pinned earlier items get flushed on
134
- // the next turn, corrupting order. Cut must include everything up to and
135
- // including the last oversized item.
136
- const items = [shortText, stepDone, tallTable, { ...shortText, id: "tail" }];
137
- expect(countOversizedFlushItems(items, estimate, LIVE_ROWS)).toBe(3);
138
- });
139
- it("ignores non-assistant items even with long text", () => {
140
- const longError = { kind: "error", text: "x".repeat(10_000), id: "err" };
141
- expect(countOversizedFlushItems([longError], estimate, LIVE_ROWS)).toBe(0);
142
- });
143
- it("returns 0 when the live area has not been measured yet", () => {
144
- expect(countOversizedFlushItems([tallTable], estimate, 0)).toBe(0);
145
- });
146
- it("returns 0 for an empty item list", () => {
147
- expect(countOversizedFlushItems([], estimate, LIVE_ROWS)).toBe(0);
148
- });
149
- it("flushes a tall plain-text response too (no table required)", () => {
150
- const tallText = {
151
- kind: "assistant",
152
- text: Array.from({ length: 40 }, (_, i) => `line ${i}`).join("\n"),
153
- id: "tall-text",
154
- };
155
- expect(countOversizedFlushItems([tallText], estimate, LIVE_ROWS)).toBe(1);
156
- });
157
- it("CUMULATIVE: several medium items that fit individually but overflow together", () => {
158
- // [DONE:N] segmentation pins multiple assistant items per turn. Three
159
- // 10-row items each fit a 20-row live area alone, but the pinned set is
160
- // ~32 rows — same top-rows-never-painted bug as a single tall table.
161
- const medium = (id) => ({
162
- kind: "assistant",
163
- text: Array.from({ length: 10 }, (_, i) => `para line ${i}`).join("\n"),
164
- id,
165
- });
166
- const items = [medium("a"), { kind: "step_done", id: "s" }, medium("b"), medium("c")];
167
- // Suffix that fits: [medium c] (10+0) + [medium b] (10+1) = 21 > 20, so
168
- // only "c" survives — flush the first three.
169
- expect(countOversizedFlushItems(items, estimate, LIVE_ROWS)).toBe(3);
170
- });
171
- it("CUMULATIVE: keeps the whole set when the sum fits the budget", () => {
172
- const small = (id) => ({ kind: "assistant", text: "one line", id });
173
- const items = [small("a"), { kind: "step_done", id: "s" }, small("b")];
174
- expect(countOversizedFlushItems(items, estimate, LIVE_ROWS)).toBe(0);
175
- });
176
- it("splits an oversized prefix so only the fitting suffix stays live", () => {
177
- const tallText = {
178
- kind: "assistant",
179
- text: Array.from({ length: 40 }, (_, i) => `line ${i}`).join("\n"),
180
- id: "tall-text",
181
- };
182
- const tail = { ...shortText, id: "tail" };
183
- const split = splitOversizedPinnedItems([tallText, tail], estimate, LIVE_ROWS);
184
- expect(split.flushed.map((item) => item.id)).toEqual(["tall-text"]);
185
- expect(split.remaining.map((item) => item.id)).toEqual(["tail"]);
186
- });
187
- });
188
- // ── flushOnTurnEnd ────────────────────────────────────────
189
- describe("flushOnTurnEnd", () => {
190
- describe("with tool_use stop reason", () => {
191
- it("flushes all items when no pending tool_start exists", () => {
192
- const items = [assistantItem(), toolDone(), toolDone()];
193
- const { flushed, remaining } = flushOnTurnEnd(items, "tool_use");
194
- expect(flushed).toBe(items);
195
- expect(flushed).toHaveLength(3);
196
- expect(remaining).toEqual([]);
197
- });
198
- it("does NOT flush when a tool_start is still pending", () => {
199
- const items = [assistantItem(), toolStart(), toolDone()];
200
- const { flushed, remaining } = flushOnTurnEnd(items, "tool_use");
201
- expect(flushed).toEqual([]);
202
- expect(remaining).toBe(items);
203
- expect(remaining).toHaveLength(3);
204
- });
205
- it("does NOT flush when liveItems is empty", () => {
206
- const { flushed, remaining } = flushOnTurnEnd([], "tool_use");
207
- expect(flushed).toEqual([]);
208
- expect(remaining).toEqual([]);
209
- });
210
- it("does NOT flush when only tool_start items exist (all pending)", () => {
211
- const items = [toolStart(), toolStart()];
212
- const { flushed, remaining } = flushOnTurnEnd(items, "tool_use");
213
- expect(flushed).toEqual([]);
214
- expect(remaining).toBe(items);
215
- });
216
- it("flushes when items include subagent groups with no pending tool_start", () => {
217
- const items = [subagentGroup(), toolDone()];
218
- const { flushed, remaining } = flushOnTurnEnd(items, "tool_use");
219
- expect(flushed).toHaveLength(2);
220
- expect(remaining).toEqual([]);
221
- });
222
- });
223
- describe("with non-tool_use stop reasons", () => {
224
- it("does NOT flush for end_turn stop reason", () => {
225
- const items = [assistantItem(), toolDone()];
226
- const { flushed, remaining } = flushOnTurnEnd(items, "end_turn");
227
- expect(flushed).toEqual([]);
228
- expect(remaining).toBe(items);
229
- });
230
- it("does NOT flush for stop_sequence stop reason", () => {
231
- const items = [assistantItem()];
232
- const { flushed, remaining } = flushOnTurnEnd(items, "stop_sequence");
233
- expect(flushed).toEqual([]);
234
- expect(remaining).toBe(items);
235
- });
236
- it("does NOT flush for max_tokens stop reason", () => {
237
- const items = [assistantItem(), toolDone(), toolDone()];
238
- const { flushed, remaining } = flushOnTurnEnd(items, "max_tokens");
239
- expect(flushed).toEqual([]);
240
- expect(remaining).toBe(items);
241
- });
242
- });
243
- });
244
- // ── Integration: simulated agent run scenarios ────────────
245
- describe("flush integration scenarios", () => {
246
- /**
247
- * Simulates the state management that App.tsx does with setLiveItems
248
- * and setHistory, using the extracted pure functions.
249
- */
250
- function simulateRun(turns) {
251
- let liveItems = [];
252
- let history = [];
253
- for (const turn of turns) {
254
- // Simulate tool calls happening before turn_end
255
- for (let i = 0; i < (turn.tools ?? 0); i++) {
256
- liveItems = [...liveItems, toolStart()];
257
- // Tool completes (replaces tool_start with tool_done in real code)
258
- liveItems = liveItems.map((item) => item.kind === "tool_start" && liveItems.indexOf(item) === liveItems.length - 1
259
- ? toolDone()
260
- : item);
261
- }
262
- // onTurnEnd fires first
263
- const turnEndResult = flushOnTurnEnd(liveItems, turn.stopReason);
264
- if (turnEndResult.flushed.length > 0) {
265
- history = pruneHistory([...history, ...turnEndResult.flushed]);
266
- }
267
- liveItems = turnEndResult.remaining;
268
- // onTurnText fires second (only if text exists)
269
- if (turn.text) {
270
- const flushed = flushOnTurnText(liveItems);
271
- if (flushed.length > 0) {
272
- history = pruneHistory([...history, ...flushed]);
273
- }
274
- liveItems = [assistantItem()]; // new text item
275
- }
276
- }
277
- return { liveItems, history };
278
- }
279
- it("scenario: simple text-only conversation stays bounded", () => {
280
- const { liveItems, history } = simulateRun([
281
- { text: "Hello!", stopReason: "end_turn" },
282
- { text: "How can I help?", stopReason: "end_turn" },
283
- { text: "Sure thing.", stopReason: "end_turn" },
284
- ]);
285
- // Only the last text item should be live
286
- expect(liveItems).toHaveLength(1);
287
- expect(liveItems[0].kind).toBe("assistant");
288
- // Previous text items moved to history
289
- expect(history).toHaveLength(2);
290
- });
291
- it("scenario: text + tools cycle stays bounded", () => {
292
- const { liveItems, history } = simulateRun([
293
- { text: "Let me check.", tools: 3, stopReason: "end_turn" },
294
- { text: "Found it.", tools: 2, stopReason: "end_turn" },
295
- { text: "Done.", stopReason: "end_turn" },
296
- ]);
297
- expect(liveItems).toHaveLength(1);
298
- // 3 tool_done + 1 assistant + 2 tool_done + 1 assistant = 7
299
- expect(history).toHaveLength(7);
300
- });
301
- it("scenario: tool-only turns flush correctly", () => {
302
- const { liveItems, history } = simulateRun([
303
- { tools: 3, stopReason: "tool_use" }, // tool-only, flushed by onTurnEnd
304
- { tools: 2, stopReason: "tool_use" }, // tool-only, flushed by onTurnEnd
305
- { text: "All done.", stopReason: "end_turn" },
306
- ]);
307
- expect(liveItems).toHaveLength(1);
308
- expect(liveItems[0].kind).toBe("assistant");
309
- expect(history).toHaveLength(5); // 3 + 2 tool_done items
310
- });
311
- it("scenario: many turns — liveItems never exceeds current turn size", () => {
312
- const turns = Array.from({ length: 50 }, (_, i) => ({
313
- text: `Turn ${i}`,
314
- tools: 5,
315
- stopReason: "end_turn",
316
- }));
317
- const { liveItems } = simulateRun(turns);
318
- // Only the last text item should remain live
319
- expect(liveItems).toHaveLength(1);
320
- });
321
- it("scenario: alternating text and tool-only turns", () => {
322
- const { liveItems, history } = simulateRun([
323
- { text: "Searching...", tools: 2, stopReason: "end_turn" },
324
- { tools: 3, stopReason: "tool_use" }, // tool-only
325
- { text: "Found results.", tools: 1, stopReason: "end_turn" },
326
- { tools: 4, stopReason: "tool_use" }, // tool-only
327
- { text: "Complete.", stopReason: "end_turn" },
328
- ]);
329
- expect(liveItems).toHaveLength(1);
330
- // History: (2 tools + 1 text) + (3 tools) + (1 tool + 1 text) + (4 tools) = 12
331
- expect(history).toHaveLength(12);
332
- });
333
- it("scenario: stress test — 100 turns with 10 tools each", () => {
334
- const turns = Array.from({ length: 100 }, () => ({
335
- text: "Working...",
336
- tools: 10,
337
- stopReason: "end_turn",
338
- }));
339
- const { liveItems, history } = simulateRun(turns);
340
- expect(liveItems).toHaveLength(1);
341
- // Total items: 100 turns * (10 tools + 1 text) - 1 (last text is live) = 1099
342
- // But pruneHistory caps at 500
343
- expect(history).toHaveLength(MAX_HISTORY_ITEMS);
344
- });
345
- it("REGRESSION: liveItems retained after agent finishes, flushed on next submit", () => {
346
- // After the agent finishes its last turn, the final AssistantItem stays
347
- // in liveItems (NOT moved to Static via useEffect). This prevents Ink
348
- // cursor-math glitches that caused text to get cut off during the
349
- // live→Static transition. Items are flushed when the user submits the
350
- // next message (simulated here by flushing before adding a new userItem).
351
- let liveItems = [];
352
- let history = [];
353
- // Agent produces a response (turn 1)
354
- const flushed1 = flushOnTurnText(liveItems);
355
- if (flushed1.length > 0)
356
- history = pruneHistory([...history, ...flushed1]);
357
- liveItems = [assistantItem()];
358
- // Agent finishes — liveItems NOT cleared (no useEffect flush)
359
- // The final response stays in liveItems
360
- expect(liveItems).toHaveLength(1);
361
- expect(liveItems[0].kind).toBe("assistant");
362
- // User submits next message — NOW flush to Static
363
- if (liveItems.length > 0) {
364
- history = pruneHistory([...history, ...liveItems]);
365
- }
366
- liveItems = [userItem()];
367
- // Previous AssistantItem is now in history
368
- expect(history).toHaveLength(1);
369
- expect(history[0].kind).toBe("assistant");
370
- // New user message is in liveItems
371
- expect(liveItems).toHaveLength(1);
372
- expect(liveItems[0].kind).toBe("user");
373
- });
374
- it("REGRESSION: without flush, liveItems would grow unbounded", () => {
375
- // This test documents the old behavior — liveItems would contain
376
- // ALL items from ALL turns. With 20 turns of 5 tools each, that's
377
- // 20 * (5 + 1) = 120 items re-rendered on every timer tick.
378
- // With the fix, liveItems is always at most 1 item (current text).
379
- const turns = Array.from({ length: 20 }, () => ({
380
- text: "Working...",
381
- tools: 5,
382
- stopReason: "end_turn",
383
- }));
384
- const { liveItems } = simulateRun(turns);
385
- // The whole point: liveItems MUST be bounded
386
- expect(liveItems.length).toBeLessThanOrEqual(1);
387
- });
388
- it("SCROLL REPRO HARNESS: large queued input and live tool output stay bounded", () => {
389
- // Deterministic headless stand-in for the reported TUI scroll bug: the user
390
- // pastes a very large next prompt while the current run is still producing
391
- // live tool/result rows. No OAuth/API/Ink render is needed; we assert the
392
- // pure state invariant that protects terminal scrollback from live-area
393
- // growth. The queued prompt is deliberately huge to catch accidental logic
394
- // that would keep queued input in the live region before it starts.
395
- const queuedPrompt = Array.from({ length: 600 }, (_, i) => `queued follow-up line ${i}: ${"x".repeat(80)}`).join("\n");
396
- expect(queuedPrompt.length).toBeGreaterThan(50_000);
397
- let liveItems = [assistantItem()];
398
- let history = [];
399
- let maxLiveItems = liveItems.length;
400
- const queueFlush = (items) => {
401
- history = pruneHistory([...history, ...items]);
402
- };
403
- const partitionCompleted = (items) => {
404
- const firstActiveIdx = items.findIndex((item) => item.kind === "tool_start");
405
- if (firstActiveIdx === -1)
406
- return { flushed: items, remaining: [] };
407
- if (firstActiveIdx === 0)
408
- return { flushed: [], remaining: items };
409
- return { flushed: items.slice(0, firstActiveIdx), remaining: items.slice(firstActiveIdx) };
410
- };
411
- for (let i = 0; i < 75; i++) {
412
- // onToolStart flushes completed assistant/tool output before adding the
413
- // running tool row, so old live output moves to Static/history.
414
- const beforeStart = partitionCompleted(liveItems);
415
- if (beforeStart.flushed.length > 0)
416
- queueFlush(beforeStart.flushed);
417
- liveItems = [...beforeStart.remaining, toolStart(`tool-${i}`)];
418
- maxLiveItems = Math.max(maxLiveItems, liveItems.length);
419
- // onToolEnd replaces the active row with completed output, then
420
- // partitionCompleted flushes it. This simulates queued/live work without
421
- // ever placing the queued prompt itself into liveItems.
422
- liveItems = liveItems.map((item) => item.kind === "tool_start" ? { kind: "tool_done", id: item.id } : item);
423
- const afterEnd = partitionCompleted(liveItems);
424
- if (afterEnd.flushed.length > 0)
425
- queueFlush(afterEnd.flushed);
426
- liveItems = afterEnd.remaining;
427
- maxLiveItems = Math.max(maxLiveItems, liveItems.length);
428
- }
429
- // While a message is queued, App shows only a tiny queue indicator; the
430
- // queued text starts rendering as a user item only when onQueuedStart fires.
431
- expect(queuedPrompt).not.toEqual("");
432
- expect(maxLiveItems).toBeLessThanOrEqual(1);
433
- expect(liveItems).toEqual([]);
434
- expect(history).toHaveLength(76); // initial assistant + 75 completed tool rows
435
- });
436
- });
437
- //# sourceMappingURL=live-item-flush.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"live-item-flush.test.js","sourceRoot":"","sources":["../../src/ui/live-item-flush.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=long-prompt-regression-harness.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"long-prompt-regression-harness.test.d.ts","sourceRoot":"","sources":["../../src/ui/long-prompt-regression-harness.test.tsx"],"names":[],"mappings":""}