@prestyj/cli 5.16.2 → 5.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (828) hide show
  1. package/README.md +2 -1
  2. package/assets/skills/refactoring/SKILL.md +64 -0
  3. package/assets/skills/refactoring/references/agent-pitfalls.md +43 -0
  4. package/assets/skills/refactoring/references/legacy.md +49 -0
  5. package/assets/skills/refactoring/references/smells.md +71 -0
  6. package/dist/app-sidecar-sessions.d.ts +0 -1
  7. package/dist/app-sidecar.d.ts +0 -1
  8. package/dist/app-sidecar.js +40 -9
  9. package/dist/app-sidecar.js.map +1 -1
  10. package/dist/chat-agents/general.d.ts +0 -1
  11. package/dist/chat-agents/index.d.ts +0 -1
  12. package/dist/chat-agents/jiwa.d.ts +0 -1
  13. package/dist/chat-agents/memory.d.ts +0 -1
  14. package/dist/chat-agents/research.d.ts +0 -1
  15. package/dist/chat-agents/shared.d.ts +0 -1
  16. package/dist/chat-agents/therapist.d.ts +0 -1
  17. package/dist/chat-agents/types.d.ts +0 -1
  18. package/dist/cli/auth.d.ts +0 -1
  19. package/dist/cli/command-routing.d.ts +0 -1
  20. package/dist/cli/mcp.d.ts +0 -1
  21. package/dist/cli/mcp.js.map +1 -1
  22. package/dist/cli/pixel.d.ts +0 -1
  23. package/dist/cli/shared.d.ts +0 -1
  24. package/dist/cli.d.ts +0 -1
  25. package/dist/config.d.ts +0 -1
  26. package/dist/core/agent-notifications.d.ts +0 -1
  27. package/dist/core/agent-session.d.ts +45 -2
  28. package/dist/core/agent-session.js +521 -41
  29. package/dist/core/agent-session.js.map +1 -1
  30. package/dist/core/agents.d.ts +0 -1
  31. package/dist/core/api-benchmark.d.ts +0 -1
  32. package/dist/core/ask-user.d.ts +0 -1
  33. package/dist/core/auth/index.d.ts +0 -1
  34. package/dist/core/auth-providers.d.ts +0 -1
  35. package/dist/core/auth-storage.d.ts +0 -1
  36. package/dist/core/auto-update.d.ts +0 -1
  37. package/dist/core/autopilot-cycle.d.ts +7 -4
  38. package/dist/core/autopilot-cycle.js +43 -6
  39. package/dist/core/autopilot-cycle.js.map +1 -1
  40. package/dist/core/autopilot-gate.d.ts +0 -1
  41. package/dist/core/autopilot-gate.js.map +1 -1
  42. package/dist/core/autopilot-verdict.d.ts +2 -1
  43. package/dist/core/autopilot-verdict.js +25 -0
  44. package/dist/core/autopilot-verdict.js.map +1 -1
  45. package/dist/core/bash-spawn-benchmark.d.ts +0 -1
  46. package/dist/core/bundled-agents.d.ts +0 -1
  47. package/dist/core/cache-warm-benchmark.d.ts +0 -1
  48. package/dist/core/checkpoint-store.d.ts +0 -1
  49. package/dist/core/claude-code-version.d.ts +0 -1
  50. package/dist/core/code-retrieval-chunkers.d.ts +0 -1
  51. package/dist/core/code-retrieval.d.ts +0 -1
  52. package/dist/core/compaction/active-context.d.ts +0 -1
  53. package/dist/core/compaction/compactor.d.ts +34 -1
  54. package/dist/core/compaction/compactor.js +161 -2
  55. package/dist/core/compaction/compactor.js.map +1 -1
  56. package/dist/core/compaction/policy.d.ts +0 -1
  57. package/dist/core/compaction/query-aware-selector.d.ts +0 -1
  58. package/dist/core/compaction/token-estimator.d.ts +0 -1
  59. package/dist/core/compaction/tool-result-pruner.d.ts +0 -1
  60. package/dist/core/context-limits.d.ts +0 -1
  61. package/dist/core/custom-commands.d.ts +0 -1
  62. package/dist/core/encode-cwd.d.ts +0 -1
  63. package/dist/core/env-delta.d.ts +0 -1
  64. package/dist/core/event-bus.d.ts +5 -1
  65. package/dist/core/event-bus.js.map +1 -1
  66. package/dist/core/extensions/loader.d.ts +0 -1
  67. package/dist/core/extensions/plugin-bundles.d.ts +0 -1
  68. package/dist/core/extensions/types.d.ts +0 -1
  69. package/dist/core/fast-apply-benchmark.d.ts +0 -1
  70. package/dist/core/file-lock.d.ts +0 -1
  71. package/dist/core/foreign-session-import.d.ts +0 -1
  72. package/dist/core/foreign-transcript-blocks.d.ts +0 -1
  73. package/dist/core/goal-controller.d.ts +0 -1
  74. package/dist/core/goal-prerequisites.d.ts +0 -1
  75. package/dist/core/goal-store.d.ts +0 -1
  76. package/dist/core/goal-store.js.map +1 -1
  77. package/dist/core/goal-verifier.d.ts +0 -1
  78. package/dist/core/goal-verifier.js.map +1 -1
  79. package/dist/core/goal-worker.d.ts +0 -1
  80. package/dist/core/goal-worker.js.map +1 -1
  81. package/dist/core/hashline-edit-benchmark.d.ts +0 -1
  82. package/dist/core/hashline.d.ts +0 -1
  83. package/dist/core/ideal-review-subagent.d.ts +42 -0
  84. package/dist/core/ideal-review-subagent.js +95 -0
  85. package/dist/core/ideal-review-subagent.js.map +1 -0
  86. package/dist/core/ideal-review.d.ts +0 -1
  87. package/dist/core/ideal-review.js +18 -5
  88. package/dist/core/ideal-review.js.map +1 -1
  89. package/dist/core/index.d.ts +0 -1
  90. package/dist/core/internal-diagnostics.d.ts +142 -0
  91. package/dist/core/internal-diagnostics.js +450 -0
  92. package/dist/core/internal-diagnostics.js.map +1 -0
  93. package/dist/core/language-detector.d.ts +0 -1
  94. package/dist/core/local-endpoint-store.d.ts +0 -1
  95. package/dist/core/logger.d.ts +0 -1
  96. package/dist/core/loop-breaker.d.ts +0 -1
  97. package/dist/core/lsp/client.d.ts +8 -6
  98. package/dist/core/lsp/client.js +68 -18
  99. package/dist/core/lsp/client.js.map +1 -1
  100. package/dist/core/lsp/edit-telemetry.d.ts +0 -1
  101. package/dist/core/lsp/format.d.ts +0 -1
  102. package/dist/core/lsp/jsonrpc.d.ts +0 -1
  103. package/dist/core/lsp/manager.d.ts +16 -2
  104. package/dist/core/lsp/manager.js +170 -9
  105. package/dist/core/lsp/manager.js.map +1 -1
  106. package/dist/core/lsp/pool.d.ts +0 -1
  107. package/dist/core/lsp/pool.js.map +1 -1
  108. package/dist/core/lsp/servers.d.ts +0 -1
  109. package/dist/core/lsp/test-support.d.ts +0 -1
  110. package/dist/core/mcp/catalog-cache.d.ts +0 -1
  111. package/dist/core/mcp/client.d.ts +0 -1
  112. package/dist/core/mcp/content.d.ts +0 -1
  113. package/dist/core/mcp/defaults.d.ts +0 -1
  114. package/dist/core/mcp/deferred-catalog.d.ts +0 -1
  115. package/dist/core/mcp/elicitation-bridge.d.ts +0 -1
  116. package/dist/core/mcp/index.d.ts +0 -1
  117. package/dist/core/mcp/loopback.d.ts +0 -1
  118. package/dist/core/mcp/oauth-provider.d.ts +0 -1
  119. package/dist/core/mcp/oauth-store.d.ts +0 -1
  120. package/dist/core/mcp/parse-add-command.d.ts +0 -1
  121. package/dist/core/mcp/resolve-stdio.d.ts +0 -1
  122. package/dist/core/mcp/shared-pool.d.ts +0 -1
  123. package/dist/core/mcp/store.d.ts +0 -1
  124. package/dist/core/mcp/types.d.ts +0 -1
  125. package/dist/core/message-images.d.ts +0 -1
  126. package/dist/core/model-registry.d.ts +0 -1
  127. package/dist/core/network-guard.d.ts +0 -1
  128. package/dist/core/nolan-context.d.ts +5 -1
  129. package/dist/core/nolan-context.js +9 -2
  130. package/dist/core/nolan-context.js.map +1 -1
  131. package/dist/core/nolan-model.d.ts +0 -1
  132. package/dist/core/nolan-prompt.d.ts +0 -1
  133. package/dist/core/nolan-prompt.js +32 -14
  134. package/dist/core/nolan-prompt.js.map +1 -1
  135. package/dist/core/oauth/anthropic.d.ts +0 -1
  136. package/dist/core/oauth/gemini.d.ts +0 -1
  137. package/dist/core/oauth/kimi.d.ts +0 -1
  138. package/dist/core/oauth/openai.d.ts +0 -1
  139. package/dist/core/oauth/pkce.d.ts +0 -1
  140. package/dist/core/oauth/types.d.ts +0 -1
  141. package/dist/core/oauth/xai.d.ts +0 -1
  142. package/dist/core/parked-requests.d.ts +0 -1
  143. package/dist/core/persistent-shell.d.ts +0 -1
  144. package/dist/core/persistent-shell.js +3 -1
  145. package/dist/core/persistent-shell.js.map +1 -1
  146. package/dist/core/pixel-fix-agent.d.ts +0 -1
  147. package/dist/core/pixel-fix.d.ts +0 -1
  148. package/dist/core/pixel.d.ts +0 -1
  149. package/dist/core/platform-clis.d.ts +0 -1
  150. package/dist/core/process-gate.d.ts +0 -1
  151. package/dist/core/process-manager.d.ts +7 -4
  152. package/dist/core/process-manager.js +23 -7
  153. package/dist/core/process-manager.js.map +1 -1
  154. package/dist/core/progress/engine.d.ts +0 -1
  155. package/dist/core/progress/git-xp.d.ts +0 -1
  156. package/dist/core/progress/ranks.d.ts +0 -1
  157. package/dist/core/progress/rebuild.d.ts +0 -1
  158. package/dist/core/progress/store.d.ts +0 -1
  159. package/dist/core/progress/types.d.ts +0 -1
  160. package/dist/core/project-discovery.d.ts +0 -1
  161. package/dist/core/prompt-commands.d.ts +0 -1
  162. package/dist/core/radio.d.ts +0 -1
  163. package/dist/core/regrounding.d.ts +0 -1
  164. package/dist/core/resolve-start.d.ts +0 -1
  165. package/dist/core/run-claim.d.ts +0 -1
  166. package/dist/core/run-lifecycle.d.ts +0 -1
  167. package/dist/core/runtime-mode.d.ts +0 -1
  168. package/dist/core/sandbox-domains.d.ts +0 -1
  169. package/dist/core/sandbox-feedback.d.ts +0 -1
  170. package/dist/core/sandbox.d.ts +0 -1
  171. package/dist/core/semantic-loop-check.d.ts +58 -0
  172. package/dist/core/semantic-loop-check.js +103 -0
  173. package/dist/core/semantic-loop-check.js.map +1 -0
  174. package/dist/core/semantic-search-benchmark.d.ts +0 -1
  175. package/dist/core/session-compaction.d.ts +0 -1
  176. package/dist/core/session-export.d.ts +0 -1
  177. package/dist/core/session-history.d.ts +0 -1
  178. package/dist/core/session-manager.d.ts +1 -2
  179. package/dist/core/session-preview.d.ts +0 -1
  180. package/dist/core/session-storage.d.ts +0 -1
  181. package/dist/core/settings-manager.d.ts +0 -1
  182. package/dist/core/setup-history.d.ts +0 -1
  183. package/dist/core/shell-path.d.ts +0 -1
  184. package/dist/core/shell.d.ts +0 -1
  185. package/dist/core/shell.js +6 -3
  186. package/dist/core/shell.js.map +1 -1
  187. package/dist/core/shutdown.d.ts +0 -1
  188. package/dist/core/skills.d.ts +0 -1
  189. package/dist/core/slash-commands.d.ts +3 -2
  190. package/dist/core/slash-commands.js +6 -4
  191. package/dist/core/slash-commands.js.map +1 -1
  192. package/dist/core/source-maps.d.ts +0 -1
  193. package/dist/core/speed-benchmark.d.ts +0 -1
  194. package/dist/core/steering.d.ts +0 -1
  195. package/dist/core/steroids.d.ts +0 -1
  196. package/dist/core/style-packs/index.d.ts +0 -1
  197. package/dist/core/style-packs/packs.d.ts +0 -1
  198. package/dist/core/subagent-manager.d.ts +7 -2
  199. package/dist/core/subagent-manager.js +15 -5
  200. package/dist/core/subagent-manager.js.map +1 -1
  201. package/dist/core/subagent-policy.d.ts +0 -1
  202. package/dist/core/subagent-store.d.ts +0 -1
  203. package/dist/core/subagent-turn-record.d.ts +0 -1
  204. package/dist/core/task-store.d.ts +0 -1
  205. package/dist/core/telegram-config.d.ts +0 -1
  206. package/dist/core/telegram.d.ts +0 -1
  207. package/dist/core/thinking-level.d.ts +0 -1
  208. package/dist/core/verification-evidence.d.ts +11 -2
  209. package/dist/core/verification-evidence.js +96 -22
  210. package/dist/core/verification-evidence.js.map +1 -1
  211. package/dist/core/verification-gate.d.ts +75 -36
  212. package/dist/core/verification-gate.js +301 -37
  213. package/dist/core/verification-gate.js.map +1 -1
  214. package/dist/core/verification-snapshot.d.ts +7 -0
  215. package/dist/core/verification-snapshot.js +111 -0
  216. package/dist/core/verification-snapshot.js.map +1 -0
  217. package/dist/core/verify-commands.d.ts +0 -1
  218. package/dist/core/voice-transcriber.d.ts +0 -1
  219. package/dist/core/workspace-guard.d.ts +0 -1
  220. package/dist/hf-pull.d.ts +0 -1
  221. package/dist/index.d.ts +0 -1
  222. package/dist/interactive.d.ts +0 -1
  223. package/dist/modes/acp-mode.d.ts +0 -1
  224. package/dist/modes/agent-home-mode.d.ts +0 -1
  225. package/dist/modes/index.d.ts +0 -1
  226. package/dist/modes/json-mode.d.ts +0 -1
  227. package/dist/modes/print-mode.d.ts +0 -1
  228. package/dist/modes/rpc-mode.d.ts +0 -1
  229. package/dist/modes/serve-mode.d.ts +0 -1
  230. package/dist/modes/subagent-worker-mode.d.ts +0 -1
  231. package/dist/session.d.ts +0 -1
  232. package/dist/system-prompt.d.ts +0 -1
  233. package/dist/system-prompt.js +53 -124
  234. package/dist/system-prompt.js.map +1 -1
  235. package/dist/test-support/fake-home.d.ts +0 -1
  236. package/dist/tools/ask-user.d.ts +0 -1
  237. package/dist/tools/bash.d.ts +0 -1
  238. package/dist/tools/bash.js +9 -4
  239. package/dist/tools/bash.js.map +1 -1
  240. package/dist/tools/code-nav.d.ts +0 -1
  241. package/dist/tools/code-skeleton.d.ts +0 -1
  242. package/dist/tools/compress.d.ts +0 -1
  243. package/dist/tools/edit-diff.d.ts +19 -2
  244. package/dist/tools/edit-diff.js +16 -3
  245. package/dist/tools/edit-diff.js.map +1 -1
  246. package/dist/tools/edit.d.ts +1 -2
  247. package/dist/tools/edit.js +36 -12
  248. package/dist/tools/edit.js.map +1 -1
  249. package/dist/tools/enter-plan.d.ts +0 -1
  250. package/dist/tools/exit-plan.d.ts +0 -1
  251. package/dist/tools/find.d.ts +0 -1
  252. package/dist/tools/generate-image.d.ts +5 -1
  253. package/dist/tools/generate-image.js +25 -7
  254. package/dist/tools/generate-image.js.map +1 -1
  255. package/dist/tools/goals.d.ts +0 -1
  256. package/dist/tools/grep.d.ts +0 -1
  257. package/dist/tools/html-extract.d.ts +0 -1
  258. package/dist/tools/index.d.ts +3 -2
  259. package/dist/tools/index.js +3 -1
  260. package/dist/tools/index.js.map +1 -1
  261. package/dist/tools/ls.d.ts +0 -1
  262. package/dist/tools/operations.d.ts +0 -1
  263. package/dist/tools/overflow.d.ts +0 -1
  264. package/dist/tools/path-utils.d.ts +0 -1
  265. package/dist/tools/pdf-extract.d.ts +0 -1
  266. package/dist/tools/prompt-hints.d.ts +0 -1
  267. package/dist/tools/prompt-hints.js +1 -1
  268. package/dist/tools/prompt-hints.js.map +1 -1
  269. package/dist/tools/read-only-bash.d.ts +0 -1
  270. package/dist/tools/read-tracker.d.ts +0 -1
  271. package/dist/tools/read.d.ts +0 -1
  272. package/dist/tools/safe-env.d.ts +0 -1
  273. package/dist/tools/screenshot.d.ts +0 -1
  274. package/dist/tools/search-code.d.ts +0 -1
  275. package/dist/tools/session-stats.d.ts +26 -0
  276. package/dist/tools/session-stats.js +51 -0
  277. package/dist/tools/session-stats.js.map +1 -0
  278. package/dist/tools/skill.d.ts +0 -1
  279. package/dist/tools/skill.js +3 -5
  280. package/dist/tools/skill.js.map +1 -1
  281. package/dist/tools/source-path.d.ts +0 -1
  282. package/dist/tools/steroids.d.ts +0 -1
  283. package/dist/tools/steroids.js +1 -1
  284. package/dist/tools/subagent-control.d.ts +0 -1
  285. package/dist/tools/subagent-shared.d.ts +0 -1
  286. package/dist/tools/subagent.d.ts +0 -1
  287. package/dist/tools/task-output.d.ts +0 -1
  288. package/dist/tools/task-output.js +13 -6
  289. package/dist/tools/task-output.js.map +1 -1
  290. package/dist/tools/task-send.d.ts +0 -1
  291. package/dist/tools/task-stop.d.ts +0 -1
  292. package/dist/tools/tasks.d.ts +0 -1
  293. package/dist/tools/tool-search.d.ts +0 -1
  294. package/dist/tools/tool-tiers.d.ts +0 -1
  295. package/dist/tools/truncate.d.ts +0 -1
  296. package/dist/tools/web-fetch.d.ts +0 -1
  297. package/dist/tools/web-search.d.ts +0 -1
  298. package/dist/tools/write.d.ts +0 -1
  299. package/dist/types.d.ts +0 -1
  300. package/dist/ui/App.d.ts +0 -1
  301. package/dist/ui/App.js +6 -1
  302. package/dist/ui/App.js.map +1 -1
  303. package/dist/ui/activity-phrases.d.ts +0 -1
  304. package/dist/ui/app-items.d.ts +0 -1
  305. package/dist/ui/components/ActivityIndicator.d.ts +0 -1
  306. package/dist/ui/components/AnimationContext.d.ts +0 -1
  307. package/dist/ui/components/AssistantMessage.d.ts +0 -1
  308. package/dist/ui/components/BackgroundTasksBar.d.ts +0 -1
  309. package/dist/ui/components/Banner.d.ts +0 -1
  310. package/dist/ui/components/ChatFooterPane.d.ts +0 -1
  311. package/dist/ui/components/ChatInputStack.d.ts +0 -1
  312. package/dist/ui/components/ChatLayout.d.ts +0 -1
  313. package/dist/ui/components/ChatLivePane.d.ts +0 -1
  314. package/dist/ui/components/ChatScreen.d.ts +0 -1
  315. package/dist/ui/components/ChatStatusRow.d.ts +0 -1
  316. package/dist/ui/components/CompactionNotice.d.ts +0 -1
  317. package/dist/ui/components/DiffFrame.d.ts +0 -1
  318. package/dist/ui/components/DiffView.d.ts +0 -1
  319. package/dist/ui/components/Footer.d.ts +0 -1
  320. package/dist/ui/components/FooterStatusRow.d.ts +0 -1
  321. package/dist/ui/components/FullScreenOverlayRouter.d.ts +0 -1
  322. package/dist/ui/components/GoalOverlay.d.ts +0 -1
  323. package/dist/ui/components/GoalStatusBar.d.ts +0 -1
  324. package/dist/ui/components/IdealHookMessage.d.ts +0 -1
  325. package/dist/ui/components/InputArea.d.ts +0 -1
  326. package/dist/ui/components/LiveToolPanel.d.ts +0 -1
  327. package/dist/ui/components/Markdown.d.ts +0 -1
  328. package/dist/ui/components/MessageResponse.d.ts +0 -1
  329. package/dist/ui/components/ModelSelector.d.ts +0 -1
  330. package/dist/ui/components/NoSelect.d.ts +0 -1
  331. package/dist/ui/components/Overlay.d.ts +0 -1
  332. package/dist/ui/components/PixelOverlay.d.ts +0 -1
  333. package/dist/ui/components/PlanApproval.d.ts +0 -1
  334. package/dist/ui/components/PlanBanner.d.ts +0 -1
  335. package/dist/ui/components/PlanModeLogo.d.ts +0 -1
  336. package/dist/ui/components/PlanOverlay.d.ts +0 -1
  337. package/dist/ui/components/PlanProgress.d.ts +0 -1
  338. package/dist/ui/components/QueueIndicator.d.ts +0 -1
  339. package/dist/ui/components/Ratchet.d.ts +0 -1
  340. package/dist/ui/components/RewindOverlay.d.ts +0 -1
  341. package/dist/ui/components/SelectList.d.ts +0 -1
  342. package/dist/ui/components/ServerToolExecution.d.ts +0 -1
  343. package/dist/ui/components/SessionSelector.d.ts +0 -1
  344. package/dist/ui/components/SessionSummary.d.ts +0 -1
  345. package/dist/ui/components/SettingsSelector.d.ts +0 -1
  346. package/dist/ui/components/SkillsOverlay.d.ts +0 -1
  347. package/dist/ui/components/SlashCommandMenu.d.ts +0 -1
  348. package/dist/ui/components/SlashStyledSelectList.d.ts +0 -1
  349. package/dist/ui/components/Spinner.d.ts +0 -1
  350. package/dist/ui/components/StreamingArea.d.ts +0 -1
  351. package/dist/ui/components/SubAgentPanel.d.ts +0 -1
  352. package/dist/ui/components/TaskOverlay.d.ts +0 -1
  353. package/dist/ui/components/TaskPickerMenu.d.ts +0 -1
  354. package/dist/ui/components/ThemeSelector.d.ts +0 -1
  355. package/dist/ui/components/ThinkingBlock.d.ts +0 -1
  356. package/dist/ui/components/ToolExecution.d.ts +0 -1
  357. package/dist/ui/components/ToolGroupExecution.d.ts +0 -1
  358. package/dist/ui/components/ToolUseLoader.d.ts +0 -1
  359. package/dist/ui/components/TranscriptViewport.d.ts +0 -1
  360. package/dist/ui/components/UserMessage.d.ts +0 -1
  361. package/dist/ui/components/force-color.d.ts +0 -1
  362. package/dist/ui/components/index.d.ts +0 -1
  363. package/dist/ui/constants/figures.d.ts +0 -1
  364. package/dist/ui/duration-format.d.ts +0 -1
  365. package/dist/ui/duration-summary.d.ts +0 -1
  366. package/dist/ui/error-item.d.ts +0 -1
  367. package/dist/ui/goal-events.d.ts +0 -1
  368. package/dist/ui/goal-events.js.map +1 -1
  369. package/dist/ui/goal-summary.d.ts +0 -1
  370. package/dist/ui/hooks/useAgentLoop.d.ts +0 -1
  371. package/dist/ui/hooks/useBlink.d.ts +0 -1
  372. package/dist/ui/hooks/useChatLayoutMeasurements.d.ts +0 -1
  373. package/dist/ui/hooks/useContextCompaction.d.ts +0 -1
  374. package/dist/ui/hooks/useDoublePress.d.ts +0 -1
  375. package/dist/ui/hooks/useMinDisplayTime.d.ts +0 -1
  376. package/dist/ui/hooks/useModeState.d.ts +0 -1
  377. package/dist/ui/hooks/usePixelFixFlow.d.ts +0 -1
  378. package/dist/ui/hooks/useSessionManager.d.ts +0 -1
  379. package/dist/ui/hooks/useSessionPersistence.d.ts +0 -1
  380. package/dist/ui/hooks/useSlashCommands.d.ts +0 -1
  381. package/dist/ui/hooks/useTaskPickerController.d.ts +0 -1
  382. package/dist/ui/hooks/useTerminalSize.d.ts +0 -1
  383. package/dist/ui/hooks/useTerminalTitle.d.ts +0 -1
  384. package/dist/ui/hooks/useTranscriptHistory.d.ts +0 -1
  385. package/dist/ui/hooks/useTranscriptScroll.d.ts +0 -1
  386. package/dist/ui/item-helpers.d.ts +0 -1
  387. package/dist/ui/layout-decisions.d.ts +0 -1
  388. package/dist/ui/live-area-height.d.ts +0 -1
  389. package/dist/ui/live-item-flush.d.ts +0 -1
  390. package/dist/ui/login.d.ts +0 -1
  391. package/dist/ui/mcp.d.ts +0 -1
  392. package/dist/ui/pixel.d.ts +0 -1
  393. package/dist/ui/prompt-routing.d.ts +0 -1
  394. package/dist/ui/render.d.ts +0 -1
  395. package/dist/ui/session-summary.d.ts +0 -1
  396. package/dist/ui/sessions.d.ts +0 -1
  397. package/dist/ui/spinner-frames.d.ts +0 -1
  398. package/dist/ui/stores/create-store.d.ts +0 -1
  399. package/dist/ui/stores/index.d.ts +0 -1
  400. package/dist/ui/stores/taskbar-store.d.ts +0 -1
  401. package/dist/ui/stores/transcript-scroll-store.d.ts +0 -1
  402. package/dist/ui/submit-prompt-command.d.ts +0 -1
  403. package/dist/ui/submit-slash-commands.d.ts +0 -1
  404. package/dist/ui/terminal-history-format.d.ts +0 -1
  405. package/dist/ui/terminal-history-spacing.d.ts +0 -1
  406. package/dist/ui/terminal-history-status-renderers.d.ts +0 -1
  407. package/dist/ui/terminal-history.d.ts +0 -1
  408. package/dist/ui/testing/screen-recorder.d.ts +0 -1
  409. package/dist/ui/theme/detect-theme.d.ts +0 -1
  410. package/dist/ui/theme/theme.d.ts +0 -1
  411. package/dist/ui/theme/theme.js.map +1 -1
  412. package/dist/ui/thinking-level.d.ts +0 -1
  413. package/dist/ui/tool-group-summary.d.ts +0 -1
  414. package/dist/ui/tool-line-summary.d.ts +0 -1
  415. package/dist/ui/transcript/MiscRows.d.ts +0 -1
  416. package/dist/ui/transcript/StatusRow.d.ts +0 -1
  417. package/dist/ui/transcript/ToolRows.d.ts +0 -1
  418. package/dist/ui/transcript/TranscriptItemFrame.d.ts +0 -1
  419. package/dist/ui/transcript/TranscriptRenderer.d.ts +0 -1
  420. package/dist/ui/transcript/presentation.d.ts +0 -1
  421. package/dist/ui/transcript/spacing.d.ts +0 -1
  422. package/dist/ui/transcript/tool-presentation.d.ts +0 -1
  423. package/dist/ui/transcript/tool-presentation.js.map +1 -1
  424. package/dist/ui/transcript/transcript-lines.d.ts +0 -1
  425. package/dist/ui/utils/assistant-stream-split.d.ts +0 -1
  426. package/dist/ui/utils/highlight.d.ts +0 -1
  427. package/dist/ui/utils/hyperlink.d.ts +0 -1
  428. package/dist/ui/utils/latex-to-unicode.d.ts +0 -1
  429. package/dist/ui/utils/markdown-cache.d.ts +0 -1
  430. package/dist/ui/utils/markdown-renderer.d.ts +0 -1
  431. package/dist/ui/utils/markdown-table.d.ts +0 -1
  432. package/dist/ui/utils/signal.d.ts +0 -1
  433. package/dist/ui/utils/supports-hyperlinks.d.ts +0 -1
  434. package/dist/ui/utils/table-text.d.ts +0 -1
  435. package/dist/ui/utils/terminal-graphics.d.ts +0 -1
  436. package/dist/ui/utils/terminal-input.d.ts +0 -1
  437. package/dist/ui/utils/text-utils.d.ts +0 -1
  438. package/dist/ui/utils/token-to-ansi.d.ts +0 -1
  439. package/dist/ui/utils/user-message-display.d.ts +0 -1
  440. package/dist/ui/utils/word-diff.d.ts +0 -1
  441. package/dist/utils/error-handler.d.ts +0 -1
  442. package/dist/utils/format.d.ts +0 -1
  443. package/dist/utils/git.d.ts +0 -1
  444. package/dist/utils/github-ci.d.ts +18 -0
  445. package/dist/utils/github-ci.js +137 -0
  446. package/dist/utils/github-ci.js.map +1 -0
  447. package/dist/utils/github.d.ts +0 -1
  448. package/dist/utils/http-body.d.ts +0 -1
  449. package/dist/utils/image.d.ts +0 -1
  450. package/dist/utils/open-browser.d.ts +0 -1
  451. package/dist/utils/plan-steps.d.ts +0 -1
  452. package/dist/utils/plan-steps.js.map +1 -1
  453. package/dist/utils/process.d.ts +0 -1
  454. package/dist/utils/prompt-enhancer.d.ts +6 -3
  455. package/dist/utils/prompt-enhancer.js +61 -13
  456. package/dist/utils/prompt-enhancer.js.map +1 -1
  457. package/dist/utils/shell.d.ts +0 -1
  458. package/dist/utils/sound.d.ts +0 -1
  459. package/dist/utils/text.d.ts +0 -1
  460. package/package.json +8 -8
  461. package/dist/app-sidecar-sessions.d.ts.map +0 -1
  462. package/dist/app-sidecar.d.ts.map +0 -1
  463. package/dist/chat-agents/general.d.ts.map +0 -1
  464. package/dist/chat-agents/index.d.ts.map +0 -1
  465. package/dist/chat-agents/jiwa.d.ts.map +0 -1
  466. package/dist/chat-agents/memory.d.ts.map +0 -1
  467. package/dist/chat-agents/research.d.ts.map +0 -1
  468. package/dist/chat-agents/shared.d.ts.map +0 -1
  469. package/dist/chat-agents/therapist.d.ts.map +0 -1
  470. package/dist/chat-agents/types.d.ts.map +0 -1
  471. package/dist/cli/auth.d.ts.map +0 -1
  472. package/dist/cli/command-routing.d.ts.map +0 -1
  473. package/dist/cli/mcp.d.ts.map +0 -1
  474. package/dist/cli/pixel.d.ts.map +0 -1
  475. package/dist/cli/shared.d.ts.map +0 -1
  476. package/dist/cli.d.ts.map +0 -1
  477. package/dist/config.d.ts.map +0 -1
  478. package/dist/core/agent-notifications.d.ts.map +0 -1
  479. package/dist/core/agent-session.d.ts.map +0 -1
  480. package/dist/core/agents.d.ts.map +0 -1
  481. package/dist/core/api-benchmark.d.ts.map +0 -1
  482. package/dist/core/ask-user.d.ts.map +0 -1
  483. package/dist/core/auth/index.d.ts.map +0 -1
  484. package/dist/core/auth-providers.d.ts.map +0 -1
  485. package/dist/core/auth-storage.d.ts.map +0 -1
  486. package/dist/core/auto-update.d.ts.map +0 -1
  487. package/dist/core/autopilot-cycle.d.ts.map +0 -1
  488. package/dist/core/autopilot-gate.d.ts.map +0 -1
  489. package/dist/core/autopilot-verdict.d.ts.map +0 -1
  490. package/dist/core/bash-spawn-benchmark.d.ts.map +0 -1
  491. package/dist/core/bundled-agents.d.ts.map +0 -1
  492. package/dist/core/cache-warm-benchmark.d.ts.map +0 -1
  493. package/dist/core/checkpoint-store.d.ts.map +0 -1
  494. package/dist/core/claude-code-version.d.ts.map +0 -1
  495. package/dist/core/code-retrieval-chunkers.d.ts.map +0 -1
  496. package/dist/core/code-retrieval.d.ts.map +0 -1
  497. package/dist/core/compaction/active-context.d.ts.map +0 -1
  498. package/dist/core/compaction/compactor.d.ts.map +0 -1
  499. package/dist/core/compaction/policy.d.ts.map +0 -1
  500. package/dist/core/compaction/query-aware-selector.d.ts.map +0 -1
  501. package/dist/core/compaction/token-estimator.d.ts.map +0 -1
  502. package/dist/core/compaction/tool-result-pruner.d.ts.map +0 -1
  503. package/dist/core/context-limits.d.ts.map +0 -1
  504. package/dist/core/custom-commands.d.ts.map +0 -1
  505. package/dist/core/encode-cwd.d.ts.map +0 -1
  506. package/dist/core/env-delta.d.ts.map +0 -1
  507. package/dist/core/event-bus.d.ts.map +0 -1
  508. package/dist/core/extensions/loader.d.ts.map +0 -1
  509. package/dist/core/extensions/plugin-bundles.d.ts.map +0 -1
  510. package/dist/core/extensions/types.d.ts.map +0 -1
  511. package/dist/core/fast-apply-benchmark.d.ts.map +0 -1
  512. package/dist/core/file-lock.d.ts.map +0 -1
  513. package/dist/core/foreign-session-import.d.ts.map +0 -1
  514. package/dist/core/foreign-transcript-blocks.d.ts.map +0 -1
  515. package/dist/core/goal-controller.d.ts.map +0 -1
  516. package/dist/core/goal-prerequisites.d.ts.map +0 -1
  517. package/dist/core/goal-store.d.ts.map +0 -1
  518. package/dist/core/goal-verifier.d.ts.map +0 -1
  519. package/dist/core/goal-worker.d.ts.map +0 -1
  520. package/dist/core/hashline-edit-benchmark.d.ts.map +0 -1
  521. package/dist/core/hashline.d.ts.map +0 -1
  522. package/dist/core/ideal-review.d.ts.map +0 -1
  523. package/dist/core/index.d.ts.map +0 -1
  524. package/dist/core/language-detector.d.ts.map +0 -1
  525. package/dist/core/local-endpoint-store.d.ts.map +0 -1
  526. package/dist/core/logger.d.ts.map +0 -1
  527. package/dist/core/loop-breaker.d.ts.map +0 -1
  528. package/dist/core/lsp/client.d.ts.map +0 -1
  529. package/dist/core/lsp/edit-telemetry.d.ts.map +0 -1
  530. package/dist/core/lsp/format.d.ts.map +0 -1
  531. package/dist/core/lsp/jsonrpc.d.ts.map +0 -1
  532. package/dist/core/lsp/manager.d.ts.map +0 -1
  533. package/dist/core/lsp/pool.d.ts.map +0 -1
  534. package/dist/core/lsp/servers.d.ts.map +0 -1
  535. package/dist/core/lsp/test-support.d.ts.map +0 -1
  536. package/dist/core/mcp/catalog-cache.d.ts.map +0 -1
  537. package/dist/core/mcp/client.d.ts.map +0 -1
  538. package/dist/core/mcp/content.d.ts.map +0 -1
  539. package/dist/core/mcp/defaults.d.ts.map +0 -1
  540. package/dist/core/mcp/deferred-catalog.d.ts.map +0 -1
  541. package/dist/core/mcp/elicitation-bridge.d.ts.map +0 -1
  542. package/dist/core/mcp/index.d.ts.map +0 -1
  543. package/dist/core/mcp/loopback.d.ts.map +0 -1
  544. package/dist/core/mcp/oauth-provider.d.ts.map +0 -1
  545. package/dist/core/mcp/oauth-store.d.ts.map +0 -1
  546. package/dist/core/mcp/parse-add-command.d.ts.map +0 -1
  547. package/dist/core/mcp/resolve-stdio.d.ts.map +0 -1
  548. package/dist/core/mcp/shared-pool.d.ts.map +0 -1
  549. package/dist/core/mcp/store.d.ts.map +0 -1
  550. package/dist/core/mcp/types.d.ts.map +0 -1
  551. package/dist/core/message-images.d.ts.map +0 -1
  552. package/dist/core/model-registry.d.ts.map +0 -1
  553. package/dist/core/network-guard.d.ts.map +0 -1
  554. package/dist/core/nolan-context.d.ts.map +0 -1
  555. package/dist/core/nolan-model.d.ts.map +0 -1
  556. package/dist/core/nolan-prompt.d.ts.map +0 -1
  557. package/dist/core/oauth/anthropic.d.ts.map +0 -1
  558. package/dist/core/oauth/gemini.d.ts.map +0 -1
  559. package/dist/core/oauth/kimi.d.ts.map +0 -1
  560. package/dist/core/oauth/openai.d.ts.map +0 -1
  561. package/dist/core/oauth/pkce.d.ts.map +0 -1
  562. package/dist/core/oauth/types.d.ts.map +0 -1
  563. package/dist/core/oauth/xai.d.ts.map +0 -1
  564. package/dist/core/parked-requests.d.ts.map +0 -1
  565. package/dist/core/persistent-shell.d.ts.map +0 -1
  566. package/dist/core/pixel-fix-agent.d.ts.map +0 -1
  567. package/dist/core/pixel-fix.d.ts.map +0 -1
  568. package/dist/core/pixel.d.ts.map +0 -1
  569. package/dist/core/platform-clis.d.ts.map +0 -1
  570. package/dist/core/process-gate.d.ts.map +0 -1
  571. package/dist/core/process-manager.d.ts.map +0 -1
  572. package/dist/core/progress/engine.d.ts.map +0 -1
  573. package/dist/core/progress/git-xp.d.ts.map +0 -1
  574. package/dist/core/progress/ranks.d.ts.map +0 -1
  575. package/dist/core/progress/rebuild.d.ts.map +0 -1
  576. package/dist/core/progress/store.d.ts.map +0 -1
  577. package/dist/core/progress/types.d.ts.map +0 -1
  578. package/dist/core/project-discovery.d.ts.map +0 -1
  579. package/dist/core/prompt-commands.d.ts.map +0 -1
  580. package/dist/core/radio.d.ts.map +0 -1
  581. package/dist/core/regrounding.d.ts.map +0 -1
  582. package/dist/core/resolve-start.d.ts.map +0 -1
  583. package/dist/core/run-claim.d.ts.map +0 -1
  584. package/dist/core/run-lifecycle.d.ts.map +0 -1
  585. package/dist/core/runtime-mode.d.ts.map +0 -1
  586. package/dist/core/sandbox-domains.d.ts.map +0 -1
  587. package/dist/core/sandbox-feedback.d.ts.map +0 -1
  588. package/dist/core/sandbox.d.ts.map +0 -1
  589. package/dist/core/semantic-search-benchmark.d.ts.map +0 -1
  590. package/dist/core/session-compaction.d.ts.map +0 -1
  591. package/dist/core/session-export.d.ts.map +0 -1
  592. package/dist/core/session-history.d.ts.map +0 -1
  593. package/dist/core/session-manager.d.ts.map +0 -1
  594. package/dist/core/session-preview.d.ts.map +0 -1
  595. package/dist/core/session-storage.d.ts.map +0 -1
  596. package/dist/core/settings-manager.d.ts.map +0 -1
  597. package/dist/core/setup-history.d.ts.map +0 -1
  598. package/dist/core/shell-path.d.ts.map +0 -1
  599. package/dist/core/shell.d.ts.map +0 -1
  600. package/dist/core/shutdown.d.ts.map +0 -1
  601. package/dist/core/skills.d.ts.map +0 -1
  602. package/dist/core/slash-commands.d.ts.map +0 -1
  603. package/dist/core/source-maps.d.ts.map +0 -1
  604. package/dist/core/speed-benchmark.d.ts.map +0 -1
  605. package/dist/core/steering.d.ts.map +0 -1
  606. package/dist/core/steroids.d.ts.map +0 -1
  607. package/dist/core/style-packs/index.d.ts.map +0 -1
  608. package/dist/core/style-packs/packs.d.ts.map +0 -1
  609. package/dist/core/subagent-manager.d.ts.map +0 -1
  610. package/dist/core/subagent-policy.d.ts.map +0 -1
  611. package/dist/core/subagent-store.d.ts.map +0 -1
  612. package/dist/core/subagent-turn-record.d.ts.map +0 -1
  613. package/dist/core/task-store.d.ts.map +0 -1
  614. package/dist/core/telegram-config.d.ts.map +0 -1
  615. package/dist/core/telegram.d.ts.map +0 -1
  616. package/dist/core/thinking-level.d.ts.map +0 -1
  617. package/dist/core/verification-evidence.d.ts.map +0 -1
  618. package/dist/core/verification-gate.d.ts.map +0 -1
  619. package/dist/core/verify-commands.d.ts.map +0 -1
  620. package/dist/core/voice-transcriber.d.ts.map +0 -1
  621. package/dist/core/workspace-guard.d.ts.map +0 -1
  622. package/dist/hf-pull.d.ts.map +0 -1
  623. package/dist/index.d.ts.map +0 -1
  624. package/dist/interactive.d.ts.map +0 -1
  625. package/dist/modes/acp-mode.d.ts.map +0 -1
  626. package/dist/modes/agent-home-mode.d.ts.map +0 -1
  627. package/dist/modes/index.d.ts.map +0 -1
  628. package/dist/modes/json-mode.d.ts.map +0 -1
  629. package/dist/modes/print-mode.d.ts.map +0 -1
  630. package/dist/modes/rpc-mode.d.ts.map +0 -1
  631. package/dist/modes/serve-mode.d.ts.map +0 -1
  632. package/dist/modes/subagent-worker-mode.d.ts.map +0 -1
  633. package/dist/session.d.ts.map +0 -1
  634. package/dist/system-prompt.d.ts.map +0 -1
  635. package/dist/test-support/fake-home.d.ts.map +0 -1
  636. package/dist/tools/ask-user.d.ts.map +0 -1
  637. package/dist/tools/bash.d.ts.map +0 -1
  638. package/dist/tools/code-nav.d.ts.map +0 -1
  639. package/dist/tools/code-skeleton.d.ts.map +0 -1
  640. package/dist/tools/compress.d.ts.map +0 -1
  641. package/dist/tools/edit-diff.d.ts.map +0 -1
  642. package/dist/tools/edit.d.ts.map +0 -1
  643. package/dist/tools/enter-plan.d.ts.map +0 -1
  644. package/dist/tools/exit-plan.d.ts.map +0 -1
  645. package/dist/tools/find.d.ts.map +0 -1
  646. package/dist/tools/generate-image.d.ts.map +0 -1
  647. package/dist/tools/goals.d.ts.map +0 -1
  648. package/dist/tools/grep.d.ts.map +0 -1
  649. package/dist/tools/html-extract.d.ts.map +0 -1
  650. package/dist/tools/index.d.ts.map +0 -1
  651. package/dist/tools/ls.d.ts.map +0 -1
  652. package/dist/tools/operations.d.ts.map +0 -1
  653. package/dist/tools/overflow.d.ts.map +0 -1
  654. package/dist/tools/path-utils.d.ts.map +0 -1
  655. package/dist/tools/pdf-extract.d.ts.map +0 -1
  656. package/dist/tools/prompt-hints.d.ts.map +0 -1
  657. package/dist/tools/read-only-bash.d.ts.map +0 -1
  658. package/dist/tools/read-tracker.d.ts.map +0 -1
  659. package/dist/tools/read.d.ts.map +0 -1
  660. package/dist/tools/safe-env.d.ts.map +0 -1
  661. package/dist/tools/screenshot.d.ts.map +0 -1
  662. package/dist/tools/search-code.d.ts.map +0 -1
  663. package/dist/tools/skill.d.ts.map +0 -1
  664. package/dist/tools/source-path.d.ts.map +0 -1
  665. package/dist/tools/steroids.d.ts.map +0 -1
  666. package/dist/tools/subagent-control.d.ts.map +0 -1
  667. package/dist/tools/subagent-shared.d.ts.map +0 -1
  668. package/dist/tools/subagent.d.ts.map +0 -1
  669. package/dist/tools/task-output.d.ts.map +0 -1
  670. package/dist/tools/task-send.d.ts.map +0 -1
  671. package/dist/tools/task-stop.d.ts.map +0 -1
  672. package/dist/tools/tasks.d.ts.map +0 -1
  673. package/dist/tools/tool-search.d.ts.map +0 -1
  674. package/dist/tools/tool-tiers.d.ts.map +0 -1
  675. package/dist/tools/truncate.d.ts.map +0 -1
  676. package/dist/tools/web-fetch.d.ts.map +0 -1
  677. package/dist/tools/web-search.d.ts.map +0 -1
  678. package/dist/tools/write.d.ts.map +0 -1
  679. package/dist/types.d.ts.map +0 -1
  680. package/dist/ui/App.d.ts.map +0 -1
  681. package/dist/ui/activity-phrases.d.ts.map +0 -1
  682. package/dist/ui/app-items.d.ts.map +0 -1
  683. package/dist/ui/components/ActivityIndicator.d.ts.map +0 -1
  684. package/dist/ui/components/AnimationContext.d.ts.map +0 -1
  685. package/dist/ui/components/AssistantMessage.d.ts.map +0 -1
  686. package/dist/ui/components/BackgroundTasksBar.d.ts.map +0 -1
  687. package/dist/ui/components/Banner.d.ts.map +0 -1
  688. package/dist/ui/components/ChatFooterPane.d.ts.map +0 -1
  689. package/dist/ui/components/ChatInputStack.d.ts.map +0 -1
  690. package/dist/ui/components/ChatLayout.d.ts.map +0 -1
  691. package/dist/ui/components/ChatLivePane.d.ts.map +0 -1
  692. package/dist/ui/components/ChatScreen.d.ts.map +0 -1
  693. package/dist/ui/components/ChatStatusRow.d.ts.map +0 -1
  694. package/dist/ui/components/CompactionNotice.d.ts.map +0 -1
  695. package/dist/ui/components/DiffFrame.d.ts.map +0 -1
  696. package/dist/ui/components/DiffView.d.ts.map +0 -1
  697. package/dist/ui/components/Footer.d.ts.map +0 -1
  698. package/dist/ui/components/FooterStatusRow.d.ts.map +0 -1
  699. package/dist/ui/components/FullScreenOverlayRouter.d.ts.map +0 -1
  700. package/dist/ui/components/GoalOverlay.d.ts.map +0 -1
  701. package/dist/ui/components/GoalStatusBar.d.ts.map +0 -1
  702. package/dist/ui/components/IdealHookMessage.d.ts.map +0 -1
  703. package/dist/ui/components/InputArea.d.ts.map +0 -1
  704. package/dist/ui/components/LiveToolPanel.d.ts.map +0 -1
  705. package/dist/ui/components/Markdown.d.ts.map +0 -1
  706. package/dist/ui/components/MessageResponse.d.ts.map +0 -1
  707. package/dist/ui/components/ModelSelector.d.ts.map +0 -1
  708. package/dist/ui/components/NoSelect.d.ts.map +0 -1
  709. package/dist/ui/components/Overlay.d.ts.map +0 -1
  710. package/dist/ui/components/PixelOverlay.d.ts.map +0 -1
  711. package/dist/ui/components/PlanApproval.d.ts.map +0 -1
  712. package/dist/ui/components/PlanBanner.d.ts.map +0 -1
  713. package/dist/ui/components/PlanModeLogo.d.ts.map +0 -1
  714. package/dist/ui/components/PlanOverlay.d.ts.map +0 -1
  715. package/dist/ui/components/PlanProgress.d.ts.map +0 -1
  716. package/dist/ui/components/QueueIndicator.d.ts.map +0 -1
  717. package/dist/ui/components/Ratchet.d.ts.map +0 -1
  718. package/dist/ui/components/RewindOverlay.d.ts.map +0 -1
  719. package/dist/ui/components/SelectList.d.ts.map +0 -1
  720. package/dist/ui/components/ServerToolExecution.d.ts.map +0 -1
  721. package/dist/ui/components/SessionSelector.d.ts.map +0 -1
  722. package/dist/ui/components/SessionSummary.d.ts.map +0 -1
  723. package/dist/ui/components/SettingsSelector.d.ts.map +0 -1
  724. package/dist/ui/components/SkillsOverlay.d.ts.map +0 -1
  725. package/dist/ui/components/SlashCommandMenu.d.ts.map +0 -1
  726. package/dist/ui/components/SlashStyledSelectList.d.ts.map +0 -1
  727. package/dist/ui/components/Spinner.d.ts.map +0 -1
  728. package/dist/ui/components/StreamingArea.d.ts.map +0 -1
  729. package/dist/ui/components/SubAgentPanel.d.ts.map +0 -1
  730. package/dist/ui/components/TaskOverlay.d.ts.map +0 -1
  731. package/dist/ui/components/TaskPickerMenu.d.ts.map +0 -1
  732. package/dist/ui/components/ThemeSelector.d.ts.map +0 -1
  733. package/dist/ui/components/ThinkingBlock.d.ts.map +0 -1
  734. package/dist/ui/components/ToolExecution.d.ts.map +0 -1
  735. package/dist/ui/components/ToolGroupExecution.d.ts.map +0 -1
  736. package/dist/ui/components/ToolUseLoader.d.ts.map +0 -1
  737. package/dist/ui/components/TranscriptViewport.d.ts.map +0 -1
  738. package/dist/ui/components/UserMessage.d.ts.map +0 -1
  739. package/dist/ui/components/force-color.d.ts.map +0 -1
  740. package/dist/ui/components/index.d.ts.map +0 -1
  741. package/dist/ui/constants/figures.d.ts.map +0 -1
  742. package/dist/ui/duration-format.d.ts.map +0 -1
  743. package/dist/ui/duration-summary.d.ts.map +0 -1
  744. package/dist/ui/error-item.d.ts.map +0 -1
  745. package/dist/ui/goal-events.d.ts.map +0 -1
  746. package/dist/ui/goal-summary.d.ts.map +0 -1
  747. package/dist/ui/hooks/useAgentLoop.d.ts.map +0 -1
  748. package/dist/ui/hooks/useBlink.d.ts.map +0 -1
  749. package/dist/ui/hooks/useChatLayoutMeasurements.d.ts.map +0 -1
  750. package/dist/ui/hooks/useContextCompaction.d.ts.map +0 -1
  751. package/dist/ui/hooks/useDoublePress.d.ts.map +0 -1
  752. package/dist/ui/hooks/useMinDisplayTime.d.ts.map +0 -1
  753. package/dist/ui/hooks/useModeState.d.ts.map +0 -1
  754. package/dist/ui/hooks/usePixelFixFlow.d.ts.map +0 -1
  755. package/dist/ui/hooks/useSessionManager.d.ts.map +0 -1
  756. package/dist/ui/hooks/useSessionPersistence.d.ts.map +0 -1
  757. package/dist/ui/hooks/useSlashCommands.d.ts.map +0 -1
  758. package/dist/ui/hooks/useTaskPickerController.d.ts.map +0 -1
  759. package/dist/ui/hooks/useTerminalSize.d.ts.map +0 -1
  760. package/dist/ui/hooks/useTerminalTitle.d.ts.map +0 -1
  761. package/dist/ui/hooks/useTranscriptHistory.d.ts.map +0 -1
  762. package/dist/ui/hooks/useTranscriptScroll.d.ts.map +0 -1
  763. package/dist/ui/item-helpers.d.ts.map +0 -1
  764. package/dist/ui/layout-decisions.d.ts.map +0 -1
  765. package/dist/ui/live-area-height.d.ts.map +0 -1
  766. package/dist/ui/live-item-flush.d.ts.map +0 -1
  767. package/dist/ui/login.d.ts.map +0 -1
  768. package/dist/ui/mcp.d.ts.map +0 -1
  769. package/dist/ui/pixel.d.ts.map +0 -1
  770. package/dist/ui/prompt-routing.d.ts.map +0 -1
  771. package/dist/ui/render.d.ts.map +0 -1
  772. package/dist/ui/session-summary.d.ts.map +0 -1
  773. package/dist/ui/sessions.d.ts.map +0 -1
  774. package/dist/ui/spinner-frames.d.ts.map +0 -1
  775. package/dist/ui/stores/create-store.d.ts.map +0 -1
  776. package/dist/ui/stores/index.d.ts.map +0 -1
  777. package/dist/ui/stores/taskbar-store.d.ts.map +0 -1
  778. package/dist/ui/stores/transcript-scroll-store.d.ts.map +0 -1
  779. package/dist/ui/submit-prompt-command.d.ts.map +0 -1
  780. package/dist/ui/submit-slash-commands.d.ts.map +0 -1
  781. package/dist/ui/terminal-history-format.d.ts.map +0 -1
  782. package/dist/ui/terminal-history-spacing.d.ts.map +0 -1
  783. package/dist/ui/terminal-history-status-renderers.d.ts.map +0 -1
  784. package/dist/ui/terminal-history.d.ts.map +0 -1
  785. package/dist/ui/testing/screen-recorder.d.ts.map +0 -1
  786. package/dist/ui/theme/detect-theme.d.ts.map +0 -1
  787. package/dist/ui/theme/theme.d.ts.map +0 -1
  788. package/dist/ui/thinking-level.d.ts.map +0 -1
  789. package/dist/ui/tool-group-summary.d.ts.map +0 -1
  790. package/dist/ui/tool-line-summary.d.ts.map +0 -1
  791. package/dist/ui/transcript/MiscRows.d.ts.map +0 -1
  792. package/dist/ui/transcript/StatusRow.d.ts.map +0 -1
  793. package/dist/ui/transcript/ToolRows.d.ts.map +0 -1
  794. package/dist/ui/transcript/TranscriptItemFrame.d.ts.map +0 -1
  795. package/dist/ui/transcript/TranscriptRenderer.d.ts.map +0 -1
  796. package/dist/ui/transcript/presentation.d.ts.map +0 -1
  797. package/dist/ui/transcript/spacing.d.ts.map +0 -1
  798. package/dist/ui/transcript/tool-presentation.d.ts.map +0 -1
  799. package/dist/ui/transcript/transcript-lines.d.ts.map +0 -1
  800. package/dist/ui/utils/assistant-stream-split.d.ts.map +0 -1
  801. package/dist/ui/utils/highlight.d.ts.map +0 -1
  802. package/dist/ui/utils/hyperlink.d.ts.map +0 -1
  803. package/dist/ui/utils/latex-to-unicode.d.ts.map +0 -1
  804. package/dist/ui/utils/markdown-cache.d.ts.map +0 -1
  805. package/dist/ui/utils/markdown-renderer.d.ts.map +0 -1
  806. package/dist/ui/utils/markdown-table.d.ts.map +0 -1
  807. package/dist/ui/utils/signal.d.ts.map +0 -1
  808. package/dist/ui/utils/supports-hyperlinks.d.ts.map +0 -1
  809. package/dist/ui/utils/table-text.d.ts.map +0 -1
  810. package/dist/ui/utils/terminal-graphics.d.ts.map +0 -1
  811. package/dist/ui/utils/terminal-input.d.ts.map +0 -1
  812. package/dist/ui/utils/text-utils.d.ts.map +0 -1
  813. package/dist/ui/utils/token-to-ansi.d.ts.map +0 -1
  814. package/dist/ui/utils/user-message-display.d.ts.map +0 -1
  815. package/dist/ui/utils/word-diff.d.ts.map +0 -1
  816. package/dist/utils/error-handler.d.ts.map +0 -1
  817. package/dist/utils/format.d.ts.map +0 -1
  818. package/dist/utils/git.d.ts.map +0 -1
  819. package/dist/utils/github.d.ts.map +0 -1
  820. package/dist/utils/http-body.d.ts.map +0 -1
  821. package/dist/utils/image.d.ts.map +0 -1
  822. package/dist/utils/open-browser.d.ts.map +0 -1
  823. package/dist/utils/plan-steps.d.ts.map +0 -1
  824. package/dist/utils/process.d.ts.map +0 -1
  825. package/dist/utils/prompt-enhancer.d.ts.map +0 -1
  826. package/dist/utils/shell.d.ts.map +0 -1
  827. package/dist/utils/sound.d.ts.map +0 -1
  828. package/dist/utils/text.d.ts.map +0 -1
@@ -1,4 +1,24 @@
1
- /** Follow-ups per run. After this the gate is silent for the rest of the run. */
1
+ import { createHash } from "node:crypto";
2
+ import { z } from "zod";
3
+ export const VERIFICATION_STATE_KIND = "verification_state";
4
+ const verificationStateSchema = z.object({
5
+ version: z.literal(1),
6
+ seq: z.number().int().nonnegative().safe(),
7
+ mutation: z.number().int().nonnegative().safe(),
8
+ verified: z.number().int().nonnegative().safe(),
9
+ files: z.array(z.string()).max(10_000),
10
+ // Legacy snapshots carry bare check-key hashes; new ones carry [key, revision]
11
+ // pairs so a failure can be superseded by later evidence.
12
+ failedChecks: z
13
+ .array(z.union([
14
+ z.string().regex(/^[a-f0-9]{64}$/),
15
+ z.tuple([z.string().regex(/^[a-f0-9]{64}$/), z.number().int().nonnegative().safe()]),
16
+ ]))
17
+ .max(10_000),
18
+ unknown: z.boolean(),
19
+ });
20
+ const checkKey = (command) => createHash("sha256").update(command.trim()).digest("hex");
21
+ /** Initial demands per run; at most one separate post-verification recheck is allowed. */
2
22
  export const MAX_VERIFICATION_INJECTIONS = 1;
3
23
  /** Tamper-disclosure demands per run. Same reasoning as above: one is enough. */
4
24
  export const MAX_TAMPER_INJECTIONS = 1;
@@ -314,46 +334,96 @@ export function detectCheckWeakening(addedText) {
314
334
  }
315
335
  return [...found];
316
336
  }
337
+ const VERIFICATION_OUTCOME_GUIDANCE = "This is an internal hook, not new user authorization or a new task. Your previous draft may not have been shown. " +
338
+ "Give a direct answer to the user's latest request: lead with the task outcome, include current verification " +
339
+ "and commit/push status when relevant, and preserve any pending user decision. Do not request the same " +
340
+ "approval again if the user already gave it. Never replace the outcome with hook commentary or verification status alone.";
317
341
  export function buildTamperDisclosureMessage(suspects) {
318
342
  return {
319
343
  role: "user",
320
344
  provenance: { source: "runtime", kind: "completion_gate", visibility: "hidden" },
321
- content: "Verification gate: a check passed in this run, but this run also changed what the " +
322
- "checks themselves assert:\n" +
345
+ content: "Check-integrity review: this run edited tests, check configuration, or suppression markers:\n" +
323
346
  suspects.map(({ filePath, reason }) => `- ${filePath} — ${reason}`).join("\n") +
324
- "\nA check that was itself edited does not prove the code works. If these edits were " +
325
- "legitimate (a new test, a test corrected against agreed behaviour, a suppression the " +
326
- "user asked for), say so plainly in your final response and state why the fix stands " +
327
- "without them. If instead the check was weakened, skipped, narrowed or silenced to get " +
328
- "a green result, revert that now and fix the underlying code. This is the only time you " +
329
- "will be asked — do not describe the change as verified without addressing this.",
347
+ "\nThese are review candidates, not evidence of wrongdoing. A check that was itself edited " +
348
+ "does not prove the code works on its own: inspect the actual diff against the user's agreed " +
349
+ "behaviour. For legitimate added coverage or corrected expectations, review them internally; " +
350
+ "do not add a defensive explanation to the final response. If a check was weakened, skipped, " +
351
+ "narrowed or silenced merely to get green, undo that weakening and fix the underlying code. " +
352
+ "Run affected checks after any correction. Report confirmed weakening, unresolved doubt, or " +
353
+ "unverified changes plainly; never claim verification without resolving them. Complete this " +
354
+ "review and required checks before any authorized commit or push that has not happened yet. " +
355
+ VERIFICATION_OUTCOME_GUIDANCE,
330
356
  };
331
357
  }
332
- export function buildVerificationFollowUpMessage(files) {
358
+ export function buildVerificationFollowUpMessage(files, recheck = false, rejectedCheck, invalidationCause) {
359
+ const noFiles = files.length === 0;
333
360
  return {
334
361
  role: "user",
335
362
  provenance: { source: "runtime", kind: "completion_gate", visibility: "hidden" },
336
- content: "Verification gate: you changed code in this run, but no test, typecheck, lint or build " +
337
- "command has completed since the last edit:\n" +
363
+ content: (recheck
364
+ ? noFiles
365
+ ? "Verification gate: a command that can rewrite files" +
366
+ (invalidationCause ? ` (\`${invalidationCause}\`)` : "") +
367
+ " ran after the earlier verification, so its green check no longer proves the current state:\n"
368
+ : "Verification gate: code changed again after the earlier verification:\n"
369
+ : "Verification gate: current successful verification is missing for this run:\n") +
338
370
  files.map((filePath) => `- ${filePath}`).join("\n") +
339
- "\nRun the project's verification now (its test command, or the closest equivalent) and " +
340
- "address any failures. Do not describe the change as tested or working without having run it. " +
341
- "This is the only time you will be asked: if you cannot run it, say plainly in your final " +
342
- "response which of these changes went unverified and why, so the user can check them.",
371
+ (noFiles ? "" : "\n") +
372
+ (recheck
373
+ ? noFiles
374
+ ? "Re-run the project's checks against the current state and address any failures. "
375
+ : "Re-run the affected checks against these changes and address any failures. "
376
+ : "Run the project's verification now (its test command, or the closest equivalent) and " +
377
+ "address any failures. ") +
378
+ "Do not describe the change as tested or working without having run it. " +
379
+ "There is no repeated reminder for unchanged code: if you cannot run it, say plainly in your final " +
380
+ "response which of these changes went unverified and why, so the user can check them." +
381
+ // Why a green run already in the transcript did not count. Without this,
382
+ // the agent re-ran the same untrusted command shape every turn and the
383
+ // gate never cleared — the user got verification status instead of
384
+ // answers on every prompt.
385
+ (rejectedCheck
386
+ ? `\nA check you ran did not count as verification evidence: \`${rejectedCheck.command}\` — ${rejectedCheck.reason}. ` +
387
+ "Green output from that command shape cannot clear this gate; run a bounded check instead " +
388
+ "(the project's test script via pnpm/npm/yarn test, vitest run, jest, pytest, or tsc --noEmit)."
389
+ : "") +
390
+ " " +
391
+ VERIFICATION_OUTCOME_GUIDANCE,
343
392
  };
344
393
  }
345
394
  /**
346
395
  * Bookkeeping for "code was edited, nothing proved it since". Callers record
347
- * successful edit/write mutations on code files and completed foreground
348
- * verification commands, in occurrence order; the gate is owed whenever the
349
- * newest recorded event is a mutation.
396
+ * successful edit/write mutations on code files and host-observed check results.
397
+ * Approval requires current successful evidence and no unresolved failures;
398
+ * exhausting the reminder budget never clears the underlying problem.
350
399
  */
351
400
  export class VerificationGate {
352
401
  seq = 0;
353
402
  lastMutationSeq = 0;
354
403
  lastVerificationSeq = 0;
355
404
  injections = 0;
405
+ recheckInjections = 0;
406
+ lastDemandedMutationSeq = 0;
356
407
  tamperInjections = 0;
408
+ lastSuspectSeq = 0;
409
+ lastReviewRequestedSeq = 0;
410
+ failedChecks = new Map(); // checkKey → mutation revision at failure
411
+ passedChecks = new Map();
412
+ unknownVerification = false;
413
+ /** A check the evidence classifier refused to vouch for, kept so the demand
414
+ * can explain WHY a green run in the transcript did not clear the gate. */
415
+ lastRejectedCheck = null;
416
+ /** The file-rewriting command that last invalidated evidence, if any — named
417
+ * in a recheck demand that has no tracked file edits to list instead. */
418
+ lastInvalidationCause = null;
419
+ /**
420
+ * Did THIS run touch what the gate guards — a code mutation, or a check that
421
+ * may have rewritten files? Inherited debt alone never re-arms the gate: a
422
+ * run that edited nothing is a question or review turn, and hijacking it
423
+ * with a verification demand answered the user's prompt with verification
424
+ * status instead of an answer, on every prompt, forever.
425
+ */
426
+ runTouched = false;
357
427
  /** Code files mutated since the last verification — the gate's file list. */
358
428
  mutatedFiles = new Set();
359
429
  /**
@@ -363,6 +433,31 @@ export class VerificationGate {
363
433
  * was the thing edited.
364
434
  */
365
435
  suspects = new Map();
436
+ evidenceRecords = new Map();
437
+ rememberEvidence(command, status, reason, revision = this.revision) {
438
+ const key = checkKey(command);
439
+ if ((this.evidenceRecords.get(key)?.revision ?? -1) > revision)
440
+ return;
441
+ this.evidenceRecords.delete(key);
442
+ this.evidenceRecords.set(key, {
443
+ command: command.slice(0, 2000),
444
+ status,
445
+ reason: reason.slice(0, 1000),
446
+ revision,
447
+ });
448
+ if (this.evidenceRecords.size > 64)
449
+ this.evidenceRecords.delete(this.evidenceRecords.keys().next().value);
450
+ }
451
+ /** The same host-observed results used by the completion gate, not a second transcript verdict. */
452
+ evidence() {
453
+ return [...this.evidenceRecords.values()].map(({ revision, ...entry }) => revision === this.revision
454
+ ? entry
455
+ : {
456
+ ...entry,
457
+ status: "rejected",
458
+ reason: "Superseded: result belongs to an earlier source revision",
459
+ });
460
+ }
366
461
  /**
367
462
  * @param addedText Text the model ADDED in this mutation (the `+` lines of a
368
463
  * diff, or a written file's full content). Scanned for suppression and skip
@@ -370,6 +465,8 @@ export class VerificationGate {
370
465
  */
371
466
  recordMutation(filePath, addedText) {
372
467
  this.lastMutationSeq = ++this.seq;
468
+ this.runTouched = true;
469
+ this.passedChecks.clear();
373
470
  this.mutatedFiles.add(filePath);
374
471
  const reasons = [];
375
472
  if (isCheckOwnFile(filePath))
@@ -378,26 +475,145 @@ export class VerificationGate {
378
475
  reasons.push(...detectCheckWeakening(addedText).map((what) => `adds ${what}`));
379
476
  if (reasons.length === 0)
380
477
  return;
478
+ this.lastSuspectSeq = this.lastMutationSeq;
381
479
  // Keep the fullest reason seen for this file rather than the newest.
382
480
  const existing = this.suspects.get(filePath);
383
481
  const merged = [...new Set([...(existing?.split("; ") ?? []), ...reasons])].join("; ");
384
482
  this.suspects.set(filePath, merged);
385
483
  }
386
- recordVerification() {
484
+ get revision() {
485
+ return this.lastMutationSeq;
486
+ }
487
+ recordVerification(revision = this.revision, command = "verification") {
488
+ // A check that started before a later edit cannot verify that edit.
489
+ if (revision !== this.revision)
490
+ return;
491
+ this.rememberEvidence(command, "passed", "Host-observed successful exit at the current source revision", revision);
492
+ const key = checkKey(command);
493
+ this.passedChecks.set(key, revision);
494
+ // Eviction may require an extra check; it can never create an approval.
495
+ if (this.passedChecks.size > 256) {
496
+ const oldest = this.passedChecks.keys().next().value;
497
+ if (oldest !== undefined)
498
+ this.passedChecks.delete(oldest);
499
+ }
500
+ this.failedChecks.delete(key);
501
+ // A pass against the current file revision supersedes failures recorded
502
+ // against OLDER code. Exact-command-only clearing let one stale failure —
503
+ // a check that failed once and was never re-run byte-identically — block
504
+ // every later green run: verified never advanced and the gate re-injected
505
+ // "a check failed" on every turn, the endless recheck loop.
506
+ for (const [staleKey, failedAt] of this.failedChecks) {
507
+ if (failedAt < revision)
508
+ this.failedChecks.delete(staleKey);
509
+ }
510
+ if (this.failedChecks.size > 0)
511
+ return;
387
512
  this.lastVerificationSeq = ++this.seq;
513
+ this.unknownVerification = false;
388
514
  this.mutatedFiles.clear();
389
515
  }
516
+ recordFailedVerification(command, revision = this.revision) {
517
+ const key = checkKey(command);
518
+ // A failure remains outstanding unless this SAME check already passed on
519
+ // a newer revision. An unrelated successful lint/build cannot erase it at
520
+ // the same revision — but a pass at a NEWER revision supersedes it in
521
+ // recordVerification, because it verified newer code.
522
+ if ((this.passedChecks.get(key) ?? -1) > revision)
523
+ return;
524
+ this.failedChecks.set(key, revision);
525
+ this.rememberEvidence(command, "failed", "Host-observed unsuccessful exit", revision);
526
+ }
527
+ requireFreshVerification(invalidateRevision = false, cause) {
528
+ this.unknownVerification = true;
529
+ if (invalidateRevision) {
530
+ this.lastMutationSeq = ++this.seq;
531
+ this.passedChecks.clear();
532
+ this.runTouched = true; // the command may have rewritten files
533
+ this.lastInvalidationCause = cause?.trim().slice(0, 200) || null;
534
+ }
535
+ }
536
+ /** Remember a check shape the evidence classifier refused, for the demand's
537
+ * explanation. Command text is model-authored: capped, never executed. */
538
+ recordRejectedCheck(command, reason) {
539
+ if (!command.trim() || !reason.trim())
540
+ return;
541
+ this.rememberEvidence(command, "rejected", reason);
542
+ this.lastRejectedCheck = {
543
+ command: command.trim().slice(0, 200),
544
+ reason: reason.trim().slice(0, 200),
545
+ };
546
+ }
547
+ verificationProblem() {
548
+ if (!this.isOwed())
549
+ return null;
550
+ if (this.failedChecks.size > 0) {
551
+ return "Unverified: a check failed or did not confirm success. Rerun that check successfully before approval.";
552
+ }
553
+ return "Unverified: no successful check covers the current changes. Run the project's verification before approval.";
554
+ }
555
+ snapshot() {
556
+ return {
557
+ version: 1,
558
+ seq: this.seq,
559
+ mutation: this.lastMutationSeq,
560
+ verified: this.lastVerificationSeq,
561
+ files: [...this.mutatedFiles],
562
+ failedChecks: [...this.failedChecks],
563
+ unknown: this.unknownVerification,
564
+ };
565
+ }
566
+ restore(value) {
567
+ this.reset();
568
+ const parsed = verificationStateSchema.safeParse(value);
569
+ if (!parsed.success ||
570
+ parsed.data.mutation > parsed.data.seq ||
571
+ parsed.data.verified > parsed.data.seq) {
572
+ this.requireFreshVerification();
573
+ return;
574
+ }
575
+ const state = parsed.data;
576
+ this.seq = state.seq;
577
+ this.lastMutationSeq = state.mutation;
578
+ this.lastVerificationSeq = state.verified;
579
+ this.mutatedFiles = new Set(state.files);
580
+ // Legacy bare-hash entries restore as revision 0 (ancient): any current
581
+ // green pass supersedes them, unblocking sessions poisoned by the old
582
+ // exact-command-only clearing.
583
+ this.failedChecks = new Map(state.failedChecks.map((entry) => (Array.isArray(entry) ? entry : [entry, 0])));
584
+ // Only an OWED snapshot restores as owed. The old `|| state.mutation > 0`
585
+ // forced every restart of an edited session to re-verify before any final
586
+ // answer — so reopening the app and asking a plain question hijacked the
587
+ // turn with a hook notice mid-stream. A session that was verified when it
588
+ // closed stays verified: genuinely unverified work still restores owed
589
+ // (mutation > verified), and any NEW edit in the resumed run bumps
590
+ // mutation above verified and demands re-verification as usual.
591
+ this.unknownVerification = state.unknown;
592
+ }
593
+ beginRun() {
594
+ this.injections = 0;
595
+ this.recheckInjections = 0;
596
+ this.lastDemandedMutationSeq = 0;
597
+ this.tamperInjections = 0;
598
+ this.lastSuspectSeq = 0;
599
+ this.lastReviewRequestedSeq = 0;
600
+ this.suspects.clear();
601
+ this.runTouched = false;
602
+ this.lastRejectedCheck = null;
603
+ this.lastInvalidationCause = null;
604
+ }
390
605
  isOwed() {
391
- return this.lastMutationSeq > this.lastVerificationSeq;
606
+ return (this.unknownVerification ||
607
+ this.failedChecks.size > 0 ||
608
+ this.lastMutationSeq > this.lastVerificationSeq);
392
609
  }
393
610
  /**
394
- * True when a check passed after the run altered what the checks assert —
395
- * the false-green shape. Requires a verification to have completed: with none,
396
- * the standard gate already demands one, and demanding disclosure of an
397
- * unproven fix on top of it is noise.
611
+ * A passing check with test edits not yet covered by a review request. Without
612
+ * a pass, the standard demand includes the review instead of adding a stop.
613
+ * Requesting review is not proof of integrity; this is a bounded prompt gate.
398
614
  */
399
615
  isTamperOwed() {
400
- return this.suspects.size > 0 && this.lastVerificationSeq > 0;
616
+ return this.lastSuspectSeq > this.lastReviewRequestedSeq && this.lastVerificationSeq > 0;
401
617
  }
402
618
  /** Suspect mutations recorded this run, sorted for stable output. */
403
619
  tamperSuspects() {
@@ -411,24 +627,61 @@ export class VerificationGate {
411
627
  * rather than painted and then superseded.
412
628
  */
413
629
  willInject() {
414
- return ((this.isOwed() && this.injections < MAX_VERIFICATION_INJECTIONS) ||
415
- (this.isTamperOwed() && this.tamperInjections < MAX_TAMPER_INJECTIONS));
630
+ return this.pendingReason() !== null;
631
+ }
632
+ pendingReason() {
633
+ // A run that neither edited code nor started a file-rewriting command
634
+ // cannot owe a NEW demand: inherited debt already had its turns, and
635
+ // re-arming here is what turned every later question prompt into a
636
+ // "Hook engaged" hijack. The debt itself stays recorded — the next run
637
+ // that edits code re-arms the demand as usual.
638
+ if (!this.runTouched)
639
+ return null;
640
+ if (this.isOwed()) {
641
+ if (this.injections < MAX_VERIFICATION_INJECTIONS) {
642
+ return this.lastVerificationSeq > 0 && this.lastMutationSeq > this.lastVerificationSeq
643
+ ? "recheck"
644
+ : "initial";
645
+ }
646
+ // One extra pass only after the demanded check completed AND code changed
647
+ // again. Ignoring a prompt or editing without checking cannot re-arm it.
648
+ if (this.recheckInjections === 0 &&
649
+ this.lastVerificationSeq > this.lastDemandedMutationSeq &&
650
+ this.lastMutationSeq > this.lastVerificationSeq)
651
+ return "recheck";
652
+ }
653
+ if (this.isTamperOwed() && this.tamperInjections < MAX_TAMPER_INJECTIONS)
654
+ return "tamper";
655
+ return null;
416
656
  }
417
657
  /**
418
658
  * The blocking message for the pre-stop hook, or null when nothing is owed
419
- * or the single injection is spent. Still-owed on a later stop is deliberately
420
- * silent: the demand already told the model to disclose what went unverified,
421
- * and one more injection only costs the user another restated final answer.
659
+ * or its bounded budget is spent. A later edit after the demanded check gets
660
+ * one additional pass; unchanged/unverified work never repeats a reminder.
422
661
  */
423
662
  followUp() {
424
- // "Nothing proved this" outranks "the proof may be rigged": with no check
425
- // run at all there is not yet a false green to disclose.
426
- if (this.isOwed() && this.injections < MAX_VERIFICATION_INJECTIONS) {
427
- this.injections += 1;
428
- return [buildVerificationFollowUpMessage([...this.mutatedFiles].sort())];
663
+ // Missing evidence and test-integrity review share one intervention.
664
+ const reason = this.pendingReason();
665
+ if (reason === "initial" || reason === "recheck") {
666
+ if (this.injections < MAX_VERIFICATION_INJECTIONS)
667
+ this.injections += 1;
668
+ if (reason === "recheck")
669
+ this.recheckInjections += 1;
670
+ this.lastDemandedMutationSeq = this.lastMutationSeq;
671
+ const messages = [
672
+ buildVerificationFollowUpMessage([...this.mutatedFiles].sort(), reason === "recheck", this.lastRejectedCheck, this.lastInvalidationCause),
673
+ ];
674
+ // Review the current test edits alongside verification, not in a second
675
+ // stop after it. Later test edits still get the independent review budget.
676
+ if (this.lastSuspectSeq > this.lastReviewRequestedSeq) {
677
+ messages.push(buildTamperDisclosureMessage(this.tamperSuspects()));
678
+ this.lastReviewRequestedSeq = this.lastSuspectSeq;
679
+ }
680
+ return messages;
429
681
  }
430
- if (this.isTamperOwed() && this.tamperInjections < MAX_TAMPER_INJECTIONS) {
682
+ if (reason === "tamper") {
431
683
  this.tamperInjections += 1;
684
+ this.lastReviewRequestedSeq = this.lastSuspectSeq;
432
685
  return [buildTamperDisclosureMessage(this.tamperSuspects())];
433
686
  }
434
687
  return null;
@@ -438,9 +691,20 @@ export class VerificationGate {
438
691
  this.lastMutationSeq = 0;
439
692
  this.lastVerificationSeq = 0;
440
693
  this.injections = 0;
694
+ this.recheckInjections = 0;
695
+ this.lastDemandedMutationSeq = 0;
441
696
  this.tamperInjections = 0;
697
+ this.lastSuspectSeq = 0;
698
+ this.lastReviewRequestedSeq = 0;
442
699
  this.mutatedFiles.clear();
443
700
  this.suspects.clear();
701
+ this.failedChecks.clear();
702
+ this.passedChecks.clear();
703
+ this.evidenceRecords.clear();
704
+ this.unknownVerification = false;
705
+ this.runTouched = false;
706
+ this.lastRejectedCheck = null;
707
+ this.lastInvalidationCause = null;
444
708
  }
445
709
  }
446
710
  //# sourceMappingURL=verification-gate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification-gate.js","sourceRoot":"","sources":["../../src/core/verification-gate.ts"],"names":[],"mappings":"AAmCA,iFAAiF;AACjF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAE7C,iFAAiF;AACjF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEvC,0EAA0E;AAC1E,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;IAC7B,KAAK;IACL,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,QAAQ;IACR,SAAS;IACT,MAAM;CACP,CAAC,CAAC;AAEH;gFACgF;AAChF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC;IACtB,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,IAAI;IACJ,MAAM;IACN,QAAQ;IACR,SAAS;IACT,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,OAAO;IACP,OAAO;IACP,MAAM;IACN,OAAO;IACP,QAAQ;IACR,KAAK;IACL,QAAQ;IACR,KAAK;IACL,OAAO;IACP,KAAK;IACL,QAAQ;IACR,MAAM;IACN,OAAO;IACP,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,OAAO;IACP,MAAM;IACN,MAAM;IACN,QAAQ;CACT,CAAC,CAAC;AAEH,0EAA0E;AAC1E,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AAEzE,qEAAqE;AACrE,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B,8EAA8E;AAC9E,MAAM,eAAe,GAAG;IACtB,MAAM;IACN,OAAO;IACP,QAAQ;IACR,MAAM;IACN,OAAO;IACP,QAAQ;IACR,UAAU;IACV,KAAK;IACL,WAAW;IACX,YAAY;IACZ,QAAQ;IACR,OAAO;IACP,MAAM;IACN,MAAM;IACN,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,KAAK;IACL,OAAO;IACP,OAAO;IACP,SAAS;IACT,QAAQ;CACT,CAAC;AAEF,SAAS,YAAY,CAAC,IAAY;IAChC,oEAAoE;IACpE,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC;AAC/F,CAAC;AAED;;;;;GAKG;AACH,SAAS,oBAAoB,CAAC,OAAe;IAC3C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,KAAK,GAAkB,IAAI,CAAC;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;QACzB,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,IAAI,IAAI,CAAC;YAChB,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,GAAG;gBAAE,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;iBAC7D,IAAI,IAAI,KAAK,KAAK;gBAAE,KAAK,GAAG,IAAI,CAAC;YACtC,SAAS;QACX,CAAC;QACD,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,KAAK,GAAG,IAAI,CAAC;YACb,OAAO,IAAI,IAAI,CAAC;YAChB,SAAS;QACX,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACvC,SAAS;QACX,CAAC;QACD,mEAAmE;QACnE,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QACtF,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,OAAO,GAAG,EAAE,CAAC;YACb,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;YACzB,SAAS;QACX,CAAC;QACD,OAAO,IAAI,IAAI,CAAC;IAClB,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvB,OAAO,QAAQ;SACZ,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACf,OAAO;SACJ,IAAI,EAAE;SACN,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;SACxB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAC3B;SACA,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,iFAAiF;AACjF,SAAS,QAAQ,CAAC,OAAe;IAC/B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,KAAK,GAAkB,IAAI,CAAC;IAChC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;QACzB,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,GAAG;gBAAE,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;iBAC7D,IAAI,IAAI,KAAK,KAAK;gBAAE,KAAK,GAAG,IAAI,CAAC;;gBACjC,OAAO,IAAI,IAAI,CAAC;YACrB,SAAS;QACX,CAAC;QACD,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,KAAK,GAAG,IAAI,CAAC;YACb,OAAO,GAAG,IAAI,CAAC;YACf,SAAS;QACX,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpB,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvD,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,GAAG,KAAK,CAAC;YAChB,SAAS;QACX,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9B,SAAS;QACX,CAAC;QACD,OAAO,IAAI,IAAI,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,OAAO,oBAAoB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED,6EAA6E;AAC7E,SAAS,qBAAqB,CAAC,OAAe,EAAE,KAAa;IAC3D,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAChC,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QACvB,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACtE,CAAC,IAAI,CAAC,CAAC;YACP,SAAS;QACX,CAAC;QACD,kEAAkE;QAClE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,CAAC,IAAI,CAAC,CAAC;YACP,SAAS;QACX,CAAC;QACD,MAAM;IACR,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9B,yEAAyE;IACzE,IAAI,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,IAAI,KAAK,IAAI,eAAe;YAAE,OAAO,KAAK,CAAC;QAC3C,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAC1B,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,IAAI,YAAY,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,sCAAsC;IAC7E,OAAO,KAAK;SACT,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;SACZ,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SACvC,IAAI,CAAC,YAAY,CAAC,CAAC;AACxB,CAAC;AAED,kEAAkE;AAClE,MAAM,WAAW,GACf,6IAA6I,CAAC;AAEhJ,8EAA8E;AAC9E,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,OAAO,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,uEAAuE;IACvE,IAAI,gCAAgC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7D,IAAI,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACpF,IAAI,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1D,oCAAoC;IACpC,IAAI,iEAAiE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACvF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,uCAAuC;IACvC,IACE,0FAA0F,CAAC,IAAI,CAC7F,IAAI,CACL,EACD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,uDAAuD,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACpF,iEAAiE;IACjE,IAAI,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,IAAI,0DAA0D,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACvF,IAAI,gFAAgF,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAChG,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,0EAA0E,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7C,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,mBAAmB,GAAgD;IACvE,EAAE,EAAE,EAAE,uCAAuC,EAAE,IAAI,EAAE,8BAA8B,EAAE;IACrF,EAAE,EAAE,EAAE,uCAAuC,EAAE,IAAI,EAAE,yBAAyB,EAAE;IAChF,EAAE,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,kBAAkB,EAAE;IACxD,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,kBAAkB,EAAE;IAC9C,EAAE,EAAE,EAAE,uCAAuC,EAAE,IAAI,EAAE,2BAA2B,EAAE;IAClF,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,sBAAsB,EAAE;IAClD,EAAE,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,qBAAqB,EAAE;IACtD,EAAE,EAAE,EAAE,qBAAqB,EAAE,IAAI,EAAE,0BAA0B,EAAE;IAC/D;QACE,EAAE,EAAE,0DAA0D;QAC9D,IAAI,EAAE,cAAc;KACrB;IACD,EAAE,EAAE,EAAE,gCAAgC,EAAE,IAAI,EAAE,cAAc,EAAE;IAC9D;QACE,EAAE,EAAE,iDAAiD;QACrD,IAAI,EAAE,4BAA4B;KACnC;IACD,EAAE,EAAE,EAAE,iCAAiC,EAAE,IAAI,EAAE,qBAAqB,EAAE;IACtE,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,iBAAiB,EAAE;IACjD,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,mBAAmB,EAAE;CACjD,CAAC;AAEF,iEAAiE;AACjE,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,IAAI;SACR,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;SACjE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC5B,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,oBAAoB,CAAC,SAAiB;IACpD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,mBAAmB,EAAE,CAAC;QAC/C,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;AACpB,CAAC;AAQD,MAAM,UAAU,4BAA4B,CAAC,QAAoC;IAC/E,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,UAAU,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,QAAQ,EAAE;QAChF,OAAO,EACL,oFAAoF;YACpF,6BAA6B;YAC7B,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,KAAK,QAAQ,MAAM,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9E,sFAAsF;YACtF,uFAAuF;YACvF,sFAAsF;YACtF,wFAAwF;YACxF,yFAAyF;YACzF,iFAAiF;KACpF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,KAAwB;IACvE,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,UAAU,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,iBAAiB,EAAE,UAAU,EAAE,QAAQ,EAAE;QAChF,OAAO,EACL,yFAAyF;YACzF,8CAA8C;YAC9C,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACnD,yFAAyF;YACzF,+FAA+F;YAC/F,2FAA2F;YAC3F,sFAAsF;KACzF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,OAAO,gBAAgB;IACnB,GAAG,GAAG,CAAC,CAAC;IACR,eAAe,GAAG,CAAC,CAAC;IACpB,mBAAmB,GAAG,CAAC,CAAC;IACxB,UAAU,GAAG,CAAC,CAAC;IACf,gBAAgB,GAAG,CAAC,CAAC;IAC7B,6EAA6E;IACrE,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IACzC;;;;;OAKG;IACK,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE7C;;;;OAIG;IACH,cAAc,CAAC,QAAgB,EAAE,SAAkB;QACjD,IAAI,CAAC,eAAe,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEhC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,cAAc,CAAC,QAAQ,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QAClF,IAAI,SAAS;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9F,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACjC,qEAAqE;QACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,mBAAmB,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,mBAAmB,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;IAChE,CAAC;IAED,qEAAqE;IACrE,cAAc;QACZ,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;aACtB,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;aACnD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED;;;;OAIG;IACH,UAAU;QACR,OAAO,CACL,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,GAAG,2BAA2B,CAAC;YAChE,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,gBAAgB,GAAG,qBAAqB,CAAC,CACvE,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,QAAQ;QACN,0EAA0E;QAC1E,yDAAyD;QACzD,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,GAAG,2BAA2B,EAAE,CAAC;YACnE,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;YACrB,OAAO,CAAC,gCAAgC,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,gBAAgB,GAAG,qBAAqB,EAAE,CAAC;YACzE,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;YAC3B,OAAO,CAAC,4BAA4B,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QACb,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;CACF"}
1
+ {"version":3,"file":"verification-gate.js","sourceRoot":"","sources":["../../src/core/verification-gate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Bounded, local-only comparison of Git workspace inputs. Ignored build output
3
+ * is excluded, but tracked files and explicitly edited inputs never are.
4
+ * Missing Git, symlinks/submodules, races and resource limits decline the
5
+ * optimization: the caller must require fresh checks instead.
6
+ */
7
+ export declare function captureVerificationSnapshot(cwd: string, editedFiles?: readonly string[]): Promise<string | null>;
@@ -0,0 +1,111 @@
1
+ import { execFile } from "node:child_process";
2
+ import { createHash } from "node:crypto";
3
+ import fs from "node:fs/promises";
4
+ import { constants } from "node:fs";
5
+ import path from "node:path";
6
+ import { promisify } from "node:util";
7
+ const exec = promisify(execFile);
8
+ const MAX_FILES = 10_000;
9
+ const MAX_BYTES = 128 * 1024 * 1024;
10
+ const MAX_MS = 5000;
11
+ /**
12
+ * Bounded, local-only comparison of Git workspace inputs. Ignored build output
13
+ * is excluded, but tracked files and explicitly edited inputs never are.
14
+ * Missing Git, symlinks/submodules, races and resource limits decline the
15
+ * optimization: the caller must require fresh checks instead.
16
+ */
17
+ export async function captureVerificationSnapshot(cwd, editedFiles = []) {
18
+ const deadline = Date.now() + MAX_MS;
19
+ try {
20
+ const git = async (args) => (await exec("git", args, {
21
+ cwd,
22
+ timeout: Math.max(1, deadline - Date.now()),
23
+ maxBuffer: 2 * 1024 * 1024,
24
+ })).stdout;
25
+ const root = await fs.realpath((await git(["rev-parse", "--show-toplevel"])).trim());
26
+ const list = async () => [
27
+ ...new Set((await git(["-C", root, "ls-files", "--cached", "--others", "--exclude-standard", "-z"]))
28
+ .split("\0")
29
+ .filter(Boolean)),
30
+ ].sort();
31
+ const listed = await list();
32
+ const explicit = [];
33
+ for (const file of editedFiles) {
34
+ if (explicit.length >= MAX_FILES || Date.now() > deadline)
35
+ return null;
36
+ const absolute = path.resolve(cwd, file);
37
+ // Canonicalize the parent, not the file: /var and /private/var alias on
38
+ // macOS, while the final component may legitimately have been deleted.
39
+ const parent = await fs.realpath(path.dirname(absolute));
40
+ explicit.push(path.relative(root, path.join(parent, path.basename(absolute))));
41
+ }
42
+ const files = [...new Set([...listed, ...explicit])].sort();
43
+ if (files.length > MAX_FILES)
44
+ return null;
45
+ const hash = createHash("sha256");
46
+ let bytes = 0;
47
+ const buffer = Buffer.alloc(64 * 1024);
48
+ for (const file of files) {
49
+ if (Date.now() > deadline || path.isAbsolute(file) || file.split(/[\\/]/).includes(".."))
50
+ return null;
51
+ const absolute = path.join(root, file);
52
+ hash.update(JSON.stringify(file));
53
+ let stat;
54
+ try {
55
+ stat = await fs.lstat(absolute);
56
+ }
57
+ catch (error) {
58
+ if (error.code !== "ENOENT")
59
+ throw error;
60
+ hash.update("missing");
61
+ continue;
62
+ }
63
+ // Do not follow repository-controlled links or read device files.
64
+ if (!stat.isFile())
65
+ return null;
66
+ const relative = path.relative(root, await fs.realpath(absolute));
67
+ if (path.isAbsolute(relative) || relative.split(path.sep).includes(".."))
68
+ return null;
69
+ if (bytes + stat.size > MAX_BYTES)
70
+ return null;
71
+ const handle = await fs.open(absolute, constants.O_RDONLY | (constants.O_NOFOLLOW ?? 0) | (constants.O_NONBLOCK ?? 0));
72
+ try {
73
+ const opened = await handle.stat();
74
+ if (!opened.isFile() || opened.ino !== stat.ino || opened.size !== stat.size)
75
+ return null;
76
+ const fileHash = createHash("sha256");
77
+ let fileBytes = 0;
78
+ for (;;) {
79
+ if (Date.now() > deadline)
80
+ return null;
81
+ const { bytesRead } = await handle.read(buffer, 0, buffer.length, null);
82
+ if (bytesRead === 0)
83
+ break;
84
+ bytes += bytesRead;
85
+ fileBytes += bytesRead;
86
+ if (bytes > MAX_BYTES)
87
+ return null;
88
+ fileHash.update(buffer.subarray(0, bytesRead));
89
+ }
90
+ const after = await handle.stat();
91
+ if (fileBytes !== stat.size ||
92
+ after.size !== stat.size ||
93
+ after.mtimeMs !== stat.mtimeMs ||
94
+ after.ino !== stat.ino)
95
+ return null;
96
+ hash.update(String(stat.mode));
97
+ hash.update(fileHash.digest());
98
+ }
99
+ finally {
100
+ await handle.close();
101
+ }
102
+ }
103
+ if (Date.now() > deadline || JSON.stringify(listed) !== JSON.stringify(await list()))
104
+ return null;
105
+ return hash.digest("hex");
106
+ }
107
+ catch {
108
+ return null;
109
+ }
110
+ }
111
+ //# sourceMappingURL=verification-snapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verification-snapshot.js","sourceRoot":"","sources":["../../src/core/verification-snapshot.ts"],"names":[],"mappings":"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"}
@@ -32,4 +32,3 @@ export declare function detectVerifyCommands(cwd: string, active: Set<LanguageId
32
32
  * subset when its edit only touched one language.
33
33
  */
34
34
  export declare function renderVerifySection(cmds: readonly VerifyCommand[]): string;
35
- //# sourceMappingURL=verify-commands.d.ts.map
@@ -1,2 +1 @@
1
1
  export { setProgressCallback, resample, downmixToMono, decodeOggOpus, isModelLoaded, transcribeVoice, type ProgressCallback, } from "@prestyj/core";
2
- //# sourceMappingURL=voice-transcriber.d.ts.map