muonroi-cli 1.4.0 → 1.5.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 (2000) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +122 -122
  3. package/dist/packages/agent-harness-core/src/predicate.d.ts +1 -1
  4. package/dist/src/agent-harness/__tests__/mock-model.spec.js +48 -1
  5. package/dist/src/agent-harness/mock-model.d.ts +11 -0
  6. package/dist/src/agent-harness/mock-model.js +21 -0
  7. package/dist/src/cli/cost-forensics.js +12 -12
  8. package/dist/src/council/__tests__/clarification-prompt.test.js +51 -0
  9. package/dist/src/council/__tests__/clarifier-ready-gate.test.js +32 -0
  10. package/dist/src/council/__tests__/decisions-lock.test.js +17 -1
  11. package/dist/src/council/__tests__/oauth-reachable.test.d.ts +1 -0
  12. package/dist/src/council/__tests__/oauth-reachable.test.js +31 -0
  13. package/dist/src/council/__tests__/parse-outcome-fallback.test.js +11 -0
  14. package/dist/src/council/clarifier.js +9 -1
  15. package/dist/src/council/debate.js +5 -1
  16. package/dist/src/council/decisions-lock.js +3 -3
  17. package/dist/src/council/index.js +12 -5
  18. package/dist/src/council/leader.d.ts +0 -17
  19. package/dist/src/council/leader.js +22 -15
  20. package/dist/src/council/planner.js +1 -1
  21. package/dist/src/council/prompts.js +63 -57
  22. package/dist/src/council/types.d.ts +7 -0
  23. package/dist/src/ee/__tests__/ee-onboarding.test.d.ts +1 -0
  24. package/dist/src/ee/__tests__/ee-onboarding.test.js +32 -0
  25. package/dist/src/ee/auth.d.ts +9 -0
  26. package/dist/src/ee/auth.js +19 -0
  27. package/dist/src/ee/ee-onboarding.d.ts +5 -0
  28. package/dist/src/ee/ee-onboarding.js +76 -0
  29. package/dist/src/generated/version.d.ts +1 -1
  30. package/dist/src/generated/version.js +1 -1
  31. package/dist/src/headless/output.js +6 -4
  32. package/dist/src/headless/output.test.js +4 -3
  33. package/dist/src/index.js +20 -1
  34. package/dist/src/mcp/__tests__/auto-setup.test.js +74 -0
  35. package/dist/src/mcp/__tests__/client-pool.spec.d.ts +1 -0
  36. package/dist/src/mcp/__tests__/client-pool.spec.js +98 -0
  37. package/dist/src/mcp/__tests__/parallel-build.spec.d.ts +1 -0
  38. package/dist/src/mcp/__tests__/parallel-build.spec.js +67 -0
  39. package/dist/src/mcp/__tests__/smart-filter.test.js +56 -0
  40. package/dist/src/mcp/auto-setup.js +56 -2
  41. package/dist/src/mcp/client-pool.d.ts +46 -0
  42. package/dist/src/mcp/client-pool.js +212 -0
  43. package/dist/src/mcp/oauth-callback.js +2 -2
  44. package/dist/src/mcp/parse-headers.test.js +14 -14
  45. package/dist/src/mcp/runtime.d.ts +28 -0
  46. package/dist/src/mcp/runtime.js +117 -51
  47. package/dist/src/mcp/self-verify-runner.d.ts +14 -0
  48. package/dist/src/mcp/self-verify-runner.js +38 -0
  49. package/dist/src/mcp/setup-guide-text.d.ts +9 -0
  50. package/dist/src/mcp/setup-guide-text.js +84 -0
  51. package/dist/src/mcp/smart-filter.js +49 -0
  52. package/dist/src/mcp/smoke.test.js +43 -43
  53. package/dist/src/mcp/tools-server.d.ts +7 -0
  54. package/dist/src/mcp/tools-server.js +19 -22
  55. package/dist/src/models/catalog.json +349 -349
  56. package/dist/src/ops/__tests__/doctor-ee-health.test.js +21 -0
  57. package/dist/src/ops/doctor.d.ts +3 -2
  58. package/dist/src/ops/doctor.js +47 -11
  59. package/dist/src/ops/doctor.test.js +4 -3
  60. package/dist/src/orchestrator/__tests__/mcp-capability-block.test.d.ts +1 -0
  61. package/dist/src/orchestrator/__tests__/mcp-capability-block.test.js +39 -0
  62. package/dist/src/orchestrator/__tests__/project-stack.test.d.ts +1 -0
  63. package/dist/src/orchestrator/__tests__/project-stack.test.js +65 -0
  64. package/dist/src/orchestrator/batch-turn-runner.js +7 -11
  65. package/dist/src/orchestrator/message-processor.js +57 -27
  66. package/dist/src/orchestrator/orchestrator.js +26 -0
  67. package/dist/src/orchestrator/prompts.d.ts +51 -0
  68. package/dist/src/orchestrator/prompts.js +257 -134
  69. package/dist/src/orchestrator/scope-ceiling.js +6 -1
  70. package/dist/src/orchestrator/stream-runner.js +20 -15
  71. package/dist/src/orchestrator/text-tool-call-detector.test.js +13 -13
  72. package/dist/src/pil/__tests__/clarity-gate.test.js +24 -215
  73. package/dist/src/pil/__tests__/config.test.js +1 -17
  74. package/dist/src/pil/__tests__/discovery.test.js +144 -11
  75. package/dist/src/pil/__tests__/layer1-intent-trace.test.js +7 -2
  76. package/dist/src/pil/__tests__/layer1-intent.test.js +3 -0
  77. package/dist/src/pil/__tests__/layer16-clarity.test.js +32 -116
  78. package/dist/src/pil/__tests__/layer4-gsd.test.js +37 -0
  79. package/dist/src/pil/__tests__/layer6-output.test.js +137 -18
  80. package/dist/src/pil/__tests__/llm-classify.test.js +49 -2
  81. package/dist/src/pil/agent-operating-contract.d.ts +1 -1
  82. package/dist/src/pil/agent-operating-contract.js +2 -0
  83. package/dist/src/pil/agent-operating-contract.test.js +7 -2
  84. package/dist/src/pil/cheap-model-playbook.js +35 -35
  85. package/dist/src/pil/cheap-model-workbooks.js +16 -13
  86. package/dist/src/pil/clarity-gate.d.ts +21 -19
  87. package/dist/src/pil/clarity-gate.js +26 -153
  88. package/dist/src/pil/config.d.ts +9 -1
  89. package/dist/src/pil/config.js +15 -4
  90. package/dist/src/pil/discovery.js +211 -136
  91. package/dist/src/pil/layer1-intent.d.ts +12 -0
  92. package/dist/src/pil/layer1-intent.js +283 -38
  93. package/dist/src/pil/layer1-intent.test.js +210 -4
  94. package/dist/src/pil/layer16-clarity.d.ts +25 -11
  95. package/dist/src/pil/layer16-clarity.js +19 -306
  96. package/dist/src/pil/layer4-gsd.js +18 -6
  97. package/dist/src/pil/layer6-output.d.ts +2 -0
  98. package/dist/src/pil/layer6-output.js +137 -22
  99. package/dist/src/pil/llm-classify.d.ts +26 -0
  100. package/dist/src/pil/llm-classify.js +34 -5
  101. package/dist/src/pil/native-capabilities-workbook.d.ts +1 -1
  102. package/dist/src/pil/native-capabilities-workbook.js +82 -76
  103. package/dist/src/pil/schema.d.ts +8 -0
  104. package/dist/src/pil/schema.js +12 -1
  105. package/dist/src/pil/task-tier-map.js +4 -0
  106. package/dist/src/pil/types.d.ts +11 -1
  107. package/dist/src/product-loop/done-gate.js +3 -3
  108. package/dist/src/product-loop/loop-driver.js +18 -18
  109. package/dist/src/product-loop/progress-snapshot.js +4 -4
  110. package/dist/src/providers/auth/gemini-oauth.js +6 -15
  111. package/dist/src/providers/auth/grok-oauth.js +6 -15
  112. package/dist/src/providers/auth/openai-oauth.js +6 -15
  113. package/dist/src/providers/mcp-vision-bridge.js +48 -48
  114. package/dist/src/reporter/index.js +1 -1
  115. package/dist/src/scaffold/bb-ecosystem-apply.js +47 -47
  116. package/dist/src/scaffold/bb-quality-gate.js +5 -5
  117. package/dist/src/scaffold/continuation-prompt.js +60 -60
  118. package/dist/src/scaffold/init-new.js +453 -453
  119. package/dist/src/self-qa/__tests__/scenario-planner.test.js +3 -3
  120. package/dist/src/self-qa/agentic-loop.js +24 -19
  121. package/dist/src/self-qa/spec-emitter.js +26 -23
  122. package/dist/src/storage/__tests__/migrations.test.js +2 -2
  123. package/dist/src/storage/interaction-log.js +5 -5
  124. package/dist/src/storage/migrations.js +122 -122
  125. package/dist/src/storage/sessions.js +42 -42
  126. package/dist/src/storage/transcript.js +91 -84
  127. package/dist/src/storage/usage.js +14 -14
  128. package/dist/src/storage/workspaces.js +12 -12
  129. package/dist/src/tools/__tests__/native-tools.test.d.ts +1 -0
  130. package/dist/src/tools/__tests__/native-tools.test.js +53 -0
  131. package/dist/src/tools/git-safety.d.ts +61 -0
  132. package/dist/src/tools/git-safety.js +141 -0
  133. package/dist/src/tools/git-safety.test.d.ts +1 -0
  134. package/dist/src/tools/git-safety.test.js +111 -0
  135. package/dist/src/tools/native-tools.d.ts +31 -0
  136. package/dist/src/tools/native-tools.js +273 -0
  137. package/dist/src/tools/registry-git-safety.test.d.ts +7 -0
  138. package/dist/src/tools/registry-git-safety.test.js +92 -0
  139. package/dist/src/tools/registry.js +39 -4
  140. package/dist/src/ui/__tests__/markdown-render.test.d.ts +1 -0
  141. package/dist/src/ui/__tests__/markdown-render.test.js +48 -0
  142. package/dist/src/ui/app.js +0 -0
  143. package/dist/src/ui/components/message-view.js +4 -1
  144. package/dist/src/ui/components/structured-response-view.js +7 -3
  145. package/dist/src/ui/components/tool-group.js +7 -1
  146. package/dist/src/ui/markdown-render.d.ts +41 -0
  147. package/dist/src/ui/markdown-render.js +223 -0
  148. package/dist/src/ui/markdown.d.ts +10 -0
  149. package/dist/src/ui/markdown.js +12 -35
  150. package/dist/src/ui/slash/council-inspect.js +4 -4
  151. package/dist/src/ui/slash/export.js +4 -4
  152. package/dist/src/ui/utils/text.d.ts +8 -0
  153. package/dist/src/ui/utils/text.js +16 -0
  154. package/dist/src/ui/utils/text.test.d.ts +1 -0
  155. package/dist/src/ui/utils/text.test.js +23 -0
  156. package/dist/src/usage/ledger.js +48 -15
  157. package/dist/src/utils/__tests__/footprint-gitignore.test.d.ts +1 -0
  158. package/dist/src/utils/__tests__/footprint-gitignore.test.js +50 -0
  159. package/dist/src/utils/clipboard-image.js +23 -23
  160. package/dist/src/utils/open-url.d.ts +56 -0
  161. package/dist/src/utils/open-url.js +58 -0
  162. package/dist/src/utils/open-url.test.d.ts +1 -0
  163. package/dist/src/utils/open-url.test.js +86 -0
  164. package/dist/src/utils/settings.d.ts +12 -0
  165. package/dist/src/utils/settings.js +48 -0
  166. package/dist/src/utils/side-question.js +2 -2
  167. package/dist/src/utils/skills.js +3 -3
  168. package/dist/src/verify/__tests__/coverage-parsers.test.js +30 -30
  169. package/dist/src/verify/environment.js +2 -1
  170. package/package.json +3 -2
  171. package/dist/muonroi-cli-standalone.exe +0 -0
  172. package/dist/packages/agent-harness-core/src/driver.js.map +0 -1
  173. package/dist/packages/agent-harness-core/src/event-filter.js.map +0 -1
  174. package/dist/packages/agent-harness-core/src/event-redact.js.map +0 -1
  175. package/dist/packages/agent-harness-core/src/idle.js.map +0 -1
  176. package/dist/packages/agent-harness-core/src/index.js.map +0 -1
  177. package/dist/packages/agent-harness-core/src/mcp-server.js.map +0 -1
  178. package/dist/packages/agent-harness-core/src/mock-llm.js.map +0 -1
  179. package/dist/packages/agent-harness-core/src/predicate.js.map +0 -1
  180. package/dist/packages/agent-harness-core/src/protocol.js.map +0 -1
  181. package/dist/packages/agent-harness-core/src/registry.js.map +0 -1
  182. package/dist/packages/agent-harness-core/src/selector.js.map +0 -1
  183. package/dist/packages/agent-harness-core/src/spec-helpers.js.map +0 -1
  184. package/dist/packages/agent-harness-core/src/transports/sidechannel.js.map +0 -1
  185. package/dist/packages/agent-harness-core/src/transports/ws.js.map +0 -1
  186. package/dist/packages/agent-harness-opentui/src/agent-mode.js.map +0 -1
  187. package/dist/packages/agent-harness-opentui/src/index.js.map +0 -1
  188. package/dist/packages/agent-harness-opentui/src/input-bridge.js.map +0 -1
  189. package/dist/packages/agent-harness-opentui/src/install.js.map +0 -1
  190. package/dist/packages/agent-harness-opentui/src/reconciler-hook.js.map +0 -1
  191. package/dist/packages/agent-harness-opentui/src/semantic.js.map +0 -1
  192. package/dist/src/__test-helpers__/catalog-fixtures.js.map +0 -1
  193. package/dist/src/__test-stubs__/ee-server.js.map +0 -1
  194. package/dist/src/__test-stubs__/vitest-setup.js.map +0 -1
  195. package/dist/src/__tests__/council/bubble-layout.test.js.map +0 -1
  196. package/dist/src/__tests__/council/code-block-truncate.test.js.map +0 -1
  197. package/dist/src/__tests__/council/role-palette.test.js.map +0 -1
  198. package/dist/src/__tests__/first-run-wizard.test.js.map +0 -1
  199. package/dist/src/agent-harness/__tests__/cli-flags.spec.js.map +0 -1
  200. package/dist/src/agent-harness/__tests__/driver.spec.js.map +0 -1
  201. package/dist/src/agent-harness/__tests__/idle.spec.js.map +0 -1
  202. package/dist/src/agent-harness/__tests__/mock-llm.spec.js.map +0 -1
  203. package/dist/src/agent-harness/__tests__/mock-model.spec.js.map +0 -1
  204. package/dist/src/agent-harness/__tests__/predicate.spec.js.map +0 -1
  205. package/dist/src/agent-harness/__tests__/protocol.spec.js.map +0 -1
  206. package/dist/src/agent-harness/__tests__/schema.spec.js.map +0 -1
  207. package/dist/src/agent-harness/__tests__/selector.spec.js.map +0 -1
  208. package/dist/src/agent-harness/__tests__/sidechannel.spec.js.map +0 -1
  209. package/dist/src/agent-harness/__tests__/spec-helpers.spec.js.map +0 -1
  210. package/dist/src/agent-harness/index.js.map +0 -1
  211. package/dist/src/agent-harness/mock-model.js.map +0 -1
  212. package/dist/src/agent-harness/test-spawn.js.map +0 -1
  213. package/dist/src/billing/index.js.map +0 -1
  214. package/dist/src/chat/__tests__/broadcast-bus.test.js.map +0 -1
  215. package/dist/src/chat/__tests__/channel-manager.test.js.map +0 -1
  216. package/dist/src/chat/__tests__/client.test.js.map +0 -1
  217. package/dist/src/chat/__tests__/discord-integration.test.js.map +0 -1
  218. package/dist/src/chat/__tests__/intent-prompt.test.js.map +0 -1
  219. package/dist/src/chat/__tests__/verdict-resolver.test.js.map +0 -1
  220. package/dist/src/chat/broadcast-bus.js.map +0 -1
  221. package/dist/src/chat/channel-manager.js.map +0 -1
  222. package/dist/src/chat/chat-keychain.js.map +0 -1
  223. package/dist/src/chat/factory.js.map +0 -1
  224. package/dist/src/chat/intent-prompt.js.map +0 -1
  225. package/dist/src/chat/providers/discord/client.js.map +0 -1
  226. package/dist/src/chat/types.js.map +0 -1
  227. package/dist/src/chat/verdict-constants.js.map +0 -1
  228. package/dist/src/chat/verdict-resolver.js.map +0 -1
  229. package/dist/src/cli/__tests__/bw-vault.test.js.map +0 -1
  230. package/dist/src/cli/__tests__/keys-bundle.test.js.map +0 -1
  231. package/dist/src/cli/__tests__/share-cmd.test.js.map +0 -1
  232. package/dist/src/cli/bw-vault.js.map +0 -1
  233. package/dist/src/cli/config/__tests__/model-picker.test.js.map +0 -1
  234. package/dist/src/cli/config/__tests__/provider-fetch.test.js.map +0 -1
  235. package/dist/src/cli/config/index.js.map +0 -1
  236. package/dist/src/cli/config/model-picker.js.map +0 -1
  237. package/dist/src/cli/config/provider-fetch.js.map +0 -1
  238. package/dist/src/cli/config/screen-council.js.map +0 -1
  239. package/dist/src/cli/config/screen-models.js.map +0 -1
  240. package/dist/src/cli/config/screen-providers.js.map +0 -1
  241. package/dist/src/cli/config/tui.js.map +0 -1
  242. package/dist/src/cli/cost-forensics.js.map +0 -1
  243. package/dist/src/cli/cost-forensics.test.js.map +0 -1
  244. package/dist/src/cli/keys-bundle.js.map +0 -1
  245. package/dist/src/cli/keys.js.map +0 -1
  246. package/dist/src/cli/keys.test.js.map +0 -1
  247. package/dist/src/cli/pil-report.js.map +0 -1
  248. package/dist/src/cli/reporter-cmd.js.map +0 -1
  249. package/dist/src/cli/share-cmd.js.map +0 -1
  250. package/dist/src/cli/usage-report.js.map +0 -1
  251. package/dist/src/cloud/index.js.map +0 -1
  252. package/dist/src/council/__tests__/accounting.test.js.map +0 -1
  253. package/dist/src/council/__tests__/audit-replay.test.js.map +0 -1
  254. package/dist/src/council/__tests__/clarifier-max-rounds.test.js.map +0 -1
  255. package/dist/src/council/__tests__/clarifier-options.test.js.map +0 -1
  256. package/dist/src/council/__tests__/clarifier-ready-gate.test.js.map +0 -1
  257. package/dist/src/council/__tests__/cost-aware.test.js.map +0 -1
  258. package/dist/src/council/__tests__/debate-planner-structured.test.js.map +0 -1
  259. package/dist/src/council/__tests__/decisions-lock.test.js.map +0 -1
  260. package/dist/src/council/__tests__/evaluator-metrics.test.js.map +0 -1
  261. package/dist/src/council/__tests__/parse-outcome-fallback.test.js.map +0 -1
  262. package/dist/src/council/__tests__/research-tools.test.js.map +0 -1
  263. package/dist/src/council/__tests__/round-tools.test.js.map +0 -1
  264. package/dist/src/council/__tests__/tool-trace.test.js.map +0 -1
  265. package/dist/src/council/__tests__/types-contract.test.js.map +0 -1
  266. package/dist/src/council/clarifier.js.map +0 -1
  267. package/dist/src/council/context.js.map +0 -1
  268. package/dist/src/council/debate-planner.js.map +0 -1
  269. package/dist/src/council/debate.js.map +0 -1
  270. package/dist/src/council/decisions-lock.js.map +0 -1
  271. package/dist/src/council/executor.js.map +0 -1
  272. package/dist/src/council/index.js.map +0 -1
  273. package/dist/src/council/leader.js.map +0 -1
  274. package/dist/src/council/llm.js.map +0 -1
  275. package/dist/src/council/phase-events.js.map +0 -1
  276. package/dist/src/council/planner.js.map +0 -1
  277. package/dist/src/council/preflight.js.map +0 -1
  278. package/dist/src/council/prompts.js.map +0 -1
  279. package/dist/src/council/types.js.map +0 -1
  280. package/dist/src/daemon/scheduler.js.map +0 -1
  281. package/dist/src/daemon/scheduler.test.js.map +0 -1
  282. package/dist/src/ee/__tests__/bb-design.test.js.map +0 -1
  283. package/dist/src/ee/__tests__/export-transcripts.test.js.map +0 -1
  284. package/dist/src/ee/__tests__/pil-context-bridge.test.js.map +0 -1
  285. package/dist/src/ee/__tests__/pipeline.integration.test.js.map +0 -1
  286. package/dist/src/ee/__tests__/recall-format.test.js.map +0 -1
  287. package/dist/src/ee/__tests__/recall-ledger.test.js.map +0 -1
  288. package/dist/src/ee/__tests__/render-sink-wiring.test.js.map +0 -1
  289. package/dist/src/ee/auth.js.map +0 -1
  290. package/dist/src/ee/auth.test.js.map +0 -1
  291. package/dist/src/ee/bb-design.js.map +0 -1
  292. package/dist/src/ee/bb-retrieval.js.map +0 -1
  293. package/dist/src/ee/bridge.js.map +0 -1
  294. package/dist/src/ee/bridge.test.js.map +0 -1
  295. package/dist/src/ee/client-mode.js.map +0 -1
  296. package/dist/src/ee/client.js.map +0 -1
  297. package/dist/src/ee/client.test.js.map +0 -1
  298. package/dist/src/ee/council-bridge.js.map +0 -1
  299. package/dist/src/ee/embedding-cache.js.map +0 -1
  300. package/dist/src/ee/export-transcripts.js.map +0 -1
  301. package/dist/src/ee/extract-session.js.map +0 -1
  302. package/dist/src/ee/extract-session.test.js.map +0 -1
  303. package/dist/src/ee/health.js.map +0 -1
  304. package/dist/src/ee/index.js.map +0 -1
  305. package/dist/src/ee/intercept.js.map +0 -1
  306. package/dist/src/ee/intercept.test.js.map +0 -1
  307. package/dist/src/ee/judge.js.map +0 -1
  308. package/dist/src/ee/judge.test.js.map +0 -1
  309. package/dist/src/ee/mistake-detector.js.map +0 -1
  310. package/dist/src/ee/mistake-detector.test.js.map +0 -1
  311. package/dist/src/ee/offline-queue.js.map +0 -1
  312. package/dist/src/ee/offline-queue.test.js.map +0 -1
  313. package/dist/src/ee/phase-outcome.js.map +0 -1
  314. package/dist/src/ee/phase-outcome.test.js.map +0 -1
  315. package/dist/src/ee/phase-tracker.js.map +0 -1
  316. package/dist/src/ee/phase-tracker.test.js.map +0 -1
  317. package/dist/src/ee/posttool.js.map +0 -1
  318. package/dist/src/ee/posttool.test.js.map +0 -1
  319. package/dist/src/ee/prompt-stale.js.map +0 -1
  320. package/dist/src/ee/prompt-stale.test.js.map +0 -1
  321. package/dist/src/ee/recall-ledger.js.map +0 -1
  322. package/dist/src/ee/recall-mirror.test.js.map +0 -1
  323. package/dist/src/ee/render.js.map +0 -1
  324. package/dist/src/ee/render.test.js.map +0 -1
  325. package/dist/src/ee/scope.js.map +0 -1
  326. package/dist/src/ee/scope.test.js.map +0 -1
  327. package/dist/src/ee/search.js.map +0 -1
  328. package/dist/src/ee/session-trajectory.js.map +0 -1
  329. package/dist/src/ee/session-trajectory.test.js.map +0 -1
  330. package/dist/src/ee/tenant.js.map +0 -1
  331. package/dist/src/ee/touch.test.js.map +0 -1
  332. package/dist/src/ee/transcript-emit.js.map +0 -1
  333. package/dist/src/ee/types.js.map +0 -1
  334. package/dist/src/flow/__tests__/migration.test.js.map +0 -1
  335. package/dist/src/flow/__tests__/parser.test.js.map +0 -1
  336. package/dist/src/flow/__tests__/run-manager-product.test.js.map +0 -1
  337. package/dist/src/flow/__tests__/run-manager.test.js.map +0 -1
  338. package/dist/src/flow/__tests__/scaffold-checkpoint.test.js.map +0 -1
  339. package/dist/src/flow/__tests__/scaffold.test.js.map +0 -1
  340. package/dist/src/flow/__tests__/warning-persist.test.js.map +0 -1
  341. package/dist/src/flow/artifact-io.js.map +0 -1
  342. package/dist/src/flow/compaction/__tests__/compress.test.js.map +0 -1
  343. package/dist/src/flow/compaction/__tests__/extract.test.js.map +0 -1
  344. package/dist/src/flow/compaction/__tests__/preserve.test.js.map +0 -1
  345. package/dist/src/flow/compaction/compress.js.map +0 -1
  346. package/dist/src/flow/compaction/extract.js.map +0 -1
  347. package/dist/src/flow/compaction/index.js.map +0 -1
  348. package/dist/src/flow/compaction/preserve.js.map +0 -1
  349. package/dist/src/flow/index.js.map +0 -1
  350. package/dist/src/flow/migration.js.map +0 -1
  351. package/dist/src/flow/parser.js.map +0 -1
  352. package/dist/src/flow/run-manager.js.map +0 -1
  353. package/dist/src/flow/scaffold-checkpoint.js.map +0 -1
  354. package/dist/src/flow/scaffold.js.map +0 -1
  355. package/dist/src/flow/warning-persist.js.map +0 -1
  356. package/dist/src/generated/version.js.map +0 -1
  357. package/dist/src/gsd/__tests__/complexity.test.js.map +0 -1
  358. package/dist/src/gsd/__tests__/directives.test.js.map +0 -1
  359. package/dist/src/gsd/__tests__/gray-areas.test.js.map +0 -1
  360. package/dist/src/gsd/__tests__/types.test.js.map +0 -1
  361. package/dist/src/gsd/complexity.js.map +0 -1
  362. package/dist/src/gsd/directives.js.map +0 -1
  363. package/dist/src/gsd/gray-areas.js.map +0 -1
  364. package/dist/src/gsd/index.js.map +0 -1
  365. package/dist/src/gsd/types.js.map +0 -1
  366. package/dist/src/headless/__tests__/council-answers.test.js.map +0 -1
  367. package/dist/src/headless/council-answers.js.map +0 -1
  368. package/dist/src/headless/output.js.map +0 -1
  369. package/dist/src/headless/output.test.js.map +0 -1
  370. package/dist/src/hooks/config.js.map +0 -1
  371. package/dist/src/hooks/index.js.map +0 -1
  372. package/dist/src/hooks/types.js.map +0 -1
  373. package/dist/src/index.js.map +0 -1
  374. package/dist/src/lsp/builtins.js.map +0 -1
  375. package/dist/src/lsp/builtins.test.js.map +0 -1
  376. package/dist/src/lsp/client.js.map +0 -1
  377. package/dist/src/lsp/manager.js.map +0 -1
  378. package/dist/src/lsp/manager.test.js.map +0 -1
  379. package/dist/src/lsp/npm-cache.js.map +0 -1
  380. package/dist/src/lsp/npm-cache.test.js.map +0 -1
  381. package/dist/src/lsp/runtime.js.map +0 -1
  382. package/dist/src/lsp/smoke.test.js.map +0 -1
  383. package/dist/src/lsp/types.js.map +0 -1
  384. package/dist/src/maintain/__tests__/codebase-intel.test.js.map +0 -1
  385. package/dist/src/maintain/__tests__/gh-create-pr.test.js.map +0 -1
  386. package/dist/src/maintain/__tests__/pr-builder.test.js.map +0 -1
  387. package/dist/src/maintain/__tests__/repo-map.test.js.map +0 -1
  388. package/dist/src/maintain/__tests__/task-runner.test.js.map +0 -1
  389. package/dist/src/maintain/codebase-intel.js.map +0 -1
  390. package/dist/src/maintain/gh-create-pr.js.map +0 -1
  391. package/dist/src/maintain/index.js.map +0 -1
  392. package/dist/src/maintain/pr-builder.js.map +0 -1
  393. package/dist/src/maintain/repo-map.js.map +0 -1
  394. package/dist/src/maintain/task-runner.js.map +0 -1
  395. package/dist/src/maintain/types.js.map +0 -1
  396. package/dist/src/mcp/__tests__/auto-setup.test.js.map +0 -1
  397. package/dist/src/mcp/__tests__/cap-tool-result.test.js.map +0 -1
  398. package/dist/src/mcp/__tests__/ee-tools.test.js.map +0 -1
  399. package/dist/src/mcp/__tests__/forensics-tools.test.js.map +0 -1
  400. package/dist/src/mcp/__tests__/harness-driver-action-tools.spec.js.map +0 -1
  401. package/dist/src/mcp/__tests__/harness-driver-async-tools.spec.js.map +0 -1
  402. package/dist/src/mcp/__tests__/harness-driver-read-tools.spec.js.map +0 -1
  403. package/dist/src/mcp/__tests__/harness-driver-security.spec.js.map +0 -1
  404. package/dist/src/mcp/__tests__/harness-driver.spec.js.map +0 -1
  405. package/dist/src/mcp/__tests__/lazy-schema.spec.js.map +0 -1
  406. package/dist/src/mcp/__tests__/lsp-tools.test.js.map +0 -1
  407. package/dist/src/mcp/__tests__/mcp-keychain.test.js.map +0 -1
  408. package/dist/src/mcp/__tests__/research-onboarding.test.js.map +0 -1
  409. package/dist/src/mcp/__tests__/runtime-hydration.test.js.map +0 -1
  410. package/dist/src/mcp/__tests__/runtime-output-cap.test.js.map +0 -1
  411. package/dist/src/mcp/__tests__/runtime-sanitize.test.js.map +0 -1
  412. package/dist/src/mcp/__tests__/self-verify-jobs.test.js.map +0 -1
  413. package/dist/src/mcp/__tests__/smart-filter.test.js.map +0 -1
  414. package/dist/src/mcp/__tests__/tools-server.smoke.test.js.map +0 -1
  415. package/dist/src/mcp/auto-setup.js.map +0 -1
  416. package/dist/src/mcp/cap-tool-result.js.map +0 -1
  417. package/dist/src/mcp/catalog.js.map +0 -1
  418. package/dist/src/mcp/ee-tools.js.map +0 -1
  419. package/dist/src/mcp/forensics-tools.js.map +0 -1
  420. package/dist/src/mcp/lsp-tools.js.map +0 -1
  421. package/dist/src/mcp/mcp-keychain.js.map +0 -1
  422. package/dist/src/mcp/oauth-callback.js.map +0 -1
  423. package/dist/src/mcp/oauth-provider.js.map +0 -1
  424. package/dist/src/mcp/opentui-spawn.js.map +0 -1
  425. package/dist/src/mcp/parse-headers.js.map +0 -1
  426. package/dist/src/mcp/parse-headers.test.js.map +0 -1
  427. package/dist/src/mcp/research-onboarding.js.map +0 -1
  428. package/dist/src/mcp/runtime.js.map +0 -1
  429. package/dist/src/mcp/self-verify-jobs.js.map +0 -1
  430. package/dist/src/mcp/smart-filter.js.map +0 -1
  431. package/dist/src/mcp/smoke.test.js.map +0 -1
  432. package/dist/src/mcp/tools-server.js.map +0 -1
  433. package/dist/src/mcp/validate.js.map +0 -1
  434. package/dist/src/models/__tests__/registry.test.js.map +0 -1
  435. package/dist/src/models/catalog-client.js.map +0 -1
  436. package/dist/src/models/catalog-gemini.test.js.map +0 -1
  437. package/dist/src/models/catalog-url.test.js.map +0 -1
  438. package/dist/src/models/catalog-validation.test.js.map +0 -1
  439. package/dist/src/models/classify-tier.js.map +0 -1
  440. package/dist/src/models/index.js.map +0 -1
  441. package/dist/src/models/registry.js.map +0 -1
  442. package/dist/src/ops/__tests__/doctor-council-mcp.test.js.map +0 -1
  443. package/dist/src/ops/__tests__/doctor-ee-health.test.js.map +0 -1
  444. package/dist/src/ops/bug-report.js.map +0 -1
  445. package/dist/src/ops/bug-report.test.js.map +0 -1
  446. package/dist/src/ops/doctor.js.map +0 -1
  447. package/dist/src/ops/doctor.test.js.map +0 -1
  448. package/dist/src/orchestrator/__tests__/agent-base-url-switch.test.js.map +0 -1
  449. package/dist/src/orchestrator/__tests__/batch-turn-runner.test.js.map +0 -1
  450. package/dist/src/orchestrator/__tests__/council-manager.test.js.map +0 -1
  451. package/dist/src/orchestrator/__tests__/cross-turn-dedup.test.js.map +0 -1
  452. package/dist/src/orchestrator/__tests__/current-call-id.test.js.map +0 -1
  453. package/dist/src/orchestrator/__tests__/error-forensics.test.js.map +0 -1
  454. package/dist/src/orchestrator/__tests__/flow-resume.test.js.map +0 -1
  455. package/dist/src/orchestrator/__tests__/humanize-api-error.test.js.map +0 -1
  456. package/dist/src/orchestrator/__tests__/message-processor.test.js.map +0 -1
  457. package/dist/src/orchestrator/__tests__/message-write-ahead.test.js.map +0 -1
  458. package/dist/src/orchestrator/__tests__/read-path-budget.test.js.map +0 -1
  459. package/dist/src/orchestrator/__tests__/retry-classifier.test.js.map +0 -1
  460. package/dist/src/orchestrator/__tests__/retry-stream.test.js.map +0 -1
  461. package/dist/src/orchestrator/__tests__/route-feedback.test.js.map +0 -1
  462. package/dist/src/orchestrator/__tests__/stream-runner.test.js.map +0 -1
  463. package/dist/src/orchestrator/__tests__/sub-agent-model-tier.test.js.map +0 -1
  464. package/dist/src/orchestrator/__tests__/usage-events-shape.test.js.map +0 -1
  465. package/dist/src/orchestrator/__tests__/usage-normalizer-c1.test.js.map +0 -1
  466. package/dist/src/orchestrator/__tests__/usage-shape-threading.test.js.map +0 -1
  467. package/dist/src/orchestrator/__tests__/write-ahead.test.js.map +0 -1
  468. package/dist/src/orchestrator/abort.js.map +0 -1
  469. package/dist/src/orchestrator/abort.test.js.map +0 -1
  470. package/dist/src/orchestrator/agent-options.js.map +0 -1
  471. package/dist/src/orchestrator/agent.test.js.map +0 -1
  472. package/dist/src/orchestrator/batch-turn-runner.js.map +0 -1
  473. package/dist/src/orchestrator/batch-utils.js.map +0 -1
  474. package/dist/src/orchestrator/cleanup.test.js.map +0 -1
  475. package/dist/src/orchestrator/compaction.js.map +0 -1
  476. package/dist/src/orchestrator/compaction.test.js.map +0 -1
  477. package/dist/src/orchestrator/council-manager.js.map +0 -1
  478. package/dist/src/orchestrator/cross-turn-dedup.js.map +0 -1
  479. package/dist/src/orchestrator/delegations.js.map +0 -1
  480. package/dist/src/orchestrator/delegations.test.js.map +0 -1
  481. package/dist/src/orchestrator/error-utils.js.map +0 -1
  482. package/dist/src/orchestrator/flow-resume.js.map +0 -1
  483. package/dist/src/orchestrator/grounding-check.js.map +0 -1
  484. package/dist/src/orchestrator/grounding-check.test.js.map +0 -1
  485. package/dist/src/orchestrator/interrupted-turn.js.map +0 -1
  486. package/dist/src/orchestrator/interrupted-turn.test.js.map +0 -1
  487. package/dist/src/orchestrator/message-processor.js.map +0 -1
  488. package/dist/src/orchestrator/message-seq.js.map +0 -1
  489. package/dist/src/orchestrator/message-seq.test.js.map +0 -1
  490. package/dist/src/orchestrator/orchestrator.js.map +0 -1
  491. package/dist/src/orchestrator/pending-calls.js.map +0 -1
  492. package/dist/src/orchestrator/pending-calls.test.js.map +0 -1
  493. package/dist/src/orchestrator/prompts.js.map +0 -1
  494. package/dist/src/orchestrator/provider-options-shape.js.map +0 -1
  495. package/dist/src/orchestrator/provider-options-shape.spec.js.map +0 -1
  496. package/dist/src/orchestrator/read-path-budget.js.map +0 -1
  497. package/dist/src/orchestrator/reasoning.js.map +0 -1
  498. package/dist/src/orchestrator/reasoning.test.js.map +0 -1
  499. package/dist/src/orchestrator/repair-tool-call.js.map +0 -1
  500. package/dist/src/orchestrator/repetition-detector.js.map +0 -1
  501. package/dist/src/orchestrator/repetition-detector.test.js.map +0 -1
  502. package/dist/src/orchestrator/retry-classifier.js.map +0 -1
  503. package/dist/src/orchestrator/retry-stream.js.map +0 -1
  504. package/dist/src/orchestrator/sandbox.test.js.map +0 -1
  505. package/dist/src/orchestrator/scope-ceiling.js.map +0 -1
  506. package/dist/src/orchestrator/scope-ceiling.test.js.map +0 -1
  507. package/dist/src/orchestrator/scope-reminder.js.map +0 -1
  508. package/dist/src/orchestrator/scope-reminder.test.js.map +0 -1
  509. package/dist/src/orchestrator/stall-rescue.js.map +0 -1
  510. package/dist/src/orchestrator/stall-rescue.test.js.map +0 -1
  511. package/dist/src/orchestrator/stall-watchdog.js.map +0 -1
  512. package/dist/src/orchestrator/stall-watchdog.test.js.map +0 -1
  513. package/dist/src/orchestrator/stream-runner.js.map +0 -1
  514. package/dist/src/orchestrator/sub-agent-cap.js.map +0 -1
  515. package/dist/src/orchestrator/sub-agent-cap.test.js.map +0 -1
  516. package/dist/src/orchestrator/sub-agent-model-tier.js.map +0 -1
  517. package/dist/src/orchestrator/subagent-compactor.js.map +0 -1
  518. package/dist/src/orchestrator/subagent-compactor.spec.js.map +0 -1
  519. package/dist/src/orchestrator/text-tool-call-detector.js.map +0 -1
  520. package/dist/src/orchestrator/text-tool-call-detector.test.js.map +0 -1
  521. package/dist/src/orchestrator/token-counter.js.map +0 -1
  522. package/dist/src/orchestrator/token-counter.test.js.map +0 -1
  523. package/dist/src/orchestrator/tool-args-hash.js.map +0 -1
  524. package/dist/src/orchestrator/tool-args-hash.test.js.map +0 -1
  525. package/dist/src/orchestrator/tool-args-repair.js.map +0 -1
  526. package/dist/src/orchestrator/tool-args-repair.test.js.map +0 -1
  527. package/dist/src/orchestrator/tool-loop-cap.js.map +0 -1
  528. package/dist/src/orchestrator/tool-loop-cap.test.js.map +0 -1
  529. package/dist/src/orchestrator/tool-repetition-detector.js.map +0 -1
  530. package/dist/src/orchestrator/tool-repetition-detector.test.js.map +0 -1
  531. package/dist/src/orchestrator/tool-utils.js.map +0 -1
  532. package/dist/src/orchestrator/turn-runner-deps.js.map +0 -1
  533. package/dist/src/pil/__tests__/budget.test.js.map +0 -1
  534. package/dist/src/pil/__tests__/clarity-gate.test.js.map +0 -1
  535. package/dist/src/pil/__tests__/config.test.js.map +0 -1
  536. package/dist/src/pil/__tests__/discovery-cache.test.js.map +0 -1
  537. package/dist/src/pil/__tests__/discovery-types.test.js.map +0 -1
  538. package/dist/src/pil/__tests__/discovery.test.js.map +0 -1
  539. package/dist/src/pil/__tests__/dual-run.test.js.map +0 -1
  540. package/dist/src/pil/__tests__/layer1-intent-trace.test.js.map +0 -1
  541. package/dist/src/pil/__tests__/layer1-intent.test.js.map +0 -1
  542. package/dist/src/pil/__tests__/layer15-context-scan.test.js.map +0 -1
  543. package/dist/src/pil/__tests__/layer16-clarity.test.js.map +0 -1
  544. package/dist/src/pil/__tests__/layer17-feasibility.test.js.map +0 -1
  545. package/dist/src/pil/__tests__/layer18-acceptance.test.js.map +0 -1
  546. package/dist/src/pil/__tests__/layer2-personality.test.js.map +0 -1
  547. package/dist/src/pil/__tests__/layer3-ee-injection.test.js.map +0 -1
  548. package/dist/src/pil/__tests__/layer3-injected-chunk.test.js.map +0 -1
  549. package/dist/src/pil/__tests__/layer4-gsd.test.js.map +0 -1
  550. package/dist/src/pil/__tests__/layer5-context.test.js.map +0 -1
  551. package/dist/src/pil/__tests__/layer6-output.test.js.map +0 -1
  552. package/dist/src/pil/__tests__/llm-classify.test.js.map +0 -1
  553. package/dist/src/pil/__tests__/native-capabilities-workbook.test.js.map +0 -1
  554. package/dist/src/pil/__tests__/ollama-classify.test.js.map +0 -1
  555. package/dist/src/pil/__tests__/orchestrator-integration.test.js.map +0 -1
  556. package/dist/src/pil/__tests__/pipeline.test.js.map +0 -1
  557. package/dist/src/pil/__tests__/renderer-coverage.test.js.map +0 -1
  558. package/dist/src/pil/__tests__/response-tools.test.js.map +0 -1
  559. package/dist/src/pil/__tests__/schema.test.js.map +0 -1
  560. package/dist/src/pil/__tests__/scoreComplexity.test.js.map +0 -1
  561. package/dist/src/pil/__tests__/scoreSufficiency.test.js.map +0 -1
  562. package/dist/src/pil/__tests__/store.test.js.map +0 -1
  563. package/dist/src/pil/__tests__/task-tier-map.test.js.map +0 -1
  564. package/dist/src/pil/agent-operating-contract.js.map +0 -1
  565. package/dist/src/pil/agent-operating-contract.test.js.map +0 -1
  566. package/dist/src/pil/budget-log.js.map +0 -1
  567. package/dist/src/pil/budget.js.map +0 -1
  568. package/dist/src/pil/cheap-model-playbook.js.map +0 -1
  569. package/dist/src/pil/cheap-model-playbook.test.js.map +0 -1
  570. package/dist/src/pil/cheap-model-workbooks.js.map +0 -1
  571. package/dist/src/pil/cheap-model-workbooks.test.js.map +0 -1
  572. package/dist/src/pil/clarity-gate.js.map +0 -1
  573. package/dist/src/pil/config.js.map +0 -1
  574. package/dist/src/pil/discovery-cache.js.map +0 -1
  575. package/dist/src/pil/discovery-types.js.map +0 -1
  576. package/dist/src/pil/discovery.js.map +0 -1
  577. package/dist/src/pil/index.js.map +0 -1
  578. package/dist/src/pil/layer1-intent.js.map +0 -1
  579. package/dist/src/pil/layer1-intent.test.js.map +0 -1
  580. package/dist/src/pil/layer15-context-scan.js.map +0 -1
  581. package/dist/src/pil/layer16-clarity.js.map +0 -1
  582. package/dist/src/pil/layer16-clarity.test.js +0 -31
  583. package/dist/src/pil/layer16-clarity.test.js.map +0 -1
  584. package/dist/src/pil/layer17-feasibility.js.map +0 -1
  585. package/dist/src/pil/layer18-acceptance.js.map +0 -1
  586. package/dist/src/pil/layer1_5-complexity-size.js.map +0 -1
  587. package/dist/src/pil/layer1_5-complexity-size.test.js.map +0 -1
  588. package/dist/src/pil/layer2-personality.js.map +0 -1
  589. package/dist/src/pil/layer3-ee-injection.js.map +0 -1
  590. package/dist/src/pil/layer4-gsd.js.map +0 -1
  591. package/dist/src/pil/layer5-context.js.map +0 -1
  592. package/dist/src/pil/layer6-output.js.map +0 -1
  593. package/dist/src/pil/llm-classify.js.map +0 -1
  594. package/dist/src/pil/native-capabilities-workbook.js.map +0 -1
  595. package/dist/src/pil/ollama-classify.js.map +0 -1
  596. package/dist/src/pil/pipeline.js.map +0 -1
  597. package/dist/src/pil/response-tools.js.map +0 -1
  598. package/dist/src/pil/schema.js.map +0 -1
  599. package/dist/src/pil/session-state.js.map +0 -1
  600. package/dist/src/pil/session-state.test.js.map +0 -1
  601. package/dist/src/pil/store.js.map +0 -1
  602. package/dist/src/pil/task-tier-map.js.map +0 -1
  603. package/dist/src/pil/timeout.js.map +0 -1
  604. package/dist/src/pil/types.js.map +0 -1
  605. package/dist/src/product-loop/__tests__/artifact-io.test.js.map +0 -1
  606. package/dist/src/product-loop/__tests__/assumption-ledger.test.js.map +0 -1
  607. package/dist/src/product-loop/__tests__/backlog-builder.test.js.map +0 -1
  608. package/dist/src/product-loop/__tests__/backlog-store.test.js.map +0 -1
  609. package/dist/src/product-loop/__tests__/cb2-retry-bonus.test.js.map +0 -1
  610. package/dist/src/product-loop/__tests__/circuit-breakers-coverage.test.js.map +0 -1
  611. package/dist/src/product-loop/__tests__/circuit-breakers.test.js.map +0 -1
  612. package/dist/src/product-loop/__tests__/complexity-routing.spec.js.map +0 -1
  613. package/dist/src/product-loop/__tests__/context-policy.test.js.map +0 -1
  614. package/dist/src/product-loop/__tests__/cost-preview.test.js.map +0 -1
  615. package/dist/src/product-loop/__tests__/cost-scoper.test.js.map +0 -1
  616. package/dist/src/product-loop/__tests__/cross-run-memory.test.js.map +0 -1
  617. package/dist/src/product-loop/__tests__/design-output.spec.js.map +0 -1
  618. package/dist/src/product-loop/__tests__/discover.test.js.map +0 -1
  619. package/dist/src/product-loop/__tests__/discovery-context-format.test.js.map +0 -1
  620. package/dist/src/product-loop/__tests__/discovery-council-runner.test.js.map +0 -1
  621. package/dist/src/product-loop/__tests__/discovery-detection.test.js.map +0 -1
  622. package/dist/src/product-loop/__tests__/discovery-ecosystem.test.js.map +0 -1
  623. package/dist/src/product-loop/__tests__/discovery-integration.test.js.map +0 -1
  624. package/dist/src/product-loop/__tests__/discovery-interview.test.js.map +0 -1
  625. package/dist/src/product-loop/__tests__/discovery-migrations.test.js.map +0 -1
  626. package/dist/src/product-loop/__tests__/discovery-persistence.test.js.map +0 -1
  627. package/dist/src/product-loop/__tests__/discovery-prompt-parser.test.js.map +0 -1
  628. package/dist/src/product-loop/__tests__/discovery-prompt-specificity.test.js.map +0 -1
  629. package/dist/src/product-loop/__tests__/discovery-recommender-ecosystem.test.js.map +0 -1
  630. package/dist/src/product-loop/__tests__/discovery-recommender.test.js.map +0 -1
  631. package/dist/src/product-loop/__tests__/discovery-schema.test.js.map +0 -1
  632. package/dist/src/product-loop/__tests__/done-gate-coverage.test.js.map +0 -1
  633. package/dist/src/product-loop/__tests__/done-gate.test.js.map +0 -1
  634. package/dist/src/product-loop/__tests__/ee-extract-wiring.test.js.map +0 -1
  635. package/dist/src/product-loop/__tests__/extract-to-ee.test.js.map +0 -1
  636. package/dist/src/product-loop/__tests__/feedback-routing.test.js.map +0 -1
  637. package/dist/src/product-loop/__tests__/gather-selectable-alts.test.js.map +0 -1
  638. package/dist/src/product-loop/__tests__/hot-path.spec.js.map +0 -1
  639. package/dist/src/product-loop/__tests__/integration.test.js.map +0 -1
  640. package/dist/src/product-loop/__tests__/loop-driver-audit.test.js.map +0 -1
  641. package/dist/src/product-loop/__tests__/loop-driver.test.js.map +0 -1
  642. package/dist/src/product-loop/__tests__/maintenance-task-synthesis.test.js.map +0 -1
  643. package/dist/src/product-loop/__tests__/phase-a1-a3-sprint-runner.test.js.map +0 -1
  644. package/dist/src/product-loop/__tests__/phase-a2-backlog-build.test.js.map +0 -1
  645. package/dist/src/product-loop/__tests__/phase-budget.test.js.map +0 -1
  646. package/dist/src/product-loop/__tests__/phase-orchestrator-integration.test.js.map +0 -1
  647. package/dist/src/product-loop/__tests__/phase-plan.test.js.map +0 -1
  648. package/dist/src/product-loop/__tests__/phase-rituals.test.js.map +0 -1
  649. package/dist/src/product-loop/__tests__/phase-runner.test.js.map +0 -1
  650. package/dist/src/product-loop/__tests__/phase-tracker-bridge.test.js.map +0 -1
  651. package/dist/src/product-loop/__tests__/pick-backend-stack.test.js.map +0 -1
  652. package/dist/src/product-loop/__tests__/product-identity.test.js.map +0 -1
  653. package/dist/src/product-loop/__tests__/progress-snapshot.test.js.map +0 -1
  654. package/dist/src/product-loop/__tests__/reality-anchor.test.js.map +0 -1
  655. package/dist/src/product-loop/__tests__/repo-audit.test.js.map +0 -1
  656. package/dist/src/product-loop/__tests__/repo-brief.test.js.map +0 -1
  657. package/dist/src/product-loop/__tests__/role-memory.test.js.map +0 -1
  658. package/dist/src/product-loop/__tests__/role-registry.test.js.map +0 -1
  659. package/dist/src/product-loop/__tests__/role-routing-ee.test.js.map +0 -1
  660. package/dist/src/product-loop/__tests__/route-decision-emit.test.js.map +0 -1
  661. package/dist/src/product-loop/__tests__/seed-questions.test.js.map +0 -1
  662. package/dist/src/product-loop/__tests__/ship-polish.test.js.map +0 -1
  663. package/dist/src/product-loop/__tests__/sprint-planner.test.js.map +0 -1
  664. package/dist/src/product-loop/__tests__/sprint-runner-backlog.test.js.map +0 -1
  665. package/dist/src/product-loop/__tests__/sprint-runner-emit.test.js.map +0 -1
  666. package/dist/src/product-loop/__tests__/sprint-runner-phase-chunks.test.js.map +0 -1
  667. package/dist/src/product-loop/__tests__/sprint-runner.test.js.map +0 -1
  668. package/dist/src/product-loop/__tests__/sprint-self-verify.test.js.map +0 -1
  669. package/dist/src/product-loop/__tests__/sprint-store.test.js.map +0 -1
  670. package/dist/src/product-loop/__tests__/stakeholder-acl.test.js.map +0 -1
  671. package/dist/src/product-loop/__tests__/state-md-ee-injections.test.js.map +0 -1
  672. package/dist/src/product-loop/__tests__/sufficiency-routing.spec.js.map +0 -1
  673. package/dist/src/product-loop/__tests__/typed-artifacts.test.js.map +0 -1
  674. package/dist/src/product-loop/__tests__/types.test.js.map +0 -1
  675. package/dist/src/product-loop/__tests__/verify-failure-threshold.test.js.map +0 -1
  676. package/dist/src/product-loop/__tests__/verify-failure-tracking.test.js.map +0 -1
  677. package/dist/src/product-loop/__tests__/verify-result.test.js.map +0 -1
  678. package/dist/src/product-loop/artifact-io.js.map +0 -1
  679. package/dist/src/product-loop/assumption-ledger.js.map +0 -1
  680. package/dist/src/product-loop/backlog-builder.js.map +0 -1
  681. package/dist/src/product-loop/backlog-store.js.map +0 -1
  682. package/dist/src/product-loop/circuit-breakers.js.map +0 -1
  683. package/dist/src/product-loop/context-policy.js.map +0 -1
  684. package/dist/src/product-loop/cost-preview.js.map +0 -1
  685. package/dist/src/product-loop/cost-scoper.js.map +0 -1
  686. package/dist/src/product-loop/cross-run-memory.js.map +0 -1
  687. package/dist/src/product-loop/design-output.js.map +0 -1
  688. package/dist/src/product-loop/discover.js.map +0 -1
  689. package/dist/src/product-loop/discovery-context-format.js.map +0 -1
  690. package/dist/src/product-loop/discovery-council-runner.js.map +0 -1
  691. package/dist/src/product-loop/discovery-detection.js.map +0 -1
  692. package/dist/src/product-loop/discovery-ecosystem.js.map +0 -1
  693. package/dist/src/product-loop/discovery-interview.js.map +0 -1
  694. package/dist/src/product-loop/discovery-migrations.js.map +0 -1
  695. package/dist/src/product-loop/discovery-persistence.js.map +0 -1
  696. package/dist/src/product-loop/discovery-prompt-parser.js.map +0 -1
  697. package/dist/src/product-loop/discovery-recommender.js.map +0 -1
  698. package/dist/src/product-loop/discovery-schema.js.map +0 -1
  699. package/dist/src/product-loop/done-gate.js.map +0 -1
  700. package/dist/src/product-loop/feedback-routing.js.map +0 -1
  701. package/dist/src/product-loop/gather.js.map +0 -1
  702. package/dist/src/product-loop/index.js.map +0 -1
  703. package/dist/src/product-loop/loop-driver.js.map +0 -1
  704. package/dist/src/product-loop/phase-budget.js.map +0 -1
  705. package/dist/src/product-loop/phase-plan.js.map +0 -1
  706. package/dist/src/product-loop/phase-rituals.js.map +0 -1
  707. package/dist/src/product-loop/phase-runner.js.map +0 -1
  708. package/dist/src/product-loop/phase-tracker-bridge.js.map +0 -1
  709. package/dist/src/product-loop/product-identity.js.map +0 -1
  710. package/dist/src/product-loop/progress-snapshot.js.map +0 -1
  711. package/dist/src/product-loop/reality-anchor.js.map +0 -1
  712. package/dist/src/product-loop/repo-audit.js.map +0 -1
  713. package/dist/src/product-loop/repo-brief.js.map +0 -1
  714. package/dist/src/product-loop/role-memory.js.map +0 -1
  715. package/dist/src/product-loop/role-registry.js.map +0 -1
  716. package/dist/src/product-loop/seed-questions.js.map +0 -1
  717. package/dist/src/product-loop/ship-polish.js.map +0 -1
  718. package/dist/src/product-loop/sprint-planner.js.map +0 -1
  719. package/dist/src/product-loop/sprint-runner.js.map +0 -1
  720. package/dist/src/product-loop/sprint-self-verify.js.map +0 -1
  721. package/dist/src/product-loop/sprint-store.js.map +0 -1
  722. package/dist/src/product-loop/stakeholder-acl.js.map +0 -1
  723. package/dist/src/product-loop/typed-artifacts.js.map +0 -1
  724. package/dist/src/product-loop/types.js.map +0 -1
  725. package/dist/src/product-loop/verify-failure-tracking.js.map +0 -1
  726. package/dist/src/product-loop/verify-result.js.map +0 -1
  727. package/dist/src/providers/__test-utils__/load-fixture.js.map +0 -1
  728. package/dist/src/providers/__tests__/adapter-oauth-wiring.test.js.map +0 -1
  729. package/dist/src/providers/__tests__/capabilities-cosmetic.test.js.map +0 -1
  730. package/dist/src/providers/__tests__/capabilities-flags.test.js.map +0 -1
  731. package/dist/src/providers/__tests__/capabilities-provider-options.test.js.map +0 -1
  732. package/dist/src/providers/__tests__/capabilities-sanitize.test.js.map +0 -1
  733. package/dist/src/providers/__tests__/capabilities.test.js.map +0 -1
  734. package/dist/src/providers/__tests__/provider-coverage.test.js.map +0 -1
  735. package/dist/src/providers/__tests__/reasoning-roundtrip.test.js.map +0 -1
  736. package/dist/src/providers/__tests__/runtime-integration.test.js.map +0 -1
  737. package/dist/src/providers/__tests__/runtime.test.js.map +0 -1
  738. package/dist/src/providers/__tests__/siliconflow-sse-repair.test.js.map +0 -1
  739. package/dist/src/providers/__tests__/strategies-registry.test.js.map +0 -1
  740. package/dist/src/providers/__tests__/strategies-resolve.test.js.map +0 -1
  741. package/dist/src/providers/__tests__/wire-debug.test.js.map +0 -1
  742. package/dist/src/providers/adapter.js.map +0 -1
  743. package/dist/src/providers/adapter.test.js.map +0 -1
  744. package/dist/src/providers/anthropic.js.map +0 -1
  745. package/dist/src/providers/auth/__tests__/browser-flow.test.js.map +0 -1
  746. package/dist/src/providers/auth/__tests__/device-flow.test.js.map +0 -1
  747. package/dist/src/providers/auth/__tests__/gemini-oauth.test.js.map +0 -1
  748. package/dist/src/providers/auth/__tests__/grok-oauth.test.js.map +0 -1
  749. package/dist/src/providers/auth/__tests__/openai-oauth.test.js.map +0 -1
  750. package/dist/src/providers/auth/__tests__/token-store.test.js.map +0 -1
  751. package/dist/src/providers/auth/browser-flow.js.map +0 -1
  752. package/dist/src/providers/auth/device-flow.js.map +0 -1
  753. package/dist/src/providers/auth/gemini-oauth.js.map +0 -1
  754. package/dist/src/providers/auth/grok-oauth.js.map +0 -1
  755. package/dist/src/providers/auth/openai-oauth.js.map +0 -1
  756. package/dist/src/providers/auth/registry.js.map +0 -1
  757. package/dist/src/providers/auth/token-store.js.map +0 -1
  758. package/dist/src/providers/auth/types.js.map +0 -1
  759. package/dist/src/providers/capabilities.js.map +0 -1
  760. package/dist/src/providers/endpoints.js.map +0 -1
  761. package/dist/src/providers/errors.js.map +0 -1
  762. package/dist/src/providers/errors.test.js.map +0 -1
  763. package/dist/src/providers/gemini.js.map +0 -1
  764. package/dist/src/providers/gemini.test.js.map +0 -1
  765. package/dist/src/providers/index.js.map +0 -1
  766. package/dist/src/providers/keychain.js.map +0 -1
  767. package/dist/src/providers/keychain.test.js.map +0 -1
  768. package/dist/src/providers/mcp-vision-bridge.js.map +0 -1
  769. package/dist/src/providers/mcp-vision-bridge.test.js.map +0 -1
  770. package/dist/src/providers/ollama.js.map +0 -1
  771. package/dist/src/providers/ollama.test.js.map +0 -1
  772. package/dist/src/providers/openai-compatible.js.map +0 -1
  773. package/dist/src/providers/openai-compatible.test.js.map +0 -1
  774. package/dist/src/providers/openai.js.map +0 -1
  775. package/dist/src/providers/openai.test.js.map +0 -1
  776. package/dist/src/providers/patch-zod-schema.js.map +0 -1
  777. package/dist/src/providers/pricing.js.map +0 -1
  778. package/dist/src/providers/pricing.test.js.map +0 -1
  779. package/dist/src/providers/prompt-cache-key.spec.js.map +0 -1
  780. package/dist/src/providers/runtime-mock.spec.js.map +0 -1
  781. package/dist/src/providers/runtime.js.map +0 -1
  782. package/dist/src/providers/siliconflow-sse-repair.js.map +0 -1
  783. package/dist/src/providers/strategies/anthropic.strategy.js.map +0 -1
  784. package/dist/src/providers/strategies/base.strategy.js.map +0 -1
  785. package/dist/src/providers/strategies/deepseek.strategy.js.map +0 -1
  786. package/dist/src/providers/strategies/google.strategy.js.map +0 -1
  787. package/dist/src/providers/strategies/ollama.strategy.js.map +0 -1
  788. package/dist/src/providers/strategies/openai.strategy.js.map +0 -1
  789. package/dist/src/providers/strategies/registry.js.map +0 -1
  790. package/dist/src/providers/strategies/siliconflow.strategy.js.map +0 -1
  791. package/dist/src/providers/strategies/xai.strategy.js.map +0 -1
  792. package/dist/src/providers/stream-loop.js.map +0 -1
  793. package/dist/src/providers/types.js.map +0 -1
  794. package/dist/src/providers/vision-proxy.js.map +0 -1
  795. package/dist/src/providers/vision-proxy.test.js.map +0 -1
  796. package/dist/src/providers/wire-debug.js.map +0 -1
  797. package/dist/src/reporter/__tests__/acl-check.test.js.map +0 -1
  798. package/dist/src/reporter/__tests__/auto-fire.test.js.map +0 -1
  799. package/dist/src/reporter/__tests__/budget.test.js.map +0 -1
  800. package/dist/src/reporter/__tests__/handlers.test.js.map +0 -1
  801. package/dist/src/reporter/__tests__/query-router.test.js.map +0 -1
  802. package/dist/src/reporter/acl-check.js.map +0 -1
  803. package/dist/src/reporter/auto-fire.js.map +0 -1
  804. package/dist/src/reporter/budget.js.map +0 -1
  805. package/dist/src/reporter/handlers.js.map +0 -1
  806. package/dist/src/reporter/index.js.map +0 -1
  807. package/dist/src/reporter/query-router.js.map +0 -1
  808. package/dist/src/router/__tests__/step-router.test.js.map +0 -1
  809. package/dist/src/router/classifier/grammars.js.map +0 -1
  810. package/dist/src/router/classifier/index.js.map +0 -1
  811. package/dist/src/router/classifier/index.test.js.map +0 -1
  812. package/dist/src/router/classifier/regex.js.map +0 -1
  813. package/dist/src/router/classifier/regex.test.js.map +0 -1
  814. package/dist/src/router/classifier/tree-sitter.js.map +0 -1
  815. package/dist/src/router/classifier/tree-sitter.test.js.map +0 -1
  816. package/dist/src/router/cold.js.map +0 -1
  817. package/dist/src/router/cold.test.js.map +0 -1
  818. package/dist/src/router/decide.js.map +0 -1
  819. package/dist/src/router/decide.test.js.map +0 -1
  820. package/dist/src/router/health.js.map +0 -1
  821. package/dist/src/router/health.test.js.map +0 -1
  822. package/dist/src/router/provider-sentinel.js.map +0 -1
  823. package/dist/src/router/provider-sentinel.test.js.map +0 -1
  824. package/dist/src/router/role-override.test.js.map +0 -1
  825. package/dist/src/router/step-router.js.map +0 -1
  826. package/dist/src/router/store.js.map +0 -1
  827. package/dist/src/router/types.js.map +0 -1
  828. package/dist/src/router/warm.js.map +0 -1
  829. package/dist/src/router/warm.test.js.map +0 -1
  830. package/dist/src/scaffold/__tests__/continuation-prompt.test.js.map +0 -1
  831. package/dist/src/scaffold/__tests__/continue-as-council.spec.js.map +0 -1
  832. package/dist/src/scaffold/__tests__/dotnet-assembly-name.test.js.map +0 -1
  833. package/dist/src/scaffold/__tests__/fe-scaffold-contents.test.js.map +0 -1
  834. package/dist/src/scaffold/__tests__/init-new.smoke.spec.js.map +0 -1
  835. package/dist/src/scaffold/__tests__/init-new.spec.js.map +0 -1
  836. package/dist/src/scaffold/__tests__/install-bb-templates.spec.js.map +0 -1
  837. package/dist/src/scaffold/__tests__/point-to-existing.spec.js.map +0 -1
  838. package/dist/src/scaffold/bb-ecosystem-apply.js.map +0 -1
  839. package/dist/src/scaffold/bb-quality-gate.js.map +0 -1
  840. package/dist/src/scaffold/continuation-prompt.js.map +0 -1
  841. package/dist/src/scaffold/continue-as-council.js.map +0 -1
  842. package/dist/src/scaffold/init-new.js.map +0 -1
  843. package/dist/src/scaffold/point-to-existing.js.map +0 -1
  844. package/dist/src/scaffold/resume-from-gate-failures.js.map +0 -1
  845. package/dist/src/self-qa/__tests__/agentic-context.test.js.map +0 -1
  846. package/dist/src/self-qa/__tests__/agentic-loop.test.js.map +0 -1
  847. package/dist/src/self-qa/__tests__/delta-encoder.test.js.map +0 -1
  848. package/dist/src/self-qa/__tests__/judge.test.js.map +0 -1
  849. package/dist/src/self-qa/__tests__/scenario-planner.test.js.map +0 -1
  850. package/dist/src/self-qa/__tests__/spec-emitter.test.js.map +0 -1
  851. package/dist/src/self-qa/agentic-context.js.map +0 -1
  852. package/dist/src/self-qa/agentic-loop.js.map +0 -1
  853. package/dist/src/self-qa/delta-encoder.js.map +0 -1
  854. package/dist/src/self-qa/index.js.map +0 -1
  855. package/dist/src/self-qa/judge.js.map +0 -1
  856. package/dist/src/self-qa/orchestrator.js.map +0 -1
  857. package/dist/src/self-qa/scenario-planner.js.map +0 -1
  858. package/dist/src/self-qa/spec-emitter.js.map +0 -1
  859. package/dist/src/self-qa/types.js.map +0 -1
  860. package/dist/src/storage/__tests__/migrations.test.js.map +0 -1
  861. package/dist/src/storage/__tests__/sweep-stale-pending.test.js.map +0 -1
  862. package/dist/src/storage/__tests__/ui-interaction-log.test.js.map +0 -1
  863. package/dist/src/storage/atomic-io.js.map +0 -1
  864. package/dist/src/storage/atomic-io.test.js.map +0 -1
  865. package/dist/src/storage/config.js.map +0 -1
  866. package/dist/src/storage/config.test.js.map +0 -1
  867. package/dist/src/storage/db.js.map +0 -1
  868. package/dist/src/storage/index.js.map +0 -1
  869. package/dist/src/storage/interaction-log.js.map +0 -1
  870. package/dist/src/storage/migrations.js.map +0 -1
  871. package/dist/src/storage/session-dir.js.map +0 -1
  872. package/dist/src/storage/sessions.js.map +0 -1
  873. package/dist/src/storage/tool-results.js.map +0 -1
  874. package/dist/src/storage/transcript-response-entry.test.js.map +0 -1
  875. package/dist/src/storage/transcript-view.js.map +0 -1
  876. package/dist/src/storage/transcript.js.map +0 -1
  877. package/dist/src/storage/transcript.test.js.map +0 -1
  878. package/dist/src/storage/ui-interaction-log.js.map +0 -1
  879. package/dist/src/storage/usage-cap.js.map +0 -1
  880. package/dist/src/storage/usage-cap.test.js.map +0 -1
  881. package/dist/src/storage/usage.js.map +0 -1
  882. package/dist/src/storage/workspaces.js.map +0 -1
  883. package/dist/src/tools/__tests__/vision-gate.test.js.map +0 -1
  884. package/dist/src/tools/bash-output-cache.js.map +0 -1
  885. package/dist/src/tools/bash-output-cache.test.js.map +0 -1
  886. package/dist/src/tools/bash-output-integration.test.js.map +0 -1
  887. package/dist/src/tools/bash.js.map +0 -1
  888. package/dist/src/tools/bash.test.js.map +0 -1
  889. package/dist/src/tools/computer.js.map +0 -1
  890. package/dist/src/tools/computer.test.js.map +0 -1
  891. package/dist/src/tools/file-tracker.js.map +0 -1
  892. package/dist/src/tools/file-tracker.test.js.map +0 -1
  893. package/dist/src/tools/file.js.map +0 -1
  894. package/dist/src/tools/file.test.js.map +0 -1
  895. package/dist/src/tools/grep.js.map +0 -1
  896. package/dist/src/tools/registry-bash-empty-command.test.js.map +0 -1
  897. package/dist/src/tools/registry-bash-footer.test.js.map +0 -1
  898. package/dist/src/tools/registry-ee-query.test.js.map +0 -1
  899. package/dist/src/tools/registry-session-repeat.test.js.map +0 -1
  900. package/dist/src/tools/registry.js.map +0 -1
  901. package/dist/src/tools/registry.test.js.map +0 -1
  902. package/dist/src/tools/schedule.js.map +0 -1
  903. package/dist/src/tools/schedule.test.js.map +0 -1
  904. package/dist/src/tools/todo-write-snapshot.js.map +0 -1
  905. package/dist/src/tools/todo-write-snapshot.test.js.map +0 -1
  906. package/dist/src/tools/vision-gate.js.map +0 -1
  907. package/dist/src/types/index.js.map +0 -1
  908. package/dist/src/ui/__tests__/picker-providers.test.js.map +0 -1
  909. package/dist/src/ui/agents-modal.js.map +0 -1
  910. package/dist/src/ui/app.js.map +0 -1
  911. package/dist/src/ui/cards/__tests__/product-status-card.test.js.map +0 -1
  912. package/dist/src/ui/cards/product-status-card.js.map +0 -1
  913. package/dist/src/ui/components/SuggestionOverlay.js.map +0 -1
  914. package/dist/src/ui/components/Toast.js.map +0 -1
  915. package/dist/src/ui/components/__tests__/council-leader-bubble.test.js.map +0 -1
  916. package/dist/src/ui/components/__tests__/council-message-bubble.test.js.map +0 -1
  917. package/dist/src/ui/components/__tests__/council-phase-timeline.test.js.map +0 -1
  918. package/dist/src/ui/components/__tests__/council-placeholder-bubble.test.js.map +0 -1
  919. package/dist/src/ui/components/__tests__/council-question-card.test.js.map +0 -1
  920. package/dist/src/ui/components/__tests__/council-synthesis-banner.test.js.map +0 -1
  921. package/dist/src/ui/components/__tests__/task-list-panel.test.js.map +0 -1
  922. package/dist/src/ui/components/__tests__/use-pair-quote-buffer.test.js.map +0 -1
  923. package/dist/src/ui/components/btw-overlay.js.map +0 -1
  924. package/dist/src/ui/components/bubble-layout.js.map +0 -1
  925. package/dist/src/ui/components/code-block-truncate.js.map +0 -1
  926. package/dist/src/ui/components/copy-flash-banner.js.map +0 -1
  927. package/dist/src/ui/components/council-info-card.js.map +0 -1
  928. package/dist/src/ui/components/council-leader-bubble.js.map +0 -1
  929. package/dist/src/ui/components/council-message-bubble.js.map +0 -1
  930. package/dist/src/ui/components/council-phase-timeline.js.map +0 -1
  931. package/dist/src/ui/components/council-placeholder-bubble.js.map +0 -1
  932. package/dist/src/ui/components/council-question-card.js.map +0 -1
  933. package/dist/src/ui/components/council-status-list.js.map +0 -1
  934. package/dist/src/ui/components/council-synthesis-banner.js.map +0 -1
  935. package/dist/src/ui/components/diff-view.js.map +0 -1
  936. package/dist/src/ui/components/halt-recovery-card.js.map +0 -1
  937. package/dist/src/ui/components/hero-logo.js.map +0 -1
  938. package/dist/src/ui/components/init-new-form-card.js.map +0 -1
  939. package/dist/src/ui/components/lsp-views.js.map +0 -1
  940. package/dist/src/ui/components/media-views.js.map +0 -1
  941. package/dist/src/ui/components/message-view.js.map +0 -1
  942. package/dist/src/ui/components/point-to-existing-form-card.js.map +0 -1
  943. package/dist/src/ui/components/prompt-box.js.map +0 -1
  944. package/dist/src/ui/components/role-palette.js.map +0 -1
  945. package/dist/src/ui/components/session-header.js.map +0 -1
  946. package/dist/src/ui/components/slash-inline-menu.js.map +0 -1
  947. package/dist/src/ui/components/structured-response-view.js.map +0 -1
  948. package/dist/src/ui/components/task-list-panel.js.map +0 -1
  949. package/dist/src/ui/components/tool-group.js.map +0 -1
  950. package/dist/src/ui/components/tool-result-views.js.map +0 -1
  951. package/dist/src/ui/components/use-pair-quote-buffer.js.map +0 -1
  952. package/dist/src/ui/constants.js.map +0 -1
  953. package/dist/src/ui/hooks/use-agent-editor.js.map +0 -1
  954. package/dist/src/ui/hooks/use-mcp-editor.js.map +0 -1
  955. package/dist/src/ui/hooks/use-model-picker.js.map +0 -1
  956. package/dist/src/ui/hooks/useTypeahead.js.map +0 -1
  957. package/dist/src/ui/markdown.js.map +0 -1
  958. package/dist/src/ui/mcp-modal-types.js.map +0 -1
  959. package/dist/src/ui/mcp-modal.js.map +0 -1
  960. package/dist/src/ui/modals/api-key-modal.js.map +0 -1
  961. package/dist/src/ui/modals/connect-modal.js.map +0 -1
  962. package/dist/src/ui/modals/model-picker-modal.js.map +0 -1
  963. package/dist/src/ui/modals/sandbox-picker-modal.js.map +0 -1
  964. package/dist/src/ui/modals/update-modal.js.map +0 -1
  965. package/dist/src/ui/modals/wallet-picker-modal.js.map +0 -1
  966. package/dist/src/ui/picker-providers.js.map +0 -1
  967. package/dist/src/ui/plan.js.map +0 -1
  968. package/dist/src/ui/schedule-modal.js.map +0 -1
  969. package/dist/src/ui/slash/__tests__/clear.test.js.map +0 -1
  970. package/dist/src/ui/slash/__tests__/compact.test.js.map +0 -1
  971. package/dist/src/ui/slash/__tests__/cost.test.js.map +0 -1
  972. package/dist/src/ui/slash/__tests__/discuss.test.js.map +0 -1
  973. package/dist/src/ui/slash/__tests__/execute.test.js.map +0 -1
  974. package/dist/src/ui/slash/__tests__/expand.test.js.map +0 -1
  975. package/dist/src/ui/slash/__tests__/ideal.test.js.map +0 -1
  976. package/dist/src/ui/slash/__tests__/menu-parity.test.js.map +0 -1
  977. package/dist/src/ui/slash/__tests__/optimize.test.js.map +0 -1
  978. package/dist/src/ui/slash/__tests__/pin.test.js.map +0 -1
  979. package/dist/src/ui/slash/__tests__/plan.test.js.map +0 -1
  980. package/dist/src/ui/slash/__tests__/status-render.test.js.map +0 -1
  981. package/dist/src/ui/slash/clear.js.map +0 -1
  982. package/dist/src/ui/slash/compact.js.map +0 -1
  983. package/dist/src/ui/slash/cost.js.map +0 -1
  984. package/dist/src/ui/slash/council-inspect.js.map +0 -1
  985. package/dist/src/ui/slash/council.js.map +0 -1
  986. package/dist/src/ui/slash/debug.js.map +0 -1
  987. package/dist/src/ui/slash/discuss.js.map +0 -1
  988. package/dist/src/ui/slash/ee.js.map +0 -1
  989. package/dist/src/ui/slash/execute.js.map +0 -1
  990. package/dist/src/ui/slash/expand.js.map +0 -1
  991. package/dist/src/ui/slash/export.js.map +0 -1
  992. package/dist/src/ui/slash/ideal.js.map +0 -1
  993. package/dist/src/ui/slash/menu-items.js.map +0 -1
  994. package/dist/src/ui/slash/optimize.js.map +0 -1
  995. package/dist/src/ui/slash/pin.js.map +0 -1
  996. package/dist/src/ui/slash/plan.js.map +0 -1
  997. package/dist/src/ui/slash/registry.js.map +0 -1
  998. package/dist/src/ui/slash/route.js.map +0 -1
  999. package/dist/src/ui/slash/route.test.js.map +0 -1
  1000. package/dist/src/ui/slash/status.js.map +0 -1
  1001. package/dist/src/ui/state/active-run.js.map +0 -1
  1002. package/dist/src/ui/status-bar/index.js.map +0 -1
  1003. package/dist/src/ui/status-bar/index.test.js.map +0 -1
  1004. package/dist/src/ui/status-bar/store.js.map +0 -1
  1005. package/dist/src/ui/status-bar/store.test.js.map +0 -1
  1006. package/dist/src/ui/status-bar/tier-badge.js.map +0 -1
  1007. package/dist/src/ui/status-bar/tier-badge.test.js.map +0 -1
  1008. package/dist/src/ui/status-bar/usd-meter.js.map +0 -1
  1009. package/dist/src/ui/status-bar/usd-meter.test.js.map +0 -1
  1010. package/dist/src/ui/syntax-highlight.js.map +0 -1
  1011. package/dist/src/ui/terminal-selection-text.js.map +0 -1
  1012. package/dist/src/ui/theme.js.map +0 -1
  1013. package/dist/src/ui/types.js.map +0 -1
  1014. package/dist/src/ui/utils/__tests__/format.test.js.map +0 -1
  1015. package/dist/src/ui/utils/__tests__/tools.test.js.map +0 -1
  1016. package/dist/src/ui/utils/color.js.map +0 -1
  1017. package/dist/src/ui/utils/format.js.map +0 -1
  1018. package/dist/src/ui/utils/modal.js.map +0 -1
  1019. package/dist/src/ui/utils/text.js.map +0 -1
  1020. package/dist/src/ui/utils/tools.js.map +0 -1
  1021. package/dist/src/usage/__tests__/product-ledger.test.js.map +0 -1
  1022. package/dist/src/usage/cost-log.js.map +0 -1
  1023. package/dist/src/usage/decision-log.js.map +0 -1
  1024. package/dist/src/usage/downgrade.js.map +0 -1
  1025. package/dist/src/usage/downgrade.test.js.map +0 -1
  1026. package/dist/src/usage/estimator.js.map +0 -1
  1027. package/dist/src/usage/estimator.test.js.map +0 -1
  1028. package/dist/src/usage/ledger.js.map +0 -1
  1029. package/dist/src/usage/ledger.test.js.map +0 -1
  1030. package/dist/src/usage/midstream.js.map +0 -1
  1031. package/dist/src/usage/midstream.test.js.map +0 -1
  1032. package/dist/src/usage/product-ledger.js.map +0 -1
  1033. package/dist/src/usage/thresholds.js.map +0 -1
  1034. package/dist/src/usage/thresholds.test.js.map +0 -1
  1035. package/dist/src/usage/types.js.map +0 -1
  1036. package/dist/src/utils/__tests__/auto-council-settings.test.js.map +0 -1
  1037. package/dist/src/utils/__tests__/ee-logger.test.js.map +0 -1
  1038. package/dist/src/utils/__tests__/file-lock.test.js.map +0 -1
  1039. package/dist/src/utils/__tests__/llm-deadline.test.js.map +0 -1
  1040. package/dist/src/utils/__tests__/rate-limit.test.js.map +0 -1
  1041. package/dist/src/utils/__tests__/settings-disabled-models.test.js.map +0 -1
  1042. package/dist/src/utils/__tests__/settings-web-research.test.js.map +0 -1
  1043. package/dist/src/utils/__tests__/slugify.test.js.map +0 -1
  1044. package/dist/src/utils/__tests__/visible-retry.test.js.map +0 -1
  1045. package/dist/src/utils/at-mentions.js.map +0 -1
  1046. package/dist/src/utils/clipboard-image.js.map +0 -1
  1047. package/dist/src/utils/ee-logger.js.map +0 -1
  1048. package/dist/src/utils/file-index.js.map +0 -1
  1049. package/dist/src/utils/file-lock.js.map +0 -1
  1050. package/dist/src/utils/git-root.js.map +0 -1
  1051. package/dist/src/utils/host-clipboard.js.map +0 -1
  1052. package/dist/src/utils/install-manager.js.map +0 -1
  1053. package/dist/src/utils/install-manager.test.js.map +0 -1
  1054. package/dist/src/utils/instructions.js.map +0 -1
  1055. package/dist/src/utils/instructions.test.js.map +0 -1
  1056. package/dist/src/utils/llm-deadline.js.map +0 -1
  1057. package/dist/src/utils/permission-mode.js.map +0 -1
  1058. package/dist/src/utils/permission-mode.test.js.map +0 -1
  1059. package/dist/src/utils/rate-limit.js.map +0 -1
  1060. package/dist/src/utils/redactor.js.map +0 -1
  1061. package/dist/src/utils/redactor.test.js.map +0 -1
  1062. package/dist/src/utils/settings.js.map +0 -1
  1063. package/dist/src/utils/settings.test.js.map +0 -1
  1064. package/dist/src/utils/shell.js.map +0 -1
  1065. package/dist/src/utils/shell.test.js.map +0 -1
  1066. package/dist/src/utils/side-question.js.map +0 -1
  1067. package/dist/src/utils/skills.js.map +0 -1
  1068. package/dist/src/utils/skills.test.js.map +0 -1
  1069. package/dist/src/utils/slugify.js.map +0 -1
  1070. package/dist/src/utils/subagent-display.js.map +0 -1
  1071. package/dist/src/utils/subagent-display.test.js.map +0 -1
  1072. package/dist/src/utils/subagents-settings.test.js.map +0 -1
  1073. package/dist/src/utils/telegram-audio-settings.test.js.map +0 -1
  1074. package/dist/src/utils/update-checker.js.map +0 -1
  1075. package/dist/src/utils/update-checker.test.js.map +0 -1
  1076. package/dist/src/utils/visible-retry.js.map +0 -1
  1077. package/dist/src/verify/__tests__/coverage-parsers.test.js.map +0 -1
  1078. package/dist/src/verify/__tests__/dotnet-recipe.test.js.map +0 -1
  1079. package/dist/src/verify/checkpoint.js.map +0 -1
  1080. package/dist/src/verify/checkpoint.test.js.map +0 -1
  1081. package/dist/src/verify/coverage-parsers.js.map +0 -1
  1082. package/dist/src/verify/entrypoint.js.map +0 -1
  1083. package/dist/src/verify/entrypoint.test.js.map +0 -1
  1084. package/dist/src/verify/environment.js.map +0 -1
  1085. package/dist/src/verify/environment.test.js.map +0 -1
  1086. package/dist/src/verify/evidence.js.map +0 -1
  1087. package/dist/src/verify/orchestrator.js.map +0 -1
  1088. package/dist/src/verify/orchestrator.test.js.map +0 -1
  1089. package/dist/src/verify/recipes.js.map +0 -1
  1090. package/dist/src/verify/retry.js.map +0 -1
  1091. package/dist/src/verify/runtime-prep.test.js.map +0 -1
  1092. package/src/__test-helpers__/catalog-fixtures.ts +0 -57
  1093. package/src/__test-stubs__/ee-server.ts +0 -173
  1094. package/src/__test-stubs__/vitest-setup.ts +0 -36
  1095. package/src/__tests__/council/bubble-layout.test.ts +0 -45
  1096. package/src/__tests__/council/code-block-truncate.test.ts +0 -50
  1097. package/src/__tests__/council/role-palette.test.ts +0 -66
  1098. package/src/__tests__/first-run-wizard.test.ts +0 -9
  1099. package/src/agent-harness/__tests__/cli-flags.spec.ts +0 -35
  1100. package/src/agent-harness/__tests__/driver.spec.ts +0 -154
  1101. package/src/agent-harness/__tests__/idle.spec.ts +0 -90
  1102. package/src/agent-harness/__tests__/mock-llm.spec.ts +0 -126
  1103. package/src/agent-harness/__tests__/mock-model.spec.ts +0 -195
  1104. package/src/agent-harness/__tests__/predicate.spec.ts +0 -33
  1105. package/src/agent-harness/__tests__/protocol.spec.ts +0 -62
  1106. package/src/agent-harness/__tests__/schema.spec.ts +0 -81
  1107. package/src/agent-harness/__tests__/selector.spec.ts +0 -82
  1108. package/src/agent-harness/__tests__/sidechannel.spec.ts +0 -40
  1109. package/src/agent-harness/__tests__/spec-helpers.spec.ts +0 -76
  1110. package/src/agent-harness/index.ts +0 -24
  1111. package/src/agent-harness/mock-model.ts +0 -445
  1112. package/src/agent-harness/test-spawn.ts +0 -221
  1113. package/src/billing/index.ts +0 -5
  1114. package/src/bun-sqlite.d.ts +0 -15
  1115. package/src/chat/__tests__/broadcast-bus.test.ts +0 -90
  1116. package/src/chat/__tests__/channel-manager.test.ts +0 -149
  1117. package/src/chat/__tests__/client.test.ts +0 -118
  1118. package/src/chat/__tests__/discord-integration.test.ts +0 -162
  1119. package/src/chat/__tests__/intent-prompt.test.ts +0 -92
  1120. package/src/chat/__tests__/verdict-resolver.test.ts +0 -336
  1121. package/src/chat/broadcast-bus.ts +0 -53
  1122. package/src/chat/channel-manager.ts +0 -146
  1123. package/src/chat/chat-keychain.ts +0 -137
  1124. package/src/chat/factory.ts +0 -37
  1125. package/src/chat/intent-prompt.ts +0 -72
  1126. package/src/chat/providers/discord/client.ts +0 -91
  1127. package/src/chat/types.ts +0 -42
  1128. package/src/chat/verdict-constants.ts +0 -26
  1129. package/src/chat/verdict-resolver.ts +0 -231
  1130. package/src/cli/__tests__/bw-vault.test.ts +0 -97
  1131. package/src/cli/__tests__/keys-bundle.test.ts +0 -46
  1132. package/src/cli/__tests__/share-cmd.test.ts +0 -197
  1133. package/src/cli/bw-vault.ts +0 -184
  1134. package/src/cli/config/__tests__/model-picker.test.ts +0 -59
  1135. package/src/cli/config/__tests__/provider-fetch.test.ts +0 -38
  1136. package/src/cli/config/index.ts +0 -112
  1137. package/src/cli/config/model-picker.ts +0 -193
  1138. package/src/cli/config/provider-fetch.ts +0 -75
  1139. package/src/cli/config/screen-council.ts +0 -245
  1140. package/src/cli/config/screen-models.ts +0 -104
  1141. package/src/cli/config/screen-providers.ts +0 -197
  1142. package/src/cli/config/tui.ts +0 -153
  1143. package/src/cli/cost-forensics.test.ts +0 -273
  1144. package/src/cli/cost-forensics.ts +0 -337
  1145. package/src/cli/keys-bundle.ts +0 -91
  1146. package/src/cli/keys.test.ts +0 -104
  1147. package/src/cli/keys.ts +0 -816
  1148. package/src/cli/pil-report.ts +0 -202
  1149. package/src/cli/reporter-cmd.ts +0 -154
  1150. package/src/cli/share-cmd.ts +0 -132
  1151. package/src/cli/usage-report.ts +0 -398
  1152. package/src/cloud/index.ts +0 -5
  1153. package/src/council/__tests__/accounting.test.ts +0 -72
  1154. package/src/council/__tests__/audit-replay.test.ts +0 -344
  1155. package/src/council/__tests__/clarifier-max-rounds.test.ts +0 -90
  1156. package/src/council/__tests__/clarifier-options.test.ts +0 -63
  1157. package/src/council/__tests__/clarifier-ready-gate.test.ts +0 -268
  1158. package/src/council/__tests__/cost-aware.test.ts +0 -60
  1159. package/src/council/__tests__/debate-planner-structured.test.ts +0 -236
  1160. package/src/council/__tests__/decisions-lock.test.ts +0 -404
  1161. package/src/council/__tests__/evaluator-metrics.test.ts +0 -513
  1162. package/src/council/__tests__/parse-outcome-fallback.test.ts +0 -125
  1163. package/src/council/__tests__/research-tools.test.ts +0 -239
  1164. package/src/council/__tests__/round-tools.test.ts +0 -334
  1165. package/src/council/__tests__/tool-trace.test.ts +0 -152
  1166. package/src/council/__tests__/types-contract.test.ts +0 -88
  1167. package/src/council/clarifier.ts +0 -507
  1168. package/src/council/context.ts +0 -249
  1169. package/src/council/debate-planner.ts +0 -303
  1170. package/src/council/debate.ts +0 -1179
  1171. package/src/council/decisions-lock.ts +0 -312
  1172. package/src/council/executor.ts +0 -27
  1173. package/src/council/index.ts +0 -956
  1174. package/src/council/leader.ts +0 -281
  1175. package/src/council/llm.ts +0 -939
  1176. package/src/council/phase-events.ts +0 -64
  1177. package/src/council/planner.ts +0 -303
  1178. package/src/council/preflight.ts +0 -86
  1179. package/src/council/prompts.ts +0 -698
  1180. package/src/council/types.ts +0 -304
  1181. package/src/daemon/scheduler.test.ts +0 -128
  1182. package/src/daemon/scheduler.ts +0 -152
  1183. package/src/ee/.gitkeep +0 -0
  1184. package/src/ee/__tests__/bb-design.test.ts +0 -223
  1185. package/src/ee/__tests__/export-transcripts.test.ts +0 -222
  1186. package/src/ee/__tests__/pil-context-bridge.test.ts +0 -59
  1187. package/src/ee/__tests__/pipeline.integration.test.ts +0 -193
  1188. package/src/ee/__tests__/recall-format.test.ts +0 -66
  1189. package/src/ee/__tests__/recall-ledger.test.ts +0 -55
  1190. package/src/ee/__tests__/render-sink-wiring.test.ts +0 -89
  1191. package/src/ee/auth.test.ts +0 -76
  1192. package/src/ee/auth.ts +0 -80
  1193. package/src/ee/bb-design.ts +0 -284
  1194. package/src/ee/bb-retrieval.ts +0 -467
  1195. package/src/ee/bridge.test.ts +0 -283
  1196. package/src/ee/bridge.ts +0 -443
  1197. package/src/ee/client-mode.ts +0 -161
  1198. package/src/ee/client.test.ts +0 -201
  1199. package/src/ee/client.ts +0 -683
  1200. package/src/ee/council-bridge.ts +0 -89
  1201. package/src/ee/embedding-cache.ts +0 -42
  1202. package/src/ee/export-transcripts.ts +0 -160
  1203. package/src/ee/extract-session.test.ts +0 -231
  1204. package/src/ee/extract-session.ts +0 -71
  1205. package/src/ee/health.ts +0 -83
  1206. package/src/ee/index.ts +0 -33
  1207. package/src/ee/intercept.test.ts +0 -197
  1208. package/src/ee/intercept.ts +0 -168
  1209. package/src/ee/judge.test.ts +0 -213
  1210. package/src/ee/judge.ts +0 -126
  1211. package/src/ee/mistake-detector.test.ts +0 -252
  1212. package/src/ee/mistake-detector.ts +0 -297
  1213. package/src/ee/offline-queue.test.ts +0 -302
  1214. package/src/ee/offline-queue.ts +0 -205
  1215. package/src/ee/phase-outcome.test.ts +0 -107
  1216. package/src/ee/phase-outcome.ts +0 -165
  1217. package/src/ee/phase-tracker.test.ts +0 -175
  1218. package/src/ee/phase-tracker.ts +0 -180
  1219. package/src/ee/posttool.test.ts +0 -81
  1220. package/src/ee/posttool.ts +0 -16
  1221. package/src/ee/prompt-stale.test.ts +0 -92
  1222. package/src/ee/prompt-stale.ts +0 -39
  1223. package/src/ee/recall-ledger.ts +0 -71
  1224. package/src/ee/recall-mirror.test.ts +0 -74
  1225. package/src/ee/render.test.ts +0 -74
  1226. package/src/ee/render.ts +0 -68
  1227. package/src/ee/scope.test.ts +0 -112
  1228. package/src/ee/scope.ts +0 -93
  1229. package/src/ee/search.ts +0 -259
  1230. package/src/ee/session-trajectory.test.ts +0 -139
  1231. package/src/ee/session-trajectory.ts +0 -226
  1232. package/src/ee/tenant.ts +0 -14
  1233. package/src/ee/touch.test.ts +0 -73
  1234. package/src/ee/transcript-emit.ts +0 -174
  1235. package/src/ee/types.ts +0 -432
  1236. package/src/flow/.gitkeep +0 -0
  1237. package/src/flow/__tests__/migration.test.ts +0 -133
  1238. package/src/flow/__tests__/parser.test.ts +0 -77
  1239. package/src/flow/__tests__/run-manager-product.test.ts +0 -59
  1240. package/src/flow/__tests__/run-manager.test.ts +0 -95
  1241. package/src/flow/__tests__/scaffold-checkpoint.test.ts +0 -113
  1242. package/src/flow/__tests__/scaffold.test.ts +0 -57
  1243. package/src/flow/__tests__/warning-persist.test.ts +0 -112
  1244. package/src/flow/artifact-io.ts +0 -41
  1245. package/src/flow/compaction/__tests__/compress.test.ts +0 -69
  1246. package/src/flow/compaction/__tests__/extract.test.ts +0 -74
  1247. package/src/flow/compaction/__tests__/preserve.test.ts +0 -69
  1248. package/src/flow/compaction/compress.ts +0 -67
  1249. package/src/flow/compaction/extract.ts +0 -60
  1250. package/src/flow/compaction/index.ts +0 -86
  1251. package/src/flow/compaction/preserve.ts +0 -48
  1252. package/src/flow/index.ts +0 -18
  1253. package/src/flow/migration.ts +0 -139
  1254. package/src/flow/parser.ts +0 -78
  1255. package/src/flow/run-manager.ts +0 -162
  1256. package/src/flow/scaffold-checkpoint.ts +0 -132
  1257. package/src/flow/scaffold.ts +0 -52
  1258. package/src/flow/warning-persist.ts +0 -84
  1259. package/src/generated/version.ts +0 -5
  1260. package/src/gsd/.gitkeep +0 -0
  1261. package/src/gsd/__tests__/complexity.test.ts +0 -0
  1262. package/src/gsd/__tests__/directives.test.ts +0 -88
  1263. package/src/gsd/__tests__/gray-areas.test.ts +0 -33
  1264. package/src/gsd/__tests__/types.test.ts +0 -91
  1265. package/src/gsd/complexity.ts +0 -124
  1266. package/src/gsd/directives.ts +0 -141
  1267. package/src/gsd/gray-areas.ts +0 -144
  1268. package/src/gsd/index.ts +0 -1
  1269. package/src/gsd/types.ts +0 -63
  1270. package/src/headless/__tests__/council-answers.test.ts +0 -300
  1271. package/src/headless/council-answers.ts +0 -152
  1272. package/src/headless/output.test.ts +0 -201
  1273. package/src/headless/output.ts +0 -312
  1274. package/src/hooks/config.ts +0 -41
  1275. package/src/hooks/index.ts +0 -569
  1276. package/src/hooks/types.ts +0 -263
  1277. package/src/index.ts +0 -1762
  1278. package/src/lsp/builtins.test.ts +0 -129
  1279. package/src/lsp/builtins.ts +0 -453
  1280. package/src/lsp/client.ts +0 -342
  1281. package/src/lsp/manager.test.ts +0 -198
  1282. package/src/lsp/manager.ts +0 -343
  1283. package/src/lsp/npm-cache.test.ts +0 -70
  1284. package/src/lsp/npm-cache.ts +0 -111
  1285. package/src/lsp/runtime.ts +0 -70
  1286. package/src/lsp/smoke.test.ts +0 -74
  1287. package/src/lsp/types.ts +0 -119
  1288. package/src/maintain/__tests__/codebase-intel.test.ts +0 -320
  1289. package/src/maintain/__tests__/gh-create-pr.test.ts +0 -195
  1290. package/src/maintain/__tests__/pr-builder.test.ts +0 -282
  1291. package/src/maintain/__tests__/repo-map.test.ts +0 -128
  1292. package/src/maintain/__tests__/task-runner.test.ts +0 -347
  1293. package/src/maintain/codebase-intel.ts +0 -595
  1294. package/src/maintain/gh-create-pr.ts +0 -148
  1295. package/src/maintain/index.ts +0 -14
  1296. package/src/maintain/pr-builder.ts +0 -373
  1297. package/src/maintain/repo-map.ts +0 -205
  1298. package/src/maintain/task-runner.ts +0 -481
  1299. package/src/maintain/types.ts +0 -49
  1300. package/src/mcp/__tests__/auto-setup.test.ts +0 -88
  1301. package/src/mcp/__tests__/cap-tool-result.test.ts +0 -65
  1302. package/src/mcp/__tests__/ee-tools.test.ts +0 -248
  1303. package/src/mcp/__tests__/forensics-tools.test.ts +0 -66
  1304. package/src/mcp/__tests__/harness-driver-action-tools.spec.ts +0 -116
  1305. package/src/mcp/__tests__/harness-driver-async-tools.spec.ts +0 -129
  1306. package/src/mcp/__tests__/harness-driver-read-tools.spec.ts +0 -140
  1307. package/src/mcp/__tests__/harness-driver-security.spec.ts +0 -69
  1308. package/src/mcp/__tests__/harness-driver.spec.ts +0 -21
  1309. package/src/mcp/__tests__/lazy-schema.spec.ts +0 -173
  1310. package/src/mcp/__tests__/lsp-tools.test.ts +0 -72
  1311. package/src/mcp/__tests__/mcp-keychain.test.ts +0 -46
  1312. package/src/mcp/__tests__/research-onboarding.test.ts +0 -163
  1313. package/src/mcp/__tests__/runtime-hydration.test.ts +0 -86
  1314. package/src/mcp/__tests__/runtime-output-cap.test.ts +0 -49
  1315. package/src/mcp/__tests__/runtime-sanitize.test.ts +0 -44
  1316. package/src/mcp/__tests__/self-verify-jobs.test.ts +0 -102
  1317. package/src/mcp/__tests__/smart-filter.test.ts +0 -139
  1318. package/src/mcp/__tests__/tools-server.smoke.test.ts +0 -41
  1319. package/src/mcp/auto-setup.ts +0 -99
  1320. package/src/mcp/cap-tool-result.ts +0 -68
  1321. package/src/mcp/catalog.ts +0 -155
  1322. package/src/mcp/ee-tools.ts +0 -204
  1323. package/src/mcp/forensics-tools.ts +0 -65
  1324. package/src/mcp/lsp-tools.ts +0 -78
  1325. package/src/mcp/mcp-keychain.ts +0 -85
  1326. package/src/mcp/oauth-callback.ts +0 -75
  1327. package/src/mcp/oauth-provider.ts +0 -128
  1328. package/src/mcp/opentui-spawn.ts +0 -64
  1329. package/src/mcp/parse-headers.test.ts +0 -54
  1330. package/src/mcp/parse-headers.ts +0 -35
  1331. package/src/mcp/research-onboarding.ts +0 -143
  1332. package/src/mcp/runtime.ts +0 -182
  1333. package/src/mcp/self-verify-jobs.ts +0 -137
  1334. package/src/mcp/smart-filter.ts +0 -138
  1335. package/src/mcp/smoke.test.ts +0 -170
  1336. package/src/mcp/tools-server.ts +0 -174
  1337. package/src/mcp/validate.ts +0 -48
  1338. package/src/models/__tests__/registry.test.ts +0 -95
  1339. package/src/models/catalog-client.ts +0 -234
  1340. package/src/models/catalog-gemini.test.ts +0 -52
  1341. package/src/models/catalog-url.test.ts +0 -27
  1342. package/src/models/catalog-validation.test.ts +0 -74
  1343. package/src/models/catalog.README.md +0 -136
  1344. package/src/models/catalog.json +0 -349
  1345. package/src/models/classify-tier.ts +0 -48
  1346. package/src/models/index.ts +0 -9
  1347. package/src/models/registry.ts +0 -87
  1348. package/src/ops/__tests__/doctor-council-mcp.test.ts +0 -161
  1349. package/src/ops/__tests__/doctor-ee-health.test.ts +0 -129
  1350. package/src/ops/bug-report.test.ts +0 -172
  1351. package/src/ops/bug-report.ts +0 -80
  1352. package/src/ops/doctor.test.ts +0 -108
  1353. package/src/ops/doctor.ts +0 -366
  1354. package/src/orchestrator/__tests__/agent-base-url-switch.test.ts +0 -87
  1355. package/src/orchestrator/__tests__/batch-turn-runner.test.ts +0 -186
  1356. package/src/orchestrator/__tests__/council-manager.test.ts +0 -171
  1357. package/src/orchestrator/__tests__/cross-turn-dedup.test.ts +0 -201
  1358. package/src/orchestrator/__tests__/current-call-id.test.ts +0 -160
  1359. package/src/orchestrator/__tests__/error-forensics.test.ts +0 -99
  1360. package/src/orchestrator/__tests__/flow-resume.test.ts +0 -71
  1361. package/src/orchestrator/__tests__/humanize-api-error.test.ts +0 -74
  1362. package/src/orchestrator/__tests__/message-processor.test.ts +0 -201
  1363. package/src/orchestrator/__tests__/message-write-ahead.test.ts +0 -170
  1364. package/src/orchestrator/__tests__/read-path-budget.test.ts +0 -170
  1365. package/src/orchestrator/__tests__/retry-classifier.test.ts +0 -131
  1366. package/src/orchestrator/__tests__/retry-stream.test.ts +0 -186
  1367. package/src/orchestrator/__tests__/route-feedback.test.ts +0 -55
  1368. package/src/orchestrator/__tests__/stream-runner.test.ts +0 -201
  1369. package/src/orchestrator/__tests__/sub-agent-model-tier.test.ts +0 -53
  1370. package/src/orchestrator/__tests__/usage-events-shape.test.ts +0 -80
  1371. package/src/orchestrator/__tests__/usage-normalizer-c1.test.ts +0 -172
  1372. package/src/orchestrator/__tests__/usage-shape-threading.test.ts +0 -111
  1373. package/src/orchestrator/__tests__/write-ahead.test.ts +0 -162
  1374. package/src/orchestrator/abort.test.ts +0 -37
  1375. package/src/orchestrator/abort.ts +0 -51
  1376. package/src/orchestrator/agent-options.ts +0 -167
  1377. package/src/orchestrator/agent.test.ts +0 -191
  1378. package/src/orchestrator/batch-turn-runner.ts +0 -425
  1379. package/src/orchestrator/batch-utils.ts +0 -340
  1380. package/src/orchestrator/cleanup.test.ts +0 -86
  1381. package/src/orchestrator/compaction.test.ts +0 -200
  1382. package/src/orchestrator/compaction.ts +0 -626
  1383. package/src/orchestrator/council-manager.ts +0 -572
  1384. package/src/orchestrator/cross-turn-dedup.ts +0 -208
  1385. package/src/orchestrator/delegations.test.ts +0 -145
  1386. package/src/orchestrator/delegations.ts +0 -370
  1387. package/src/orchestrator/error-utils.ts +0 -165
  1388. package/src/orchestrator/flow-resume.ts +0 -54
  1389. package/src/orchestrator/grounding-check.test.ts +0 -111
  1390. package/src/orchestrator/grounding-check.ts +0 -138
  1391. package/src/orchestrator/interrupted-turn.test.ts +0 -39
  1392. package/src/orchestrator/interrupted-turn.ts +0 -27
  1393. package/src/orchestrator/message-processor.ts +0 -3364
  1394. package/src/orchestrator/message-seq.test.ts +0 -29
  1395. package/src/orchestrator/message-seq.ts +0 -19
  1396. package/src/orchestrator/orchestrator.ts +0 -2752
  1397. package/src/orchestrator/pending-calls.test.ts +0 -226
  1398. package/src/orchestrator/pending-calls.ts +0 -240
  1399. package/src/orchestrator/prompts.ts +0 -579
  1400. package/src/orchestrator/provider-options-shape.spec.ts +0 -67
  1401. package/src/orchestrator/provider-options-shape.ts +0 -70
  1402. package/src/orchestrator/read-path-budget.ts +0 -205
  1403. package/src/orchestrator/reasoning.test.ts +0 -114
  1404. package/src/orchestrator/reasoning.ts +0 -116
  1405. package/src/orchestrator/repair-tool-call.ts +0 -54
  1406. package/src/orchestrator/repetition-detector.test.ts +0 -127
  1407. package/src/orchestrator/repetition-detector.ts +0 -140
  1408. package/src/orchestrator/retry-classifier.ts +0 -140
  1409. package/src/orchestrator/retry-stream.ts +0 -159
  1410. package/src/orchestrator/sandbox.test.ts +0 -117
  1411. package/src/orchestrator/scope-ceiling.test.ts +0 -215
  1412. package/src/orchestrator/scope-ceiling.ts +0 -234
  1413. package/src/orchestrator/scope-reminder.test.ts +0 -232
  1414. package/src/orchestrator/scope-reminder.ts +0 -230
  1415. package/src/orchestrator/stall-rescue.test.ts +0 -100
  1416. package/src/orchestrator/stall-rescue.ts +0 -95
  1417. package/src/orchestrator/stall-watchdog.test.ts +0 -83
  1418. package/src/orchestrator/stall-watchdog.ts +0 -87
  1419. package/src/orchestrator/stream-runner.ts +0 -939
  1420. package/src/orchestrator/sub-agent-cap.test.ts +0 -227
  1421. package/src/orchestrator/sub-agent-cap.ts +0 -240
  1422. package/src/orchestrator/sub-agent-model-tier.ts +0 -58
  1423. package/src/orchestrator/subagent-compactor.spec.ts +0 -332
  1424. package/src/orchestrator/subagent-compactor.ts +0 -456
  1425. package/src/orchestrator/text-tool-call-detector.test.ts +0 -99
  1426. package/src/orchestrator/text-tool-call-detector.ts +0 -200
  1427. package/src/orchestrator/token-counter.test.ts +0 -69
  1428. package/src/orchestrator/token-counter.ts +0 -81
  1429. package/src/orchestrator/tool-args-hash.test.ts +0 -121
  1430. package/src/orchestrator/tool-args-hash.ts +0 -221
  1431. package/src/orchestrator/tool-args-repair.test.ts +0 -156
  1432. package/src/orchestrator/tool-args-repair.ts +0 -227
  1433. package/src/orchestrator/tool-loop-cap.test.ts +0 -193
  1434. package/src/orchestrator/tool-loop-cap.ts +0 -174
  1435. package/src/orchestrator/tool-repetition-detector.test.ts +0 -119
  1436. package/src/orchestrator/tool-repetition-detector.ts +0 -0
  1437. package/src/orchestrator/tool-utils.ts +0 -214
  1438. package/src/orchestrator/turn-runner-deps.ts +0 -85
  1439. package/src/pil/__tests__/budget.test.ts +0 -39
  1440. package/src/pil/__tests__/clarity-gate.test.ts +0 -299
  1441. package/src/pil/__tests__/config.test.ts +0 -78
  1442. package/src/pil/__tests__/discovery-cache.test.ts +0 -45
  1443. package/src/pil/__tests__/discovery-types.test.ts +0 -68
  1444. package/src/pil/__tests__/discovery.test.ts +0 -141
  1445. package/src/pil/__tests__/dual-run.test.ts +0 -53
  1446. package/src/pil/__tests__/layer1-intent-trace.test.ts +0 -142
  1447. package/src/pil/__tests__/layer1-intent.test.ts +0 -365
  1448. package/src/pil/__tests__/layer15-context-scan.test.ts +0 -76
  1449. package/src/pil/__tests__/layer16-clarity.test.ts +0 -184
  1450. package/src/pil/__tests__/layer17-feasibility.test.ts +0 -42
  1451. package/src/pil/__tests__/layer18-acceptance.test.ts +0 -116
  1452. package/src/pil/__tests__/layer2-personality.test.ts +0 -63
  1453. package/src/pil/__tests__/layer3-ee-injection.test.ts +0 -189
  1454. package/src/pil/__tests__/layer3-injected-chunk.test.ts +0 -122
  1455. package/src/pil/__tests__/layer4-gsd.test.ts +0 -109
  1456. package/src/pil/__tests__/layer5-context.test.ts +0 -157
  1457. package/src/pil/__tests__/layer6-output.test.ts +0 -362
  1458. package/src/pil/__tests__/llm-classify.test.ts +0 -140
  1459. package/src/pil/__tests__/native-capabilities-workbook.test.ts +0 -45
  1460. package/src/pil/__tests__/ollama-classify.test.ts +0 -81
  1461. package/src/pil/__tests__/orchestrator-integration.test.ts +0 -107
  1462. package/src/pil/__tests__/pipeline.test.ts +0 -191
  1463. package/src/pil/__tests__/renderer-coverage.test.ts +0 -46
  1464. package/src/pil/__tests__/response-tools.test.ts +0 -239
  1465. package/src/pil/__tests__/schema.test.ts +0 -233
  1466. package/src/pil/__tests__/scoreComplexity.test.ts +0 -134
  1467. package/src/pil/__tests__/scoreSufficiency.test.ts +0 -104
  1468. package/src/pil/__tests__/store.test.ts +0 -49
  1469. package/src/pil/__tests__/task-tier-map.test.ts +0 -41
  1470. package/src/pil/agent-operating-contract.test.ts +0 -84
  1471. package/src/pil/agent-operating-contract.ts +0 -70
  1472. package/src/pil/budget-log.ts +0 -86
  1473. package/src/pil/budget.ts +0 -18
  1474. package/src/pil/cheap-model-playbook.test.ts +0 -191
  1475. package/src/pil/cheap-model-playbook.ts +0 -153
  1476. package/src/pil/cheap-model-workbooks.test.ts +0 -154
  1477. package/src/pil/cheap-model-workbooks.ts +0 -109
  1478. package/src/pil/clarity-gate.ts +0 -188
  1479. package/src/pil/config.ts +0 -25
  1480. package/src/pil/discovery-cache.ts +0 -20
  1481. package/src/pil/discovery-types.ts +0 -97
  1482. package/src/pil/discovery.ts +0 -397
  1483. package/src/pil/index.ts +0 -24
  1484. package/src/pil/layer1-intent.test.ts +0 -520
  1485. package/src/pil/layer1-intent.ts +0 -1236
  1486. package/src/pil/layer15-context-scan.ts +0 -159
  1487. package/src/pil/layer16-clarity.test.ts +0 -35
  1488. package/src/pil/layer16-clarity.ts +0 -417
  1489. package/src/pil/layer17-feasibility.ts +0 -40
  1490. package/src/pil/layer18-acceptance.ts +0 -98
  1491. package/src/pil/layer1_5-complexity-size.test.ts +0 -279
  1492. package/src/pil/layer1_5-complexity-size.ts +0 -175
  1493. package/src/pil/layer2-personality.ts +0 -46
  1494. package/src/pil/layer3-ee-injection.ts +0 -406
  1495. package/src/pil/layer4-gsd.ts +0 -124
  1496. package/src/pil/layer5-context.ts +0 -171
  1497. package/src/pil/layer6-output.ts +0 -364
  1498. package/src/pil/llm-classify.ts +0 -199
  1499. package/src/pil/native-capabilities-workbook.ts +0 -124
  1500. package/src/pil/ollama-classify.ts +0 -49
  1501. package/src/pil/pipeline.ts +0 -313
  1502. package/src/pil/response-tools.ts +0 -187
  1503. package/src/pil/schema.ts +0 -111
  1504. package/src/pil/session-state.test.ts +0 -88
  1505. package/src/pil/session-state.ts +0 -157
  1506. package/src/pil/store.ts +0 -29
  1507. package/src/pil/task-tier-map.ts +0 -97
  1508. package/src/pil/timeout.ts +0 -10
  1509. package/src/pil/types.ts +0 -168
  1510. package/src/product-loop/__tests__/artifact-io.test.ts +0 -97
  1511. package/src/product-loop/__tests__/assumption-ledger.test.ts +0 -292
  1512. package/src/product-loop/__tests__/backlog-builder.test.ts +0 -200
  1513. package/src/product-loop/__tests__/backlog-store.test.ts +0 -119
  1514. package/src/product-loop/__tests__/cb2-retry-bonus.test.ts +0 -182
  1515. package/src/product-loop/__tests__/circuit-breakers-coverage.test.ts +0 -82
  1516. package/src/product-loop/__tests__/circuit-breakers.test.ts +0 -90
  1517. package/src/product-loop/__tests__/complexity-routing.spec.ts +0 -315
  1518. package/src/product-loop/__tests__/context-policy.test.ts +0 -280
  1519. package/src/product-loop/__tests__/cost-preview.test.ts +0 -118
  1520. package/src/product-loop/__tests__/cost-scoper.test.ts +0 -76
  1521. package/src/product-loop/__tests__/cross-run-memory.test.ts +0 -195
  1522. package/src/product-loop/__tests__/design-output.spec.ts +0 -39
  1523. package/src/product-loop/__tests__/discover.test.ts +0 -98
  1524. package/src/product-loop/__tests__/discovery-context-format.test.ts +0 -111
  1525. package/src/product-loop/__tests__/discovery-council-runner.test.ts +0 -13
  1526. package/src/product-loop/__tests__/discovery-detection.test.ts +0 -180
  1527. package/src/product-loop/__tests__/discovery-ecosystem.test.ts +0 -246
  1528. package/src/product-loop/__tests__/discovery-integration.test.ts +0 -133
  1529. package/src/product-loop/__tests__/discovery-interview.test.ts +0 -305
  1530. package/src/product-loop/__tests__/discovery-migrations.test.ts +0 -75
  1531. package/src/product-loop/__tests__/discovery-persistence.test.ts +0 -171
  1532. package/src/product-loop/__tests__/discovery-prompt-parser.test.ts +0 -77
  1533. package/src/product-loop/__tests__/discovery-prompt-specificity.test.ts +0 -65
  1534. package/src/product-loop/__tests__/discovery-recommender-ecosystem.test.ts +0 -192
  1535. package/src/product-loop/__tests__/discovery-recommender.test.ts +0 -382
  1536. package/src/product-loop/__tests__/discovery-schema.test.ts +0 -102
  1537. package/src/product-loop/__tests__/done-gate-coverage.test.ts +0 -151
  1538. package/src/product-loop/__tests__/done-gate.test.ts +0 -140
  1539. package/src/product-loop/__tests__/ee-extract-wiring.test.ts +0 -222
  1540. package/src/product-loop/__tests__/extract-to-ee.test.ts +0 -205
  1541. package/src/product-loop/__tests__/feedback-routing.test.ts +0 -93
  1542. package/src/product-loop/__tests__/gather-selectable-alts.test.ts +0 -119
  1543. package/src/product-loop/__tests__/hot-path.spec.ts +0 -177
  1544. package/src/product-loop/__tests__/integration.test.ts +0 -350
  1545. package/src/product-loop/__tests__/loop-driver-audit.test.ts +0 -327
  1546. package/src/product-loop/__tests__/loop-driver.test.ts +0 -253
  1547. package/src/product-loop/__tests__/maintenance-task-synthesis.test.ts +0 -78
  1548. package/src/product-loop/__tests__/phase-a1-a3-sprint-runner.test.ts +0 -315
  1549. package/src/product-loop/__tests__/phase-a2-backlog-build.test.ts +0 -189
  1550. package/src/product-loop/__tests__/phase-budget.test.ts +0 -172
  1551. package/src/product-loop/__tests__/phase-orchestrator-integration.test.ts +0 -143
  1552. package/src/product-loop/__tests__/phase-plan.test.ts +0 -241
  1553. package/src/product-loop/__tests__/phase-rituals.test.ts +0 -205
  1554. package/src/product-loop/__tests__/phase-runner.test.ts +0 -454
  1555. package/src/product-loop/__tests__/phase-tracker-bridge.test.ts +0 -85
  1556. package/src/product-loop/__tests__/pick-backend-stack.test.ts +0 -117
  1557. package/src/product-loop/__tests__/product-identity.test.ts +0 -47
  1558. package/src/product-loop/__tests__/progress-snapshot.test.ts +0 -180
  1559. package/src/product-loop/__tests__/reality-anchor.test.ts +0 -58
  1560. package/src/product-loop/__tests__/repo-audit.test.ts +0 -103
  1561. package/src/product-loop/__tests__/repo-brief.test.ts +0 -155
  1562. package/src/product-loop/__tests__/role-memory.test.ts +0 -70
  1563. package/src/product-loop/__tests__/role-registry.test.ts +0 -235
  1564. package/src/product-loop/__tests__/role-routing-ee.test.ts +0 -90
  1565. package/src/product-loop/__tests__/route-decision-emit.test.ts +0 -258
  1566. package/src/product-loop/__tests__/seed-questions.test.ts +0 -33
  1567. package/src/product-loop/__tests__/ship-polish.test.ts +0 -109
  1568. package/src/product-loop/__tests__/sprint-planner.test.ts +0 -166
  1569. package/src/product-loop/__tests__/sprint-runner-backlog.test.ts +0 -248
  1570. package/src/product-loop/__tests__/sprint-runner-emit.test.ts +0 -324
  1571. package/src/product-loop/__tests__/sprint-runner-phase-chunks.test.ts +0 -220
  1572. package/src/product-loop/__tests__/sprint-runner.test.ts +0 -501
  1573. package/src/product-loop/__tests__/sprint-self-verify.test.ts +0 -77
  1574. package/src/product-loop/__tests__/sprint-store.test.ts +0 -98
  1575. package/src/product-loop/__tests__/stakeholder-acl.test.ts +0 -94
  1576. package/src/product-loop/__tests__/state-md-ee-injections.test.ts +0 -229
  1577. package/src/product-loop/__tests__/sufficiency-routing.spec.ts +0 -183
  1578. package/src/product-loop/__tests__/typed-artifacts.test.ts +0 -259
  1579. package/src/product-loop/__tests__/types.test.ts +0 -103
  1580. package/src/product-loop/__tests__/verify-failure-threshold.test.ts +0 -178
  1581. package/src/product-loop/__tests__/verify-failure-tracking.test.ts +0 -154
  1582. package/src/product-loop/__tests__/verify-result.test.ts +0 -60
  1583. package/src/product-loop/artifact-io.ts +0 -239
  1584. package/src/product-loop/assumption-ledger.ts +0 -270
  1585. package/src/product-loop/backlog-builder.ts +0 -253
  1586. package/src/product-loop/backlog-store.ts +0 -62
  1587. package/src/product-loop/circuit-breakers.ts +0 -76
  1588. package/src/product-loop/context-policy.ts +0 -180
  1589. package/src/product-loop/cost-preview.ts +0 -139
  1590. package/src/product-loop/cost-scoper.ts +0 -49
  1591. package/src/product-loop/cross-run-memory.ts +0 -450
  1592. package/src/product-loop/design-output.ts +0 -24
  1593. package/src/product-loop/discover.ts +0 -159
  1594. package/src/product-loop/discovery-context-format.ts +0 -56
  1595. package/src/product-loop/discovery-council-runner.ts +0 -78
  1596. package/src/product-loop/discovery-detection.ts +0 -161
  1597. package/src/product-loop/discovery-ecosystem.ts +0 -239
  1598. package/src/product-loop/discovery-interview.ts +0 -288
  1599. package/src/product-loop/discovery-migrations.ts +0 -40
  1600. package/src/product-loop/discovery-persistence.ts +0 -219
  1601. package/src/product-loop/discovery-prompt-parser.ts +0 -80
  1602. package/src/product-loop/discovery-recommender.ts +0 -514
  1603. package/src/product-loop/discovery-schema.ts +0 -143
  1604. package/src/product-loop/done-gate.ts +0 -224
  1605. package/src/product-loop/feedback-routing.ts +0 -82
  1606. package/src/product-loop/gather.ts +0 -386
  1607. package/src/product-loop/index.ts +0 -1855
  1608. package/src/product-loop/loop-driver.ts +0 -900
  1609. package/src/product-loop/phase-budget.ts +0 -182
  1610. package/src/product-loop/phase-plan.ts +0 -158
  1611. package/src/product-loop/phase-rituals.ts +0 -158
  1612. package/src/product-loop/phase-runner.ts +0 -455
  1613. package/src/product-loop/phase-tracker-bridge.ts +0 -60
  1614. package/src/product-loop/product-identity.ts +0 -11
  1615. package/src/product-loop/progress-snapshot.ts +0 -216
  1616. package/src/product-loop/reality-anchor.ts +0 -45
  1617. package/src/product-loop/repo-audit.ts +0 -314
  1618. package/src/product-loop/repo-brief.ts +0 -235
  1619. package/src/product-loop/role-memory.ts +0 -72
  1620. package/src/product-loop/role-registry.ts +0 -175
  1621. package/src/product-loop/seed-questions.ts +0 -51
  1622. package/src/product-loop/ship-polish.ts +0 -164
  1623. package/src/product-loop/sprint-planner.ts +0 -241
  1624. package/src/product-loop/sprint-runner.ts +0 -801
  1625. package/src/product-loop/sprint-self-verify.ts +0 -189
  1626. package/src/product-loop/sprint-store.ts +0 -96
  1627. package/src/product-loop/stakeholder-acl.ts +0 -82
  1628. package/src/product-loop/typed-artifacts.ts +0 -332
  1629. package/src/product-loop/types.ts +0 -570
  1630. package/src/product-loop/verify-failure-tracking.ts +0 -225
  1631. package/src/product-loop/verify-result.ts +0 -39
  1632. package/src/providers/.gitkeep +0 -0
  1633. package/src/providers/__test-utils__/load-fixture.ts +0 -36
  1634. package/src/providers/__tests__/adapter-oauth-wiring.test.ts +0 -147
  1635. package/src/providers/__tests__/capabilities-cosmetic.test.ts +0 -119
  1636. package/src/providers/__tests__/capabilities-flags.test.ts +0 -166
  1637. package/src/providers/__tests__/capabilities-provider-options.test.ts +0 -232
  1638. package/src/providers/__tests__/capabilities-sanitize.test.ts +0 -66
  1639. package/src/providers/__tests__/capabilities.test.ts +0 -44
  1640. package/src/providers/__tests__/provider-coverage.test.ts +0 -48
  1641. package/src/providers/__tests__/reasoning-roundtrip.test.ts +0 -150
  1642. package/src/providers/__tests__/runtime-integration.test.ts +0 -106
  1643. package/src/providers/__tests__/runtime.test.ts +0 -94
  1644. package/src/providers/__tests__/siliconflow-sse-repair.test.ts +0 -300
  1645. package/src/providers/__tests__/strategies-registry.test.ts +0 -55
  1646. package/src/providers/__tests__/strategies-resolve.test.ts +0 -137
  1647. package/src/providers/__tests__/wire-debug.test.ts +0 -42
  1648. package/src/providers/adapter.test.ts +0 -21
  1649. package/src/providers/adapter.ts +0 -156
  1650. package/src/providers/anthropic.ts +0 -174
  1651. package/src/providers/auth/__tests__/browser-flow.test.ts +0 -230
  1652. package/src/providers/auth/__tests__/device-flow.test.ts +0 -263
  1653. package/src/providers/auth/__tests__/gemini-oauth.test.ts +0 -387
  1654. package/src/providers/auth/__tests__/grok-oauth.test.ts +0 -283
  1655. package/src/providers/auth/__tests__/openai-oauth.test.ts +0 -378
  1656. package/src/providers/auth/__tests__/token-store.test.ts +0 -152
  1657. package/src/providers/auth/browser-flow.ts +0 -140
  1658. package/src/providers/auth/device-flow.ts +0 -221
  1659. package/src/providers/auth/gemini-oauth.ts +0 -351
  1660. package/src/providers/auth/grok-oauth.ts +0 -406
  1661. package/src/providers/auth/openai-oauth.ts +0 -455
  1662. package/src/providers/auth/registry.ts +0 -138
  1663. package/src/providers/auth/token-store.ts +0 -154
  1664. package/src/providers/auth/types.ts +0 -111
  1665. package/src/providers/capabilities.ts +0 -355
  1666. package/src/providers/endpoints.ts +0 -68
  1667. package/src/providers/errors.test.ts +0 -76
  1668. package/src/providers/errors.ts +0 -46
  1669. package/src/providers/gemini.test.ts +0 -46
  1670. package/src/providers/gemini.ts +0 -42
  1671. package/src/providers/index.ts +0 -28
  1672. package/src/providers/keychain.test.ts +0 -100
  1673. package/src/providers/keychain.ts +0 -278
  1674. package/src/providers/mcp-vision-bridge.test.ts +0 -513
  1675. package/src/providers/mcp-vision-bridge.ts +0 -1020
  1676. package/src/providers/ollama.test.ts +0 -46
  1677. package/src/providers/ollama.ts +0 -36
  1678. package/src/providers/openai-compatible.test.ts +0 -63
  1679. package/src/providers/openai-compatible.ts +0 -62
  1680. package/src/providers/openai.test.ts +0 -65
  1681. package/src/providers/openai.ts +0 -56
  1682. package/src/providers/patch-zod-schema.ts +0 -126
  1683. package/src/providers/pricing.test.ts +0 -97
  1684. package/src/providers/pricing.ts +0 -128
  1685. package/src/providers/prompt-cache-key.spec.ts +0 -28
  1686. package/src/providers/runtime-mock.spec.ts +0 -86
  1687. package/src/providers/runtime.ts +0 -311
  1688. package/src/providers/siliconflow-sse-repair.ts +0 -201
  1689. package/src/providers/strategies/anthropic.strategy.ts +0 -25
  1690. package/src/providers/strategies/base.strategy.ts +0 -76
  1691. package/src/providers/strategies/deepseek.strategy.ts +0 -55
  1692. package/src/providers/strategies/google.strategy.ts +0 -28
  1693. package/src/providers/strategies/ollama.strategy.ts +0 -22
  1694. package/src/providers/strategies/openai.strategy.ts +0 -55
  1695. package/src/providers/strategies/registry.ts +0 -43
  1696. package/src/providers/strategies/siliconflow.strategy.ts +0 -28
  1697. package/src/providers/strategies/xai.strategy.ts +0 -33
  1698. package/src/providers/stream-loop.ts +0 -83
  1699. package/src/providers/types.ts +0 -145
  1700. package/src/providers/vision-proxy.test.ts +0 -252
  1701. package/src/providers/vision-proxy.ts +0 -317
  1702. package/src/providers/wire-debug.ts +0 -163
  1703. package/src/reporter/__tests__/acl-check.test.ts +0 -71
  1704. package/src/reporter/__tests__/auto-fire.test.ts +0 -161
  1705. package/src/reporter/__tests__/budget.test.ts +0 -74
  1706. package/src/reporter/__tests__/handlers.test.ts +0 -192
  1707. package/src/reporter/__tests__/query-router.test.ts +0 -115
  1708. package/src/reporter/acl-check.ts +0 -54
  1709. package/src/reporter/auto-fire.ts +0 -168
  1710. package/src/reporter/budget.ts +0 -59
  1711. package/src/reporter/handlers.ts +0 -212
  1712. package/src/reporter/index.ts +0 -210
  1713. package/src/reporter/query-router.ts +0 -51
  1714. package/src/router/.gitkeep +0 -0
  1715. package/src/router/__tests__/step-router.test.ts +0 -150
  1716. package/src/router/classifier/grammars.ts +0 -17
  1717. package/src/router/classifier/index.test.ts +0 -33
  1718. package/src/router/classifier/index.ts +0 -21
  1719. package/src/router/classifier/regex.test.ts +0 -51
  1720. package/src/router/classifier/regex.ts +0 -160
  1721. package/src/router/classifier/tree-sitter.test.ts +0 -26
  1722. package/src/router/classifier/tree-sitter.ts +0 -87
  1723. package/src/router/cold.test.ts +0 -62
  1724. package/src/router/cold.ts +0 -27
  1725. package/src/router/decide.test.ts +0 -209
  1726. package/src/router/decide.ts +0 -509
  1727. package/src/router/health.test.ts +0 -59
  1728. package/src/router/health.ts +0 -49
  1729. package/src/router/provider-sentinel.test.ts +0 -22
  1730. package/src/router/provider-sentinel.ts +0 -20
  1731. package/src/router/role-override.test.ts +0 -37
  1732. package/src/router/step-router.ts +0 -194
  1733. package/src/router/store.ts +0 -47
  1734. package/src/router/types.ts +0 -20
  1735. package/src/router/warm.test.ts +0 -234
  1736. package/src/router/warm.ts +0 -93
  1737. package/src/scaffold/__tests__/continuation-prompt.test.ts +0 -93
  1738. package/src/scaffold/__tests__/continue-as-council.spec.ts +0 -122
  1739. package/src/scaffold/__tests__/dotnet-assembly-name.test.ts +0 -28
  1740. package/src/scaffold/__tests__/fe-scaffold-contents.test.ts +0 -127
  1741. package/src/scaffold/__tests__/init-new.smoke.spec.ts +0 -99
  1742. package/src/scaffold/__tests__/init-new.spec.ts +0 -450
  1743. package/src/scaffold/__tests__/install-bb-templates.spec.ts +0 -86
  1744. package/src/scaffold/__tests__/point-to-existing.spec.ts +0 -114
  1745. package/src/scaffold/bb-ecosystem-apply.ts +0 -457
  1746. package/src/scaffold/bb-quality-gate.ts +0 -287
  1747. package/src/scaffold/continuation-prompt.ts +0 -80
  1748. package/src/scaffold/continue-as-council.ts +0 -99
  1749. package/src/scaffold/init-new.ts +0 -1691
  1750. package/src/scaffold/point-to-existing.ts +0 -83
  1751. package/src/scaffold/resume-from-gate-failures.ts +0 -167
  1752. package/src/self-qa/__tests__/agentic-context.test.ts +0 -104
  1753. package/src/self-qa/__tests__/agentic-loop.test.ts +0 -70
  1754. package/src/self-qa/__tests__/delta-encoder.test.ts +0 -113
  1755. package/src/self-qa/__tests__/judge.test.ts +0 -152
  1756. package/src/self-qa/__tests__/scenario-planner.test.ts +0 -87
  1757. package/src/self-qa/__tests__/spec-emitter.test.ts +0 -67
  1758. package/src/self-qa/agentic-context.ts +0 -211
  1759. package/src/self-qa/agentic-loop.ts +0 -590
  1760. package/src/self-qa/delta-encoder.ts +0 -149
  1761. package/src/self-qa/index.ts +0 -117
  1762. package/src/self-qa/judge.ts +0 -248
  1763. package/src/self-qa/orchestrator.ts +0 -269
  1764. package/src/self-qa/scenario-planner.ts +0 -289
  1765. package/src/self-qa/spec-emitter.ts +0 -152
  1766. package/src/self-qa/types.ts +0 -98
  1767. package/src/storage/__tests__/migrations.test.ts +0 -395
  1768. package/src/storage/__tests__/sweep-stale-pending.test.ts +0 -112
  1769. package/src/storage/__tests__/ui-interaction-log.test.ts +0 -136
  1770. package/src/storage/atomic-io.test.ts +0 -92
  1771. package/src/storage/atomic-io.ts +0 -160
  1772. package/src/storage/config.test.ts +0 -33
  1773. package/src/storage/config.ts +0 -53
  1774. package/src/storage/db.ts +0 -184
  1775. package/src/storage/index.ts +0 -26
  1776. package/src/storage/interaction-log.ts +0 -126
  1777. package/src/storage/migrations.ts +0 -205
  1778. package/src/storage/session-dir.ts +0 -37
  1779. package/src/storage/sessions.ts +0 -225
  1780. package/src/storage/tool-results.ts +0 -56
  1781. package/src/storage/transcript-response-entry.test.ts +0 -115
  1782. package/src/storage/transcript-view.ts +0 -45
  1783. package/src/storage/transcript.test.ts +0 -24
  1784. package/src/storage/transcript.ts +0 -637
  1785. package/src/storage/ui-interaction-log.ts +0 -170
  1786. package/src/storage/usage-cap.test.ts +0 -59
  1787. package/src/storage/usage-cap.ts +0 -81
  1788. package/src/storage/usage.ts +0 -117
  1789. package/src/storage/workspaces.ts +0 -84
  1790. package/src/tools/__tests__/vision-gate.test.ts +0 -66
  1791. package/src/tools/bash-output-cache.test.ts +0 -113
  1792. package/src/tools/bash-output-cache.ts +0 -156
  1793. package/src/tools/bash-output-integration.test.ts +0 -33
  1794. package/src/tools/bash.test.ts +0 -447
  1795. package/src/tools/bash.ts +0 -769
  1796. package/src/tools/computer.test.ts +0 -187
  1797. package/src/tools/computer.ts +0 -632
  1798. package/src/tools/file-tracker.test.ts +0 -101
  1799. package/src/tools/file-tracker.ts +0 -70
  1800. package/src/tools/file.test.ts +0 -151
  1801. package/src/tools/file.ts +0 -203
  1802. package/src/tools/grep.ts +0 -187
  1803. package/src/tools/registry-bash-empty-command.test.ts +0 -64
  1804. package/src/tools/registry-bash-footer.test.ts +0 -95
  1805. package/src/tools/registry-ee-query.test.ts +0 -57
  1806. package/src/tools/registry-session-repeat.test.ts +0 -105
  1807. package/src/tools/registry.test.ts +0 -38
  1808. package/src/tools/registry.ts +0 -704
  1809. package/src/tools/schedule.test.ts +0 -143
  1810. package/src/tools/schedule.ts +0 -610
  1811. package/src/tools/todo-write-snapshot.test.ts +0 -53
  1812. package/src/tools/todo-write-snapshot.ts +0 -63
  1813. package/src/tools/vision-gate.ts +0 -74
  1814. package/src/types/index.ts +0 -550
  1815. package/src/ui/__tests__/picker-providers.test.ts +0 -37
  1816. package/src/ui/agents-modal.tsx +0 -293
  1817. package/src/ui/app.tsx +0 -7084
  1818. package/src/ui/cards/__tests__/product-status-card.test.ts +0 -30
  1819. package/src/ui/cards/product-status-card.tsx +0 -117
  1820. package/src/ui/components/SuggestionOverlay.tsx +0 -38
  1821. package/src/ui/components/Toast.tsx +0 -100
  1822. package/src/ui/components/__tests__/council-leader-bubble.test.ts +0 -16
  1823. package/src/ui/components/__tests__/council-message-bubble.test.ts +0 -85
  1824. package/src/ui/components/__tests__/council-phase-timeline.test.ts +0 -57
  1825. package/src/ui/components/__tests__/council-placeholder-bubble.test.ts +0 -16
  1826. package/src/ui/components/__tests__/council-question-card.test.ts +0 -133
  1827. package/src/ui/components/__tests__/council-synthesis-banner.test.ts +0 -12
  1828. package/src/ui/components/__tests__/task-list-panel.test.ts +0 -37
  1829. package/src/ui/components/__tests__/use-pair-quote-buffer.test.ts +0 -41
  1830. package/src/ui/components/btw-overlay.tsx +0 -66
  1831. package/src/ui/components/bubble-layout.ts +0 -66
  1832. package/src/ui/components/code-block-truncate.ts +0 -24
  1833. package/src/ui/components/copy-flash-banner.tsx +0 -31
  1834. package/src/ui/components/council-info-card.tsx +0 -44
  1835. package/src/ui/components/council-leader-bubble.tsx +0 -40
  1836. package/src/ui/components/council-message-bubble.tsx +0 -110
  1837. package/src/ui/components/council-phase-timeline.tsx +0 -112
  1838. package/src/ui/components/council-placeholder-bubble.tsx +0 -64
  1839. package/src/ui/components/council-question-card.tsx +0 -256
  1840. package/src/ui/components/council-status-list.tsx +0 -111
  1841. package/src/ui/components/council-synthesis-banner.tsx +0 -36
  1842. package/src/ui/components/diff-view.tsx +0 -225
  1843. package/src/ui/components/halt-recovery-card.tsx +0 -84
  1844. package/src/ui/components/hero-logo.tsx +0 -62
  1845. package/src/ui/components/init-new-form-card.tsx +0 -470
  1846. package/src/ui/components/lsp-views.tsx +0 -104
  1847. package/src/ui/components/media-views.tsx +0 -66
  1848. package/src/ui/components/message-view.tsx +0 -442
  1849. package/src/ui/components/point-to-existing-form-card.tsx +0 -136
  1850. package/src/ui/components/prompt-box.tsx +0 -306
  1851. package/src/ui/components/role-palette.ts +0 -62
  1852. package/src/ui/components/session-header.tsx +0 -68
  1853. package/src/ui/components/slash-inline-menu.tsx +0 -63
  1854. package/src/ui/components/structured-response-view.tsx +0 -191
  1855. package/src/ui/components/task-list-panel.tsx +0 -127
  1856. package/src/ui/components/tool-group.tsx +0 -129
  1857. package/src/ui/components/tool-result-views.tsx +0 -258
  1858. package/src/ui/components/use-pair-quote-buffer.ts +0 -23
  1859. package/src/ui/constants.ts +0 -242
  1860. package/src/ui/hooks/use-agent-editor.ts +0 -61
  1861. package/src/ui/hooks/use-mcp-editor.ts +0 -39
  1862. package/src/ui/hooks/use-model-picker.ts +0 -50
  1863. package/src/ui/hooks/useTypeahead.ts +0 -160
  1864. package/src/ui/markdown.tsx +0 -49
  1865. package/src/ui/mcp-modal-types.ts +0 -33
  1866. package/src/ui/mcp-modal.tsx +0 -484
  1867. package/src/ui/modals/api-key-modal.tsx +0 -99
  1868. package/src/ui/modals/connect-modal.tsx +0 -259
  1869. package/src/ui/modals/model-picker-modal.tsx +0 -347
  1870. package/src/ui/modals/sandbox-picker-modal.tsx +0 -99
  1871. package/src/ui/modals/update-modal.tsx +0 -67
  1872. package/src/ui/modals/wallet-picker-modal.tsx +0 -186
  1873. package/src/ui/picker-providers.ts +0 -41
  1874. package/src/ui/plan.tsx +0 -346
  1875. package/src/ui/schedule-modal.tsx +0 -138
  1876. package/src/ui/slash/__tests__/clear.test.ts +0 -86
  1877. package/src/ui/slash/__tests__/compact.test.ts +0 -56
  1878. package/src/ui/slash/__tests__/cost.test.ts +0 -62
  1879. package/src/ui/slash/__tests__/discuss.test.ts +0 -101
  1880. package/src/ui/slash/__tests__/execute.test.ts +0 -86
  1881. package/src/ui/slash/__tests__/expand.test.ts +0 -86
  1882. package/src/ui/slash/__tests__/ideal.test.ts +0 -182
  1883. package/src/ui/slash/__tests__/menu-parity.test.ts +0 -44
  1884. package/src/ui/slash/__tests__/optimize.test.ts +0 -155
  1885. package/src/ui/slash/__tests__/pin.test.ts +0 -47
  1886. package/src/ui/slash/__tests__/plan.test.ts +0 -98
  1887. package/src/ui/slash/__tests__/status-render.test.ts +0 -82
  1888. package/src/ui/slash/clear.ts +0 -89
  1889. package/src/ui/slash/compact.ts +0 -46
  1890. package/src/ui/slash/cost.ts +0 -63
  1891. package/src/ui/slash/council-inspect.ts +0 -188
  1892. package/src/ui/slash/council.ts +0 -30
  1893. package/src/ui/slash/debug.ts +0 -153
  1894. package/src/ui/slash/discuss.ts +0 -71
  1895. package/src/ui/slash/ee.ts +0 -304
  1896. package/src/ui/slash/execute.ts +0 -44
  1897. package/src/ui/slash/expand.ts +0 -51
  1898. package/src/ui/slash/export.ts +0 -309
  1899. package/src/ui/slash/ideal.ts +0 -292
  1900. package/src/ui/slash/menu-items.ts +0 -107
  1901. package/src/ui/slash/optimize.ts +0 -47
  1902. package/src/ui/slash/pin.ts +0 -41
  1903. package/src/ui/slash/plan.ts +0 -62
  1904. package/src/ui/slash/registry.ts +0 -47
  1905. package/src/ui/slash/route.test.ts +0 -82
  1906. package/src/ui/slash/route.ts +0 -43
  1907. package/src/ui/slash/status.ts +0 -36
  1908. package/src/ui/state/active-run.ts +0 -56
  1909. package/src/ui/status-bar/index.test.tsx +0 -154
  1910. package/src/ui/status-bar/index.tsx +0 -126
  1911. package/src/ui/status-bar/store.test.ts +0 -131
  1912. package/src/ui/status-bar/store.ts +0 -332
  1913. package/src/ui/status-bar/tier-badge.test.tsx +0 -38
  1914. package/src/ui/status-bar/tier-badge.tsx +0 -29
  1915. package/src/ui/status-bar/usd-meter.test.tsx +0 -37
  1916. package/src/ui/status-bar/usd-meter.tsx +0 -22
  1917. package/src/ui/syntax-highlight.ts +0 -627
  1918. package/src/ui/terminal-selection-text.ts +0 -72
  1919. package/src/ui/theme.ts +0 -95
  1920. package/src/ui/types.ts +0 -83
  1921. package/src/ui/utils/__tests__/format.test.ts +0 -71
  1922. package/src/ui/utils/__tests__/tools.test.ts +0 -57
  1923. package/src/ui/utils/color.ts +0 -19
  1924. package/src/ui/utils/format.ts +0 -133
  1925. package/src/ui/utils/modal.ts +0 -9
  1926. package/src/ui/utils/text.ts +0 -32
  1927. package/src/ui/utils/tools.ts +0 -137
  1928. package/src/usage/.gitkeep +0 -0
  1929. package/src/usage/__tests__/product-ledger.test.ts +0 -86
  1930. package/src/usage/cost-log.ts +0 -158
  1931. package/src/usage/decision-log.ts +0 -86
  1932. package/src/usage/downgrade.test.ts +0 -86
  1933. package/src/usage/downgrade.ts +0 -88
  1934. package/src/usage/estimator.test.ts +0 -43
  1935. package/src/usage/estimator.ts +0 -58
  1936. package/src/usage/ledger.test.ts +0 -200
  1937. package/src/usage/ledger.ts +0 -253
  1938. package/src/usage/midstream.test.ts +0 -55
  1939. package/src/usage/midstream.ts +0 -51
  1940. package/src/usage/product-ledger.ts +0 -119
  1941. package/src/usage/thresholds.test.ts +0 -83
  1942. package/src/usage/thresholds.ts +0 -74
  1943. package/src/usage/types.ts +0 -41
  1944. package/src/utils/__tests__/auto-council-settings.test.ts +0 -46
  1945. package/src/utils/__tests__/ee-logger.test.ts +0 -197
  1946. package/src/utils/__tests__/file-lock.test.ts +0 -74
  1947. package/src/utils/__tests__/llm-deadline.test.ts +0 -64
  1948. package/src/utils/__tests__/rate-limit.test.ts +0 -42
  1949. package/src/utils/__tests__/settings-disabled-models.test.ts +0 -113
  1950. package/src/utils/__tests__/settings-web-research.test.ts +0 -45
  1951. package/src/utils/__tests__/slugify.test.ts +0 -45
  1952. package/src/utils/__tests__/visible-retry.test.ts +0 -195
  1953. package/src/utils/at-mentions.ts +0 -120
  1954. package/src/utils/clipboard-image.ts +0 -139
  1955. package/src/utils/ee-logger.ts +0 -163
  1956. package/src/utils/file-index.ts +0 -152
  1957. package/src/utils/file-lock.ts +0 -66
  1958. package/src/utils/git-root.ts +0 -17
  1959. package/src/utils/host-clipboard.ts +0 -68
  1960. package/src/utils/install-manager.test.ts +0 -167
  1961. package/src/utils/install-manager.ts +0 -429
  1962. package/src/utils/instructions.test.ts +0 -112
  1963. package/src/utils/instructions.ts +0 -149
  1964. package/src/utils/llm-deadline.ts +0 -80
  1965. package/src/utils/permission-mode.test.ts +0 -121
  1966. package/src/utils/permission-mode.ts +0 -94
  1967. package/src/utils/rate-limit.ts +0 -21
  1968. package/src/utils/redactor.test.ts +0 -100
  1969. package/src/utils/redactor.ts +0 -223
  1970. package/src/utils/settings.test.ts +0 -181
  1971. package/src/utils/settings.ts +0 -1163
  1972. package/src/utils/shell.test.ts +0 -102
  1973. package/src/utils/shell.ts +0 -204
  1974. package/src/utils/side-question.ts +0 -39
  1975. package/src/utils/skills.test.ts +0 -58
  1976. package/src/utils/skills.ts +0 -207
  1977. package/src/utils/slugify.ts +0 -9
  1978. package/src/utils/subagent-display.test.ts +0 -23
  1979. package/src/utils/subagent-display.ts +0 -11
  1980. package/src/utils/subagents-settings.test.ts +0 -84
  1981. package/src/utils/telegram-audio-settings.test.ts +0 -44
  1982. package/src/utils/update-checker.test.ts +0 -182
  1983. package/src/utils/update-checker.ts +0 -33
  1984. package/src/utils/visible-retry.ts +0 -56
  1985. package/src/verify/__tests__/coverage-parsers.test.ts +0 -86
  1986. package/src/verify/__tests__/dotnet-recipe.test.ts +0 -88
  1987. package/src/verify/checkpoint.test.ts +0 -186
  1988. package/src/verify/checkpoint.ts +0 -239
  1989. package/src/verify/coverage-parsers.ts +0 -76
  1990. package/src/verify/entrypoint.test.ts +0 -293
  1991. package/src/verify/entrypoint.ts +0 -495
  1992. package/src/verify/environment.test.ts +0 -119
  1993. package/src/verify/environment.ts +0 -115
  1994. package/src/verify/evidence.ts +0 -104
  1995. package/src/verify/orchestrator.test.ts +0 -159
  1996. package/src/verify/orchestrator.ts +0 -129
  1997. package/src/verify/recipes.ts +0 -592
  1998. package/src/verify/retry.ts +0 -62
  1999. package/src/verify/runtime-prep.test.ts +0 -47
  2000. /package/dist/src/{pil/layer16-clarity.test.d.ts → council/__tests__/clarification-prompt.test.d.ts} +0 -0
@@ -1,5 +1,9 @@
1
1
  import { describe, expect, it } from "vitest";
2
- import { buildInterviewQuestion, detectClarityGaps, resolveGapsNonInteractive } from "../layer16-clarity.js";
2
+ import { buildInterviewQuestion, resolveGapsNonInteractive } from "../layer16-clarity.js";
3
+ // Phase 2 (2026-06-16): detectClarityGaps + its keyword option-builders were
4
+ // removed (the model now generates every clarification). The surviving helpers
5
+ // — buildInterviewQuestion (render) and resolveGapsNonInteractive (headless
6
+ // default-answer resolution) — are exercised here with model-shaped gaps.
3
7
  const EMPTY_PROJECT = {
4
8
  language: "typescript",
5
9
  framework: null,
@@ -10,122 +14,10 @@ const EMPTY_PROJECT = {
10
14
  { path: "src/billing/", name: "billing", entryFiles: [], exportedSymbols: [] },
11
15
  ],
12
16
  eePatterns: [],
13
- relevantModules: [],
17
+ relevantModules: [{ path: "src/auth/", relevance: "named in prompt", exists: true }],
14
18
  scannedAt: Date.now(),
15
19
  cwd: "/proj",
16
20
  };
17
- describe("detectClarityGaps()", () => {
18
- it("detects outcome gap for vague non-debug prompt", () => {
19
- // PIL-L6 fix — debug now joins the autofill set, so vague debug prompts
20
- // ("fix auth") no longer trigger an outcome question. Use a generate
21
- // prompt instead to still cover the gap-detection path.
22
- const gaps = detectClarityGaps("build something", "generate", 0.7, EMPTY_PROJECT);
23
- const outcomeGap = gaps.find((g) => g.dimension === "outcome");
24
- expect(outcomeGap).toBeDefined();
25
- });
26
- it("does NOT detect outcome gap for vague debug prompt (autofilled)", () => {
27
- const gaps = detectClarityGaps("fix auth", "debug", 0.7, EMPTY_PROJECT);
28
- const outcomeGap = gaps.find((g) => g.dimension === "outcome");
29
- expect(outcomeGap).toBeUndefined();
30
- });
31
- it("does NOT detect an outcome gap for a vague general prompt (B2 intent-swallow guard)", () => {
32
- // B2 — a `general` prompt's only outcome options are tautological
33
- // ("Task completed" / "Issue resolved"). Asking them lets the default
34
- // answer overwrite the user's real request, so the intent collapses to
35
- // "general: Task completed" and the original prompt is lost. Skip the
36
- // askcard so the outcome falls back to the raw request downstream.
37
- const gaps = detectClarityGaps("the project feels messy", "general", 0.7, EMPTY_PROJECT);
38
- const outcomeGap = gaps.find((g) => g.dimension === "outcome");
39
- expect(outcomeGap).toBeUndefined();
40
- });
41
- it("detects scope gap when no file reference", () => {
42
- const gaps = detectClarityGaps("fix auth", "debug", 0.7, EMPTY_PROJECT);
43
- const scopeGap = gaps.find((g) => g.dimension === "scope");
44
- expect(scopeGap).toBeDefined();
45
- });
46
- it("returns no gaps for specific prompt", () => {
47
- const gaps = detectClarityGaps("fix TypeError in src/auth/login.ts:42", "debug", 0.9, EMPTY_PROJECT);
48
- expect(gaps).toHaveLength(0);
49
- });
50
- it("scope options include matching bounded contexts", () => {
51
- const gaps = detectClarityGaps("fix auth", "debug", 0.7, EMPTY_PROJECT);
52
- const scopeGap = gaps.find((g) => g.dimension === "scope");
53
- expect(scopeGap?.options.some((o) => o.includes("auth"))).toBe(true);
54
- });
55
- it("does NOT detect a scope gap for a general prompt with no codebase signal (B2-symmetric scope guard)", () => {
56
- // Live drive (session 8a87aa060c6a): the pure non-codebase prompt "Reply
57
- // with exactly one word: PONG" fired the scope askcard "Which part of the
58
- // codebase should this target?" because countFileReferences /
59
- // hasExplicitScope / hasOperationalScope were all empty — the detector
60
- // assumes every prompt is a codebase task. A general/unclassified prompt
61
- // has no codebase dimension to scope, so the question is nonsensical (and
62
- // its acceptance card is downstream noise). Skip it, symmetric to the B2
63
- // outcome guard; scope falls back to project-root downstream.
64
- const gaps = detectClarityGaps("Reply with exactly one word: PONG", "general", 0.6, EMPTY_PROJECT);
65
- expect(gaps.find((g) => g.dimension === "scope")).toBeUndefined();
66
- // The only candidate gap was scope → general prompt now yields zero gaps,
67
- // so discovery never marks interviewed=true and shows no acceptance card.
68
- expect(gaps).toHaveLength(0);
69
- });
70
- it("STILL detects a scope gap for a classified (non-general) task with no file reference", () => {
71
- // Guard must stay narrow: a real code task that simply omitted a path still
72
- // benefits from the scope-narrowing askcard. Only general/null is skipped.
73
- const gaps = detectClarityGaps("implement the search feature", "generate", 0.7, EMPTY_PROJECT);
74
- expect(gaps.find((g) => g.dimension === "scope")).toBeDefined();
75
- });
76
- it("does NOT detect a scope gap for an image-analysis prompt (image is the scope)", () => {
77
- // Live drive (PR#34 probe): "Take a screenshot of the homepage and analyze
78
- // the diagram.png image to describe its layout" fired the codebase-scope
79
- // askcard "Which part of the codebase should this target?" — nonsensical for
80
- // an image-analysis task. The image (screenshot / diagram.png) IS the scope,
81
- // symmetric to how operational (CI/build) prompts are scoped to the pipeline.
82
- const gaps = detectClarityGaps("Take a screenshot of the homepage and analyze the diagram.png image to describe its layout", "analyze", 0.7, EMPTY_PROJECT);
83
- expect(gaps.find((g) => g.dimension === "scope")).toBeUndefined();
84
- // analyze autofills outcome, so with scope suppressed there are zero gaps →
85
- // no interview, no acceptance card.
86
- expect(gaps).toHaveLength(0);
87
- });
88
- it("STILL detects a scope gap for a code task that mentions an ambiguous non-image word", () => {
89
- // Narrowness guard: image-scope suppression must not swallow real codebase
90
- // tasks. "add a logo to the header" carries no concrete image signal (no
91
- // file extension / screenshot / photo), so the scope askcard stays.
92
- const gaps = detectClarityGaps("add a logo to the header", "generate", 0.7, EMPTY_PROJECT);
93
- expect(gaps.find((g) => g.dimension === "scope")).toBeDefined();
94
- });
95
- it("does NOT detect a scope gap for a web-search / external-info prompt", () => {
96
- // Live drive (tavily probe, session d7a45a2dba30): "search the web for the
97
- // latest vitest release notes" classified taskType=analyze fired the
98
- // codebase-scope askcard and recorded a wrong scope ("src/mcp"). A
99
- // web-search task is scoped to the web, not the codebase — symmetric to the
100
- // image-scope and operational-scope guards.
101
- const gaps = detectClarityGaps("search the web for the latest vitest release notes", "analyze", 0.7, EMPTY_PROJECT);
102
- expect(gaps.find((g) => g.dimension === "scope")).toBeUndefined();
103
- expect(gaps).toHaveLength(0);
104
- });
105
- it("does NOT detect a scope gap for a self-contained computation prompt (data is inline)", () => {
106
- // Live drive (deepseek-vs-grok A/B, session 17fc23f0): "Compute f([3,1,2])
107
- // where f sorts the list ascending then returns the sum of the first two
108
- // elements." classified taskType=analyze (regex:read matched the bare word
109
- // "list", conf 0.80 → skipped the brain) fired BOTH the pil-interview scope
110
- // askcard ("Which part of the codebase should this target?" → auto "Entire
111
- // project") AND the pil-acceptance card. The operand [3,1,2] is supplied
112
- // inline — the task has no codebase dimension to scope. Symmetric to the
113
- // image / web / operational scope guards.
114
- const gaps = detectClarityGaps("Compute f([3,1,2]) where f sorts the list ascending then returns the sum of the first two elements.", "analyze", 0.8, EMPTY_PROJECT);
115
- expect(gaps.find((g) => g.dimension === "scope")).toBeUndefined();
116
- // analyze autofills outcome, so with scope suppressed there are zero gaps →
117
- // no interview, no acceptance card.
118
- expect(gaps).toHaveLength(0);
119
- });
120
- it("STILL detects a scope gap for a code task that embeds a literal but no compute framing", () => {
121
- // Narrowness guard: the inline-literal suppression must not swallow real
122
- // codebase tasks. "set the default retry delays to [100, 200, 400] in the
123
- // config" carries a literal but is scoped to the codebase (no compute verb),
124
- // so the scope askcard stays.
125
- const gaps = detectClarityGaps("set the default retry delays to [100, 200, 400] in the config", "generate", 0.7, EMPTY_PROJECT);
126
- expect(gaps.find((g) => g.dimension === "scope")).toBeDefined();
127
- });
128
- });
129
21
  describe("buildInterviewQuestion()", () => {
130
22
  it("builds a CouncilQuestionData with pil-interview phase", () => {
131
23
  const gap = {
@@ -141,11 +33,35 @@ describe("buildInterviewQuestion()", () => {
141
33
  expect(q.options).toBeDefined();
142
34
  expect(q.options.some((o) => o.kind === "freetext")).toBe(true);
143
35
  });
36
+ it("surfaces the model's reason (gap.description) as the askcard context", () => {
37
+ const gap = {
38
+ dimension: "outcome",
39
+ description: "answering this changes whether we add OAuth or just API keys",
40
+ suggestedQuestion: "Which auth method?",
41
+ options: ["OAuth", "API keys"],
42
+ defaultIndex: 0,
43
+ };
44
+ const q = buildInterviewQuestion(gap, "q-2");
45
+ expect(q.context).toBe("answering this changes whether we add OAuth or just API keys");
46
+ });
144
47
  });
145
48
  describe("resolveGapsNonInteractive()", () => {
146
- it("fills gaps with best-effort from project context", () => {
147
- const gaps = detectClarityGaps("fix auth", "debug", 0.7, EMPTY_PROJECT);
49
+ it("fills gaps with best-effort defaults from the model options + project context", () => {
50
+ const gaps = [
51
+ {
52
+ dimension: "outcome",
53
+ description: "Model-generated clarification #1",
54
+ suggestedQuestion: "What outcome do you expect?",
55
+ options: ["Error resolved", "Other (type free answer)"],
56
+ defaultIndex: 0,
57
+ },
58
+ ];
148
59
  const resolved = resolveGapsNonInteractive(gaps, EMPTY_PROJECT, "fix auth");
60
+ expect(resolved.outcome).toBe("Error resolved");
61
+ expect(resolved.scope.length).toBeGreaterThan(0);
62
+ });
63
+ it("falls back to the raw-derived outcome when there is no outcome gap", () => {
64
+ const resolved = resolveGapsNonInteractive([], EMPTY_PROJECT, "fix the login bug");
149
65
  expect(resolved.outcome).toBeTruthy();
150
66
  expect(resolved.scope.length).toBeGreaterThan(0);
151
67
  });
@@ -75,6 +75,43 @@ describe("layer4Gsd (gsd-native)", () => {
75
75
  const result = await layer4Gsd(makeCtx({ raw: "review the pull request" }));
76
76
  expect(["review", "discuss", "execute"]).toContain(result.gsdPhase);
77
77
  });
78
+ it("routes a question-shaped analyze/debug prompt to the QUESTION directive (no 'state a plan')", async () => {
79
+ // De-robotizing: a plain question must not get the STANDARD "state a 2-3 line
80
+ // plan" scaffold even when L1 classifies it analyze/debug (not "general").
81
+ const q = "why does the build fail intermittently?";
82
+ const result = await layer4Gsd(makeCtx({ raw: q, enriched: q, taskType: "debug", intentKind: "task" }));
83
+ expect(result.enriched).toContain("QUESTION / explanatory");
84
+ expect(result.enriched).not.toContain("State a 2-3 line plan");
85
+ });
86
+ it("treats a genuine general question (general + task) as informational", async () => {
87
+ const q = "what does the enrichment layer do?";
88
+ const result = await layer4Gsd(makeCtx({ raw: q, enriched: q, taskType: "general", intentKind: "task" }));
89
+ expect(result.enriched).toContain("QUESTION / explanatory");
90
+ });
91
+ it("does NOT treat an implementation request as informational even if phrased as a question", async () => {
92
+ // isImplementationIntent guards the question clause: "can you refactor … and
93
+ // wire up …" is a real edit task → STANDARD scaffold, not the QUESTION directive.
94
+ const q = "can you refactor the dropdown and wire up the keyboard handlers?";
95
+ const result = await layer4Gsd(makeCtx({ raw: q, enriched: q, taskType: "refactor", intentKind: "task" }));
96
+ expect(result.enriched).not.toContain("QUESTION / explanatory");
97
+ });
98
+ it("Phase 2b: deliverableKind='answer' is informational even for an imperative (no '?') prompt", async () => {
99
+ // The raw text is a plain imperative — the legacy regex (isQuestionLike /
100
+ // isMetaAnalysisPrompt) would NOT mark it informational. The model's
101
+ // deliverableKind='answer' must override that and route to the QUESTION
102
+ // directive — proving L4 consumes the model signal, not the regex.
103
+ const raw = "go over the auth module and tell me what it does";
104
+ const result = await layer4Gsd(makeCtx({ raw, enriched: raw, taskType: "analyze", intentKind: "task", deliverableKind: "answer" }));
105
+ expect(result.enriched).toContain("QUESTION / explanatory");
106
+ });
107
+ it("Phase 2b: deliverableKind='code' is NOT informational even for a question-shaped prompt", async () => {
108
+ // The raw text reads as a question — the legacy regex would mark it
109
+ // informational. The model's deliverableKind='code' must override that so
110
+ // the STANDARD implement scaffold is used (the deliverable is file edits).
111
+ const raw = "why not just refactor the dropdown and wire the keyboard handlers?";
112
+ const result = await layer4Gsd(makeCtx({ raw, enriched: raw, taskType: "refactor", intentKind: "task", deliverableKind: "code" }));
113
+ expect(result.enriched).not.toContain("QUESTION / explanatory");
114
+ });
78
115
  it("uses ctx.gsdPhase from L1 (unified path) without calling routeTask", async () => {
79
116
  const { routeTask } = await import("../../ee/bridge.js");
80
117
  vi.mocked(routeTask).mockClear();
@@ -1,5 +1,5 @@
1
1
  import { beforeEach, describe, expect, it, vi } from "vitest";
2
- import { applyPilSuffix, getResponseToolSet, layer6Output } from "../layer6-output.js";
2
+ import { applyPilSuffix, getResponseToolSet, isImplementationIntent, isQuestionLike, layer6Output, } from "../layer6-output.js";
3
3
  // Mock bridge for PIL-03 classifyViaBrain tests
4
4
  vi.mock("../../ee/bridge.js", () => ({
5
5
  classifyViaBrain: vi.fn().mockResolvedValue(null),
@@ -55,6 +55,38 @@ describe("applyPilSuffix — per-task-type suffixes", () => {
55
55
  expect(result).toMatch(/Tôi sẽ/); // bilingual
56
56
  }
57
57
  });
58
+ it("de-robotized: NO_PREAMBLE bans only openers, not end-of-turn summary or inter-tool narration", () => {
59
+ // The summary + inter-tool bans were removed because they stripped natural
60
+ // connective tissue (the "máy móc" feel). Inter-tool spam is still removed
61
+ // structurally by stripInterToolNarration() in reasoning.ts. This guards
62
+ // against the bans silently creeping back into the system prompt.
63
+ const result = applyPilSuffix("S", makeCtx("debug", "concise"));
64
+ expect(result).toMatch(/FORBIDDEN OPENERS/);
65
+ expect(result).not.toMatch(/FORBIDDEN END-OF-TURN SUMMARY/);
66
+ expect(result).not.toMatch(/FORBIDDEN INTER-TOOL NARRATION/);
67
+ });
68
+ it("de-robotized: debug suffix is guidance, not a rigid arrow skeleton", () => {
69
+ // "Format = Hypothesis → Root cause → Fix → Verify" produced stilted,
70
+ // label-prefixed answers. It must read as guidance now.
71
+ const result = applyPilSuffix("S", makeCtx("debug", "concise"));
72
+ expect(result).toContain("OUTPUT RULES (debug)");
73
+ expect(result).not.toMatch(/Format = Hypothesis/);
74
+ });
75
+ it("E: appends the anti-bookkeeping note on the natural path for non-question turns", () => {
76
+ // The contract's REPORTING rule leaks as a provenance footer ("evidence only
77
+ // from this turn") on imperative answer turns; the natural path now guards it.
78
+ const result = applyPilSuffix("S", makeCtx("analyze", "concise"));
79
+ expect(result).toMatch(/WRITE FOR THE READER/);
80
+ expect(result).toMatch(/provenance/i);
81
+ });
82
+ it("E: skips the anti-bookkeeping note for question turns (L4 QUESTION directive covers them)", () => {
83
+ const ctx = { ...makeCtx("analyze", "concise"), raw: "why does the enrichment layer fail?" };
84
+ expect(applyPilSuffix("S", ctx)).not.toMatch(/WRITE FOR THE READER/);
85
+ });
86
+ it("E: response-tools path does not add the natural-path bookkeeping note", () => {
87
+ const result = applyPilSuffix("S", makeCtx("analyze", "balanced"), true);
88
+ expect(result).not.toMatch(/WRITE FOR THE READER/);
89
+ });
58
90
  it("PIL-04: response-tools path skips budget+preamble (tool already enforces structure)", () => {
59
91
  const result = applyPilSuffix("S", makeCtx("analyze", "balanced"), true);
60
92
  expect(result).toContain("respond_analyze");
@@ -74,29 +106,33 @@ describe("applyPilSuffix — per-task-type suffixes", () => {
74
106
  expect(result).toMatch(/Do NOT append an evidence-provenance footer/);
75
107
  });
76
108
  });
77
- describe("getResponseToolSet — PIL-04 Tier 1.1 gating", () => {
78
- it("returns response tool for analyze (list-shaped, JSON wins)", () => {
79
- const tools = getResponseToolSet(makeCtx("analyze", null));
109
+ describe("getResponseToolSet — narrow gating (de-robotizing)", () => {
110
+ // Override raw on a typed ctx so the report/question discriminator is exercised.
111
+ const ctxRaw = (raw, t) => ({ ...makeCtx(t, null), raw });
112
+ it("returns response tool for analyze on an explicit report/list request", () => {
113
+ const tools = getResponseToolSet(ctxRaw("audit the orchestrator and list all cost-leak findings", "analyze"));
80
114
  expect(Object.keys(tools)).toContain("respond_analyze");
81
115
  });
82
- it("returns response tool for plan (list-shaped, JSON wins)", () => {
83
- const tools = getResponseToolSet(makeCtx("plan", null));
116
+ it("returns response tool for plan on an explicit plan request", () => {
117
+ const tools = getResponseToolSet(ctxRaw("plan the migration to the new auth flow step by step", "plan"));
84
118
  expect(Object.keys(tools)).toContain("respond_plan");
85
119
  });
120
+ it("returns response tool for debug only on an explicit report request", () => {
121
+ const tools = getResponseToolSet(ctxRaw("audit the failing suite and list each root cause", "debug"));
122
+ expect(Object.keys(tools)).toContain("respond_debug");
123
+ });
86
124
  it("returns empty toolset for generate (code-heavy, markdown wins)", () => {
87
125
  expect(getResponseToolSet(makeCtx("generate", null))).toEqual({});
88
126
  });
89
127
  it("returns empty toolset for refactor (diff-heavy, markdown wins)", () => {
90
128
  expect(getResponseToolSet(makeCtx("refactor", null))).toEqual({});
91
129
  });
92
- it("returns response tool for debug (bounded schema, structural enforcement wins)", () => {
93
- const tools = getResponseToolSet(makeCtx("debug", null));
94
- expect(Object.keys(tools)).toContain("respond_debug");
95
- });
96
130
  it("returns empty toolset for documentation (prose-heavy)", () => {
97
131
  expect(getResponseToolSet(makeCtx("documentation", null))).toEqual({});
98
132
  });
99
- it("returns response tool for general when no providerId is passed (back-compat)", () => {
133
+ it("returns response tool for general regardless of report signal (renders as plain markdown)", () => {
134
+ // general is exempt from the report/question gate: GeneralSchema is pure text
135
+ // and its renderer shows plain markdown, so respond_general is never robotic.
100
136
  const tools = getResponseToolSet(makeCtx("general", null));
101
137
  expect(Object.keys(tools)).toContain("respond_general");
102
138
  });
@@ -113,24 +149,78 @@ describe("getResponseToolSet — PIL-04 Tier 1.1 gating", () => {
113
149
  it("returns empty toolset when taskType is null", () => {
114
150
  expect(getResponseToolSet(makeCtx(null, null))).toEqual({});
115
151
  });
152
+ it("gates the response tool for chitchat turns", () => {
153
+ const ctx = { ...makeCtx("general", null), intentKind: "chitchat" };
154
+ expect(getResponseToolSet(ctx)).toEqual({});
155
+ });
156
+ it("DROPS respond_<task> for question-style debug/analyze/plan (natural markdown path)", () => {
157
+ // The de-robotizing change: a plain QUESTION must not be forced into the
158
+ // rigid respond_* schema + labeled renderer. It falls through to the softened
159
+ // markdown OUTPUT RULES so the answer reads as natural prose.
160
+ expect(getResponseToolSet(ctxRaw("why does the build fail intermittently?", "debug"))).toEqual({});
161
+ expect(getResponseToolSet(ctxRaw("analyze how the enrichment function works", "analyze"))).toEqual({});
162
+ expect(getResponseToolSet(ctxRaw("what is the cleanest way to structure this module?", "plan"))).toEqual({});
163
+ });
164
+ it("KEEPS respond_<task> for explicit report / list / plan requests (EN + VI)", () => {
165
+ const keep = (raw, t) => Object.keys(getResponseToolSet(ctxRaw(raw, t)));
166
+ expect(keep("list all cost leaks in the orchestrator", "analyze")).toContain("respond_analyze");
167
+ expect(keep("review the module and report each finding by severity", "analyze")).toContain("respond_analyze");
168
+ expect(keep("lập kế hoạch migration sang auth flow mới", "plan")).toContain("respond_plan");
169
+ });
170
+ it("DROPS respond_<task> for a QUESTION that merely mentions plan/list (narrow-gate fix)", () => {
171
+ // Live bug (grok interview): a question that QUOTED the phrase "state a 2-3
172
+ // line plan" matched the bare word 'plan' in STRUCTURED_REPORT_RE and forced
173
+ // respond_plan, cramming an introspective answer into a rigid plan schema. A
174
+ // question-shaped prompt must stay on the natural markdown path even when it
175
+ // contains plan/list words.
176
+ expect(getResponseToolSet(ctxRaw("what rules constrain you, e.g. the 'state a 2-3 line plan' directive?", "plan"))).toEqual({});
177
+ expect(getResponseToolSet(ctxRaw("can you list the main points?", "analyze"))).toEqual({});
178
+ expect(getResponseToolSet(ctxRaw("how would you plan the rollout?", "plan"))).toEqual({});
179
+ // Imperative delivery requests are NOT question-shaped → still structured.
180
+ expect(Object.keys(getResponseToolSet(ctxRaw("plan the rollout step by step", "plan")))).toContain("respond_plan");
181
+ });
116
182
  it("drops respond_<task> on an IMPLEMENTATION-intent prompt (no premature terminal answer)", () => {
117
183
  // Live (grok session 19fa8895c41c): an "Improve … implement these fixes"
118
184
  // prompt classified `debug` got respond_debug; the model called it mid-task
119
185
  // as a plan and the turn ended before the edits completed. Implementation
120
186
  // turns must fall through to markdown OUTPUT RULES, not a terminal tool.
187
+ // Implementation intent takes precedence over a report signal.
121
188
  const impl = (raw, t) => ({ ...makeCtx(t, null), raw });
122
189
  expect(getResponseToolSet(impl("Improve the story-list screen. Implement these prioritized fixes: …", "debug"))).toEqual({});
123
190
  expect(getResponseToolSet(impl("Edit ONLY these two files and fix the empty span", "debug"))).toEqual({});
124
191
  expect(getResponseToolSet(impl("refactor the genre dropdown and wire up keyboard handlers", "analyze"))).toEqual({});
125
192
  expect(getResponseToolSet(impl("triển khai các cải tiến đã đề xuất", "plan"))).toEqual({});
126
193
  });
127
- it("KEEPS respond_<task> for pure analysis/plan prompts (narrowness guard)", () => {
128
- // The deliverable here IS a structured report must not be suppressed.
129
- const ana = (raw, t) => ({ ...makeCtx(t, null), raw });
130
- expect(Object.keys(getResponseToolSet(ana("analyze the orchestrator for cost leaks", "analyze")))).toContain("respond_analyze");
131
- expect(Object.keys(getResponseToolSet(ana("why does the build fail intermittently?", "debug")))).toContain("respond_debug");
132
- expect(Object.keys(getResponseToolSet(ana("plan the migration to the new auth flow", "plan")))).toContain("respond_plan");
133
- expect(Object.keys(getResponseToolSet(ana("review the auth module and explain the design", "analyze")))).toContain("respond_analyze");
194
+ });
195
+ describe("getResponseToolSet Phase 2b deliverableKind consume (model overrides regex)", () => {
196
+ const ctxD = (raw, t, deliverableKind) => ({
197
+ ...makeCtx(t, null),
198
+ raw,
199
+ deliverableKind,
200
+ });
201
+ it("deliverableKind='code' DROPS respond_* even when the prompt reads as a report/list", () => {
202
+ // Legacy regex (prefersStructuredReport) would KEEP the tool on "list all …".
203
+ // The model said the deliverable is code → drop it (edits, not a report).
204
+ expect(getResponseToolSet(ctxD("list all cost leaks in the orchestrator", "analyze", "code"))).toEqual({});
205
+ });
206
+ it("deliverableKind='report' KEEPS respond_* even when the prompt is question-shaped", () => {
207
+ // Legacy regex (isQuestionLike) would DROP the tool on "why does …?". The
208
+ // model said the deliverable is a structured report → keep it.
209
+ const tools = getResponseToolSet(ctxD("why does the suite fail — break it down by cause", "analyze", "report"));
210
+ expect(Object.keys(tools)).toContain("respond_analyze");
211
+ });
212
+ it("deliverableKind='answer' DROPS respond_* for non-general even on a report-shaped request", () => {
213
+ expect(getResponseToolSet(ctxD("plan the migration step by step", "plan", "answer"))).toEqual({});
214
+ });
215
+ it("deliverableKind='answer' KEEPS respond_general (general is exempt — renders as plain markdown)", () => {
216
+ const tools = getResponseToolSet(ctxD("what does the enrichment layer do?", "general", "answer"));
217
+ expect(Object.keys(tools)).toContain("respond_general");
218
+ });
219
+ it("falls back to the legacy regex when deliverableKind is absent (null)", () => {
220
+ // No model signal → legacy path: question-shaped analyze drops the tool.
221
+ expect(getResponseToolSet({ ...makeCtx("analyze", null), raw: "why does the build fail?" })).toEqual({});
222
+ // …and an explicit report request keeps it.
223
+ expect(Object.keys(getResponseToolSet({ ...makeCtx("analyze", null), raw: "list all cost leaks" }))).toContain("respond_analyze");
134
224
  });
135
225
  });
136
226
  describe("applyPilSuffix — outputStyle variants", () => {
@@ -294,4 +384,33 @@ describe("layer6Output", () => {
294
384
  expect(result.enriched).toBe(ctx.enriched);
295
385
  });
296
386
  });
387
+ describe("isQuestionLike — Vietnamese yes/no question frames (regression: session f6f7881a5fae)", () => {
388
+ it("detects the live miss: 'check ... dùng được mcp ... không nhé'", () => {
389
+ // The exact prompt that was mis-routed to the implement/verify scaffold.
390
+ expect(isQuestionLike("bạn check xem dùng được mcp muonroi-docs không nhé")).toBe(true);
391
+ // It is NOT an implementation intent, so layer4-gsd's informational gate fires.
392
+ expect(isImplementationIntent("bạn check xem dùng được mcp muonroi-docs không nhé")).toBe(false);
393
+ });
394
+ it("detects common VI yes/no tails", () => {
395
+ expect(isQuestionLike("dùng được không")).toBe(true);
396
+ expect(isQuestionLike("cái này chạy được không vậy")).toBe(true);
397
+ expect(isQuestionLike("đúng không")).toBe(true);
398
+ expect(isQuestionLike("phải không nhỉ")).toBe(true);
399
+ expect(isQuestionLike("test đã pass chưa")).toBe(true);
400
+ expect(isQuestionLike("xong chưa ạ")).toBe(true);
401
+ expect(isQuestionLike("có chạy được không?")).toBe(true);
402
+ });
403
+ it("does NOT treat a mid-sentence negation as a question", () => {
404
+ // "không là hỏng" = "or it breaks" — 'không' is not the clause-final particle.
405
+ expect(isQuestionLike("đừng commit file .env không là lộ key")).toBe(false);
406
+ // Plain imperative with a 'nhé' softener (no 'không'/'chưa' tail) stays a task.
407
+ expect(isQuestionLike("sửa giúp tôi cái này nhé")).toBe(false);
408
+ expect(isQuestionLike("triển khai tính năng login")).toBe(false);
409
+ });
410
+ it("still detects the pre-existing EN/VI question shapes", () => {
411
+ expect(isQuestionLike("why does the build fail?")).toBe(true);
412
+ expect(isQuestionLike("tại sao build lỗi")).toBe(true);
413
+ expect(isQuestionLike("explain the pipeline")).toBe(true);
414
+ });
415
+ });
297
416
  //# sourceMappingURL=layer6-output.test.js.map
@@ -23,6 +23,32 @@ describe("createLlmClassifier (PIL Layer 1 Pass 4)", () => {
23
23
  expect(result?.outputStyle).toBe("concise");
24
24
  expect(result?.confidence).toBeGreaterThan(0.5);
25
25
  });
26
+ it("parses the three-word reply and marks chitchat from the intent word", async () => {
27
+ const handle = installMockModel({ fixture: { stream: textOnlyStream("general,concise,chat") } });
28
+ cleanup = handle.uninstall;
29
+ const factory = (() => handle.model);
30
+ const classify = createLlmClassifier(factory, "deepseek-v4-flash");
31
+ const result = await classify("cảm ơn bạn nhé");
32
+ expect(result?.taskType).toBe("general");
33
+ expect(result?.intentKind).toBe("chitchat");
34
+ });
35
+ it("treats a general QUESTION as task, not chitchat (keep-tools)", async () => {
36
+ const handle = installMockModel({ fixture: { stream: textOnlyStream("general,concise,task") } });
37
+ cleanup = handle.uninstall;
38
+ const factory = (() => handle.model);
39
+ const classify = createLlmClassifier(factory, "deepseek-v4-flash");
40
+ const result = await classify("bạn thử call tool setup_guide xem được không");
41
+ expect(result?.intentKind).toBe("task");
42
+ });
43
+ it("defaults intentKind to task when the model omits the third word (backward compatible)", async () => {
44
+ const handle = installMockModel({ fixture: { stream: textOnlyStream("debug,concise") } });
45
+ cleanup = handle.uninstall;
46
+ const factory = (() => handle.model);
47
+ const classify = createLlmClassifier(factory, "deepseek-v4-flash");
48
+ const result = await classify("fix the failing build");
49
+ expect(result?.taskType).toBe("debug");
50
+ expect(result?.intentKind).toBe("task");
51
+ });
26
52
  it("returns null when the reply cannot be parsed", async () => {
27
53
  const handle = installMockModel({ fixture: { stream: textOnlyStream("¯\\_(ツ)_/¯") } });
28
54
  cleanup = handle.uninstall;
@@ -100,14 +126,35 @@ describe("createLlmClassifier (PIL Layer 1 Pass 4)", () => {
100
126
  expect(result?.taskType).toBe("debug");
101
127
  expect(result?.outputStyle).toBe("concise");
102
128
  });
103
- it("keeps the tiny 16-token budget for non-reasoning models", async () => {
129
+ it("keeps a tiny output budget for non-reasoning models (24 — four comma words)", async () => {
104
130
  const handle = installMockModel({ fixture: { stream: textOnlyStream("generate,concise") } });
105
131
  cleanup = handle.uninstall;
106
132
  const factory = (() => handle.model);
107
133
  const classify = createLlmClassifier(factory, "Qwen/Qwen3-8B"); // reasoning:false
108
134
  await classify("add a new endpoint");
109
135
  const call = handle.calls[0];
110
- expect(call.maxOutputTokens).toBe(16);
136
+ expect(call.maxOutputTokens).toBe(24);
137
+ });
138
+ it("parses the fourth word as the output deliverable (Phase 2b)", async () => {
139
+ const handle = installMockModel({ fixture: { stream: textOnlyStream("debug,concise,task,code") } });
140
+ cleanup = handle.uninstall;
141
+ const factory = (() => handle.model);
142
+ const classify = createLlmClassifier(factory, "deepseek-v4-flash");
143
+ const result = await classify("fix the crash in src/auth/login.ts");
144
+ expect(result?.taskType).toBe("debug");
145
+ expect(result?.deliverableKind).toBe("code");
146
+ });
147
+ it("recovers the deliverable position-independently and defaults to null when absent", async () => {
148
+ const reportHandle = installMockModel({ fixture: { stream: textOnlyStream("analyze,concise,task,report") } });
149
+ cleanup = reportHandle.uninstall;
150
+ const reportClassify = createLlmClassifier((() => reportHandle.model), "deepseek-v4-flash");
151
+ expect((await reportClassify("list every env var the CLI reads"))?.deliverableKind).toBe("report");
152
+ reportHandle.uninstall();
153
+ // Model omits the 4th word → deliverableKind null (consumers fall back to regex).
154
+ const bareHandle = installMockModel({ fixture: { stream: textOnlyStream("debug,concise") } });
155
+ cleanup = bareHandle.uninstall;
156
+ const bareClassify = createLlmClassifier((() => bareHandle.model), "deepseek-v4-flash");
157
+ expect((await bareClassify("fix it"))?.deliverableKind).toBeNull();
111
158
  });
112
159
  });
113
160
  //# sourceMappingURL=llm-classify.test.js.map
@@ -37,7 +37,7 @@
37
37
  * one imperative line targeting that phase's most damaging failure mode. Kept
38
38
  * tight (primacy matters more than detail; tokens are the cost).
39
39
  */
40
- export declare const AGENT_OPERATING_CONTRACT = "[AGENT OPERATING CONTRACT \u2014 read first; applies to every step]\n\n1. BEFORE ACTING: do only what was asked. Never assume scope or facts \u2014 if ambiguous, ask or use defaults; never invent requirements.\n2. READING: base statements on what you read/ran THIS turn. Do not infer contents of files you did not open.\n3. EXECUTING: smallest correct change; never widen scope or mask failures (no `|| true`, skipped tests, or swallowed catch).\n4. WHEN UNSURE: verify and cross-check BEFORE concluding. Bugs need a reproduction; reading code is not proof.\n5. REPORTING: answer ONLY what was asked. Every fact or file:line MUST come from this turn; else label \"unverified\"; do not guess. Synthesize evidence gracefully \u2014 do NOT dump massive verbatim tool outputs into the final answer. Cite concise file:line references. Never claim a build/test ran, or describe edits, you did not actually do this turn; if a check can't run, fix it or say so \u2014 don't imply success.\n\n6. LANGUAGE: Reply in user's detected language for final output. Internal reasoning, tools, and code remain in English.\n\n7. ANTI-M\u00D9 / COMPACTION: After seeing \"[pre-compaction warning at step...\" or \"[context compacted at step...\", decide if you need full prior tool results. Emit PRESERVE_FULL_CONTEXT for full veto this turn, or the lighter KEEP_TOOL_IDS: id1,id2 (ids from prior stub \"(id=...)\") to protect only high-value results (read_file/grep on src/PLAN/error etc are auto-protected). Use the ee_query tool with \"tool-artifact id=XXX\" for on-demand full re-hydrate of elided ones. Self-check \"task finished?\" / \"compacted yet?\". Use EE checkpoints.\n\n[END CONTRACT \u2014 instructions follow]";
40
+ export declare const AGENT_OPERATING_CONTRACT = "[AGENT OPERATING CONTRACT \u2014 read first; applies to every step]\n\n1. BEFORE ACTING: do only what was asked. Never assume scope or facts \u2014 if ambiguous, ask or use defaults; never invent requirements.\n2. READING: base statements on what you read/ran THIS turn. Do not infer contents of files you did not open.\n3. EXECUTING: smallest correct change; never widen scope or mask failures (no `|| true`, skipped tests, or swallowed catch).\n4. WHEN UNSURE: verify and cross-check BEFORE concluding. Bugs need a reproduction; reading code is not proof.\n5. REPORTING: answer ONLY what was asked. Every fact or file:line MUST come from this turn; else label \"unverified\"; do not guess. Synthesize evidence gracefully \u2014 do NOT dump massive verbatim tool outputs into the final answer. Cite concise file:line references. Never claim a build/test ran, or describe edits, you did not actually do this turn; if a check can't run, fix it or say so \u2014 don't imply success.\n\n6. LANGUAGE: Reply in user's detected language for final output. Internal reasoning, tools, and code remain in English.\n\n7. ANTI-M\u00D9 / COMPACTION: After seeing \"[pre-compaction warning at step...\" or \"[context compacted at step...\", decide if you need full prior tool results. Emit PRESERVE_FULL_CONTEXT for full veto this turn, or the lighter KEEP_TOOL_IDS: id1,id2 (ids from prior stub \"(id=...)\") to protect only high-value results (read_file/grep on src/PLAN/error etc are auto-protected). Use the ee_query tool with \"tool-artifact id=XXX\" for on-demand full re-hydrate of elided ones. Self-check \"task finished?\" / \"compacted yet?\". Use EE checkpoints.\n\n8. GIT SAFETY: never push on red \u2014 run the check, await its result in a SEPARATE step, confirm 0 failures, then push. Never `git add -A`/`commit -a`; stage explicitly so secrets (.env, .muonroi-cli/, keys) aren't committed. Never `--no-verify`.\n\n[END CONTRACT \u2014 instructions follow]";
41
41
  export interface ContractSectionOptions {
42
42
  /** Chitchat turns carry no tools and make no factual claims — skip the contract. */
43
43
  chitchat?: boolean;
@@ -49,6 +49,8 @@ export const AGENT_OPERATING_CONTRACT = `[AGENT OPERATING CONTRACT — read firs
49
49
 
50
50
  7. ANTI-MÙ / COMPACTION: After seeing "[pre-compaction warning at step..." or "[context compacted at step...", decide if you need full prior tool results. Emit PRESERVE_FULL_CONTEXT for full veto this turn, or the lighter KEEP_TOOL_IDS: id1,id2 (ids from prior stub "(id=...)") to protect only high-value results (read_file/grep on src/PLAN/error etc are auto-protected). Use the ee_query tool with "tool-artifact id=XXX" for on-demand full re-hydrate of elided ones. Self-check "task finished?" / "compacted yet?". Use EE checkpoints.
51
51
 
52
+ 8. GIT SAFETY: never push on red — run the check, await its result in a SEPARATE step, confirm 0 failures, then push. Never \`git add -A\`/\`commit -a\`; stage explicitly so secrets (.env, .muonroi-cli/, keys) aren't committed. Never \`--no-verify\`.
53
+
52
54
  [END CONTRACT — instructions follow]`;
53
55
  /**
54
56
  * Build the contract block for insertion at the front of the system prompt.
@@ -42,8 +42,13 @@ describe("AGENT_OPERATING_CONTRACT", () => {
42
42
  expect(AGENT_OPERATING_CONTRACT).toMatch(/AGENT OPERATING CONTRACT/i);
43
43
  expect(AGENT_OPERATING_CONTRACT).toMatch(/END CONTRACT/i);
44
44
  });
45
- it("stays compact (under 1800 chars) to preserve attention budget on every turn (anti-mù section added)", () => {
46
- expect(AGENT_OPERATING_CONTRACT.length).toBeLessThan(1800);
45
+ it("carries the git-safety rule (never push on red; no broad git add of secrets)", () => {
46
+ expect(AGENT_OPERATING_CONTRACT).toMatch(/GIT SAFETY/i);
47
+ expect(AGENT_OPERATING_CONTRACT).toMatch(/push on red|never push/i);
48
+ expect(AGENT_OPERATING_CONTRACT).toMatch(/git add -A|stage explicitly/i);
49
+ });
50
+ it("stays compact (under 1900 chars) to preserve attention budget on every turn (git-safety rule added)", () => {
51
+ expect(AGENT_OPERATING_CONTRACT.length).toBeLessThan(1900);
47
52
  });
48
53
  });
49
54
  describe("buildContractSection", () => {
@@ -25,41 +25,41 @@
25
25
  * Wrapped with the `[CRITICAL TOOL-USE RULES ...]` marker so the model knows
26
26
  * to treat these as overrides to anything that follows.
27
27
  */
28
- export const CHEAP_MODEL_PLAYBOOK = `[CRITICAL TOOL-USE RULES — read before invoking any tool; these override defaults that follow]
29
-
30
- 1. Bash output is AUTOMATICALLY cached. Every \`bash\` call returns a \`run_id\`
31
- (e.g. \`bash-1\`) you can re-query via \`bash_output_get(run_id, mode=tail|head|grep|lines)\`.
32
- - When you want only the last N lines: do NOT pipe \`| tail -N\`. Run the
33
- bare command, then call \`bash_output_get(run_id, mode=tail, lines=N)\`.
34
- - Same for \`| head\`, \`| grep PATTERN\`, \`> file\`. Pipes/redirects HIDE
35
- the full output from the cache; \`bash_output_get\` reads from the cache
36
- without re-running.
37
- - This applies to EVERY bash call, not just retries.
38
- - To VIEW a file use \`read_file\` (start_line/end_line) — never sed/cat a
39
- file. \`bash_output_get\` is for COMMAND output, not files.
40
-
41
- 2. Before reading more than 3 files to understand a topic, delegate to
42
- \`task(agent="explore")\`. The sub-agent returns a compressed summary;
43
- you save reading tokens.
44
-
45
- 3. Use the \`grep\` tool (ripgrep) for content search — NOT \`bash\` with
46
- \`grep\` / \`find\` piped.
47
-
48
- 4. When a tool returns \`ERROR: ...\`, do NOT retry the identical call.
49
- Pick a different tool, change inputs meaningfully, or stop and report.
50
-
51
- 5. Fix the ROOT CAUSE, never mask a failure to make it "pass"
52
- (\`continue-on-error\`, swallowed try/catch, skipped/deleted test, \`|| true\`).
53
- If a step fails from a missing secret/config, make it CONDITIONAL (skip when
54
- absent) so it still runs when present — do NOT blanket-ignore it.
55
-
56
- 6. For a build / CI / test failure, read the ACTUAL failure log or stack trace
57
- BEFORE hypothesizing — fix the real error, not a guess from source alone.
58
-
59
- 7. ANTI-MÙ / COMPACTION (for long sessions): On pre-warn or "[context compacted at step...", emit PRESERVE_FULL_CONTEXT (full veto) or lighter KEEP_TOOL_IDS: id1,id2 (from stub id=) to protect specific high-value results. read_file/grep/lsp/bash on src/PLAN/error are auto-kept (idea 1). Use ee.query tool with "tool-artifact id=XXX" for on-demand full. Self-check "task finished?" / "compacted yet?". Use EE checkpoints.
60
-
61
- [END CRITICAL TOOL-USE RULES — your regular instructions begin below]
62
-
28
+ export const CHEAP_MODEL_PLAYBOOK = `[CRITICAL TOOL-USE RULES — read before invoking any tool; these override defaults that follow]
29
+
30
+ 1. Bash output is AUTOMATICALLY cached. Every \`bash\` call returns a \`run_id\`
31
+ (e.g. \`bash-1\`) you can re-query via \`bash_output_get(run_id, mode=tail|head|grep|lines)\`.
32
+ - When you want only the last N lines: do NOT pipe \`| tail -N\`. Run the
33
+ bare command, then call \`bash_output_get(run_id, mode=tail, lines=N)\`.
34
+ - Same for \`| head\`, \`| grep PATTERN\`, \`> file\`. Pipes/redirects HIDE
35
+ the full output from the cache; \`bash_output_get\` reads from the cache
36
+ without re-running.
37
+ - This applies to EVERY bash call, not just retries.
38
+ - To VIEW a file use \`read_file\` (start_line/end_line) — never sed/cat a
39
+ file. \`bash_output_get\` is for COMMAND output, not files.
40
+
41
+ 2. Before reading more than 3 files to understand a topic, delegate to
42
+ \`task(agent="explore")\`. The sub-agent returns a compressed summary;
43
+ you save reading tokens.
44
+
45
+ 3. Use the \`grep\` tool (ripgrep) for content search — NOT \`bash\` with
46
+ \`grep\` / \`find\` piped.
47
+
48
+ 4. When a tool returns \`ERROR: ...\`, do NOT retry the identical call.
49
+ Pick a different tool, change inputs meaningfully, or stop and report.
50
+
51
+ 5. Fix the ROOT CAUSE, never mask a failure to make it "pass"
52
+ (\`continue-on-error\`, swallowed try/catch, skipped/deleted test, \`|| true\`).
53
+ If a step fails from a missing secret/config, make it CONDITIONAL (skip when
54
+ absent) so it still runs when present — do NOT blanket-ignore it.
55
+
56
+ 6. For a build / CI / test failure, read the ACTUAL failure log or stack trace
57
+ BEFORE hypothesizing — fix the real error, not a guess from source alone.
58
+
59
+ 7. ANTI-MÙ / COMPACTION (for long sessions): On pre-warn or "[context compacted at step...", emit PRESERVE_FULL_CONTEXT (full veto) or lighter KEEP_TOOL_IDS: id1,id2 (from stub id=) to protect specific high-value results. read_file/grep/lsp/bash on src/PLAN/error are auto-kept (idea 1). Use ee.query tool with "tool-artifact id=XXX" for on-demand full. Self-check "task finished?" / "compacted yet?". Use EE checkpoints.
60
+
61
+ [END CRITICAL TOOL-USE RULES — your regular instructions begin below]
62
+
63
63
  `;
64
64
  /**
65
65
  * Predicate gating playbook injection.