muonroi-cli 1.4.0 → 1.4.1

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 (1831) hide show
  1. package/dist/src/generated/version.d.ts +1 -1
  2. package/dist/src/generated/version.js +1 -1
  3. package/package.json +3 -2
  4. package/dist/muonroi-cli-standalone.exe +0 -0
  5. package/dist/packages/agent-harness-core/src/driver.js.map +0 -1
  6. package/dist/packages/agent-harness-core/src/event-filter.js.map +0 -1
  7. package/dist/packages/agent-harness-core/src/event-redact.js.map +0 -1
  8. package/dist/packages/agent-harness-core/src/idle.js.map +0 -1
  9. package/dist/packages/agent-harness-core/src/index.js.map +0 -1
  10. package/dist/packages/agent-harness-core/src/mcp-server.js.map +0 -1
  11. package/dist/packages/agent-harness-core/src/mock-llm.js.map +0 -1
  12. package/dist/packages/agent-harness-core/src/predicate.js.map +0 -1
  13. package/dist/packages/agent-harness-core/src/protocol.js.map +0 -1
  14. package/dist/packages/agent-harness-core/src/registry.js.map +0 -1
  15. package/dist/packages/agent-harness-core/src/selector.js.map +0 -1
  16. package/dist/packages/agent-harness-core/src/spec-helpers.js.map +0 -1
  17. package/dist/packages/agent-harness-core/src/transports/sidechannel.js.map +0 -1
  18. package/dist/packages/agent-harness-core/src/transports/ws.js.map +0 -1
  19. package/dist/packages/agent-harness-opentui/src/agent-mode.js.map +0 -1
  20. package/dist/packages/agent-harness-opentui/src/index.js.map +0 -1
  21. package/dist/packages/agent-harness-opentui/src/input-bridge.js.map +0 -1
  22. package/dist/packages/agent-harness-opentui/src/install.js.map +0 -1
  23. package/dist/packages/agent-harness-opentui/src/reconciler-hook.js.map +0 -1
  24. package/dist/packages/agent-harness-opentui/src/semantic.js.map +0 -1
  25. package/dist/src/__test-helpers__/catalog-fixtures.js.map +0 -1
  26. package/dist/src/__test-stubs__/ee-server.js.map +0 -1
  27. package/dist/src/__test-stubs__/vitest-setup.js.map +0 -1
  28. package/dist/src/__tests__/council/bubble-layout.test.js.map +0 -1
  29. package/dist/src/__tests__/council/code-block-truncate.test.js.map +0 -1
  30. package/dist/src/__tests__/council/role-palette.test.js.map +0 -1
  31. package/dist/src/__tests__/first-run-wizard.test.js.map +0 -1
  32. package/dist/src/agent-harness/__tests__/cli-flags.spec.js.map +0 -1
  33. package/dist/src/agent-harness/__tests__/driver.spec.js.map +0 -1
  34. package/dist/src/agent-harness/__tests__/idle.spec.js.map +0 -1
  35. package/dist/src/agent-harness/__tests__/mock-llm.spec.js.map +0 -1
  36. package/dist/src/agent-harness/__tests__/mock-model.spec.js.map +0 -1
  37. package/dist/src/agent-harness/__tests__/predicate.spec.js.map +0 -1
  38. package/dist/src/agent-harness/__tests__/protocol.spec.js.map +0 -1
  39. package/dist/src/agent-harness/__tests__/schema.spec.js.map +0 -1
  40. package/dist/src/agent-harness/__tests__/selector.spec.js.map +0 -1
  41. package/dist/src/agent-harness/__tests__/sidechannel.spec.js.map +0 -1
  42. package/dist/src/agent-harness/__tests__/spec-helpers.spec.js.map +0 -1
  43. package/dist/src/agent-harness/index.js.map +0 -1
  44. package/dist/src/agent-harness/mock-model.js.map +0 -1
  45. package/dist/src/agent-harness/test-spawn.js.map +0 -1
  46. package/dist/src/billing/index.js.map +0 -1
  47. package/dist/src/chat/__tests__/broadcast-bus.test.js.map +0 -1
  48. package/dist/src/chat/__tests__/channel-manager.test.js.map +0 -1
  49. package/dist/src/chat/__tests__/client.test.js.map +0 -1
  50. package/dist/src/chat/__tests__/discord-integration.test.js.map +0 -1
  51. package/dist/src/chat/__tests__/intent-prompt.test.js.map +0 -1
  52. package/dist/src/chat/__tests__/verdict-resolver.test.js.map +0 -1
  53. package/dist/src/chat/broadcast-bus.js.map +0 -1
  54. package/dist/src/chat/channel-manager.js.map +0 -1
  55. package/dist/src/chat/chat-keychain.js.map +0 -1
  56. package/dist/src/chat/factory.js.map +0 -1
  57. package/dist/src/chat/intent-prompt.js.map +0 -1
  58. package/dist/src/chat/providers/discord/client.js.map +0 -1
  59. package/dist/src/chat/types.js.map +0 -1
  60. package/dist/src/chat/verdict-constants.js.map +0 -1
  61. package/dist/src/chat/verdict-resolver.js.map +0 -1
  62. package/dist/src/cli/__tests__/bw-vault.test.js.map +0 -1
  63. package/dist/src/cli/__tests__/keys-bundle.test.js.map +0 -1
  64. package/dist/src/cli/__tests__/share-cmd.test.js.map +0 -1
  65. package/dist/src/cli/bw-vault.js.map +0 -1
  66. package/dist/src/cli/config/__tests__/model-picker.test.js.map +0 -1
  67. package/dist/src/cli/config/__tests__/provider-fetch.test.js.map +0 -1
  68. package/dist/src/cli/config/index.js.map +0 -1
  69. package/dist/src/cli/config/model-picker.js.map +0 -1
  70. package/dist/src/cli/config/provider-fetch.js.map +0 -1
  71. package/dist/src/cli/config/screen-council.js.map +0 -1
  72. package/dist/src/cli/config/screen-models.js.map +0 -1
  73. package/dist/src/cli/config/screen-providers.js.map +0 -1
  74. package/dist/src/cli/config/tui.js.map +0 -1
  75. package/dist/src/cli/cost-forensics.js.map +0 -1
  76. package/dist/src/cli/cost-forensics.test.js.map +0 -1
  77. package/dist/src/cli/keys-bundle.js.map +0 -1
  78. package/dist/src/cli/keys.js.map +0 -1
  79. package/dist/src/cli/keys.test.js.map +0 -1
  80. package/dist/src/cli/pil-report.js.map +0 -1
  81. package/dist/src/cli/reporter-cmd.js.map +0 -1
  82. package/dist/src/cli/share-cmd.js.map +0 -1
  83. package/dist/src/cli/usage-report.js.map +0 -1
  84. package/dist/src/cloud/index.js.map +0 -1
  85. package/dist/src/council/__tests__/accounting.test.js.map +0 -1
  86. package/dist/src/council/__tests__/audit-replay.test.js.map +0 -1
  87. package/dist/src/council/__tests__/clarifier-max-rounds.test.js.map +0 -1
  88. package/dist/src/council/__tests__/clarifier-options.test.js.map +0 -1
  89. package/dist/src/council/__tests__/clarifier-ready-gate.test.js.map +0 -1
  90. package/dist/src/council/__tests__/cost-aware.test.js.map +0 -1
  91. package/dist/src/council/__tests__/debate-planner-structured.test.js.map +0 -1
  92. package/dist/src/council/__tests__/decisions-lock.test.js.map +0 -1
  93. package/dist/src/council/__tests__/evaluator-metrics.test.js.map +0 -1
  94. package/dist/src/council/__tests__/parse-outcome-fallback.test.js.map +0 -1
  95. package/dist/src/council/__tests__/research-tools.test.js.map +0 -1
  96. package/dist/src/council/__tests__/round-tools.test.js.map +0 -1
  97. package/dist/src/council/__tests__/tool-trace.test.js.map +0 -1
  98. package/dist/src/council/__tests__/types-contract.test.js.map +0 -1
  99. package/dist/src/council/clarifier.js.map +0 -1
  100. package/dist/src/council/context.js.map +0 -1
  101. package/dist/src/council/debate-planner.js.map +0 -1
  102. package/dist/src/council/debate.js.map +0 -1
  103. package/dist/src/council/decisions-lock.js.map +0 -1
  104. package/dist/src/council/executor.js.map +0 -1
  105. package/dist/src/council/index.js.map +0 -1
  106. package/dist/src/council/leader.js.map +0 -1
  107. package/dist/src/council/llm.js.map +0 -1
  108. package/dist/src/council/phase-events.js.map +0 -1
  109. package/dist/src/council/planner.js.map +0 -1
  110. package/dist/src/council/preflight.js.map +0 -1
  111. package/dist/src/council/prompts.js.map +0 -1
  112. package/dist/src/council/types.js.map +0 -1
  113. package/dist/src/daemon/scheduler.js.map +0 -1
  114. package/dist/src/daemon/scheduler.test.js.map +0 -1
  115. package/dist/src/ee/__tests__/bb-design.test.js.map +0 -1
  116. package/dist/src/ee/__tests__/export-transcripts.test.js.map +0 -1
  117. package/dist/src/ee/__tests__/pil-context-bridge.test.js.map +0 -1
  118. package/dist/src/ee/__tests__/pipeline.integration.test.js.map +0 -1
  119. package/dist/src/ee/__tests__/recall-format.test.js.map +0 -1
  120. package/dist/src/ee/__tests__/recall-ledger.test.js.map +0 -1
  121. package/dist/src/ee/__tests__/render-sink-wiring.test.js.map +0 -1
  122. package/dist/src/ee/auth.js.map +0 -1
  123. package/dist/src/ee/auth.test.js.map +0 -1
  124. package/dist/src/ee/bb-design.js.map +0 -1
  125. package/dist/src/ee/bb-retrieval.js.map +0 -1
  126. package/dist/src/ee/bridge.js.map +0 -1
  127. package/dist/src/ee/bridge.test.js.map +0 -1
  128. package/dist/src/ee/client-mode.js.map +0 -1
  129. package/dist/src/ee/client.js.map +0 -1
  130. package/dist/src/ee/client.test.js.map +0 -1
  131. package/dist/src/ee/council-bridge.js.map +0 -1
  132. package/dist/src/ee/embedding-cache.js.map +0 -1
  133. package/dist/src/ee/export-transcripts.js.map +0 -1
  134. package/dist/src/ee/extract-session.js.map +0 -1
  135. package/dist/src/ee/extract-session.test.js.map +0 -1
  136. package/dist/src/ee/health.js.map +0 -1
  137. package/dist/src/ee/index.js.map +0 -1
  138. package/dist/src/ee/intercept.js.map +0 -1
  139. package/dist/src/ee/intercept.test.js.map +0 -1
  140. package/dist/src/ee/judge.js.map +0 -1
  141. package/dist/src/ee/judge.test.js.map +0 -1
  142. package/dist/src/ee/mistake-detector.js.map +0 -1
  143. package/dist/src/ee/mistake-detector.test.js.map +0 -1
  144. package/dist/src/ee/offline-queue.js.map +0 -1
  145. package/dist/src/ee/offline-queue.test.js.map +0 -1
  146. package/dist/src/ee/phase-outcome.js.map +0 -1
  147. package/dist/src/ee/phase-outcome.test.js.map +0 -1
  148. package/dist/src/ee/phase-tracker.js.map +0 -1
  149. package/dist/src/ee/phase-tracker.test.js.map +0 -1
  150. package/dist/src/ee/posttool.js.map +0 -1
  151. package/dist/src/ee/posttool.test.js.map +0 -1
  152. package/dist/src/ee/prompt-stale.js.map +0 -1
  153. package/dist/src/ee/prompt-stale.test.js.map +0 -1
  154. package/dist/src/ee/recall-ledger.js.map +0 -1
  155. package/dist/src/ee/recall-mirror.test.js.map +0 -1
  156. package/dist/src/ee/render.js.map +0 -1
  157. package/dist/src/ee/render.test.js.map +0 -1
  158. package/dist/src/ee/scope.js.map +0 -1
  159. package/dist/src/ee/scope.test.js.map +0 -1
  160. package/dist/src/ee/search.js.map +0 -1
  161. package/dist/src/ee/session-trajectory.js.map +0 -1
  162. package/dist/src/ee/session-trajectory.test.js.map +0 -1
  163. package/dist/src/ee/tenant.js.map +0 -1
  164. package/dist/src/ee/touch.test.js.map +0 -1
  165. package/dist/src/ee/transcript-emit.js.map +0 -1
  166. package/dist/src/ee/types.js.map +0 -1
  167. package/dist/src/flow/__tests__/migration.test.js.map +0 -1
  168. package/dist/src/flow/__tests__/parser.test.js.map +0 -1
  169. package/dist/src/flow/__tests__/run-manager-product.test.js.map +0 -1
  170. package/dist/src/flow/__tests__/run-manager.test.js.map +0 -1
  171. package/dist/src/flow/__tests__/scaffold-checkpoint.test.js.map +0 -1
  172. package/dist/src/flow/__tests__/scaffold.test.js.map +0 -1
  173. package/dist/src/flow/__tests__/warning-persist.test.js.map +0 -1
  174. package/dist/src/flow/artifact-io.js.map +0 -1
  175. package/dist/src/flow/compaction/__tests__/compress.test.js.map +0 -1
  176. package/dist/src/flow/compaction/__tests__/extract.test.js.map +0 -1
  177. package/dist/src/flow/compaction/__tests__/preserve.test.js.map +0 -1
  178. package/dist/src/flow/compaction/compress.js.map +0 -1
  179. package/dist/src/flow/compaction/extract.js.map +0 -1
  180. package/dist/src/flow/compaction/index.js.map +0 -1
  181. package/dist/src/flow/compaction/preserve.js.map +0 -1
  182. package/dist/src/flow/index.js.map +0 -1
  183. package/dist/src/flow/migration.js.map +0 -1
  184. package/dist/src/flow/parser.js.map +0 -1
  185. package/dist/src/flow/run-manager.js.map +0 -1
  186. package/dist/src/flow/scaffold-checkpoint.js.map +0 -1
  187. package/dist/src/flow/scaffold.js.map +0 -1
  188. package/dist/src/flow/warning-persist.js.map +0 -1
  189. package/dist/src/generated/version.js.map +0 -1
  190. package/dist/src/gsd/__tests__/complexity.test.js.map +0 -1
  191. package/dist/src/gsd/__tests__/directives.test.js.map +0 -1
  192. package/dist/src/gsd/__tests__/gray-areas.test.js.map +0 -1
  193. package/dist/src/gsd/__tests__/types.test.js.map +0 -1
  194. package/dist/src/gsd/complexity.js.map +0 -1
  195. package/dist/src/gsd/directives.js.map +0 -1
  196. package/dist/src/gsd/gray-areas.js.map +0 -1
  197. package/dist/src/gsd/index.js.map +0 -1
  198. package/dist/src/gsd/types.js.map +0 -1
  199. package/dist/src/headless/__tests__/council-answers.test.js.map +0 -1
  200. package/dist/src/headless/council-answers.js.map +0 -1
  201. package/dist/src/headless/output.js.map +0 -1
  202. package/dist/src/headless/output.test.js.map +0 -1
  203. package/dist/src/hooks/config.js.map +0 -1
  204. package/dist/src/hooks/index.js.map +0 -1
  205. package/dist/src/hooks/types.js.map +0 -1
  206. package/dist/src/index.js.map +0 -1
  207. package/dist/src/lsp/builtins.js.map +0 -1
  208. package/dist/src/lsp/builtins.test.js.map +0 -1
  209. package/dist/src/lsp/client.js.map +0 -1
  210. package/dist/src/lsp/manager.js.map +0 -1
  211. package/dist/src/lsp/manager.test.js.map +0 -1
  212. package/dist/src/lsp/npm-cache.js.map +0 -1
  213. package/dist/src/lsp/npm-cache.test.js.map +0 -1
  214. package/dist/src/lsp/runtime.js.map +0 -1
  215. package/dist/src/lsp/smoke.test.js.map +0 -1
  216. package/dist/src/lsp/types.js.map +0 -1
  217. package/dist/src/maintain/__tests__/codebase-intel.test.js.map +0 -1
  218. package/dist/src/maintain/__tests__/gh-create-pr.test.js.map +0 -1
  219. package/dist/src/maintain/__tests__/pr-builder.test.js.map +0 -1
  220. package/dist/src/maintain/__tests__/repo-map.test.js.map +0 -1
  221. package/dist/src/maintain/__tests__/task-runner.test.js.map +0 -1
  222. package/dist/src/maintain/codebase-intel.js.map +0 -1
  223. package/dist/src/maintain/gh-create-pr.js.map +0 -1
  224. package/dist/src/maintain/index.js.map +0 -1
  225. package/dist/src/maintain/pr-builder.js.map +0 -1
  226. package/dist/src/maintain/repo-map.js.map +0 -1
  227. package/dist/src/maintain/task-runner.js.map +0 -1
  228. package/dist/src/maintain/types.js.map +0 -1
  229. package/dist/src/mcp/__tests__/auto-setup.test.js.map +0 -1
  230. package/dist/src/mcp/__tests__/cap-tool-result.test.js.map +0 -1
  231. package/dist/src/mcp/__tests__/ee-tools.test.js.map +0 -1
  232. package/dist/src/mcp/__tests__/forensics-tools.test.js.map +0 -1
  233. package/dist/src/mcp/__tests__/harness-driver-action-tools.spec.js.map +0 -1
  234. package/dist/src/mcp/__tests__/harness-driver-async-tools.spec.js.map +0 -1
  235. package/dist/src/mcp/__tests__/harness-driver-read-tools.spec.js.map +0 -1
  236. package/dist/src/mcp/__tests__/harness-driver-security.spec.js.map +0 -1
  237. package/dist/src/mcp/__tests__/harness-driver.spec.js.map +0 -1
  238. package/dist/src/mcp/__tests__/lazy-schema.spec.js.map +0 -1
  239. package/dist/src/mcp/__tests__/lsp-tools.test.js.map +0 -1
  240. package/dist/src/mcp/__tests__/mcp-keychain.test.js.map +0 -1
  241. package/dist/src/mcp/__tests__/research-onboarding.test.js.map +0 -1
  242. package/dist/src/mcp/__tests__/runtime-hydration.test.js.map +0 -1
  243. package/dist/src/mcp/__tests__/runtime-output-cap.test.js.map +0 -1
  244. package/dist/src/mcp/__tests__/runtime-sanitize.test.js.map +0 -1
  245. package/dist/src/mcp/__tests__/self-verify-jobs.test.js.map +0 -1
  246. package/dist/src/mcp/__tests__/smart-filter.test.js.map +0 -1
  247. package/dist/src/mcp/__tests__/tools-server.smoke.test.js.map +0 -1
  248. package/dist/src/mcp/auto-setup.js.map +0 -1
  249. package/dist/src/mcp/cap-tool-result.js.map +0 -1
  250. package/dist/src/mcp/catalog.js.map +0 -1
  251. package/dist/src/mcp/ee-tools.js.map +0 -1
  252. package/dist/src/mcp/forensics-tools.js.map +0 -1
  253. package/dist/src/mcp/lsp-tools.js.map +0 -1
  254. package/dist/src/mcp/mcp-keychain.js.map +0 -1
  255. package/dist/src/mcp/oauth-callback.js.map +0 -1
  256. package/dist/src/mcp/oauth-provider.js.map +0 -1
  257. package/dist/src/mcp/opentui-spawn.js.map +0 -1
  258. package/dist/src/mcp/parse-headers.js.map +0 -1
  259. package/dist/src/mcp/parse-headers.test.js.map +0 -1
  260. package/dist/src/mcp/research-onboarding.js.map +0 -1
  261. package/dist/src/mcp/runtime.js.map +0 -1
  262. package/dist/src/mcp/self-verify-jobs.js.map +0 -1
  263. package/dist/src/mcp/smart-filter.js.map +0 -1
  264. package/dist/src/mcp/smoke.test.js.map +0 -1
  265. package/dist/src/mcp/tools-server.js.map +0 -1
  266. package/dist/src/mcp/validate.js.map +0 -1
  267. package/dist/src/models/__tests__/registry.test.js.map +0 -1
  268. package/dist/src/models/catalog-client.js.map +0 -1
  269. package/dist/src/models/catalog-gemini.test.js.map +0 -1
  270. package/dist/src/models/catalog-url.test.js.map +0 -1
  271. package/dist/src/models/catalog-validation.test.js.map +0 -1
  272. package/dist/src/models/classify-tier.js.map +0 -1
  273. package/dist/src/models/index.js.map +0 -1
  274. package/dist/src/models/registry.js.map +0 -1
  275. package/dist/src/ops/__tests__/doctor-council-mcp.test.js.map +0 -1
  276. package/dist/src/ops/__tests__/doctor-ee-health.test.js.map +0 -1
  277. package/dist/src/ops/bug-report.js.map +0 -1
  278. package/dist/src/ops/bug-report.test.js.map +0 -1
  279. package/dist/src/ops/doctor.js.map +0 -1
  280. package/dist/src/ops/doctor.test.js.map +0 -1
  281. package/dist/src/orchestrator/__tests__/agent-base-url-switch.test.js.map +0 -1
  282. package/dist/src/orchestrator/__tests__/batch-turn-runner.test.js.map +0 -1
  283. package/dist/src/orchestrator/__tests__/council-manager.test.js.map +0 -1
  284. package/dist/src/orchestrator/__tests__/cross-turn-dedup.test.js.map +0 -1
  285. package/dist/src/orchestrator/__tests__/current-call-id.test.js.map +0 -1
  286. package/dist/src/orchestrator/__tests__/error-forensics.test.js.map +0 -1
  287. package/dist/src/orchestrator/__tests__/flow-resume.test.js.map +0 -1
  288. package/dist/src/orchestrator/__tests__/humanize-api-error.test.js.map +0 -1
  289. package/dist/src/orchestrator/__tests__/message-processor.test.js.map +0 -1
  290. package/dist/src/orchestrator/__tests__/message-write-ahead.test.js.map +0 -1
  291. package/dist/src/orchestrator/__tests__/read-path-budget.test.js.map +0 -1
  292. package/dist/src/orchestrator/__tests__/retry-classifier.test.js.map +0 -1
  293. package/dist/src/orchestrator/__tests__/retry-stream.test.js.map +0 -1
  294. package/dist/src/orchestrator/__tests__/route-feedback.test.js.map +0 -1
  295. package/dist/src/orchestrator/__tests__/stream-runner.test.js.map +0 -1
  296. package/dist/src/orchestrator/__tests__/sub-agent-model-tier.test.js.map +0 -1
  297. package/dist/src/orchestrator/__tests__/usage-events-shape.test.js.map +0 -1
  298. package/dist/src/orchestrator/__tests__/usage-normalizer-c1.test.js.map +0 -1
  299. package/dist/src/orchestrator/__tests__/usage-shape-threading.test.js.map +0 -1
  300. package/dist/src/orchestrator/__tests__/write-ahead.test.js.map +0 -1
  301. package/dist/src/orchestrator/abort.js.map +0 -1
  302. package/dist/src/orchestrator/abort.test.js.map +0 -1
  303. package/dist/src/orchestrator/agent-options.js.map +0 -1
  304. package/dist/src/orchestrator/agent.test.js.map +0 -1
  305. package/dist/src/orchestrator/batch-turn-runner.js.map +0 -1
  306. package/dist/src/orchestrator/batch-utils.js.map +0 -1
  307. package/dist/src/orchestrator/cleanup.test.js.map +0 -1
  308. package/dist/src/orchestrator/compaction.js.map +0 -1
  309. package/dist/src/orchestrator/compaction.test.js.map +0 -1
  310. package/dist/src/orchestrator/council-manager.js.map +0 -1
  311. package/dist/src/orchestrator/cross-turn-dedup.js.map +0 -1
  312. package/dist/src/orchestrator/delegations.js.map +0 -1
  313. package/dist/src/orchestrator/delegations.test.js.map +0 -1
  314. package/dist/src/orchestrator/error-utils.js.map +0 -1
  315. package/dist/src/orchestrator/flow-resume.js.map +0 -1
  316. package/dist/src/orchestrator/grounding-check.js.map +0 -1
  317. package/dist/src/orchestrator/grounding-check.test.js.map +0 -1
  318. package/dist/src/orchestrator/interrupted-turn.js.map +0 -1
  319. package/dist/src/orchestrator/interrupted-turn.test.js.map +0 -1
  320. package/dist/src/orchestrator/message-processor.js.map +0 -1
  321. package/dist/src/orchestrator/message-seq.js.map +0 -1
  322. package/dist/src/orchestrator/message-seq.test.js.map +0 -1
  323. package/dist/src/orchestrator/orchestrator.js.map +0 -1
  324. package/dist/src/orchestrator/pending-calls.js.map +0 -1
  325. package/dist/src/orchestrator/pending-calls.test.js.map +0 -1
  326. package/dist/src/orchestrator/prompts.js.map +0 -1
  327. package/dist/src/orchestrator/provider-options-shape.js.map +0 -1
  328. package/dist/src/orchestrator/provider-options-shape.spec.js.map +0 -1
  329. package/dist/src/orchestrator/read-path-budget.js.map +0 -1
  330. package/dist/src/orchestrator/reasoning.js.map +0 -1
  331. package/dist/src/orchestrator/reasoning.test.js.map +0 -1
  332. package/dist/src/orchestrator/repair-tool-call.js.map +0 -1
  333. package/dist/src/orchestrator/repetition-detector.js.map +0 -1
  334. package/dist/src/orchestrator/repetition-detector.test.js.map +0 -1
  335. package/dist/src/orchestrator/retry-classifier.js.map +0 -1
  336. package/dist/src/orchestrator/retry-stream.js.map +0 -1
  337. package/dist/src/orchestrator/sandbox.test.js.map +0 -1
  338. package/dist/src/orchestrator/scope-ceiling.js.map +0 -1
  339. package/dist/src/orchestrator/scope-ceiling.test.js.map +0 -1
  340. package/dist/src/orchestrator/scope-reminder.js.map +0 -1
  341. package/dist/src/orchestrator/scope-reminder.test.js.map +0 -1
  342. package/dist/src/orchestrator/stall-rescue.js.map +0 -1
  343. package/dist/src/orchestrator/stall-rescue.test.js.map +0 -1
  344. package/dist/src/orchestrator/stall-watchdog.js.map +0 -1
  345. package/dist/src/orchestrator/stall-watchdog.test.js.map +0 -1
  346. package/dist/src/orchestrator/stream-runner.js.map +0 -1
  347. package/dist/src/orchestrator/sub-agent-cap.js.map +0 -1
  348. package/dist/src/orchestrator/sub-agent-cap.test.js.map +0 -1
  349. package/dist/src/orchestrator/sub-agent-model-tier.js.map +0 -1
  350. package/dist/src/orchestrator/subagent-compactor.js.map +0 -1
  351. package/dist/src/orchestrator/subagent-compactor.spec.js.map +0 -1
  352. package/dist/src/orchestrator/text-tool-call-detector.js.map +0 -1
  353. package/dist/src/orchestrator/text-tool-call-detector.test.js.map +0 -1
  354. package/dist/src/orchestrator/token-counter.js.map +0 -1
  355. package/dist/src/orchestrator/token-counter.test.js.map +0 -1
  356. package/dist/src/orchestrator/tool-args-hash.js.map +0 -1
  357. package/dist/src/orchestrator/tool-args-hash.test.js.map +0 -1
  358. package/dist/src/orchestrator/tool-args-repair.js.map +0 -1
  359. package/dist/src/orchestrator/tool-args-repair.test.js.map +0 -1
  360. package/dist/src/orchestrator/tool-loop-cap.js.map +0 -1
  361. package/dist/src/orchestrator/tool-loop-cap.test.js.map +0 -1
  362. package/dist/src/orchestrator/tool-repetition-detector.js.map +0 -1
  363. package/dist/src/orchestrator/tool-repetition-detector.test.js.map +0 -1
  364. package/dist/src/orchestrator/tool-utils.js.map +0 -1
  365. package/dist/src/orchestrator/turn-runner-deps.js.map +0 -1
  366. package/dist/src/pil/__tests__/budget.test.js.map +0 -1
  367. package/dist/src/pil/__tests__/clarity-gate.test.js.map +0 -1
  368. package/dist/src/pil/__tests__/config.test.js.map +0 -1
  369. package/dist/src/pil/__tests__/discovery-cache.test.js.map +0 -1
  370. package/dist/src/pil/__tests__/discovery-types.test.js.map +0 -1
  371. package/dist/src/pil/__tests__/discovery.test.js.map +0 -1
  372. package/dist/src/pil/__tests__/dual-run.test.js.map +0 -1
  373. package/dist/src/pil/__tests__/layer1-intent-trace.test.js.map +0 -1
  374. package/dist/src/pil/__tests__/layer1-intent.test.js.map +0 -1
  375. package/dist/src/pil/__tests__/layer15-context-scan.test.js.map +0 -1
  376. package/dist/src/pil/__tests__/layer16-clarity.test.js.map +0 -1
  377. package/dist/src/pil/__tests__/layer17-feasibility.test.js.map +0 -1
  378. package/dist/src/pil/__tests__/layer18-acceptance.test.js.map +0 -1
  379. package/dist/src/pil/__tests__/layer2-personality.test.js.map +0 -1
  380. package/dist/src/pil/__tests__/layer3-ee-injection.test.js.map +0 -1
  381. package/dist/src/pil/__tests__/layer3-injected-chunk.test.js.map +0 -1
  382. package/dist/src/pil/__tests__/layer4-gsd.test.js.map +0 -1
  383. package/dist/src/pil/__tests__/layer5-context.test.js.map +0 -1
  384. package/dist/src/pil/__tests__/layer6-output.test.js.map +0 -1
  385. package/dist/src/pil/__tests__/llm-classify.test.js.map +0 -1
  386. package/dist/src/pil/__tests__/native-capabilities-workbook.test.js.map +0 -1
  387. package/dist/src/pil/__tests__/ollama-classify.test.js.map +0 -1
  388. package/dist/src/pil/__tests__/orchestrator-integration.test.js.map +0 -1
  389. package/dist/src/pil/__tests__/pipeline.test.js.map +0 -1
  390. package/dist/src/pil/__tests__/renderer-coverage.test.js.map +0 -1
  391. package/dist/src/pil/__tests__/response-tools.test.js.map +0 -1
  392. package/dist/src/pil/__tests__/schema.test.js.map +0 -1
  393. package/dist/src/pil/__tests__/scoreComplexity.test.js.map +0 -1
  394. package/dist/src/pil/__tests__/scoreSufficiency.test.js.map +0 -1
  395. package/dist/src/pil/__tests__/store.test.js.map +0 -1
  396. package/dist/src/pil/__tests__/task-tier-map.test.js.map +0 -1
  397. package/dist/src/pil/agent-operating-contract.js.map +0 -1
  398. package/dist/src/pil/agent-operating-contract.test.js.map +0 -1
  399. package/dist/src/pil/budget-log.js.map +0 -1
  400. package/dist/src/pil/budget.js.map +0 -1
  401. package/dist/src/pil/cheap-model-playbook.js.map +0 -1
  402. package/dist/src/pil/cheap-model-playbook.test.js.map +0 -1
  403. package/dist/src/pil/cheap-model-workbooks.js.map +0 -1
  404. package/dist/src/pil/cheap-model-workbooks.test.js.map +0 -1
  405. package/dist/src/pil/clarity-gate.js.map +0 -1
  406. package/dist/src/pil/config.js.map +0 -1
  407. package/dist/src/pil/discovery-cache.js.map +0 -1
  408. package/dist/src/pil/discovery-types.js.map +0 -1
  409. package/dist/src/pil/discovery.js.map +0 -1
  410. package/dist/src/pil/index.js.map +0 -1
  411. package/dist/src/pil/layer1-intent.js.map +0 -1
  412. package/dist/src/pil/layer1-intent.test.js.map +0 -1
  413. package/dist/src/pil/layer15-context-scan.js.map +0 -1
  414. package/dist/src/pil/layer16-clarity.js.map +0 -1
  415. package/dist/src/pil/layer16-clarity.test.js.map +0 -1
  416. package/dist/src/pil/layer17-feasibility.js.map +0 -1
  417. package/dist/src/pil/layer18-acceptance.js.map +0 -1
  418. package/dist/src/pil/layer1_5-complexity-size.js.map +0 -1
  419. package/dist/src/pil/layer1_5-complexity-size.test.js.map +0 -1
  420. package/dist/src/pil/layer2-personality.js.map +0 -1
  421. package/dist/src/pil/layer3-ee-injection.js.map +0 -1
  422. package/dist/src/pil/layer4-gsd.js.map +0 -1
  423. package/dist/src/pil/layer5-context.js.map +0 -1
  424. package/dist/src/pil/layer6-output.js.map +0 -1
  425. package/dist/src/pil/llm-classify.js.map +0 -1
  426. package/dist/src/pil/native-capabilities-workbook.js.map +0 -1
  427. package/dist/src/pil/ollama-classify.js.map +0 -1
  428. package/dist/src/pil/pipeline.js.map +0 -1
  429. package/dist/src/pil/response-tools.js.map +0 -1
  430. package/dist/src/pil/schema.js.map +0 -1
  431. package/dist/src/pil/session-state.js.map +0 -1
  432. package/dist/src/pil/session-state.test.js.map +0 -1
  433. package/dist/src/pil/store.js.map +0 -1
  434. package/dist/src/pil/task-tier-map.js.map +0 -1
  435. package/dist/src/pil/timeout.js.map +0 -1
  436. package/dist/src/pil/types.js.map +0 -1
  437. package/dist/src/product-loop/__tests__/artifact-io.test.js.map +0 -1
  438. package/dist/src/product-loop/__tests__/assumption-ledger.test.js.map +0 -1
  439. package/dist/src/product-loop/__tests__/backlog-builder.test.js.map +0 -1
  440. package/dist/src/product-loop/__tests__/backlog-store.test.js.map +0 -1
  441. package/dist/src/product-loop/__tests__/cb2-retry-bonus.test.js.map +0 -1
  442. package/dist/src/product-loop/__tests__/circuit-breakers-coverage.test.js.map +0 -1
  443. package/dist/src/product-loop/__tests__/circuit-breakers.test.js.map +0 -1
  444. package/dist/src/product-loop/__tests__/complexity-routing.spec.js.map +0 -1
  445. package/dist/src/product-loop/__tests__/context-policy.test.js.map +0 -1
  446. package/dist/src/product-loop/__tests__/cost-preview.test.js.map +0 -1
  447. package/dist/src/product-loop/__tests__/cost-scoper.test.js.map +0 -1
  448. package/dist/src/product-loop/__tests__/cross-run-memory.test.js.map +0 -1
  449. package/dist/src/product-loop/__tests__/design-output.spec.js.map +0 -1
  450. package/dist/src/product-loop/__tests__/discover.test.js.map +0 -1
  451. package/dist/src/product-loop/__tests__/discovery-context-format.test.js.map +0 -1
  452. package/dist/src/product-loop/__tests__/discovery-council-runner.test.js.map +0 -1
  453. package/dist/src/product-loop/__tests__/discovery-detection.test.js.map +0 -1
  454. package/dist/src/product-loop/__tests__/discovery-ecosystem.test.js.map +0 -1
  455. package/dist/src/product-loop/__tests__/discovery-integration.test.js.map +0 -1
  456. package/dist/src/product-loop/__tests__/discovery-interview.test.js.map +0 -1
  457. package/dist/src/product-loop/__tests__/discovery-migrations.test.js.map +0 -1
  458. package/dist/src/product-loop/__tests__/discovery-persistence.test.js.map +0 -1
  459. package/dist/src/product-loop/__tests__/discovery-prompt-parser.test.js.map +0 -1
  460. package/dist/src/product-loop/__tests__/discovery-prompt-specificity.test.js.map +0 -1
  461. package/dist/src/product-loop/__tests__/discovery-recommender-ecosystem.test.js.map +0 -1
  462. package/dist/src/product-loop/__tests__/discovery-recommender.test.js.map +0 -1
  463. package/dist/src/product-loop/__tests__/discovery-schema.test.js.map +0 -1
  464. package/dist/src/product-loop/__tests__/done-gate-coverage.test.js.map +0 -1
  465. package/dist/src/product-loop/__tests__/done-gate.test.js.map +0 -1
  466. package/dist/src/product-loop/__tests__/ee-extract-wiring.test.js.map +0 -1
  467. package/dist/src/product-loop/__tests__/extract-to-ee.test.js.map +0 -1
  468. package/dist/src/product-loop/__tests__/feedback-routing.test.js.map +0 -1
  469. package/dist/src/product-loop/__tests__/gather-selectable-alts.test.js.map +0 -1
  470. package/dist/src/product-loop/__tests__/hot-path.spec.js.map +0 -1
  471. package/dist/src/product-loop/__tests__/integration.test.js.map +0 -1
  472. package/dist/src/product-loop/__tests__/loop-driver-audit.test.js.map +0 -1
  473. package/dist/src/product-loop/__tests__/loop-driver.test.js.map +0 -1
  474. package/dist/src/product-loop/__tests__/maintenance-task-synthesis.test.js.map +0 -1
  475. package/dist/src/product-loop/__tests__/phase-a1-a3-sprint-runner.test.js.map +0 -1
  476. package/dist/src/product-loop/__tests__/phase-a2-backlog-build.test.js.map +0 -1
  477. package/dist/src/product-loop/__tests__/phase-budget.test.js.map +0 -1
  478. package/dist/src/product-loop/__tests__/phase-orchestrator-integration.test.js.map +0 -1
  479. package/dist/src/product-loop/__tests__/phase-plan.test.js.map +0 -1
  480. package/dist/src/product-loop/__tests__/phase-rituals.test.js.map +0 -1
  481. package/dist/src/product-loop/__tests__/phase-runner.test.js.map +0 -1
  482. package/dist/src/product-loop/__tests__/phase-tracker-bridge.test.js.map +0 -1
  483. package/dist/src/product-loop/__tests__/pick-backend-stack.test.js.map +0 -1
  484. package/dist/src/product-loop/__tests__/product-identity.test.js.map +0 -1
  485. package/dist/src/product-loop/__tests__/progress-snapshot.test.js.map +0 -1
  486. package/dist/src/product-loop/__tests__/reality-anchor.test.js.map +0 -1
  487. package/dist/src/product-loop/__tests__/repo-audit.test.js.map +0 -1
  488. package/dist/src/product-loop/__tests__/repo-brief.test.js.map +0 -1
  489. package/dist/src/product-loop/__tests__/role-memory.test.js.map +0 -1
  490. package/dist/src/product-loop/__tests__/role-registry.test.js.map +0 -1
  491. package/dist/src/product-loop/__tests__/role-routing-ee.test.js.map +0 -1
  492. package/dist/src/product-loop/__tests__/route-decision-emit.test.js.map +0 -1
  493. package/dist/src/product-loop/__tests__/seed-questions.test.js.map +0 -1
  494. package/dist/src/product-loop/__tests__/ship-polish.test.js.map +0 -1
  495. package/dist/src/product-loop/__tests__/sprint-planner.test.js.map +0 -1
  496. package/dist/src/product-loop/__tests__/sprint-runner-backlog.test.js.map +0 -1
  497. package/dist/src/product-loop/__tests__/sprint-runner-emit.test.js.map +0 -1
  498. package/dist/src/product-loop/__tests__/sprint-runner-phase-chunks.test.js.map +0 -1
  499. package/dist/src/product-loop/__tests__/sprint-runner.test.js.map +0 -1
  500. package/dist/src/product-loop/__tests__/sprint-self-verify.test.js.map +0 -1
  501. package/dist/src/product-loop/__tests__/sprint-store.test.js.map +0 -1
  502. package/dist/src/product-loop/__tests__/stakeholder-acl.test.js.map +0 -1
  503. package/dist/src/product-loop/__tests__/state-md-ee-injections.test.js.map +0 -1
  504. package/dist/src/product-loop/__tests__/sufficiency-routing.spec.js.map +0 -1
  505. package/dist/src/product-loop/__tests__/typed-artifacts.test.js.map +0 -1
  506. package/dist/src/product-loop/__tests__/types.test.js.map +0 -1
  507. package/dist/src/product-loop/__tests__/verify-failure-threshold.test.js.map +0 -1
  508. package/dist/src/product-loop/__tests__/verify-failure-tracking.test.js.map +0 -1
  509. package/dist/src/product-loop/__tests__/verify-result.test.js.map +0 -1
  510. package/dist/src/product-loop/artifact-io.js.map +0 -1
  511. package/dist/src/product-loop/assumption-ledger.js.map +0 -1
  512. package/dist/src/product-loop/backlog-builder.js.map +0 -1
  513. package/dist/src/product-loop/backlog-store.js.map +0 -1
  514. package/dist/src/product-loop/circuit-breakers.js.map +0 -1
  515. package/dist/src/product-loop/context-policy.js.map +0 -1
  516. package/dist/src/product-loop/cost-preview.js.map +0 -1
  517. package/dist/src/product-loop/cost-scoper.js.map +0 -1
  518. package/dist/src/product-loop/cross-run-memory.js.map +0 -1
  519. package/dist/src/product-loop/design-output.js.map +0 -1
  520. package/dist/src/product-loop/discover.js.map +0 -1
  521. package/dist/src/product-loop/discovery-context-format.js.map +0 -1
  522. package/dist/src/product-loop/discovery-council-runner.js.map +0 -1
  523. package/dist/src/product-loop/discovery-detection.js.map +0 -1
  524. package/dist/src/product-loop/discovery-ecosystem.js.map +0 -1
  525. package/dist/src/product-loop/discovery-interview.js.map +0 -1
  526. package/dist/src/product-loop/discovery-migrations.js.map +0 -1
  527. package/dist/src/product-loop/discovery-persistence.js.map +0 -1
  528. package/dist/src/product-loop/discovery-prompt-parser.js.map +0 -1
  529. package/dist/src/product-loop/discovery-recommender.js.map +0 -1
  530. package/dist/src/product-loop/discovery-schema.js.map +0 -1
  531. package/dist/src/product-loop/done-gate.js.map +0 -1
  532. package/dist/src/product-loop/feedback-routing.js.map +0 -1
  533. package/dist/src/product-loop/gather.js.map +0 -1
  534. package/dist/src/product-loop/index.js.map +0 -1
  535. package/dist/src/product-loop/loop-driver.js.map +0 -1
  536. package/dist/src/product-loop/phase-budget.js.map +0 -1
  537. package/dist/src/product-loop/phase-plan.js.map +0 -1
  538. package/dist/src/product-loop/phase-rituals.js.map +0 -1
  539. package/dist/src/product-loop/phase-runner.js.map +0 -1
  540. package/dist/src/product-loop/phase-tracker-bridge.js.map +0 -1
  541. package/dist/src/product-loop/product-identity.js.map +0 -1
  542. package/dist/src/product-loop/progress-snapshot.js.map +0 -1
  543. package/dist/src/product-loop/reality-anchor.js.map +0 -1
  544. package/dist/src/product-loop/repo-audit.js.map +0 -1
  545. package/dist/src/product-loop/repo-brief.js.map +0 -1
  546. package/dist/src/product-loop/role-memory.js.map +0 -1
  547. package/dist/src/product-loop/role-registry.js.map +0 -1
  548. package/dist/src/product-loop/seed-questions.js.map +0 -1
  549. package/dist/src/product-loop/ship-polish.js.map +0 -1
  550. package/dist/src/product-loop/sprint-planner.js.map +0 -1
  551. package/dist/src/product-loop/sprint-runner.js.map +0 -1
  552. package/dist/src/product-loop/sprint-self-verify.js.map +0 -1
  553. package/dist/src/product-loop/sprint-store.js.map +0 -1
  554. package/dist/src/product-loop/stakeholder-acl.js.map +0 -1
  555. package/dist/src/product-loop/typed-artifacts.js.map +0 -1
  556. package/dist/src/product-loop/types.js.map +0 -1
  557. package/dist/src/product-loop/verify-failure-tracking.js.map +0 -1
  558. package/dist/src/product-loop/verify-result.js.map +0 -1
  559. package/dist/src/providers/__test-utils__/load-fixture.js.map +0 -1
  560. package/dist/src/providers/__tests__/adapter-oauth-wiring.test.js.map +0 -1
  561. package/dist/src/providers/__tests__/capabilities-cosmetic.test.js.map +0 -1
  562. package/dist/src/providers/__tests__/capabilities-flags.test.js.map +0 -1
  563. package/dist/src/providers/__tests__/capabilities-provider-options.test.js.map +0 -1
  564. package/dist/src/providers/__tests__/capabilities-sanitize.test.js.map +0 -1
  565. package/dist/src/providers/__tests__/capabilities.test.js.map +0 -1
  566. package/dist/src/providers/__tests__/provider-coverage.test.js.map +0 -1
  567. package/dist/src/providers/__tests__/reasoning-roundtrip.test.js.map +0 -1
  568. package/dist/src/providers/__tests__/runtime-integration.test.js.map +0 -1
  569. package/dist/src/providers/__tests__/runtime.test.js.map +0 -1
  570. package/dist/src/providers/__tests__/siliconflow-sse-repair.test.js.map +0 -1
  571. package/dist/src/providers/__tests__/strategies-registry.test.js.map +0 -1
  572. package/dist/src/providers/__tests__/strategies-resolve.test.js.map +0 -1
  573. package/dist/src/providers/__tests__/wire-debug.test.js.map +0 -1
  574. package/dist/src/providers/adapter.js.map +0 -1
  575. package/dist/src/providers/adapter.test.js.map +0 -1
  576. package/dist/src/providers/anthropic.js.map +0 -1
  577. package/dist/src/providers/auth/__tests__/browser-flow.test.js.map +0 -1
  578. package/dist/src/providers/auth/__tests__/device-flow.test.js.map +0 -1
  579. package/dist/src/providers/auth/__tests__/gemini-oauth.test.js.map +0 -1
  580. package/dist/src/providers/auth/__tests__/grok-oauth.test.js.map +0 -1
  581. package/dist/src/providers/auth/__tests__/openai-oauth.test.js.map +0 -1
  582. package/dist/src/providers/auth/__tests__/token-store.test.js.map +0 -1
  583. package/dist/src/providers/auth/browser-flow.js.map +0 -1
  584. package/dist/src/providers/auth/device-flow.js.map +0 -1
  585. package/dist/src/providers/auth/gemini-oauth.js.map +0 -1
  586. package/dist/src/providers/auth/grok-oauth.js.map +0 -1
  587. package/dist/src/providers/auth/openai-oauth.js.map +0 -1
  588. package/dist/src/providers/auth/registry.js.map +0 -1
  589. package/dist/src/providers/auth/token-store.js.map +0 -1
  590. package/dist/src/providers/auth/types.js.map +0 -1
  591. package/dist/src/providers/capabilities.js.map +0 -1
  592. package/dist/src/providers/endpoints.js.map +0 -1
  593. package/dist/src/providers/errors.js.map +0 -1
  594. package/dist/src/providers/errors.test.js.map +0 -1
  595. package/dist/src/providers/gemini.js.map +0 -1
  596. package/dist/src/providers/gemini.test.js.map +0 -1
  597. package/dist/src/providers/index.js.map +0 -1
  598. package/dist/src/providers/keychain.js.map +0 -1
  599. package/dist/src/providers/keychain.test.js.map +0 -1
  600. package/dist/src/providers/mcp-vision-bridge.js.map +0 -1
  601. package/dist/src/providers/mcp-vision-bridge.test.js.map +0 -1
  602. package/dist/src/providers/ollama.js.map +0 -1
  603. package/dist/src/providers/ollama.test.js.map +0 -1
  604. package/dist/src/providers/openai-compatible.js.map +0 -1
  605. package/dist/src/providers/openai-compatible.test.js.map +0 -1
  606. package/dist/src/providers/openai.js.map +0 -1
  607. package/dist/src/providers/openai.test.js.map +0 -1
  608. package/dist/src/providers/patch-zod-schema.js.map +0 -1
  609. package/dist/src/providers/pricing.js.map +0 -1
  610. package/dist/src/providers/pricing.test.js.map +0 -1
  611. package/dist/src/providers/prompt-cache-key.spec.js.map +0 -1
  612. package/dist/src/providers/runtime-mock.spec.js.map +0 -1
  613. package/dist/src/providers/runtime.js.map +0 -1
  614. package/dist/src/providers/siliconflow-sse-repair.js.map +0 -1
  615. package/dist/src/providers/strategies/anthropic.strategy.js.map +0 -1
  616. package/dist/src/providers/strategies/base.strategy.js.map +0 -1
  617. package/dist/src/providers/strategies/deepseek.strategy.js.map +0 -1
  618. package/dist/src/providers/strategies/google.strategy.js.map +0 -1
  619. package/dist/src/providers/strategies/ollama.strategy.js.map +0 -1
  620. package/dist/src/providers/strategies/openai.strategy.js.map +0 -1
  621. package/dist/src/providers/strategies/registry.js.map +0 -1
  622. package/dist/src/providers/strategies/siliconflow.strategy.js.map +0 -1
  623. package/dist/src/providers/strategies/xai.strategy.js.map +0 -1
  624. package/dist/src/providers/stream-loop.js.map +0 -1
  625. package/dist/src/providers/types.js.map +0 -1
  626. package/dist/src/providers/vision-proxy.js.map +0 -1
  627. package/dist/src/providers/vision-proxy.test.js.map +0 -1
  628. package/dist/src/providers/wire-debug.js.map +0 -1
  629. package/dist/src/reporter/__tests__/acl-check.test.js.map +0 -1
  630. package/dist/src/reporter/__tests__/auto-fire.test.js.map +0 -1
  631. package/dist/src/reporter/__tests__/budget.test.js.map +0 -1
  632. package/dist/src/reporter/__tests__/handlers.test.js.map +0 -1
  633. package/dist/src/reporter/__tests__/query-router.test.js.map +0 -1
  634. package/dist/src/reporter/acl-check.js.map +0 -1
  635. package/dist/src/reporter/auto-fire.js.map +0 -1
  636. package/dist/src/reporter/budget.js.map +0 -1
  637. package/dist/src/reporter/handlers.js.map +0 -1
  638. package/dist/src/reporter/index.js.map +0 -1
  639. package/dist/src/reporter/query-router.js.map +0 -1
  640. package/dist/src/router/__tests__/step-router.test.js.map +0 -1
  641. package/dist/src/router/classifier/grammars.js.map +0 -1
  642. package/dist/src/router/classifier/index.js.map +0 -1
  643. package/dist/src/router/classifier/index.test.js.map +0 -1
  644. package/dist/src/router/classifier/regex.js.map +0 -1
  645. package/dist/src/router/classifier/regex.test.js.map +0 -1
  646. package/dist/src/router/classifier/tree-sitter.js.map +0 -1
  647. package/dist/src/router/classifier/tree-sitter.test.js.map +0 -1
  648. package/dist/src/router/cold.js.map +0 -1
  649. package/dist/src/router/cold.test.js.map +0 -1
  650. package/dist/src/router/decide.js.map +0 -1
  651. package/dist/src/router/decide.test.js.map +0 -1
  652. package/dist/src/router/health.js.map +0 -1
  653. package/dist/src/router/health.test.js.map +0 -1
  654. package/dist/src/router/provider-sentinel.js.map +0 -1
  655. package/dist/src/router/provider-sentinel.test.js.map +0 -1
  656. package/dist/src/router/role-override.test.js.map +0 -1
  657. package/dist/src/router/step-router.js.map +0 -1
  658. package/dist/src/router/store.js.map +0 -1
  659. package/dist/src/router/types.js.map +0 -1
  660. package/dist/src/router/warm.js.map +0 -1
  661. package/dist/src/router/warm.test.js.map +0 -1
  662. package/dist/src/scaffold/__tests__/continuation-prompt.test.js.map +0 -1
  663. package/dist/src/scaffold/__tests__/continue-as-council.spec.js.map +0 -1
  664. package/dist/src/scaffold/__tests__/dotnet-assembly-name.test.js.map +0 -1
  665. package/dist/src/scaffold/__tests__/fe-scaffold-contents.test.js.map +0 -1
  666. package/dist/src/scaffold/__tests__/init-new.smoke.spec.js.map +0 -1
  667. package/dist/src/scaffold/__tests__/init-new.spec.js.map +0 -1
  668. package/dist/src/scaffold/__tests__/install-bb-templates.spec.js.map +0 -1
  669. package/dist/src/scaffold/__tests__/point-to-existing.spec.js.map +0 -1
  670. package/dist/src/scaffold/bb-ecosystem-apply.js.map +0 -1
  671. package/dist/src/scaffold/bb-quality-gate.js.map +0 -1
  672. package/dist/src/scaffold/continuation-prompt.js.map +0 -1
  673. package/dist/src/scaffold/continue-as-council.js.map +0 -1
  674. package/dist/src/scaffold/init-new.js.map +0 -1
  675. package/dist/src/scaffold/point-to-existing.js.map +0 -1
  676. package/dist/src/scaffold/resume-from-gate-failures.js.map +0 -1
  677. package/dist/src/self-qa/__tests__/agentic-context.test.js.map +0 -1
  678. package/dist/src/self-qa/__tests__/agentic-loop.test.js.map +0 -1
  679. package/dist/src/self-qa/__tests__/delta-encoder.test.js.map +0 -1
  680. package/dist/src/self-qa/__tests__/judge.test.js.map +0 -1
  681. package/dist/src/self-qa/__tests__/scenario-planner.test.js.map +0 -1
  682. package/dist/src/self-qa/__tests__/spec-emitter.test.js.map +0 -1
  683. package/dist/src/self-qa/agentic-context.js.map +0 -1
  684. package/dist/src/self-qa/agentic-loop.js.map +0 -1
  685. package/dist/src/self-qa/delta-encoder.js.map +0 -1
  686. package/dist/src/self-qa/index.js.map +0 -1
  687. package/dist/src/self-qa/judge.js.map +0 -1
  688. package/dist/src/self-qa/orchestrator.js.map +0 -1
  689. package/dist/src/self-qa/scenario-planner.js.map +0 -1
  690. package/dist/src/self-qa/spec-emitter.js.map +0 -1
  691. package/dist/src/self-qa/types.js.map +0 -1
  692. package/dist/src/storage/__tests__/migrations.test.js.map +0 -1
  693. package/dist/src/storage/__tests__/sweep-stale-pending.test.js.map +0 -1
  694. package/dist/src/storage/__tests__/ui-interaction-log.test.js.map +0 -1
  695. package/dist/src/storage/atomic-io.js.map +0 -1
  696. package/dist/src/storage/atomic-io.test.js.map +0 -1
  697. package/dist/src/storage/config.js.map +0 -1
  698. package/dist/src/storage/config.test.js.map +0 -1
  699. package/dist/src/storage/db.js.map +0 -1
  700. package/dist/src/storage/index.js.map +0 -1
  701. package/dist/src/storage/interaction-log.js.map +0 -1
  702. package/dist/src/storage/migrations.js.map +0 -1
  703. package/dist/src/storage/session-dir.js.map +0 -1
  704. package/dist/src/storage/sessions.js.map +0 -1
  705. package/dist/src/storage/tool-results.js.map +0 -1
  706. package/dist/src/storage/transcript-response-entry.test.js.map +0 -1
  707. package/dist/src/storage/transcript-view.js.map +0 -1
  708. package/dist/src/storage/transcript.js.map +0 -1
  709. package/dist/src/storage/transcript.test.js.map +0 -1
  710. package/dist/src/storage/ui-interaction-log.js.map +0 -1
  711. package/dist/src/storage/usage-cap.js.map +0 -1
  712. package/dist/src/storage/usage-cap.test.js.map +0 -1
  713. package/dist/src/storage/usage.js.map +0 -1
  714. package/dist/src/storage/workspaces.js.map +0 -1
  715. package/dist/src/tools/__tests__/vision-gate.test.js.map +0 -1
  716. package/dist/src/tools/bash-output-cache.js.map +0 -1
  717. package/dist/src/tools/bash-output-cache.test.js.map +0 -1
  718. package/dist/src/tools/bash-output-integration.test.js.map +0 -1
  719. package/dist/src/tools/bash.js.map +0 -1
  720. package/dist/src/tools/bash.test.js.map +0 -1
  721. package/dist/src/tools/computer.js.map +0 -1
  722. package/dist/src/tools/computer.test.js.map +0 -1
  723. package/dist/src/tools/file-tracker.js.map +0 -1
  724. package/dist/src/tools/file-tracker.test.js.map +0 -1
  725. package/dist/src/tools/file.js.map +0 -1
  726. package/dist/src/tools/file.test.js.map +0 -1
  727. package/dist/src/tools/grep.js.map +0 -1
  728. package/dist/src/tools/registry-bash-empty-command.test.js.map +0 -1
  729. package/dist/src/tools/registry-bash-footer.test.js.map +0 -1
  730. package/dist/src/tools/registry-ee-query.test.js.map +0 -1
  731. package/dist/src/tools/registry-session-repeat.test.js.map +0 -1
  732. package/dist/src/tools/registry.js.map +0 -1
  733. package/dist/src/tools/registry.test.js.map +0 -1
  734. package/dist/src/tools/schedule.js.map +0 -1
  735. package/dist/src/tools/schedule.test.js.map +0 -1
  736. package/dist/src/tools/todo-write-snapshot.js.map +0 -1
  737. package/dist/src/tools/todo-write-snapshot.test.js.map +0 -1
  738. package/dist/src/tools/vision-gate.js.map +0 -1
  739. package/dist/src/types/index.js.map +0 -1
  740. package/dist/src/ui/__tests__/picker-providers.test.js.map +0 -1
  741. package/dist/src/ui/agents-modal.js.map +0 -1
  742. package/dist/src/ui/app.js.map +0 -1
  743. package/dist/src/ui/cards/__tests__/product-status-card.test.js.map +0 -1
  744. package/dist/src/ui/cards/product-status-card.js.map +0 -1
  745. package/dist/src/ui/components/SuggestionOverlay.js.map +0 -1
  746. package/dist/src/ui/components/Toast.js.map +0 -1
  747. package/dist/src/ui/components/__tests__/council-leader-bubble.test.js.map +0 -1
  748. package/dist/src/ui/components/__tests__/council-message-bubble.test.js.map +0 -1
  749. package/dist/src/ui/components/__tests__/council-phase-timeline.test.js.map +0 -1
  750. package/dist/src/ui/components/__tests__/council-placeholder-bubble.test.js.map +0 -1
  751. package/dist/src/ui/components/__tests__/council-question-card.test.js.map +0 -1
  752. package/dist/src/ui/components/__tests__/council-synthesis-banner.test.js.map +0 -1
  753. package/dist/src/ui/components/__tests__/task-list-panel.test.js.map +0 -1
  754. package/dist/src/ui/components/__tests__/use-pair-quote-buffer.test.js.map +0 -1
  755. package/dist/src/ui/components/btw-overlay.js.map +0 -1
  756. package/dist/src/ui/components/bubble-layout.js.map +0 -1
  757. package/dist/src/ui/components/code-block-truncate.js.map +0 -1
  758. package/dist/src/ui/components/copy-flash-banner.js.map +0 -1
  759. package/dist/src/ui/components/council-info-card.js.map +0 -1
  760. package/dist/src/ui/components/council-leader-bubble.js.map +0 -1
  761. package/dist/src/ui/components/council-message-bubble.js.map +0 -1
  762. package/dist/src/ui/components/council-phase-timeline.js.map +0 -1
  763. package/dist/src/ui/components/council-placeholder-bubble.js.map +0 -1
  764. package/dist/src/ui/components/council-question-card.js.map +0 -1
  765. package/dist/src/ui/components/council-status-list.js.map +0 -1
  766. package/dist/src/ui/components/council-synthesis-banner.js.map +0 -1
  767. package/dist/src/ui/components/diff-view.js.map +0 -1
  768. package/dist/src/ui/components/halt-recovery-card.js.map +0 -1
  769. package/dist/src/ui/components/hero-logo.js.map +0 -1
  770. package/dist/src/ui/components/init-new-form-card.js.map +0 -1
  771. package/dist/src/ui/components/lsp-views.js.map +0 -1
  772. package/dist/src/ui/components/media-views.js.map +0 -1
  773. package/dist/src/ui/components/message-view.js.map +0 -1
  774. package/dist/src/ui/components/point-to-existing-form-card.js.map +0 -1
  775. package/dist/src/ui/components/prompt-box.js.map +0 -1
  776. package/dist/src/ui/components/role-palette.js.map +0 -1
  777. package/dist/src/ui/components/session-header.js.map +0 -1
  778. package/dist/src/ui/components/slash-inline-menu.js.map +0 -1
  779. package/dist/src/ui/components/structured-response-view.js.map +0 -1
  780. package/dist/src/ui/components/task-list-panel.js.map +0 -1
  781. package/dist/src/ui/components/tool-group.js.map +0 -1
  782. package/dist/src/ui/components/tool-result-views.js.map +0 -1
  783. package/dist/src/ui/components/use-pair-quote-buffer.js.map +0 -1
  784. package/dist/src/ui/constants.js.map +0 -1
  785. package/dist/src/ui/hooks/use-agent-editor.js.map +0 -1
  786. package/dist/src/ui/hooks/use-mcp-editor.js.map +0 -1
  787. package/dist/src/ui/hooks/use-model-picker.js.map +0 -1
  788. package/dist/src/ui/hooks/useTypeahead.js.map +0 -1
  789. package/dist/src/ui/markdown.js.map +0 -1
  790. package/dist/src/ui/mcp-modal-types.js.map +0 -1
  791. package/dist/src/ui/mcp-modal.js.map +0 -1
  792. package/dist/src/ui/modals/api-key-modal.js.map +0 -1
  793. package/dist/src/ui/modals/connect-modal.js.map +0 -1
  794. package/dist/src/ui/modals/model-picker-modal.js.map +0 -1
  795. package/dist/src/ui/modals/sandbox-picker-modal.js.map +0 -1
  796. package/dist/src/ui/modals/update-modal.js.map +0 -1
  797. package/dist/src/ui/modals/wallet-picker-modal.js.map +0 -1
  798. package/dist/src/ui/picker-providers.js.map +0 -1
  799. package/dist/src/ui/plan.js.map +0 -1
  800. package/dist/src/ui/schedule-modal.js.map +0 -1
  801. package/dist/src/ui/slash/__tests__/clear.test.js.map +0 -1
  802. package/dist/src/ui/slash/__tests__/compact.test.js.map +0 -1
  803. package/dist/src/ui/slash/__tests__/cost.test.js.map +0 -1
  804. package/dist/src/ui/slash/__tests__/discuss.test.js.map +0 -1
  805. package/dist/src/ui/slash/__tests__/execute.test.js.map +0 -1
  806. package/dist/src/ui/slash/__tests__/expand.test.js.map +0 -1
  807. package/dist/src/ui/slash/__tests__/ideal.test.js.map +0 -1
  808. package/dist/src/ui/slash/__tests__/menu-parity.test.js.map +0 -1
  809. package/dist/src/ui/slash/__tests__/optimize.test.js.map +0 -1
  810. package/dist/src/ui/slash/__tests__/pin.test.js.map +0 -1
  811. package/dist/src/ui/slash/__tests__/plan.test.js.map +0 -1
  812. package/dist/src/ui/slash/__tests__/status-render.test.js.map +0 -1
  813. package/dist/src/ui/slash/clear.js.map +0 -1
  814. package/dist/src/ui/slash/compact.js.map +0 -1
  815. package/dist/src/ui/slash/cost.js.map +0 -1
  816. package/dist/src/ui/slash/council-inspect.js.map +0 -1
  817. package/dist/src/ui/slash/council.js.map +0 -1
  818. package/dist/src/ui/slash/debug.js.map +0 -1
  819. package/dist/src/ui/slash/discuss.js.map +0 -1
  820. package/dist/src/ui/slash/ee.js.map +0 -1
  821. package/dist/src/ui/slash/execute.js.map +0 -1
  822. package/dist/src/ui/slash/expand.js.map +0 -1
  823. package/dist/src/ui/slash/export.js.map +0 -1
  824. package/dist/src/ui/slash/ideal.js.map +0 -1
  825. package/dist/src/ui/slash/menu-items.js.map +0 -1
  826. package/dist/src/ui/slash/optimize.js.map +0 -1
  827. package/dist/src/ui/slash/pin.js.map +0 -1
  828. package/dist/src/ui/slash/plan.js.map +0 -1
  829. package/dist/src/ui/slash/registry.js.map +0 -1
  830. package/dist/src/ui/slash/route.js.map +0 -1
  831. package/dist/src/ui/slash/route.test.js.map +0 -1
  832. package/dist/src/ui/slash/status.js.map +0 -1
  833. package/dist/src/ui/state/active-run.js.map +0 -1
  834. package/dist/src/ui/status-bar/index.js.map +0 -1
  835. package/dist/src/ui/status-bar/index.test.js.map +0 -1
  836. package/dist/src/ui/status-bar/store.js.map +0 -1
  837. package/dist/src/ui/status-bar/store.test.js.map +0 -1
  838. package/dist/src/ui/status-bar/tier-badge.js.map +0 -1
  839. package/dist/src/ui/status-bar/tier-badge.test.js.map +0 -1
  840. package/dist/src/ui/status-bar/usd-meter.js.map +0 -1
  841. package/dist/src/ui/status-bar/usd-meter.test.js.map +0 -1
  842. package/dist/src/ui/syntax-highlight.js.map +0 -1
  843. package/dist/src/ui/terminal-selection-text.js.map +0 -1
  844. package/dist/src/ui/theme.js.map +0 -1
  845. package/dist/src/ui/types.js.map +0 -1
  846. package/dist/src/ui/utils/__tests__/format.test.js.map +0 -1
  847. package/dist/src/ui/utils/__tests__/tools.test.js.map +0 -1
  848. package/dist/src/ui/utils/color.js.map +0 -1
  849. package/dist/src/ui/utils/format.js.map +0 -1
  850. package/dist/src/ui/utils/modal.js.map +0 -1
  851. package/dist/src/ui/utils/text.js.map +0 -1
  852. package/dist/src/ui/utils/tools.js.map +0 -1
  853. package/dist/src/usage/__tests__/product-ledger.test.js.map +0 -1
  854. package/dist/src/usage/cost-log.js.map +0 -1
  855. package/dist/src/usage/decision-log.js.map +0 -1
  856. package/dist/src/usage/downgrade.js.map +0 -1
  857. package/dist/src/usage/downgrade.test.js.map +0 -1
  858. package/dist/src/usage/estimator.js.map +0 -1
  859. package/dist/src/usage/estimator.test.js.map +0 -1
  860. package/dist/src/usage/ledger.js.map +0 -1
  861. package/dist/src/usage/ledger.test.js.map +0 -1
  862. package/dist/src/usage/midstream.js.map +0 -1
  863. package/dist/src/usage/midstream.test.js.map +0 -1
  864. package/dist/src/usage/product-ledger.js.map +0 -1
  865. package/dist/src/usage/thresholds.js.map +0 -1
  866. package/dist/src/usage/thresholds.test.js.map +0 -1
  867. package/dist/src/usage/types.js.map +0 -1
  868. package/dist/src/utils/__tests__/auto-council-settings.test.js.map +0 -1
  869. package/dist/src/utils/__tests__/ee-logger.test.js.map +0 -1
  870. package/dist/src/utils/__tests__/file-lock.test.js.map +0 -1
  871. package/dist/src/utils/__tests__/llm-deadline.test.js.map +0 -1
  872. package/dist/src/utils/__tests__/rate-limit.test.js.map +0 -1
  873. package/dist/src/utils/__tests__/settings-disabled-models.test.js.map +0 -1
  874. package/dist/src/utils/__tests__/settings-web-research.test.js.map +0 -1
  875. package/dist/src/utils/__tests__/slugify.test.js.map +0 -1
  876. package/dist/src/utils/__tests__/visible-retry.test.js.map +0 -1
  877. package/dist/src/utils/at-mentions.js.map +0 -1
  878. package/dist/src/utils/clipboard-image.js.map +0 -1
  879. package/dist/src/utils/ee-logger.js.map +0 -1
  880. package/dist/src/utils/file-index.js.map +0 -1
  881. package/dist/src/utils/file-lock.js.map +0 -1
  882. package/dist/src/utils/git-root.js.map +0 -1
  883. package/dist/src/utils/host-clipboard.js.map +0 -1
  884. package/dist/src/utils/install-manager.js.map +0 -1
  885. package/dist/src/utils/install-manager.test.js.map +0 -1
  886. package/dist/src/utils/instructions.js.map +0 -1
  887. package/dist/src/utils/instructions.test.js.map +0 -1
  888. package/dist/src/utils/llm-deadline.js.map +0 -1
  889. package/dist/src/utils/permission-mode.js.map +0 -1
  890. package/dist/src/utils/permission-mode.test.js.map +0 -1
  891. package/dist/src/utils/rate-limit.js.map +0 -1
  892. package/dist/src/utils/redactor.js.map +0 -1
  893. package/dist/src/utils/redactor.test.js.map +0 -1
  894. package/dist/src/utils/settings.js.map +0 -1
  895. package/dist/src/utils/settings.test.js.map +0 -1
  896. package/dist/src/utils/shell.js.map +0 -1
  897. package/dist/src/utils/shell.test.js.map +0 -1
  898. package/dist/src/utils/side-question.js.map +0 -1
  899. package/dist/src/utils/skills.js.map +0 -1
  900. package/dist/src/utils/skills.test.js.map +0 -1
  901. package/dist/src/utils/slugify.js.map +0 -1
  902. package/dist/src/utils/subagent-display.js.map +0 -1
  903. package/dist/src/utils/subagent-display.test.js.map +0 -1
  904. package/dist/src/utils/subagents-settings.test.js.map +0 -1
  905. package/dist/src/utils/telegram-audio-settings.test.js.map +0 -1
  906. package/dist/src/utils/update-checker.js.map +0 -1
  907. package/dist/src/utils/update-checker.test.js.map +0 -1
  908. package/dist/src/utils/visible-retry.js.map +0 -1
  909. package/dist/src/verify/__tests__/coverage-parsers.test.js.map +0 -1
  910. package/dist/src/verify/__tests__/dotnet-recipe.test.js.map +0 -1
  911. package/dist/src/verify/checkpoint.js.map +0 -1
  912. package/dist/src/verify/checkpoint.test.js.map +0 -1
  913. package/dist/src/verify/coverage-parsers.js.map +0 -1
  914. package/dist/src/verify/entrypoint.js.map +0 -1
  915. package/dist/src/verify/entrypoint.test.js.map +0 -1
  916. package/dist/src/verify/environment.js.map +0 -1
  917. package/dist/src/verify/environment.test.js.map +0 -1
  918. package/dist/src/verify/evidence.js.map +0 -1
  919. package/dist/src/verify/orchestrator.js.map +0 -1
  920. package/dist/src/verify/orchestrator.test.js.map +0 -1
  921. package/dist/src/verify/recipes.js.map +0 -1
  922. package/dist/src/verify/retry.js.map +0 -1
  923. package/dist/src/verify/runtime-prep.test.js.map +0 -1
  924. package/src/__test-helpers__/catalog-fixtures.ts +0 -57
  925. package/src/__test-stubs__/ee-server.ts +0 -173
  926. package/src/__test-stubs__/vitest-setup.ts +0 -36
  927. package/src/__tests__/council/bubble-layout.test.ts +0 -45
  928. package/src/__tests__/council/code-block-truncate.test.ts +0 -50
  929. package/src/__tests__/council/role-palette.test.ts +0 -66
  930. package/src/__tests__/first-run-wizard.test.ts +0 -9
  931. package/src/agent-harness/__tests__/cli-flags.spec.ts +0 -35
  932. package/src/agent-harness/__tests__/driver.spec.ts +0 -154
  933. package/src/agent-harness/__tests__/idle.spec.ts +0 -90
  934. package/src/agent-harness/__tests__/mock-llm.spec.ts +0 -126
  935. package/src/agent-harness/__tests__/mock-model.spec.ts +0 -195
  936. package/src/agent-harness/__tests__/predicate.spec.ts +0 -33
  937. package/src/agent-harness/__tests__/protocol.spec.ts +0 -62
  938. package/src/agent-harness/__tests__/schema.spec.ts +0 -81
  939. package/src/agent-harness/__tests__/selector.spec.ts +0 -82
  940. package/src/agent-harness/__tests__/sidechannel.spec.ts +0 -40
  941. package/src/agent-harness/__tests__/spec-helpers.spec.ts +0 -76
  942. package/src/agent-harness/index.ts +0 -24
  943. package/src/agent-harness/mock-model.ts +0 -445
  944. package/src/agent-harness/test-spawn.ts +0 -221
  945. package/src/billing/index.ts +0 -5
  946. package/src/bun-sqlite.d.ts +0 -15
  947. package/src/chat/__tests__/broadcast-bus.test.ts +0 -90
  948. package/src/chat/__tests__/channel-manager.test.ts +0 -149
  949. package/src/chat/__tests__/client.test.ts +0 -118
  950. package/src/chat/__tests__/discord-integration.test.ts +0 -162
  951. package/src/chat/__tests__/intent-prompt.test.ts +0 -92
  952. package/src/chat/__tests__/verdict-resolver.test.ts +0 -336
  953. package/src/chat/broadcast-bus.ts +0 -53
  954. package/src/chat/channel-manager.ts +0 -146
  955. package/src/chat/chat-keychain.ts +0 -137
  956. package/src/chat/factory.ts +0 -37
  957. package/src/chat/intent-prompt.ts +0 -72
  958. package/src/chat/providers/discord/client.ts +0 -91
  959. package/src/chat/types.ts +0 -42
  960. package/src/chat/verdict-constants.ts +0 -26
  961. package/src/chat/verdict-resolver.ts +0 -231
  962. package/src/cli/__tests__/bw-vault.test.ts +0 -97
  963. package/src/cli/__tests__/keys-bundle.test.ts +0 -46
  964. package/src/cli/__tests__/share-cmd.test.ts +0 -197
  965. package/src/cli/bw-vault.ts +0 -184
  966. package/src/cli/config/__tests__/model-picker.test.ts +0 -59
  967. package/src/cli/config/__tests__/provider-fetch.test.ts +0 -38
  968. package/src/cli/config/index.ts +0 -112
  969. package/src/cli/config/model-picker.ts +0 -193
  970. package/src/cli/config/provider-fetch.ts +0 -75
  971. package/src/cli/config/screen-council.ts +0 -245
  972. package/src/cli/config/screen-models.ts +0 -104
  973. package/src/cli/config/screen-providers.ts +0 -197
  974. package/src/cli/config/tui.ts +0 -153
  975. package/src/cli/cost-forensics.test.ts +0 -273
  976. package/src/cli/cost-forensics.ts +0 -337
  977. package/src/cli/keys-bundle.ts +0 -91
  978. package/src/cli/keys.test.ts +0 -104
  979. package/src/cli/keys.ts +0 -816
  980. package/src/cli/pil-report.ts +0 -202
  981. package/src/cli/reporter-cmd.ts +0 -154
  982. package/src/cli/share-cmd.ts +0 -132
  983. package/src/cli/usage-report.ts +0 -398
  984. package/src/cloud/index.ts +0 -5
  985. package/src/council/__tests__/accounting.test.ts +0 -72
  986. package/src/council/__tests__/audit-replay.test.ts +0 -344
  987. package/src/council/__tests__/clarifier-max-rounds.test.ts +0 -90
  988. package/src/council/__tests__/clarifier-options.test.ts +0 -63
  989. package/src/council/__tests__/clarifier-ready-gate.test.ts +0 -268
  990. package/src/council/__tests__/cost-aware.test.ts +0 -60
  991. package/src/council/__tests__/debate-planner-structured.test.ts +0 -236
  992. package/src/council/__tests__/decisions-lock.test.ts +0 -404
  993. package/src/council/__tests__/evaluator-metrics.test.ts +0 -513
  994. package/src/council/__tests__/parse-outcome-fallback.test.ts +0 -125
  995. package/src/council/__tests__/research-tools.test.ts +0 -239
  996. package/src/council/__tests__/round-tools.test.ts +0 -334
  997. package/src/council/__tests__/tool-trace.test.ts +0 -152
  998. package/src/council/__tests__/types-contract.test.ts +0 -88
  999. package/src/council/clarifier.ts +0 -507
  1000. package/src/council/context.ts +0 -249
  1001. package/src/council/debate-planner.ts +0 -303
  1002. package/src/council/debate.ts +0 -1179
  1003. package/src/council/decisions-lock.ts +0 -312
  1004. package/src/council/executor.ts +0 -27
  1005. package/src/council/index.ts +0 -956
  1006. package/src/council/leader.ts +0 -281
  1007. package/src/council/llm.ts +0 -939
  1008. package/src/council/phase-events.ts +0 -64
  1009. package/src/council/planner.ts +0 -303
  1010. package/src/council/preflight.ts +0 -86
  1011. package/src/council/prompts.ts +0 -698
  1012. package/src/council/types.ts +0 -304
  1013. package/src/daemon/scheduler.test.ts +0 -128
  1014. package/src/daemon/scheduler.ts +0 -152
  1015. package/src/ee/.gitkeep +0 -0
  1016. package/src/ee/__tests__/bb-design.test.ts +0 -223
  1017. package/src/ee/__tests__/export-transcripts.test.ts +0 -222
  1018. package/src/ee/__tests__/pil-context-bridge.test.ts +0 -59
  1019. package/src/ee/__tests__/pipeline.integration.test.ts +0 -193
  1020. package/src/ee/__tests__/recall-format.test.ts +0 -66
  1021. package/src/ee/__tests__/recall-ledger.test.ts +0 -55
  1022. package/src/ee/__tests__/render-sink-wiring.test.ts +0 -89
  1023. package/src/ee/auth.test.ts +0 -76
  1024. package/src/ee/auth.ts +0 -80
  1025. package/src/ee/bb-design.ts +0 -284
  1026. package/src/ee/bb-retrieval.ts +0 -467
  1027. package/src/ee/bridge.test.ts +0 -283
  1028. package/src/ee/bridge.ts +0 -443
  1029. package/src/ee/client-mode.ts +0 -161
  1030. package/src/ee/client.test.ts +0 -201
  1031. package/src/ee/client.ts +0 -683
  1032. package/src/ee/council-bridge.ts +0 -89
  1033. package/src/ee/embedding-cache.ts +0 -42
  1034. package/src/ee/export-transcripts.ts +0 -160
  1035. package/src/ee/extract-session.test.ts +0 -231
  1036. package/src/ee/extract-session.ts +0 -71
  1037. package/src/ee/health.ts +0 -83
  1038. package/src/ee/index.ts +0 -33
  1039. package/src/ee/intercept.test.ts +0 -197
  1040. package/src/ee/intercept.ts +0 -168
  1041. package/src/ee/judge.test.ts +0 -213
  1042. package/src/ee/judge.ts +0 -126
  1043. package/src/ee/mistake-detector.test.ts +0 -252
  1044. package/src/ee/mistake-detector.ts +0 -297
  1045. package/src/ee/offline-queue.test.ts +0 -302
  1046. package/src/ee/offline-queue.ts +0 -205
  1047. package/src/ee/phase-outcome.test.ts +0 -107
  1048. package/src/ee/phase-outcome.ts +0 -165
  1049. package/src/ee/phase-tracker.test.ts +0 -175
  1050. package/src/ee/phase-tracker.ts +0 -180
  1051. package/src/ee/posttool.test.ts +0 -81
  1052. package/src/ee/posttool.ts +0 -16
  1053. package/src/ee/prompt-stale.test.ts +0 -92
  1054. package/src/ee/prompt-stale.ts +0 -39
  1055. package/src/ee/recall-ledger.ts +0 -71
  1056. package/src/ee/recall-mirror.test.ts +0 -74
  1057. package/src/ee/render.test.ts +0 -74
  1058. package/src/ee/render.ts +0 -68
  1059. package/src/ee/scope.test.ts +0 -112
  1060. package/src/ee/scope.ts +0 -93
  1061. package/src/ee/search.ts +0 -259
  1062. package/src/ee/session-trajectory.test.ts +0 -139
  1063. package/src/ee/session-trajectory.ts +0 -226
  1064. package/src/ee/tenant.ts +0 -14
  1065. package/src/ee/touch.test.ts +0 -73
  1066. package/src/ee/transcript-emit.ts +0 -174
  1067. package/src/ee/types.ts +0 -432
  1068. package/src/flow/.gitkeep +0 -0
  1069. package/src/flow/__tests__/migration.test.ts +0 -133
  1070. package/src/flow/__tests__/parser.test.ts +0 -77
  1071. package/src/flow/__tests__/run-manager-product.test.ts +0 -59
  1072. package/src/flow/__tests__/run-manager.test.ts +0 -95
  1073. package/src/flow/__tests__/scaffold-checkpoint.test.ts +0 -113
  1074. package/src/flow/__tests__/scaffold.test.ts +0 -57
  1075. package/src/flow/__tests__/warning-persist.test.ts +0 -112
  1076. package/src/flow/artifact-io.ts +0 -41
  1077. package/src/flow/compaction/__tests__/compress.test.ts +0 -69
  1078. package/src/flow/compaction/__tests__/extract.test.ts +0 -74
  1079. package/src/flow/compaction/__tests__/preserve.test.ts +0 -69
  1080. package/src/flow/compaction/compress.ts +0 -67
  1081. package/src/flow/compaction/extract.ts +0 -60
  1082. package/src/flow/compaction/index.ts +0 -86
  1083. package/src/flow/compaction/preserve.ts +0 -48
  1084. package/src/flow/index.ts +0 -18
  1085. package/src/flow/migration.ts +0 -139
  1086. package/src/flow/parser.ts +0 -78
  1087. package/src/flow/run-manager.ts +0 -162
  1088. package/src/flow/scaffold-checkpoint.ts +0 -132
  1089. package/src/flow/scaffold.ts +0 -52
  1090. package/src/flow/warning-persist.ts +0 -84
  1091. package/src/generated/version.ts +0 -5
  1092. package/src/gsd/.gitkeep +0 -0
  1093. package/src/gsd/__tests__/complexity.test.ts +0 -0
  1094. package/src/gsd/__tests__/directives.test.ts +0 -88
  1095. package/src/gsd/__tests__/gray-areas.test.ts +0 -33
  1096. package/src/gsd/__tests__/types.test.ts +0 -91
  1097. package/src/gsd/complexity.ts +0 -124
  1098. package/src/gsd/directives.ts +0 -141
  1099. package/src/gsd/gray-areas.ts +0 -144
  1100. package/src/gsd/index.ts +0 -1
  1101. package/src/gsd/types.ts +0 -63
  1102. package/src/headless/__tests__/council-answers.test.ts +0 -300
  1103. package/src/headless/council-answers.ts +0 -152
  1104. package/src/headless/output.test.ts +0 -201
  1105. package/src/headless/output.ts +0 -312
  1106. package/src/hooks/config.ts +0 -41
  1107. package/src/hooks/index.ts +0 -569
  1108. package/src/hooks/types.ts +0 -263
  1109. package/src/index.ts +0 -1762
  1110. package/src/lsp/builtins.test.ts +0 -129
  1111. package/src/lsp/builtins.ts +0 -453
  1112. package/src/lsp/client.ts +0 -342
  1113. package/src/lsp/manager.test.ts +0 -198
  1114. package/src/lsp/manager.ts +0 -343
  1115. package/src/lsp/npm-cache.test.ts +0 -70
  1116. package/src/lsp/npm-cache.ts +0 -111
  1117. package/src/lsp/runtime.ts +0 -70
  1118. package/src/lsp/smoke.test.ts +0 -74
  1119. package/src/lsp/types.ts +0 -119
  1120. package/src/maintain/__tests__/codebase-intel.test.ts +0 -320
  1121. package/src/maintain/__tests__/gh-create-pr.test.ts +0 -195
  1122. package/src/maintain/__tests__/pr-builder.test.ts +0 -282
  1123. package/src/maintain/__tests__/repo-map.test.ts +0 -128
  1124. package/src/maintain/__tests__/task-runner.test.ts +0 -347
  1125. package/src/maintain/codebase-intel.ts +0 -595
  1126. package/src/maintain/gh-create-pr.ts +0 -148
  1127. package/src/maintain/index.ts +0 -14
  1128. package/src/maintain/pr-builder.ts +0 -373
  1129. package/src/maintain/repo-map.ts +0 -205
  1130. package/src/maintain/task-runner.ts +0 -481
  1131. package/src/maintain/types.ts +0 -49
  1132. package/src/mcp/__tests__/auto-setup.test.ts +0 -88
  1133. package/src/mcp/__tests__/cap-tool-result.test.ts +0 -65
  1134. package/src/mcp/__tests__/ee-tools.test.ts +0 -248
  1135. package/src/mcp/__tests__/forensics-tools.test.ts +0 -66
  1136. package/src/mcp/__tests__/harness-driver-action-tools.spec.ts +0 -116
  1137. package/src/mcp/__tests__/harness-driver-async-tools.spec.ts +0 -129
  1138. package/src/mcp/__tests__/harness-driver-read-tools.spec.ts +0 -140
  1139. package/src/mcp/__tests__/harness-driver-security.spec.ts +0 -69
  1140. package/src/mcp/__tests__/harness-driver.spec.ts +0 -21
  1141. package/src/mcp/__tests__/lazy-schema.spec.ts +0 -173
  1142. package/src/mcp/__tests__/lsp-tools.test.ts +0 -72
  1143. package/src/mcp/__tests__/mcp-keychain.test.ts +0 -46
  1144. package/src/mcp/__tests__/research-onboarding.test.ts +0 -163
  1145. package/src/mcp/__tests__/runtime-hydration.test.ts +0 -86
  1146. package/src/mcp/__tests__/runtime-output-cap.test.ts +0 -49
  1147. package/src/mcp/__tests__/runtime-sanitize.test.ts +0 -44
  1148. package/src/mcp/__tests__/self-verify-jobs.test.ts +0 -102
  1149. package/src/mcp/__tests__/smart-filter.test.ts +0 -139
  1150. package/src/mcp/__tests__/tools-server.smoke.test.ts +0 -41
  1151. package/src/mcp/auto-setup.ts +0 -99
  1152. package/src/mcp/cap-tool-result.ts +0 -68
  1153. package/src/mcp/catalog.ts +0 -155
  1154. package/src/mcp/ee-tools.ts +0 -204
  1155. package/src/mcp/forensics-tools.ts +0 -65
  1156. package/src/mcp/lsp-tools.ts +0 -78
  1157. package/src/mcp/mcp-keychain.ts +0 -85
  1158. package/src/mcp/oauth-callback.ts +0 -75
  1159. package/src/mcp/oauth-provider.ts +0 -128
  1160. package/src/mcp/opentui-spawn.ts +0 -64
  1161. package/src/mcp/parse-headers.test.ts +0 -54
  1162. package/src/mcp/parse-headers.ts +0 -35
  1163. package/src/mcp/research-onboarding.ts +0 -143
  1164. package/src/mcp/runtime.ts +0 -182
  1165. package/src/mcp/self-verify-jobs.ts +0 -137
  1166. package/src/mcp/smart-filter.ts +0 -138
  1167. package/src/mcp/smoke.test.ts +0 -170
  1168. package/src/mcp/tools-server.ts +0 -174
  1169. package/src/mcp/validate.ts +0 -48
  1170. package/src/models/__tests__/registry.test.ts +0 -95
  1171. package/src/models/catalog-client.ts +0 -234
  1172. package/src/models/catalog-gemini.test.ts +0 -52
  1173. package/src/models/catalog-url.test.ts +0 -27
  1174. package/src/models/catalog-validation.test.ts +0 -74
  1175. package/src/models/catalog.README.md +0 -136
  1176. package/src/models/catalog.json +0 -349
  1177. package/src/models/classify-tier.ts +0 -48
  1178. package/src/models/index.ts +0 -9
  1179. package/src/models/registry.ts +0 -87
  1180. package/src/ops/__tests__/doctor-council-mcp.test.ts +0 -161
  1181. package/src/ops/__tests__/doctor-ee-health.test.ts +0 -129
  1182. package/src/ops/bug-report.test.ts +0 -172
  1183. package/src/ops/bug-report.ts +0 -80
  1184. package/src/ops/doctor.test.ts +0 -108
  1185. package/src/ops/doctor.ts +0 -366
  1186. package/src/orchestrator/__tests__/agent-base-url-switch.test.ts +0 -87
  1187. package/src/orchestrator/__tests__/batch-turn-runner.test.ts +0 -186
  1188. package/src/orchestrator/__tests__/council-manager.test.ts +0 -171
  1189. package/src/orchestrator/__tests__/cross-turn-dedup.test.ts +0 -201
  1190. package/src/orchestrator/__tests__/current-call-id.test.ts +0 -160
  1191. package/src/orchestrator/__tests__/error-forensics.test.ts +0 -99
  1192. package/src/orchestrator/__tests__/flow-resume.test.ts +0 -71
  1193. package/src/orchestrator/__tests__/humanize-api-error.test.ts +0 -74
  1194. package/src/orchestrator/__tests__/message-processor.test.ts +0 -201
  1195. package/src/orchestrator/__tests__/message-write-ahead.test.ts +0 -170
  1196. package/src/orchestrator/__tests__/read-path-budget.test.ts +0 -170
  1197. package/src/orchestrator/__tests__/retry-classifier.test.ts +0 -131
  1198. package/src/orchestrator/__tests__/retry-stream.test.ts +0 -186
  1199. package/src/orchestrator/__tests__/route-feedback.test.ts +0 -55
  1200. package/src/orchestrator/__tests__/stream-runner.test.ts +0 -201
  1201. package/src/orchestrator/__tests__/sub-agent-model-tier.test.ts +0 -53
  1202. package/src/orchestrator/__tests__/usage-events-shape.test.ts +0 -80
  1203. package/src/orchestrator/__tests__/usage-normalizer-c1.test.ts +0 -172
  1204. package/src/orchestrator/__tests__/usage-shape-threading.test.ts +0 -111
  1205. package/src/orchestrator/__tests__/write-ahead.test.ts +0 -162
  1206. package/src/orchestrator/abort.test.ts +0 -37
  1207. package/src/orchestrator/abort.ts +0 -51
  1208. package/src/orchestrator/agent-options.ts +0 -167
  1209. package/src/orchestrator/agent.test.ts +0 -191
  1210. package/src/orchestrator/batch-turn-runner.ts +0 -425
  1211. package/src/orchestrator/batch-utils.ts +0 -340
  1212. package/src/orchestrator/cleanup.test.ts +0 -86
  1213. package/src/orchestrator/compaction.test.ts +0 -200
  1214. package/src/orchestrator/compaction.ts +0 -626
  1215. package/src/orchestrator/council-manager.ts +0 -572
  1216. package/src/orchestrator/cross-turn-dedup.ts +0 -208
  1217. package/src/orchestrator/delegations.test.ts +0 -145
  1218. package/src/orchestrator/delegations.ts +0 -370
  1219. package/src/orchestrator/error-utils.ts +0 -165
  1220. package/src/orchestrator/flow-resume.ts +0 -54
  1221. package/src/orchestrator/grounding-check.test.ts +0 -111
  1222. package/src/orchestrator/grounding-check.ts +0 -138
  1223. package/src/orchestrator/interrupted-turn.test.ts +0 -39
  1224. package/src/orchestrator/interrupted-turn.ts +0 -27
  1225. package/src/orchestrator/message-processor.ts +0 -3364
  1226. package/src/orchestrator/message-seq.test.ts +0 -29
  1227. package/src/orchestrator/message-seq.ts +0 -19
  1228. package/src/orchestrator/orchestrator.ts +0 -2752
  1229. package/src/orchestrator/pending-calls.test.ts +0 -226
  1230. package/src/orchestrator/pending-calls.ts +0 -240
  1231. package/src/orchestrator/prompts.ts +0 -579
  1232. package/src/orchestrator/provider-options-shape.spec.ts +0 -67
  1233. package/src/orchestrator/provider-options-shape.ts +0 -70
  1234. package/src/orchestrator/read-path-budget.ts +0 -205
  1235. package/src/orchestrator/reasoning.test.ts +0 -114
  1236. package/src/orchestrator/reasoning.ts +0 -116
  1237. package/src/orchestrator/repair-tool-call.ts +0 -54
  1238. package/src/orchestrator/repetition-detector.test.ts +0 -127
  1239. package/src/orchestrator/repetition-detector.ts +0 -140
  1240. package/src/orchestrator/retry-classifier.ts +0 -140
  1241. package/src/orchestrator/retry-stream.ts +0 -159
  1242. package/src/orchestrator/sandbox.test.ts +0 -117
  1243. package/src/orchestrator/scope-ceiling.test.ts +0 -215
  1244. package/src/orchestrator/scope-ceiling.ts +0 -234
  1245. package/src/orchestrator/scope-reminder.test.ts +0 -232
  1246. package/src/orchestrator/scope-reminder.ts +0 -230
  1247. package/src/orchestrator/stall-rescue.test.ts +0 -100
  1248. package/src/orchestrator/stall-rescue.ts +0 -95
  1249. package/src/orchestrator/stall-watchdog.test.ts +0 -83
  1250. package/src/orchestrator/stall-watchdog.ts +0 -87
  1251. package/src/orchestrator/stream-runner.ts +0 -939
  1252. package/src/orchestrator/sub-agent-cap.test.ts +0 -227
  1253. package/src/orchestrator/sub-agent-cap.ts +0 -240
  1254. package/src/orchestrator/sub-agent-model-tier.ts +0 -58
  1255. package/src/orchestrator/subagent-compactor.spec.ts +0 -332
  1256. package/src/orchestrator/subagent-compactor.ts +0 -456
  1257. package/src/orchestrator/text-tool-call-detector.test.ts +0 -99
  1258. package/src/orchestrator/text-tool-call-detector.ts +0 -200
  1259. package/src/orchestrator/token-counter.test.ts +0 -69
  1260. package/src/orchestrator/token-counter.ts +0 -81
  1261. package/src/orchestrator/tool-args-hash.test.ts +0 -121
  1262. package/src/orchestrator/tool-args-hash.ts +0 -221
  1263. package/src/orchestrator/tool-args-repair.test.ts +0 -156
  1264. package/src/orchestrator/tool-args-repair.ts +0 -227
  1265. package/src/orchestrator/tool-loop-cap.test.ts +0 -193
  1266. package/src/orchestrator/tool-loop-cap.ts +0 -174
  1267. package/src/orchestrator/tool-repetition-detector.test.ts +0 -119
  1268. package/src/orchestrator/tool-repetition-detector.ts +0 -0
  1269. package/src/orchestrator/tool-utils.ts +0 -214
  1270. package/src/orchestrator/turn-runner-deps.ts +0 -85
  1271. package/src/pil/__tests__/budget.test.ts +0 -39
  1272. package/src/pil/__tests__/clarity-gate.test.ts +0 -299
  1273. package/src/pil/__tests__/config.test.ts +0 -78
  1274. package/src/pil/__tests__/discovery-cache.test.ts +0 -45
  1275. package/src/pil/__tests__/discovery-types.test.ts +0 -68
  1276. package/src/pil/__tests__/discovery.test.ts +0 -141
  1277. package/src/pil/__tests__/dual-run.test.ts +0 -53
  1278. package/src/pil/__tests__/layer1-intent-trace.test.ts +0 -142
  1279. package/src/pil/__tests__/layer1-intent.test.ts +0 -365
  1280. package/src/pil/__tests__/layer15-context-scan.test.ts +0 -76
  1281. package/src/pil/__tests__/layer16-clarity.test.ts +0 -184
  1282. package/src/pil/__tests__/layer17-feasibility.test.ts +0 -42
  1283. package/src/pil/__tests__/layer18-acceptance.test.ts +0 -116
  1284. package/src/pil/__tests__/layer2-personality.test.ts +0 -63
  1285. package/src/pil/__tests__/layer3-ee-injection.test.ts +0 -189
  1286. package/src/pil/__tests__/layer3-injected-chunk.test.ts +0 -122
  1287. package/src/pil/__tests__/layer4-gsd.test.ts +0 -109
  1288. package/src/pil/__tests__/layer5-context.test.ts +0 -157
  1289. package/src/pil/__tests__/layer6-output.test.ts +0 -362
  1290. package/src/pil/__tests__/llm-classify.test.ts +0 -140
  1291. package/src/pil/__tests__/native-capabilities-workbook.test.ts +0 -45
  1292. package/src/pil/__tests__/ollama-classify.test.ts +0 -81
  1293. package/src/pil/__tests__/orchestrator-integration.test.ts +0 -107
  1294. package/src/pil/__tests__/pipeline.test.ts +0 -191
  1295. package/src/pil/__tests__/renderer-coverage.test.ts +0 -46
  1296. package/src/pil/__tests__/response-tools.test.ts +0 -239
  1297. package/src/pil/__tests__/schema.test.ts +0 -233
  1298. package/src/pil/__tests__/scoreComplexity.test.ts +0 -134
  1299. package/src/pil/__tests__/scoreSufficiency.test.ts +0 -104
  1300. package/src/pil/__tests__/store.test.ts +0 -49
  1301. package/src/pil/__tests__/task-tier-map.test.ts +0 -41
  1302. package/src/pil/agent-operating-contract.test.ts +0 -84
  1303. package/src/pil/agent-operating-contract.ts +0 -70
  1304. package/src/pil/budget-log.ts +0 -86
  1305. package/src/pil/budget.ts +0 -18
  1306. package/src/pil/cheap-model-playbook.test.ts +0 -191
  1307. package/src/pil/cheap-model-playbook.ts +0 -153
  1308. package/src/pil/cheap-model-workbooks.test.ts +0 -154
  1309. package/src/pil/cheap-model-workbooks.ts +0 -109
  1310. package/src/pil/clarity-gate.ts +0 -188
  1311. package/src/pil/config.ts +0 -25
  1312. package/src/pil/discovery-cache.ts +0 -20
  1313. package/src/pil/discovery-types.ts +0 -97
  1314. package/src/pil/discovery.ts +0 -397
  1315. package/src/pil/index.ts +0 -24
  1316. package/src/pil/layer1-intent.test.ts +0 -520
  1317. package/src/pil/layer1-intent.ts +0 -1236
  1318. package/src/pil/layer15-context-scan.ts +0 -159
  1319. package/src/pil/layer16-clarity.test.ts +0 -35
  1320. package/src/pil/layer16-clarity.ts +0 -417
  1321. package/src/pil/layer17-feasibility.ts +0 -40
  1322. package/src/pil/layer18-acceptance.ts +0 -98
  1323. package/src/pil/layer1_5-complexity-size.test.ts +0 -279
  1324. package/src/pil/layer1_5-complexity-size.ts +0 -175
  1325. package/src/pil/layer2-personality.ts +0 -46
  1326. package/src/pil/layer3-ee-injection.ts +0 -406
  1327. package/src/pil/layer4-gsd.ts +0 -124
  1328. package/src/pil/layer5-context.ts +0 -171
  1329. package/src/pil/layer6-output.ts +0 -364
  1330. package/src/pil/llm-classify.ts +0 -199
  1331. package/src/pil/native-capabilities-workbook.ts +0 -124
  1332. package/src/pil/ollama-classify.ts +0 -49
  1333. package/src/pil/pipeline.ts +0 -313
  1334. package/src/pil/response-tools.ts +0 -187
  1335. package/src/pil/schema.ts +0 -111
  1336. package/src/pil/session-state.test.ts +0 -88
  1337. package/src/pil/session-state.ts +0 -157
  1338. package/src/pil/store.ts +0 -29
  1339. package/src/pil/task-tier-map.ts +0 -97
  1340. package/src/pil/timeout.ts +0 -10
  1341. package/src/pil/types.ts +0 -168
  1342. package/src/product-loop/__tests__/artifact-io.test.ts +0 -97
  1343. package/src/product-loop/__tests__/assumption-ledger.test.ts +0 -292
  1344. package/src/product-loop/__tests__/backlog-builder.test.ts +0 -200
  1345. package/src/product-loop/__tests__/backlog-store.test.ts +0 -119
  1346. package/src/product-loop/__tests__/cb2-retry-bonus.test.ts +0 -182
  1347. package/src/product-loop/__tests__/circuit-breakers-coverage.test.ts +0 -82
  1348. package/src/product-loop/__tests__/circuit-breakers.test.ts +0 -90
  1349. package/src/product-loop/__tests__/complexity-routing.spec.ts +0 -315
  1350. package/src/product-loop/__tests__/context-policy.test.ts +0 -280
  1351. package/src/product-loop/__tests__/cost-preview.test.ts +0 -118
  1352. package/src/product-loop/__tests__/cost-scoper.test.ts +0 -76
  1353. package/src/product-loop/__tests__/cross-run-memory.test.ts +0 -195
  1354. package/src/product-loop/__tests__/design-output.spec.ts +0 -39
  1355. package/src/product-loop/__tests__/discover.test.ts +0 -98
  1356. package/src/product-loop/__tests__/discovery-context-format.test.ts +0 -111
  1357. package/src/product-loop/__tests__/discovery-council-runner.test.ts +0 -13
  1358. package/src/product-loop/__tests__/discovery-detection.test.ts +0 -180
  1359. package/src/product-loop/__tests__/discovery-ecosystem.test.ts +0 -246
  1360. package/src/product-loop/__tests__/discovery-integration.test.ts +0 -133
  1361. package/src/product-loop/__tests__/discovery-interview.test.ts +0 -305
  1362. package/src/product-loop/__tests__/discovery-migrations.test.ts +0 -75
  1363. package/src/product-loop/__tests__/discovery-persistence.test.ts +0 -171
  1364. package/src/product-loop/__tests__/discovery-prompt-parser.test.ts +0 -77
  1365. package/src/product-loop/__tests__/discovery-prompt-specificity.test.ts +0 -65
  1366. package/src/product-loop/__tests__/discovery-recommender-ecosystem.test.ts +0 -192
  1367. package/src/product-loop/__tests__/discovery-recommender.test.ts +0 -382
  1368. package/src/product-loop/__tests__/discovery-schema.test.ts +0 -102
  1369. package/src/product-loop/__tests__/done-gate-coverage.test.ts +0 -151
  1370. package/src/product-loop/__tests__/done-gate.test.ts +0 -140
  1371. package/src/product-loop/__tests__/ee-extract-wiring.test.ts +0 -222
  1372. package/src/product-loop/__tests__/extract-to-ee.test.ts +0 -205
  1373. package/src/product-loop/__tests__/feedback-routing.test.ts +0 -93
  1374. package/src/product-loop/__tests__/gather-selectable-alts.test.ts +0 -119
  1375. package/src/product-loop/__tests__/hot-path.spec.ts +0 -177
  1376. package/src/product-loop/__tests__/integration.test.ts +0 -350
  1377. package/src/product-loop/__tests__/loop-driver-audit.test.ts +0 -327
  1378. package/src/product-loop/__tests__/loop-driver.test.ts +0 -253
  1379. package/src/product-loop/__tests__/maintenance-task-synthesis.test.ts +0 -78
  1380. package/src/product-loop/__tests__/phase-a1-a3-sprint-runner.test.ts +0 -315
  1381. package/src/product-loop/__tests__/phase-a2-backlog-build.test.ts +0 -189
  1382. package/src/product-loop/__tests__/phase-budget.test.ts +0 -172
  1383. package/src/product-loop/__tests__/phase-orchestrator-integration.test.ts +0 -143
  1384. package/src/product-loop/__tests__/phase-plan.test.ts +0 -241
  1385. package/src/product-loop/__tests__/phase-rituals.test.ts +0 -205
  1386. package/src/product-loop/__tests__/phase-runner.test.ts +0 -454
  1387. package/src/product-loop/__tests__/phase-tracker-bridge.test.ts +0 -85
  1388. package/src/product-loop/__tests__/pick-backend-stack.test.ts +0 -117
  1389. package/src/product-loop/__tests__/product-identity.test.ts +0 -47
  1390. package/src/product-loop/__tests__/progress-snapshot.test.ts +0 -180
  1391. package/src/product-loop/__tests__/reality-anchor.test.ts +0 -58
  1392. package/src/product-loop/__tests__/repo-audit.test.ts +0 -103
  1393. package/src/product-loop/__tests__/repo-brief.test.ts +0 -155
  1394. package/src/product-loop/__tests__/role-memory.test.ts +0 -70
  1395. package/src/product-loop/__tests__/role-registry.test.ts +0 -235
  1396. package/src/product-loop/__tests__/role-routing-ee.test.ts +0 -90
  1397. package/src/product-loop/__tests__/route-decision-emit.test.ts +0 -258
  1398. package/src/product-loop/__tests__/seed-questions.test.ts +0 -33
  1399. package/src/product-loop/__tests__/ship-polish.test.ts +0 -109
  1400. package/src/product-loop/__tests__/sprint-planner.test.ts +0 -166
  1401. package/src/product-loop/__tests__/sprint-runner-backlog.test.ts +0 -248
  1402. package/src/product-loop/__tests__/sprint-runner-emit.test.ts +0 -324
  1403. package/src/product-loop/__tests__/sprint-runner-phase-chunks.test.ts +0 -220
  1404. package/src/product-loop/__tests__/sprint-runner.test.ts +0 -501
  1405. package/src/product-loop/__tests__/sprint-self-verify.test.ts +0 -77
  1406. package/src/product-loop/__tests__/sprint-store.test.ts +0 -98
  1407. package/src/product-loop/__tests__/stakeholder-acl.test.ts +0 -94
  1408. package/src/product-loop/__tests__/state-md-ee-injections.test.ts +0 -229
  1409. package/src/product-loop/__tests__/sufficiency-routing.spec.ts +0 -183
  1410. package/src/product-loop/__tests__/typed-artifacts.test.ts +0 -259
  1411. package/src/product-loop/__tests__/types.test.ts +0 -103
  1412. package/src/product-loop/__tests__/verify-failure-threshold.test.ts +0 -178
  1413. package/src/product-loop/__tests__/verify-failure-tracking.test.ts +0 -154
  1414. package/src/product-loop/__tests__/verify-result.test.ts +0 -60
  1415. package/src/product-loop/artifact-io.ts +0 -239
  1416. package/src/product-loop/assumption-ledger.ts +0 -270
  1417. package/src/product-loop/backlog-builder.ts +0 -253
  1418. package/src/product-loop/backlog-store.ts +0 -62
  1419. package/src/product-loop/circuit-breakers.ts +0 -76
  1420. package/src/product-loop/context-policy.ts +0 -180
  1421. package/src/product-loop/cost-preview.ts +0 -139
  1422. package/src/product-loop/cost-scoper.ts +0 -49
  1423. package/src/product-loop/cross-run-memory.ts +0 -450
  1424. package/src/product-loop/design-output.ts +0 -24
  1425. package/src/product-loop/discover.ts +0 -159
  1426. package/src/product-loop/discovery-context-format.ts +0 -56
  1427. package/src/product-loop/discovery-council-runner.ts +0 -78
  1428. package/src/product-loop/discovery-detection.ts +0 -161
  1429. package/src/product-loop/discovery-ecosystem.ts +0 -239
  1430. package/src/product-loop/discovery-interview.ts +0 -288
  1431. package/src/product-loop/discovery-migrations.ts +0 -40
  1432. package/src/product-loop/discovery-persistence.ts +0 -219
  1433. package/src/product-loop/discovery-prompt-parser.ts +0 -80
  1434. package/src/product-loop/discovery-recommender.ts +0 -514
  1435. package/src/product-loop/discovery-schema.ts +0 -143
  1436. package/src/product-loop/done-gate.ts +0 -224
  1437. package/src/product-loop/feedback-routing.ts +0 -82
  1438. package/src/product-loop/gather.ts +0 -386
  1439. package/src/product-loop/index.ts +0 -1855
  1440. package/src/product-loop/loop-driver.ts +0 -900
  1441. package/src/product-loop/phase-budget.ts +0 -182
  1442. package/src/product-loop/phase-plan.ts +0 -158
  1443. package/src/product-loop/phase-rituals.ts +0 -158
  1444. package/src/product-loop/phase-runner.ts +0 -455
  1445. package/src/product-loop/phase-tracker-bridge.ts +0 -60
  1446. package/src/product-loop/product-identity.ts +0 -11
  1447. package/src/product-loop/progress-snapshot.ts +0 -216
  1448. package/src/product-loop/reality-anchor.ts +0 -45
  1449. package/src/product-loop/repo-audit.ts +0 -314
  1450. package/src/product-loop/repo-brief.ts +0 -235
  1451. package/src/product-loop/role-memory.ts +0 -72
  1452. package/src/product-loop/role-registry.ts +0 -175
  1453. package/src/product-loop/seed-questions.ts +0 -51
  1454. package/src/product-loop/ship-polish.ts +0 -164
  1455. package/src/product-loop/sprint-planner.ts +0 -241
  1456. package/src/product-loop/sprint-runner.ts +0 -801
  1457. package/src/product-loop/sprint-self-verify.ts +0 -189
  1458. package/src/product-loop/sprint-store.ts +0 -96
  1459. package/src/product-loop/stakeholder-acl.ts +0 -82
  1460. package/src/product-loop/typed-artifacts.ts +0 -332
  1461. package/src/product-loop/types.ts +0 -570
  1462. package/src/product-loop/verify-failure-tracking.ts +0 -225
  1463. package/src/product-loop/verify-result.ts +0 -39
  1464. package/src/providers/.gitkeep +0 -0
  1465. package/src/providers/__test-utils__/load-fixture.ts +0 -36
  1466. package/src/providers/__tests__/adapter-oauth-wiring.test.ts +0 -147
  1467. package/src/providers/__tests__/capabilities-cosmetic.test.ts +0 -119
  1468. package/src/providers/__tests__/capabilities-flags.test.ts +0 -166
  1469. package/src/providers/__tests__/capabilities-provider-options.test.ts +0 -232
  1470. package/src/providers/__tests__/capabilities-sanitize.test.ts +0 -66
  1471. package/src/providers/__tests__/capabilities.test.ts +0 -44
  1472. package/src/providers/__tests__/provider-coverage.test.ts +0 -48
  1473. package/src/providers/__tests__/reasoning-roundtrip.test.ts +0 -150
  1474. package/src/providers/__tests__/runtime-integration.test.ts +0 -106
  1475. package/src/providers/__tests__/runtime.test.ts +0 -94
  1476. package/src/providers/__tests__/siliconflow-sse-repair.test.ts +0 -300
  1477. package/src/providers/__tests__/strategies-registry.test.ts +0 -55
  1478. package/src/providers/__tests__/strategies-resolve.test.ts +0 -137
  1479. package/src/providers/__tests__/wire-debug.test.ts +0 -42
  1480. package/src/providers/adapter.test.ts +0 -21
  1481. package/src/providers/adapter.ts +0 -156
  1482. package/src/providers/anthropic.ts +0 -174
  1483. package/src/providers/auth/__tests__/browser-flow.test.ts +0 -230
  1484. package/src/providers/auth/__tests__/device-flow.test.ts +0 -263
  1485. package/src/providers/auth/__tests__/gemini-oauth.test.ts +0 -387
  1486. package/src/providers/auth/__tests__/grok-oauth.test.ts +0 -283
  1487. package/src/providers/auth/__tests__/openai-oauth.test.ts +0 -378
  1488. package/src/providers/auth/__tests__/token-store.test.ts +0 -152
  1489. package/src/providers/auth/browser-flow.ts +0 -140
  1490. package/src/providers/auth/device-flow.ts +0 -221
  1491. package/src/providers/auth/gemini-oauth.ts +0 -351
  1492. package/src/providers/auth/grok-oauth.ts +0 -406
  1493. package/src/providers/auth/openai-oauth.ts +0 -455
  1494. package/src/providers/auth/registry.ts +0 -138
  1495. package/src/providers/auth/token-store.ts +0 -154
  1496. package/src/providers/auth/types.ts +0 -111
  1497. package/src/providers/capabilities.ts +0 -355
  1498. package/src/providers/endpoints.ts +0 -68
  1499. package/src/providers/errors.test.ts +0 -76
  1500. package/src/providers/errors.ts +0 -46
  1501. package/src/providers/gemini.test.ts +0 -46
  1502. package/src/providers/gemini.ts +0 -42
  1503. package/src/providers/index.ts +0 -28
  1504. package/src/providers/keychain.test.ts +0 -100
  1505. package/src/providers/keychain.ts +0 -278
  1506. package/src/providers/mcp-vision-bridge.test.ts +0 -513
  1507. package/src/providers/mcp-vision-bridge.ts +0 -1020
  1508. package/src/providers/ollama.test.ts +0 -46
  1509. package/src/providers/ollama.ts +0 -36
  1510. package/src/providers/openai-compatible.test.ts +0 -63
  1511. package/src/providers/openai-compatible.ts +0 -62
  1512. package/src/providers/openai.test.ts +0 -65
  1513. package/src/providers/openai.ts +0 -56
  1514. package/src/providers/patch-zod-schema.ts +0 -126
  1515. package/src/providers/pricing.test.ts +0 -97
  1516. package/src/providers/pricing.ts +0 -128
  1517. package/src/providers/prompt-cache-key.spec.ts +0 -28
  1518. package/src/providers/runtime-mock.spec.ts +0 -86
  1519. package/src/providers/runtime.ts +0 -311
  1520. package/src/providers/siliconflow-sse-repair.ts +0 -201
  1521. package/src/providers/strategies/anthropic.strategy.ts +0 -25
  1522. package/src/providers/strategies/base.strategy.ts +0 -76
  1523. package/src/providers/strategies/deepseek.strategy.ts +0 -55
  1524. package/src/providers/strategies/google.strategy.ts +0 -28
  1525. package/src/providers/strategies/ollama.strategy.ts +0 -22
  1526. package/src/providers/strategies/openai.strategy.ts +0 -55
  1527. package/src/providers/strategies/registry.ts +0 -43
  1528. package/src/providers/strategies/siliconflow.strategy.ts +0 -28
  1529. package/src/providers/strategies/xai.strategy.ts +0 -33
  1530. package/src/providers/stream-loop.ts +0 -83
  1531. package/src/providers/types.ts +0 -145
  1532. package/src/providers/vision-proxy.test.ts +0 -252
  1533. package/src/providers/vision-proxy.ts +0 -317
  1534. package/src/providers/wire-debug.ts +0 -163
  1535. package/src/reporter/__tests__/acl-check.test.ts +0 -71
  1536. package/src/reporter/__tests__/auto-fire.test.ts +0 -161
  1537. package/src/reporter/__tests__/budget.test.ts +0 -74
  1538. package/src/reporter/__tests__/handlers.test.ts +0 -192
  1539. package/src/reporter/__tests__/query-router.test.ts +0 -115
  1540. package/src/reporter/acl-check.ts +0 -54
  1541. package/src/reporter/auto-fire.ts +0 -168
  1542. package/src/reporter/budget.ts +0 -59
  1543. package/src/reporter/handlers.ts +0 -212
  1544. package/src/reporter/index.ts +0 -210
  1545. package/src/reporter/query-router.ts +0 -51
  1546. package/src/router/.gitkeep +0 -0
  1547. package/src/router/__tests__/step-router.test.ts +0 -150
  1548. package/src/router/classifier/grammars.ts +0 -17
  1549. package/src/router/classifier/index.test.ts +0 -33
  1550. package/src/router/classifier/index.ts +0 -21
  1551. package/src/router/classifier/regex.test.ts +0 -51
  1552. package/src/router/classifier/regex.ts +0 -160
  1553. package/src/router/classifier/tree-sitter.test.ts +0 -26
  1554. package/src/router/classifier/tree-sitter.ts +0 -87
  1555. package/src/router/cold.test.ts +0 -62
  1556. package/src/router/cold.ts +0 -27
  1557. package/src/router/decide.test.ts +0 -209
  1558. package/src/router/decide.ts +0 -509
  1559. package/src/router/health.test.ts +0 -59
  1560. package/src/router/health.ts +0 -49
  1561. package/src/router/provider-sentinel.test.ts +0 -22
  1562. package/src/router/provider-sentinel.ts +0 -20
  1563. package/src/router/role-override.test.ts +0 -37
  1564. package/src/router/step-router.ts +0 -194
  1565. package/src/router/store.ts +0 -47
  1566. package/src/router/types.ts +0 -20
  1567. package/src/router/warm.test.ts +0 -234
  1568. package/src/router/warm.ts +0 -93
  1569. package/src/scaffold/__tests__/continuation-prompt.test.ts +0 -93
  1570. package/src/scaffold/__tests__/continue-as-council.spec.ts +0 -122
  1571. package/src/scaffold/__tests__/dotnet-assembly-name.test.ts +0 -28
  1572. package/src/scaffold/__tests__/fe-scaffold-contents.test.ts +0 -127
  1573. package/src/scaffold/__tests__/init-new.smoke.spec.ts +0 -99
  1574. package/src/scaffold/__tests__/init-new.spec.ts +0 -450
  1575. package/src/scaffold/__tests__/install-bb-templates.spec.ts +0 -86
  1576. package/src/scaffold/__tests__/point-to-existing.spec.ts +0 -114
  1577. package/src/scaffold/bb-ecosystem-apply.ts +0 -457
  1578. package/src/scaffold/bb-quality-gate.ts +0 -287
  1579. package/src/scaffold/continuation-prompt.ts +0 -80
  1580. package/src/scaffold/continue-as-council.ts +0 -99
  1581. package/src/scaffold/init-new.ts +0 -1691
  1582. package/src/scaffold/point-to-existing.ts +0 -83
  1583. package/src/scaffold/resume-from-gate-failures.ts +0 -167
  1584. package/src/self-qa/__tests__/agentic-context.test.ts +0 -104
  1585. package/src/self-qa/__tests__/agentic-loop.test.ts +0 -70
  1586. package/src/self-qa/__tests__/delta-encoder.test.ts +0 -113
  1587. package/src/self-qa/__tests__/judge.test.ts +0 -152
  1588. package/src/self-qa/__tests__/scenario-planner.test.ts +0 -87
  1589. package/src/self-qa/__tests__/spec-emitter.test.ts +0 -67
  1590. package/src/self-qa/agentic-context.ts +0 -211
  1591. package/src/self-qa/agentic-loop.ts +0 -590
  1592. package/src/self-qa/delta-encoder.ts +0 -149
  1593. package/src/self-qa/index.ts +0 -117
  1594. package/src/self-qa/judge.ts +0 -248
  1595. package/src/self-qa/orchestrator.ts +0 -269
  1596. package/src/self-qa/scenario-planner.ts +0 -289
  1597. package/src/self-qa/spec-emitter.ts +0 -152
  1598. package/src/self-qa/types.ts +0 -98
  1599. package/src/storage/__tests__/migrations.test.ts +0 -395
  1600. package/src/storage/__tests__/sweep-stale-pending.test.ts +0 -112
  1601. package/src/storage/__tests__/ui-interaction-log.test.ts +0 -136
  1602. package/src/storage/atomic-io.test.ts +0 -92
  1603. package/src/storage/atomic-io.ts +0 -160
  1604. package/src/storage/config.test.ts +0 -33
  1605. package/src/storage/config.ts +0 -53
  1606. package/src/storage/db.ts +0 -184
  1607. package/src/storage/index.ts +0 -26
  1608. package/src/storage/interaction-log.ts +0 -126
  1609. package/src/storage/migrations.ts +0 -205
  1610. package/src/storage/session-dir.ts +0 -37
  1611. package/src/storage/sessions.ts +0 -225
  1612. package/src/storage/tool-results.ts +0 -56
  1613. package/src/storage/transcript-response-entry.test.ts +0 -115
  1614. package/src/storage/transcript-view.ts +0 -45
  1615. package/src/storage/transcript.test.ts +0 -24
  1616. package/src/storage/transcript.ts +0 -637
  1617. package/src/storage/ui-interaction-log.ts +0 -170
  1618. package/src/storage/usage-cap.test.ts +0 -59
  1619. package/src/storage/usage-cap.ts +0 -81
  1620. package/src/storage/usage.ts +0 -117
  1621. package/src/storage/workspaces.ts +0 -84
  1622. package/src/tools/__tests__/vision-gate.test.ts +0 -66
  1623. package/src/tools/bash-output-cache.test.ts +0 -113
  1624. package/src/tools/bash-output-cache.ts +0 -156
  1625. package/src/tools/bash-output-integration.test.ts +0 -33
  1626. package/src/tools/bash.test.ts +0 -447
  1627. package/src/tools/bash.ts +0 -769
  1628. package/src/tools/computer.test.ts +0 -187
  1629. package/src/tools/computer.ts +0 -632
  1630. package/src/tools/file-tracker.test.ts +0 -101
  1631. package/src/tools/file-tracker.ts +0 -70
  1632. package/src/tools/file.test.ts +0 -151
  1633. package/src/tools/file.ts +0 -203
  1634. package/src/tools/grep.ts +0 -187
  1635. package/src/tools/registry-bash-empty-command.test.ts +0 -64
  1636. package/src/tools/registry-bash-footer.test.ts +0 -95
  1637. package/src/tools/registry-ee-query.test.ts +0 -57
  1638. package/src/tools/registry-session-repeat.test.ts +0 -105
  1639. package/src/tools/registry.test.ts +0 -38
  1640. package/src/tools/registry.ts +0 -704
  1641. package/src/tools/schedule.test.ts +0 -143
  1642. package/src/tools/schedule.ts +0 -610
  1643. package/src/tools/todo-write-snapshot.test.ts +0 -53
  1644. package/src/tools/todo-write-snapshot.ts +0 -63
  1645. package/src/tools/vision-gate.ts +0 -74
  1646. package/src/types/index.ts +0 -550
  1647. package/src/ui/__tests__/picker-providers.test.ts +0 -37
  1648. package/src/ui/agents-modal.tsx +0 -293
  1649. package/src/ui/app.tsx +0 -7084
  1650. package/src/ui/cards/__tests__/product-status-card.test.ts +0 -30
  1651. package/src/ui/cards/product-status-card.tsx +0 -117
  1652. package/src/ui/components/SuggestionOverlay.tsx +0 -38
  1653. package/src/ui/components/Toast.tsx +0 -100
  1654. package/src/ui/components/__tests__/council-leader-bubble.test.ts +0 -16
  1655. package/src/ui/components/__tests__/council-message-bubble.test.ts +0 -85
  1656. package/src/ui/components/__tests__/council-phase-timeline.test.ts +0 -57
  1657. package/src/ui/components/__tests__/council-placeholder-bubble.test.ts +0 -16
  1658. package/src/ui/components/__tests__/council-question-card.test.ts +0 -133
  1659. package/src/ui/components/__tests__/council-synthesis-banner.test.ts +0 -12
  1660. package/src/ui/components/__tests__/task-list-panel.test.ts +0 -37
  1661. package/src/ui/components/__tests__/use-pair-quote-buffer.test.ts +0 -41
  1662. package/src/ui/components/btw-overlay.tsx +0 -66
  1663. package/src/ui/components/bubble-layout.ts +0 -66
  1664. package/src/ui/components/code-block-truncate.ts +0 -24
  1665. package/src/ui/components/copy-flash-banner.tsx +0 -31
  1666. package/src/ui/components/council-info-card.tsx +0 -44
  1667. package/src/ui/components/council-leader-bubble.tsx +0 -40
  1668. package/src/ui/components/council-message-bubble.tsx +0 -110
  1669. package/src/ui/components/council-phase-timeline.tsx +0 -112
  1670. package/src/ui/components/council-placeholder-bubble.tsx +0 -64
  1671. package/src/ui/components/council-question-card.tsx +0 -256
  1672. package/src/ui/components/council-status-list.tsx +0 -111
  1673. package/src/ui/components/council-synthesis-banner.tsx +0 -36
  1674. package/src/ui/components/diff-view.tsx +0 -225
  1675. package/src/ui/components/halt-recovery-card.tsx +0 -84
  1676. package/src/ui/components/hero-logo.tsx +0 -62
  1677. package/src/ui/components/init-new-form-card.tsx +0 -470
  1678. package/src/ui/components/lsp-views.tsx +0 -104
  1679. package/src/ui/components/media-views.tsx +0 -66
  1680. package/src/ui/components/message-view.tsx +0 -442
  1681. package/src/ui/components/point-to-existing-form-card.tsx +0 -136
  1682. package/src/ui/components/prompt-box.tsx +0 -306
  1683. package/src/ui/components/role-palette.ts +0 -62
  1684. package/src/ui/components/session-header.tsx +0 -68
  1685. package/src/ui/components/slash-inline-menu.tsx +0 -63
  1686. package/src/ui/components/structured-response-view.tsx +0 -191
  1687. package/src/ui/components/task-list-panel.tsx +0 -127
  1688. package/src/ui/components/tool-group.tsx +0 -129
  1689. package/src/ui/components/tool-result-views.tsx +0 -258
  1690. package/src/ui/components/use-pair-quote-buffer.ts +0 -23
  1691. package/src/ui/constants.ts +0 -242
  1692. package/src/ui/hooks/use-agent-editor.ts +0 -61
  1693. package/src/ui/hooks/use-mcp-editor.ts +0 -39
  1694. package/src/ui/hooks/use-model-picker.ts +0 -50
  1695. package/src/ui/hooks/useTypeahead.ts +0 -160
  1696. package/src/ui/markdown.tsx +0 -49
  1697. package/src/ui/mcp-modal-types.ts +0 -33
  1698. package/src/ui/mcp-modal.tsx +0 -484
  1699. package/src/ui/modals/api-key-modal.tsx +0 -99
  1700. package/src/ui/modals/connect-modal.tsx +0 -259
  1701. package/src/ui/modals/model-picker-modal.tsx +0 -347
  1702. package/src/ui/modals/sandbox-picker-modal.tsx +0 -99
  1703. package/src/ui/modals/update-modal.tsx +0 -67
  1704. package/src/ui/modals/wallet-picker-modal.tsx +0 -186
  1705. package/src/ui/picker-providers.ts +0 -41
  1706. package/src/ui/plan.tsx +0 -346
  1707. package/src/ui/schedule-modal.tsx +0 -138
  1708. package/src/ui/slash/__tests__/clear.test.ts +0 -86
  1709. package/src/ui/slash/__tests__/compact.test.ts +0 -56
  1710. package/src/ui/slash/__tests__/cost.test.ts +0 -62
  1711. package/src/ui/slash/__tests__/discuss.test.ts +0 -101
  1712. package/src/ui/slash/__tests__/execute.test.ts +0 -86
  1713. package/src/ui/slash/__tests__/expand.test.ts +0 -86
  1714. package/src/ui/slash/__tests__/ideal.test.ts +0 -182
  1715. package/src/ui/slash/__tests__/menu-parity.test.ts +0 -44
  1716. package/src/ui/slash/__tests__/optimize.test.ts +0 -155
  1717. package/src/ui/slash/__tests__/pin.test.ts +0 -47
  1718. package/src/ui/slash/__tests__/plan.test.ts +0 -98
  1719. package/src/ui/slash/__tests__/status-render.test.ts +0 -82
  1720. package/src/ui/slash/clear.ts +0 -89
  1721. package/src/ui/slash/compact.ts +0 -46
  1722. package/src/ui/slash/cost.ts +0 -63
  1723. package/src/ui/slash/council-inspect.ts +0 -188
  1724. package/src/ui/slash/council.ts +0 -30
  1725. package/src/ui/slash/debug.ts +0 -153
  1726. package/src/ui/slash/discuss.ts +0 -71
  1727. package/src/ui/slash/ee.ts +0 -304
  1728. package/src/ui/slash/execute.ts +0 -44
  1729. package/src/ui/slash/expand.ts +0 -51
  1730. package/src/ui/slash/export.ts +0 -309
  1731. package/src/ui/slash/ideal.ts +0 -292
  1732. package/src/ui/slash/menu-items.ts +0 -107
  1733. package/src/ui/slash/optimize.ts +0 -47
  1734. package/src/ui/slash/pin.ts +0 -41
  1735. package/src/ui/slash/plan.ts +0 -62
  1736. package/src/ui/slash/registry.ts +0 -47
  1737. package/src/ui/slash/route.test.ts +0 -82
  1738. package/src/ui/slash/route.ts +0 -43
  1739. package/src/ui/slash/status.ts +0 -36
  1740. package/src/ui/state/active-run.ts +0 -56
  1741. package/src/ui/status-bar/index.test.tsx +0 -154
  1742. package/src/ui/status-bar/index.tsx +0 -126
  1743. package/src/ui/status-bar/store.test.ts +0 -131
  1744. package/src/ui/status-bar/store.ts +0 -332
  1745. package/src/ui/status-bar/tier-badge.test.tsx +0 -38
  1746. package/src/ui/status-bar/tier-badge.tsx +0 -29
  1747. package/src/ui/status-bar/usd-meter.test.tsx +0 -37
  1748. package/src/ui/status-bar/usd-meter.tsx +0 -22
  1749. package/src/ui/syntax-highlight.ts +0 -627
  1750. package/src/ui/terminal-selection-text.ts +0 -72
  1751. package/src/ui/theme.ts +0 -95
  1752. package/src/ui/types.ts +0 -83
  1753. package/src/ui/utils/__tests__/format.test.ts +0 -71
  1754. package/src/ui/utils/__tests__/tools.test.ts +0 -57
  1755. package/src/ui/utils/color.ts +0 -19
  1756. package/src/ui/utils/format.ts +0 -133
  1757. package/src/ui/utils/modal.ts +0 -9
  1758. package/src/ui/utils/text.ts +0 -32
  1759. package/src/ui/utils/tools.ts +0 -137
  1760. package/src/usage/.gitkeep +0 -0
  1761. package/src/usage/__tests__/product-ledger.test.ts +0 -86
  1762. package/src/usage/cost-log.ts +0 -158
  1763. package/src/usage/decision-log.ts +0 -86
  1764. package/src/usage/downgrade.test.ts +0 -86
  1765. package/src/usage/downgrade.ts +0 -88
  1766. package/src/usage/estimator.test.ts +0 -43
  1767. package/src/usage/estimator.ts +0 -58
  1768. package/src/usage/ledger.test.ts +0 -200
  1769. package/src/usage/ledger.ts +0 -253
  1770. package/src/usage/midstream.test.ts +0 -55
  1771. package/src/usage/midstream.ts +0 -51
  1772. package/src/usage/product-ledger.ts +0 -119
  1773. package/src/usage/thresholds.test.ts +0 -83
  1774. package/src/usage/thresholds.ts +0 -74
  1775. package/src/usage/types.ts +0 -41
  1776. package/src/utils/__tests__/auto-council-settings.test.ts +0 -46
  1777. package/src/utils/__tests__/ee-logger.test.ts +0 -197
  1778. package/src/utils/__tests__/file-lock.test.ts +0 -74
  1779. package/src/utils/__tests__/llm-deadline.test.ts +0 -64
  1780. package/src/utils/__tests__/rate-limit.test.ts +0 -42
  1781. package/src/utils/__tests__/settings-disabled-models.test.ts +0 -113
  1782. package/src/utils/__tests__/settings-web-research.test.ts +0 -45
  1783. package/src/utils/__tests__/slugify.test.ts +0 -45
  1784. package/src/utils/__tests__/visible-retry.test.ts +0 -195
  1785. package/src/utils/at-mentions.ts +0 -120
  1786. package/src/utils/clipboard-image.ts +0 -139
  1787. package/src/utils/ee-logger.ts +0 -163
  1788. package/src/utils/file-index.ts +0 -152
  1789. package/src/utils/file-lock.ts +0 -66
  1790. package/src/utils/git-root.ts +0 -17
  1791. package/src/utils/host-clipboard.ts +0 -68
  1792. package/src/utils/install-manager.test.ts +0 -167
  1793. package/src/utils/install-manager.ts +0 -429
  1794. package/src/utils/instructions.test.ts +0 -112
  1795. package/src/utils/instructions.ts +0 -149
  1796. package/src/utils/llm-deadline.ts +0 -80
  1797. package/src/utils/permission-mode.test.ts +0 -121
  1798. package/src/utils/permission-mode.ts +0 -94
  1799. package/src/utils/rate-limit.ts +0 -21
  1800. package/src/utils/redactor.test.ts +0 -100
  1801. package/src/utils/redactor.ts +0 -223
  1802. package/src/utils/settings.test.ts +0 -181
  1803. package/src/utils/settings.ts +0 -1163
  1804. package/src/utils/shell.test.ts +0 -102
  1805. package/src/utils/shell.ts +0 -204
  1806. package/src/utils/side-question.ts +0 -39
  1807. package/src/utils/skills.test.ts +0 -58
  1808. package/src/utils/skills.ts +0 -207
  1809. package/src/utils/slugify.ts +0 -9
  1810. package/src/utils/subagent-display.test.ts +0 -23
  1811. package/src/utils/subagent-display.ts +0 -11
  1812. package/src/utils/subagents-settings.test.ts +0 -84
  1813. package/src/utils/telegram-audio-settings.test.ts +0 -44
  1814. package/src/utils/update-checker.test.ts +0 -182
  1815. package/src/utils/update-checker.ts +0 -33
  1816. package/src/utils/visible-retry.ts +0 -56
  1817. package/src/verify/__tests__/coverage-parsers.test.ts +0 -86
  1818. package/src/verify/__tests__/dotnet-recipe.test.ts +0 -88
  1819. package/src/verify/checkpoint.test.ts +0 -186
  1820. package/src/verify/checkpoint.ts +0 -239
  1821. package/src/verify/coverage-parsers.ts +0 -76
  1822. package/src/verify/entrypoint.test.ts +0 -293
  1823. package/src/verify/entrypoint.ts +0 -495
  1824. package/src/verify/environment.test.ts +0 -119
  1825. package/src/verify/environment.ts +0 -115
  1826. package/src/verify/evidence.ts +0 -104
  1827. package/src/verify/orchestrator.test.ts +0 -159
  1828. package/src/verify/orchestrator.ts +0 -129
  1829. package/src/verify/recipes.ts +0 -592
  1830. package/src/verify/retry.ts +0 -62
  1831. package/src/verify/runtime-prep.test.ts +0 -47
@@ -1,956 +0,0 @@
1
- import type { ModelMessage } from "ai";
2
- import type { CouncilExperienceResult } from "../ee/council-bridge.js";
3
- import { queryExperience } from "../ee/council-bridge.js";
4
- import { judgeCouncilOutcome } from "../ee/judge.js";
5
- import { recordCouncilOutcome } from "../ee/phase-outcome.js";
6
- import { runPipeline } from "../pil/pipeline.js";
7
- import type { PipelineContext } from "../pil/types.js";
8
- import { appendSystemMessage, logInteraction } from "../storage/index.js";
9
- import { SessionStore } from "../storage/sessions.js";
10
- import type { StreamChunk } from "../types/index.js";
11
- import { getCouncilExperienceMode, isCouncilCostAware, isCouncilMultiProviderPreferred } from "../utils/settings.js";
12
- import { buildSpecFromTopic, runClarification } from "./clarifier.js";
13
- import { buildCouncilContext, buildProjectSnapshot } from "./context.js";
14
- import { evaluateResearchNeed, runDebate } from "./debate.js";
15
- import { planDebate } from "./debate-planner.js";
16
- import { detectOutOfStackProposals, writeDecisionsLock } from "./decisions-lock.js";
17
- import { runExecution } from "./executor.js";
18
- import { resolveLeaderModelDetailed, resolveParticipants } from "./leader.js";
19
- import { phaseDone, phaseStart } from "./phase-events.js";
20
- import { runPlanning } from "./planner.js";
21
- import { runPreflight } from "./preflight.js";
22
- import type {
23
- ActionPlan,
24
- ClarifiedSpec,
25
- CouncilLLM,
26
- CouncilParticipant,
27
- CouncilStats,
28
- EnhancedCouncilOutcome,
29
- PreflightResponder,
30
- QuestionResponder,
31
- } from "./types.js";
32
-
33
- export interface RunCouncilOptions {
34
- skipClarification?: boolean;
35
- userModelMessage?: ModelMessage;
36
- signal?: AbortSignal;
37
- /** Working directory used to resolve the "current project" snapshot. */
38
- cwd?: string;
39
- /** Shared stats object from orchestrator — when provided, runCouncil uses it instead of a local one so stats.calls is accurate (Phase 14 CQ-01). */
40
- councilStats?: CouncilStats;
41
- /**
42
- * C2: Run directory for writing decisions.lock.md after synthesis.
43
- * Typically <flowDir>/runs/<runId>. When absent the lock file is skipped.
44
- */
45
- runDir?: string;
46
- }
47
-
48
- export async function* runCouncil(
49
- topic: string,
50
- sessionModelId: string,
51
- messages: Array<{ role: string; content: string | unknown }>,
52
- sessionId: string | undefined,
53
- llm: CouncilLLM,
54
- respondToQuestion: QuestionResponder,
55
- respondToPreflight: PreflightResponder,
56
- processMessageFn: (message: string) => AsyncGenerator<StreamChunk, void, unknown>,
57
- options?: RunCouncilOptions,
58
- ): AsyncGenerator<StreamChunk, string | null, unknown> {
59
- const stats: CouncilStats = options?.councilStats ?? { calls: 0, startMs: Date.now(), phases: [] };
60
- const costAware = isCouncilCostAware();
61
-
62
- // ── Resolve models ──────────────────────────────────────────────────────────
63
- const leaderResolution = await resolveLeaderModelDetailed(sessionModelId);
64
- const leaderModelId = leaderResolution.modelId;
65
- const participants = await resolveParticipants(sessionModelId, isCouncilMultiProviderPreferred());
66
-
67
- if (participants.length < 2) {
68
- yield {
69
- type: "content",
70
- content: "\nNo reachable provider. Check API keys in user-settings.json or environment.\n",
71
- };
72
- yield { type: "done" };
73
- return null;
74
- }
75
-
76
- if (leaderResolution.promotedFrom) {
77
- yield {
78
- type: "content",
79
- content:
80
- `\n> Leader auto-promoted within session provider: \`${leaderResolution.promotedFrom.modelId}\`` +
81
- `${leaderResolution.promotedFrom.tier ? ` (${leaderResolution.promotedFrom.tier})` : ""}` +
82
- ` → \`${leaderModelId}\`. Synthesis benefits from the highest tier available on the same provider. ` +
83
- `Set \`roleModels.leader\` to override.\n`,
84
- };
85
- }
86
- yield {
87
- type: "content",
88
- content: `\n> Leader: \`${leaderModelId}\` · Participants: ${participants.map((p) => `\`${p.role}:${p.model}\``).join(", ")}${costAware ? " · Cost-aware sub-tasks: ON" : ""}\n`,
89
- };
90
-
91
- const baseContext = buildCouncilContext(messages);
92
- const projectInfo = options?.cwd ? await buildProjectSnapshot(options.cwd) : { snapshot: "", isEmpty: true };
93
- const conversationContext = projectInfo.snapshot
94
- ? `## Current Project\n${projectInfo.snapshot}\n\n---\n\n${baseContext}`
95
- : baseContext;
96
- const internetFirst = projectInfo.isEmpty;
97
- const active: CouncilParticipant[] = participants.map((p) => ({ ...p, position: "" }));
98
-
99
- // ── Phase A + B loop: Clarify → Confirm ─────────────────────────────────────
100
- let spec: ClarifiedSpec = buildSpecFromTopic(topic, conversationContext);
101
- let approved = false;
102
- const phaseAStart = Date.now();
103
-
104
- // CQ-11: Run PIL pipeline for full context (taskType, domain, outputStyle, grayAreas)
105
- let pilCtx: PipelineContext | undefined;
106
- try {
107
- pilCtx = await runPipeline(topic, { sessionId });
108
- } catch {
109
- /* fail-open — council runs without PIL context */
110
- }
111
-
112
- const pilSeed = pilCtx?.grayAreas?.length ? pilCtx.grayAreas : undefined;
113
-
114
- // CQ-11: Pre-fetch EE warnings in parallel — starts here, awaited before planDebate
115
- const experienceMode = getCouncilExperienceMode();
116
- const eePromise: Promise<CouncilExperienceResult> =
117
- experienceMode !== "off"
118
- ? queryExperience(topic, pilCtx?.domain ?? undefined, options?.signal).catch(() => ({ warnings: [] }))
119
- : Promise.resolve({ warnings: [] });
120
-
121
- while (!approved) {
122
- if (!options?.skipClarification) {
123
- if (pilSeed && pilSeed.length > 0) {
124
- yield {
125
- type: "content",
126
- content: `\n> Clarification seeded by PIL (${pilSeed.length} gray-area question${pilSeed.length === 1 ? "" : "s"}).\n`,
127
- };
128
- }
129
- const clarifyGen = runClarification(
130
- topic,
131
- leaderModelId,
132
- conversationContext,
133
- respondToQuestion,
134
- llm,
135
- options?.signal,
136
- pilSeed,
137
- undefined,
138
- undefined,
139
- costAware,
140
- );
141
- let clarifyResult: IteratorResult<StreamChunk, ClarifiedSpec>;
142
- do {
143
- clarifyResult = await clarifyGen.next();
144
- if (!clarifyResult.done && clarifyResult.value) {
145
- yield clarifyResult.value;
146
- }
147
- } while (!clarifyResult.done);
148
- spec = clarifyResult.value;
149
- } else {
150
- spec = buildSpecFromTopic(topic, conversationContext);
151
- yield { type: "content", content: `\n> Auto-council: skipping clarification (PIL pre-classified).\n` };
152
- }
153
-
154
- const researchNeeded = true;
155
- const preflightGen = runPreflight(spec, participants, researchNeeded, respondToPreflight, {
156
- repoEmpty: internetFirst,
157
- researchOverridable: true,
158
- });
159
- let preflightResult: IteratorResult<StreamChunk, boolean>;
160
- do {
161
- preflightResult = await preflightGen.next();
162
- if (!preflightResult.done && preflightResult.value) {
163
- yield preflightResult.value;
164
- }
165
- } while (!preflightResult.done);
166
- approved = preflightResult.value;
167
- }
168
-
169
- stats.phases.push({ name: "clarify+preflight", durationMs: Date.now() - phaseAStart });
170
-
171
- // ── Research-need check + user override ────────────────────────────────────
172
- // Leader-LLM decides if research is required. If yes, give the user a chance
173
- // to skip — research is the slowest part of council and trivial questions
174
- // (e.g. "what did we just decide?") should not pay that cost.
175
- let researchSkipOverride = false;
176
- try {
177
- const needGen = evaluateResearchNeed(spec, leaderModelId, conversationContext, llm, costAware);
178
- let needStep: IteratorResult<StreamChunk, boolean>;
179
- let leaderNeedsResearch = true;
180
- do {
181
- needStep = await needGen.next();
182
- if (!needStep.done && needStep.value) yield needStep.value;
183
- } while (!needStep.done);
184
- leaderNeedsResearch = needStep.value;
185
-
186
- if (leaderNeedsResearch) {
187
- const { randomUUID } = await import("crypto");
188
- const overrideId = randomUUID();
189
- yield {
190
- type: "council_question",
191
- content:
192
- `\n## Research decision\nLeader recommends a research phase before debate` +
193
- (internetFirst ? " (internet-first — empty workspace)" : " (codebase-first)") +
194
- `. Want to skip it?`,
195
- councilQuestion: {
196
- questionId: overrideId,
197
- phase: "post-debate",
198
- question: "Skip the research phase?",
199
- context: internetFirst
200
- ? "Workspace is empty — research will search the internet. Skip if you already have the answer."
201
- : "Research will grep/read the codebase. Skip for trivial topics that don't need code evidence.",
202
- isRequired: false,
203
- options: [
204
- {
205
- label: "No — run research (recommended)",
206
- description: "Leader thinks evidence is needed.",
207
- value: "no",
208
- kind: "choice",
209
- },
210
- { label: "Yes — skip research", description: "Go straight to debate.", value: "yes", kind: "choice" },
211
- ],
212
- defaultIndex: 0,
213
- },
214
- } as StreamChunk;
215
- const overrideAnswer = await respondToQuestion(overrideId);
216
- researchSkipOverride = overrideAnswer === "yes";
217
- yield {
218
- type: "content",
219
- content: `\n ↳ ${researchSkipOverride ? "Skipping research per user override." : "Running research."}\n`,
220
- };
221
- }
222
- } catch {
223
- /* fail-open — fall through to default behavior in runDebate */
224
- }
225
-
226
- // Await EE pre-fetch (started in parallel with clarifier — latency already hidden)
227
- const eeResult = await eePromise;
228
- if (eeResult.warnings.length > 0) {
229
- yield {
230
- type: "content",
231
- content: `\n> [Experience] ${eeResult.warnings.length} past warning(s) loaded — Experience Auditor will calibrate debate.\n`,
232
- };
233
- }
234
-
235
- // ── Phase B.5: Leader plans the debate (stances + output shape) ─────────────
236
- const planStartMs = Date.now();
237
- yield phaseStart({
238
- phaseId: "phase:debate-plan",
239
- kind: "debate_plan",
240
- label: "Debate plan",
241
- detail: "stances + output shape",
242
- });
243
- const planGenerator = planDebate(
244
- spec,
245
- leaderModelId,
246
- llm,
247
- eeResult.warnings,
248
- experienceMode,
249
- pilCtx?.taskType ?? undefined,
250
- pilCtx?.complexityTier ?? undefined,
251
- );
252
- let planStep: IteratorResult<StreamChunk, import("./types.js").DebatePlan>;
253
- do {
254
- planStep = await planGenerator.next();
255
- if (!planStep.done && planStep.value) yield planStep.value;
256
- } while (!planStep.done);
257
- const debatePlan = planStep.value;
258
- yield phaseDone({
259
- phaseId: "phase:debate-plan",
260
- kind: "debate_plan",
261
- label: "Debate plan",
262
- startedAt: planStartMs,
263
- detail: `${debatePlan.stances.length} stances · shape: ${debatePlan.outputShape.kind}`,
264
- });
265
- yield {
266
- type: "council_info_card",
267
- councilInfoCard: {
268
- title: "Debate Plan",
269
- sections: [
270
- { heading: "Intent", body: debatePlan.intentSummary },
271
- {
272
- heading: "Proposed Stances",
273
- body: debatePlan.stances
274
- .map((s) => `- ${s.name} — ${s.lens}${s.focus ? ` (focus: ${s.focus})` : ""}`)
275
- .join("\n"),
276
- },
277
- {
278
- heading: `Output Shape (${debatePlan.outputShape.kind})`,
279
- body: debatePlan.outputShape.sections.map((s) => `- ${s.key} → ${s.heading}`).join("\n"),
280
- },
281
- ],
282
- },
283
- };
284
- // Assign stances to active participants in proposal order; extras keep no stance.
285
- for (let i = 0; i < active.length && i < debatePlan.stances.length; i++) {
286
- active[i] = { ...active[i], stance: debatePlan.stances[i] };
287
- }
288
- // Trim active to the number of stances proposed (avoid orphan participants).
289
- if (debatePlan.stances.length >= 2 && debatePlan.stances.length < active.length) {
290
- active.length = debatePlan.stances.length;
291
- }
292
- stats.phases.push({ name: "plan_debate", durationMs: Date.now() - planStartMs });
293
-
294
- // ── Phase C: Dynamic Debate ─────────────────────────────────────────────────
295
- const debateStart = Date.now();
296
- const debateGen = runDebate(
297
- spec,
298
- {
299
- topic,
300
- conversationContext,
301
- leaderModelId,
302
- participants: active,
303
- debatePlan,
304
- signal: options?.signal,
305
- researchSkipOverride,
306
- internetFirst,
307
- costAware,
308
- },
309
- llm,
310
- );
311
-
312
- let debateResult: IteratorResult<StreamChunk, import("./types.js").DebateState>;
313
- do {
314
- debateResult = await debateGen.next();
315
- if (!debateResult.done && debateResult.value) {
316
- yield debateResult.value;
317
- }
318
- } while (!debateResult.done);
319
- const debateState = debateResult.value;
320
- stats.phases.push({ name: "debate", durationMs: Date.now() - debateStart });
321
-
322
- // Store debate transcript as individual message — strip failed/empty turns
323
- // so future context loads don't carry noise. The failure metadata still
324
- // exists in interaction_logs for debugging.
325
- if (sessionId && debateState.exchangeLogs) {
326
- try {
327
- const filtered = [...debateState.exchangeLogs.values()].flat().filter((line) => {
328
- const trimmed = line.trim();
329
- if (!trimmed) return false;
330
- return !/:\s*\[debate failed:/i.test(trimmed);
331
- });
332
- if (filtered.length > 0) {
333
- appendSystemMessage(
334
- sessionId,
335
- `[Debate Transcript]\nRounds: ${debateState.roundCount}\n\n${filtered.join("\n")}`,
336
- );
337
- }
338
- } catch {
339
- /* non-critical */
340
- }
341
- }
342
-
343
- // Log interaction: debate complete
344
- logInteraction(sessionId ?? "unknown", "council", {
345
- eventSubtype: "debate_complete",
346
- durationMs: Date.now() - debateStart,
347
- data: { topic, roundCount: debateState.roundCount },
348
- });
349
-
350
- // ── Phase D: Plan ───────────────────────────────────────────────────────────
351
- const planStart = Date.now();
352
- const planGen = runPlanning(
353
- debateState,
354
- spec,
355
- debateState.active,
356
- leaderModelId,
357
- respondToPreflight,
358
- llm,
359
- debatePlan,
360
- pilCtx?.outputStyle ?? undefined, // CQ-18: propagate outputStyle
361
- );
362
-
363
- let planResult: IteratorResult<
364
- StreamChunk,
365
- {
366
- outcome: import("./types.js").EnhancedCouncilOutcome | null;
367
- plan: import("./types.js").ActionPlan | null;
368
- synthesisText: string;
369
- synthesisFailReason?: string;
370
- }
371
- >;
372
- do {
373
- planResult = await planGen.next();
374
- if (!planResult.done && planResult.value) {
375
- yield planResult.value;
376
- }
377
- } while (!planResult.done);
378
- let { outcome, plan, synthesisText } = planResult.value;
379
- const synthesisFailReason = planResult.value.synthesisFailReason;
380
- stats.phases.push({ name: "planning", durationMs: Date.now() - planStart });
381
-
382
- // Log interaction: synthesis
383
- logInteraction(sessionId ?? "unknown", "council", {
384
- eventSubtype: "synthesis",
385
- model: leaderModelId,
386
- durationMs: Date.now() - planStart,
387
- data: { topic, roundCount: debateState.roundCount, participantCount: debateState.active.length },
388
- });
389
-
390
- // ── Post-Debate AskCard: What next? ─────────────────────────────────────────
391
- if (sessionId) {
392
- try {
393
- const { randomUUID } = await import("crypto");
394
- const refinementTopics: string[] = [];
395
- if (outcome) {
396
- if (outcome.sections) {
397
- for (const [key, val] of Object.entries(outcome.sections)) {
398
- const strVal = typeof val === "string" ? val : Array.isArray(val) ? val.join("") : JSON.stringify(val);
399
- if (!strVal || strVal.trim().length === 0) {
400
- const sectionLabel = debatePlan.outputShape.sections.find((s) => s.key === key)?.heading ?? key;
401
- refinementTopics.push(sectionLabel);
402
- }
403
- }
404
- }
405
- }
406
-
407
- const questionId = randomUUID();
408
- const hasPlan = plan && plan.steps.length > 0;
409
- const hasEmptySections = refinementTopics.length > 0;
410
-
411
- // ── Confidence badge (CQ-6) ──────────────────────────────────────────
412
- const evidenceDensity = debateState.finalEvidenceDensity ?? 0;
413
- const synthesisFailed = !!synthesisFailReason || !outcome || synthesisText.trim().length < 20;
414
- const confidenceLevel: "high" | "medium" | "low" = synthesisFailed
415
- ? "low"
416
- : evidenceDensity >= 0.6
417
- ? "high"
418
- : evidenceDensity >= 0.3
419
- ? "medium"
420
- : "low";
421
-
422
- // When synthesis genuinely failed, asking blind clarification questions
423
- // ("what should go in Agreed Approach?") is useless — the user can't be
424
- // expected to do the synthesizer's job. Surface WHY confidence is low
425
- // and offer concrete recovery actions instead.
426
- const confidenceReason: string = synthesisFailed
427
- ? (synthesisFailReason ??
428
- "The synthesizer produced no usable output. The debate exchanges above are still readable, but no structured outcome could be extracted.")
429
- : confidenceLevel === "low"
430
- ? `Only ${(evidenceDensity * 100).toFixed(0)}% of claims in the final round carried citations or were resolved — most positions remained asserted without backing evidence.`
431
- : confidenceLevel === "medium"
432
- ? `${(evidenceDensity * 100).toFixed(0)}% of claims carried citations or were resolved — some open points remain.`
433
- : `${(evidenceDensity * 100).toFixed(0)}% of claims were cited or resolved.`;
434
-
435
- const confidenceBadge = synthesisFailed
436
- ? `❌ Synthesis failed — confidence cannot be computed`
437
- : confidenceLevel === "high"
438
- ? `✅ High confidence (evidence density ${evidenceDensity.toFixed(2)})`
439
- : confidenceLevel === "medium"
440
- ? `⚠ Medium confidence (evidence density ${evidenceDensity.toFixed(2)})`
441
- : `⚠ Low confidence (evidence density ${evidenceDensity.toFixed(2)})`;
442
-
443
- // Recommendation surfaced to the user as the default action.
444
- const recommendation: {
445
- value: "save_exit" | "generate_plan" | "refine" | "ask_followup" | "retry_synthesis";
446
- reason: string;
447
- } = synthesisFailed
448
- ? {
449
- value: "retry_synthesis",
450
- reason: "Re-run synthesis with a compact prompt — usually clears provider-timeout failures.",
451
- }
452
- : hasEmptySections
453
- ? { value: "refine", reason: `Fill in ${refinementTopics.length} section(s) the debate left empty.` }
454
- : confidenceLevel === "low"
455
- ? {
456
- value: "ask_followup",
457
- reason: "Press the council on the weakest claims rather than accepting a thin synthesis.",
458
- }
459
- : !hasPlan
460
- ? { value: "generate_plan", reason: "Convert the agreed outcome into concrete steps." }
461
- : { value: "save_exit", reason: "Outcome looks solid — save and move on." };
462
-
463
- const baseOptions: Array<{ label: string; description: string; value: string; kind: "choice" | "freetext" }> = [];
464
-
465
- if (synthesisFailed) {
466
- baseOptions.push({
467
- label: "Retry Synthesis (compact)",
468
- description:
469
- "Re-synthesize from final positions only (drop full exchange history). Fastest recovery from provider timeouts.",
470
- value: "retry_synthesis",
471
- kind: "choice",
472
- });
473
- }
474
-
475
- baseOptions.push({
476
- label: "Save & Exit",
477
- description: synthesisFailed
478
- ? "Save raw debate exchanges as-is; no structured outcome will be persisted"
479
- : "Save the debate outcome and finish",
480
- value: "save_exit",
481
- kind: "choice",
482
- });
483
-
484
- if (!hasPlan && !synthesisFailed) {
485
- baseOptions.push({
486
- label: "Lock plan and execute Sprint 1",
487
- description:
488
- "Commit the council outcome as the sprint plan and hand control to the sprint runner (planning → implementation → verification → judgment). Does NOT exit to /gsd.",
489
- value: "generate_plan",
490
- kind: "choice",
491
- });
492
- }
493
-
494
- if (hasEmptySections && !synthesisFailed) {
495
- baseOptions.push({
496
- label: `Refine: ${refinementTopics.join(", ")}`,
497
- description: `Answer questions about ${refinementTopics.length} unresolved aspect(s)`,
498
- value: "refine",
499
- kind: "choice",
500
- });
501
- }
502
-
503
- // CQ-3: free-text follow-up to the council on the same debate context.
504
- baseOptions.push({
505
- label: "Ask Council a follow-up",
506
- description: "Pose a new question that re-uses this debate's context (no new clarification).",
507
- value: "ask_followup",
508
- kind: "freetext",
509
- });
510
-
511
- if (hasPlan) {
512
- baseOptions.push({
513
- label: "Start Implementation",
514
- description: "Execute the action plan now",
515
- value: "implement",
516
- kind: "choice",
517
- });
518
- }
519
-
520
- const defaultIndex = Math.max(
521
- 0,
522
- baseOptions.findIndex((o) => o.value === recommendation.value),
523
- );
524
-
525
- const heading = synthesisFailed ? "## Debate Synthesis Failed" : "## Debate Synthesis Complete";
526
- const recommendLine = `**Recommended:** ${baseOptions[defaultIndex]?.label ?? recommendation.value} — ${recommendation.reason}`;
527
- const headerBlock = `${heading}\n\n> ${confidenceBadge}\n>\n> **Why:** ${confidenceReason}\n\n${recommendLine}\n\nLeader: \`${leaderModelId}\`. What would you like to do next?`;
528
-
529
- yield {
530
- type: "council_question",
531
- content: headerBlock,
532
- councilQuestion: {
533
- questionId,
534
- phase: "post-debate",
535
- question: synthesisFailed
536
- ? "Synthesis did not produce a structured outcome. How do you want to recover?"
537
- : hasEmptySections
538
- ? `The debate left ${refinementTopics.length} area(s) unresolved. Refine them or save the current outcome?`
539
- : "What would you like to do next?",
540
- context:
541
- `${confidenceBadge}\n${confidenceReason}` +
542
- (hasEmptySections ? `\nUnresolved areas: ${refinementTopics.join(", ")}` : "") +
543
- `\n→ ${recommendation.reason}`,
544
- isRequired: false,
545
- options: baseOptions,
546
- defaultIndex,
547
- },
548
- } as StreamChunk;
549
-
550
- const answer = await respondToQuestion(questionId);
551
- yield { type: "content", content: `\n ↳ ${answer}\n` };
552
-
553
- // Treat any non-empty answer that doesn't match a known choice value as a follow-up question.
554
- const knownValues = new Set([
555
- "save_exit",
556
- "generate_plan",
557
- "refine",
558
- "ask_followup",
559
- "implement",
560
- "retry_synthesis",
561
- "",
562
- ]);
563
- const isFollowupText =
564
- answer === "ask_followup" ||
565
- (typeof answer === "string" && answer.trim().length > 0 && !knownValues.has(answer));
566
-
567
- if (answer === "retry_synthesis") {
568
- yield { type: "content", content: "\n> Retrying synthesis with compact prompt (final positions only)…\n" };
569
- const refineGen = runPlanning(
570
- debateState,
571
- spec,
572
- debateState.active,
573
- leaderModelId,
574
- respondToPreflight,
575
- llm,
576
- debatePlan,
577
- pilCtx?.outputStyle ?? undefined,
578
- );
579
- // biome-ignore lint/suspicious/noImplicitAnyLet: shape inferred from runPlanning generator
580
- let refineResult;
581
- do {
582
- refineResult = await refineGen.next();
583
- if (!refineResult.done && refineResult.value) yield refineResult.value;
584
- } while (!refineResult.done);
585
- outcome = refineResult.value.outcome;
586
- plan = refineResult.value.plan;
587
- synthesisText = refineResult.value.synthesisText;
588
- } else if (isFollowupText && answer !== "ask_followup") {
589
- // Re-synthesize with the follow-up framed as user input.
590
- yield { type: "content", content: `\n> Council answering follow-up using prior debate context...\n` };
591
- const followupCtx = `### Follow-up question from user\n${answer}\n\n_Use the debate exchanges above and cite the role(s) whose position you draw from._`;
592
- const refineGen = runPlanning(
593
- debateState,
594
- spec,
595
- debateState.active,
596
- leaderModelId,
597
- respondToPreflight,
598
- llm,
599
- debatePlan,
600
- pilCtx?.outputStyle ?? undefined,
601
- followupCtx,
602
- );
603
- // biome-ignore lint/suspicious/noImplicitAnyLet: shape inferred from runPlanning generator
604
- let refineResult;
605
- do {
606
- refineResult = await refineGen.next();
607
- if (!refineResult.done && refineResult.value) yield refineResult.value;
608
- } while (!refineResult.done);
609
- outcome = refineResult.value.outcome;
610
- plan = refineResult.value.plan;
611
- synthesisText = refineResult.value.synthesisText;
612
- } else if (answer === "generate_plan") {
613
- // A1 FIX: "Lock plan and execute Sprint 1" — stay within sprint-runner.
614
- //
615
- // Previously this branch called runExecution(plan, processMessageFn) which
616
- // bypassed sprint-runner's verification/judgment/done-gate stages entirely.
617
- // The correct behavior: synthesize the plan (if not already done), then
618
- // return synthesisText to the sprint-runner caller so it can proceed with
619
- // Step 4 (implementation), Step 5 (verification), Step 6 (judgment), etc.
620
- //
621
- // P7 optimization: skip re-synthesis when action items already exist.
622
- const existingActionItems = pickActionItemsFromOutcome(outcome);
623
- if (existingActionItems.length >= 3) {
624
- const synthesizedPlan = synthesizePlanFromActionItems(existingActionItems);
625
- plan = synthesizedPlan;
626
- // Mirror plan onto the outcome so downstream persistence sees it.
627
- if (outcome) {
628
- outcome.plan = synthesizedPlan;
629
- }
630
- yield {
631
- type: "content",
632
- content:
633
- `\n> Plan locked: ${existingActionItems.length} action items committed — ` +
634
- `sprint runner will execute planning → implementation → verification → judgment.\n`,
635
- };
636
- // Serialize the plan steps into synthesisText so sprint-runner's
637
- // processMessageFn receives a human-readable implementation prompt.
638
- synthesisText =
639
- `Sprint plan locked (${existingActionItems.length} steps):\n` +
640
- synthesizedPlan.steps.map((s) => `- [${s.priority}] ${s.description}`).join("\n");
641
- } else {
642
- yield { type: "content", content: "\n> Synthesizing sprint plan...\n" };
643
- const refineGen = runPlanning(
644
- debateState,
645
- spec,
646
- debateState.active,
647
- leaderModelId,
648
- respondToPreflight,
649
- llm,
650
- debatePlan,
651
- pilCtx?.outputStyle ?? undefined,
652
- undefined,
653
- true,
654
- );
655
- // biome-ignore lint/suspicious/noImplicitAnyLet: shape inferred from runPlanning generator
656
- let refineResult;
657
- do {
658
- refineResult = await refineGen.next();
659
- if (!refineResult.done && refineResult.value) yield refineResult.value;
660
- } while (!refineResult.done);
661
- outcome = refineResult.value.outcome;
662
- plan = refineResult.value.plan;
663
- synthesisText = refineResult.value.synthesisText;
664
- yield {
665
- type: "content",
666
- content:
667
- "\n> Plan locked — sprint runner will execute planning → implementation → verification → judgment.\n",
668
- };
669
- }
670
- // Do NOT call runExecution here. Return synthesisText to the sprint-runner
671
- // caller so it drives the full sprint lifecycle (Step 4–8 in sprint-runner.ts).
672
- // Clear plan so Phase E's runExecution guard below does not fire — the plan
673
- // content has already been serialized into synthesisText above.
674
- plan = null;
675
- } else if (answer === "refine" && hasEmptySections) {
676
- yield { type: "content", content: "\n> Let's clarify the unresolved aspects...\n" };
677
- const refinedAnswers: Array<{ section: string; answer: string }> = [];
678
- for (const label of refinementTopics) {
679
- const sqId = randomUUID();
680
- yield {
681
- type: "council_question",
682
- content: `## Refine: ${label}`,
683
- councilQuestion: {
684
- questionId: sqId,
685
- phase: "post-debate",
686
- question: `What should go in the "${label}" section?`,
687
- context: `The debate did not produce a clear ${label}. Provide your input to be included in the final outcome.`,
688
- isRequired: false,
689
- options: [
690
- {
691
- label: "Skip — leave as-is",
692
- description: "Keep the current (empty) value",
693
- value: "",
694
- kind: "choice",
695
- },
696
- { label: "Type something", description: "Write your own input", value: "", kind: "freetext" },
697
- ],
698
- },
699
- } as StreamChunk;
700
- const ans = await respondToQuestion(sqId);
701
- refinedAnswers.push({ section: label, answer: ans });
702
- yield { type: "content", content: `\n ↳ ${ans}\n` };
703
- }
704
- // Build refineContext string from user answers
705
- const refineCtx = refinedAnswers
706
- .filter((ra) => ra.answer && ra.answer.trim().length > 0)
707
- .map((ra) => `### ${ra.section}\nThe user provided: ${ra.answer}`)
708
- .join("\n\n");
709
- // Re-run synthesis WITH user's input injected into prompt
710
- yield { type: "content", content: "\n> Re-synthesizing with your input...\n" };
711
- const refineGen = runPlanning(
712
- debateState,
713
- spec,
714
- debateState.active,
715
- leaderModelId,
716
- respondToPreflight,
717
- llm,
718
- debatePlan,
719
- pilCtx?.outputStyle ?? undefined,
720
- refineCtx,
721
- );
722
- // biome-ignore lint/suspicious/noImplicitAnyLet: shape inferred from runPlanning generator
723
- let refineResult;
724
- do {
725
- refineResult = await refineGen.next();
726
- if (!refineResult.done && refineResult.value) yield refineResult.value;
727
- } while (!refineResult.done);
728
- outcome = refineResult.value.outcome;
729
- plan = refineResult.value.plan;
730
- synthesisText = refineResult.value.synthesisText;
731
- }
732
- // "save_exit" and "implement" fall through to normal persistence
733
- } catch {
734
- /* non-critical */
735
- }
736
- }
737
-
738
- // ── Persist outcome ─────────────────────────────────────────────────────────
739
- if (sessionId) {
740
- try {
741
- if (outcome) {
742
- const agreedLine = outcome.agreed?.length ? `\nAgreed: ${outcome.agreed.join("; ")}` : "";
743
- const recLine = outcome.recommendation ? `\nRecommendation: ${outcome.recommendation}` : "";
744
- appendSystemMessage(
745
- sessionId,
746
- `[Council Decision]\nTopic: ${topic}\n${outcome.summary}${agreedLine}${recLine}`,
747
- );
748
- appendSystemMessage(sessionId, `[Council Outcome]\n${JSON.stringify(outcome)}`);
749
- }
750
- const evidenceDensityPersist = debateState.finalEvidenceDensity ?? 0;
751
- const confidenceLevelPersist: "high" | "medium" | "low" =
752
- evidenceDensityPersist >= 0.6 ? "high" : evidenceDensityPersist >= 0.3 ? "medium" : "low";
753
- const councilRecord: import("./types.js").CouncilMemoryRecord = {
754
- topic,
755
- spec,
756
- debatePlan,
757
- leaderModel: leaderModelId,
758
- participants: debateState.active.map((a) => ({ role: a.role, model: a.model, stance: a.stance })),
759
- finalPositions: debateState.active.map((a) => ({ role: a.role, position: a.position })),
760
- archive: debateState.archive ?? [],
761
- synthesis: synthesisText,
762
- confidence: {
763
- level: confidenceLevelPersist,
764
- evidenceDensity: evidenceDensityPersist,
765
- rounds: debateState.roundCount,
766
- },
767
- stats: { calls: stats.calls, durationMs: Date.now() - stats.startMs, phases: stats.phases },
768
- timestamp: new Date().toISOString(),
769
- };
770
- appendSystemMessage(sessionId, `[Council Memory] ${JSON.stringify(councilRecord)}`);
771
-
772
- // Forensics-friendly summary row in interaction_logs. The full
773
- // [Council Memory] system message above is great for context replay but
774
- // can't be queried — `usage forensics` reads interaction_logs only.
775
- // Excerpts are capped to keep metadata_json small (~2-4KB per run).
776
- const stancesForLog = debateState.active.slice(0, 8).map((a) => ({
777
- role: a.role,
778
- model: a.model,
779
- stanceName: a.stance?.name,
780
- finalPositionExcerpt: (a.position ?? "").slice(0, 400),
781
- }));
782
- logInteraction(sessionId, "council", {
783
- eventSubtype: "council_summary",
784
- model: leaderModelId,
785
- durationMs: Date.now() - stats.startMs,
786
- data: {
787
- topic,
788
- roundCount: debateState.roundCount,
789
- participantCount: debateState.active.length,
790
- stances: stancesForLog,
791
- synthesisExcerpt: synthesisText.slice(0, 1500),
792
- evidenceDensity: evidenceDensityPersist,
793
- confidenceLevel: confidenceLevelPersist,
794
- recommendation: outcome?.recommendation?.slice(0, 400) ?? null,
795
- agreedCount: outcome?.agreed?.length ?? 0,
796
- },
797
- });
798
-
799
- // C2: Persist decisions.lock.md to the run directory so sprint-runner
800
- // can inject locked decisions into the implementation prompt.
801
- if (options?.runDir) {
802
- const rejectedProposals = detectOutOfStackProposals(synthesisText, spec);
803
- await writeDecisionsLock({
804
- runId: sessionId,
805
- runDir: options.runDir,
806
- spec,
807
- timestamp: new Date().toISOString(),
808
- participants: debateState.active.map((a) => ({
809
- role: a.role,
810
- stance: a.stance,
811
- position: a.position,
812
- })),
813
- synthesisExcerpt: synthesisText.slice(0, 2000),
814
- rejectedProposals: rejectedProposals.length > 0 ? rejectedProposals : undefined,
815
- }).catch(() => {
816
- /* non-critical — lock file write failure must never break the council */
817
- });
818
- }
819
- } catch {
820
- /* non-critical */
821
- }
822
- }
823
-
824
- // Update session status to completed
825
- if (sessionId) {
826
- try {
827
- new SessionStore(options?.cwd ?? process.cwd()).setStatus(sessionId, "completed");
828
- } catch {
829
- /* non-critical */
830
- }
831
- }
832
-
833
- // CQ-16: Judge synthesis quality; confidence < 0.5 → [NEEDS HUMAN REVIEW] flag
834
- // CQ-17: Record council outcome to EE brain (fire-and-forget)
835
- void judgeCouncilOutcome(synthesisText)
836
- .then((verdict) => {
837
- // CQ-16: Append review flag if confidence < 0.5
838
- if (verdict.confidence < 0.5 && sessionId) {
839
- try {
840
- appendSystemMessage(
841
- sessionId,
842
- `[NEEDS HUMAN REVIEW] Council synthesis confidence: ${(verdict.confidence * 100).toFixed(0)}%. Reason: ${verdict.reason}`,
843
- );
844
- } catch {
845
- /* non-critical */
846
- }
847
- }
848
- // CQ-17: Record to EE brain
849
- recordCouncilOutcome(topic, synthesisText, verdict, {
850
- sessionId,
851
- durationMs: Date.now() - stats.startMs,
852
- });
853
- })
854
- .catch(() => {
855
- /* non-critical */
856
- });
857
-
858
- // ── Phase E: Execute (if plan approved) ─────────────────────────────────────
859
- if (plan && plan.steps.length > 0) {
860
- const execStart = Date.now();
861
- yield* runExecution(plan, processMessageFn);
862
- stats.phases.push({ name: "execution", durationMs: Date.now() - execStart });
863
- }
864
-
865
- // ── Stats ───────────────────────────────────────────────────────────────────
866
- const totalMs = Date.now() - stats.startMs;
867
- yield {
868
- type: "content",
869
- content:
870
- `\n---\n` +
871
- `> Council stats: ${stats.calls} API calls, ${(totalMs / 1000).toFixed(1)}s total, ` +
872
- `${active.length} participants, ${debateState.roundCount} rounds\n` +
873
- `> Phases: ${stats.phases.map((p) => `${p.name}=${(p.durationMs / 1000).toFixed(1)}s`).join(", ")}\n`,
874
- };
875
-
876
- yield { type: "done" };
877
- return synthesisText || null;
878
- }
879
-
880
- export type { ClarifiedSpec, CouncilLLM, CouncilParticipant, CouncilStats } from "./types.js";
881
-
882
- // ── P7: action-item reuse helpers ─────────────────────────────────────────────
883
- //
884
- // Observed in session 1a8fb4be3bc3: when the first synthesis is built under
885
- // an implementation_plan shape, sections.actionItems already contains a full
886
- // objectList of structured steps. Clicking the "Generate Action Plan" post-
887
- // debate option then re-ran the entire synthesizer to produce a near-
888
- // identical second copy — ~128s wasted. These helpers lift existing action
889
- // items into an ActionPlan locally instead of re-running synthesis.
890
-
891
- /** Rough cost (seconds) of a re-synthesis call. Used in the UX note. */
892
- const _SYNTH_RERUN_COST_SECONDS = 120;
893
-
894
- /**
895
- * Extract action items from an outcome regardless of which shape produced
896
- * them. Order of precedence:
897
- * 1. outcome.sections.actionItems (new per-kind shape, objectList of
898
- * structured objects)
899
- * 2. outcome.actionItems (legacy string array)
900
- * Returns [] when no usable items found.
901
- */
902
- function pickActionItemsFromOutcome(outcome: EnhancedCouncilOutcome | null): unknown[] {
903
- if (!outcome) return [];
904
- const fromSections = (outcome.sections as Record<string, unknown> | undefined)?.actionItems;
905
- if (Array.isArray(fromSections) && fromSections.length > 0) return fromSections;
906
- if (Array.isArray(outcome.actionItems) && outcome.actionItems.length > 0) return outcome.actionItems;
907
- return [];
908
- }
909
-
910
- /**
911
- * Convert a heterogeneous list of action items (strings OR
912
- * {step, owner_lens, time_estimate, depends_on, acceptance_criteria}
913
- * objects) into the ActionPlan.steps shape. Priority is heuristic:
914
- * - steps with no depends_on AND first half → "high"
915
- * - steps with depends_on or in last third → "medium"
916
- * - everything else → "low"
917
- * The heuristic isn't perfect but gives the executor a usable ordering;
918
- * the user can re-rank in the action-plan review preflight.
919
- */
920
- function synthesizePlanFromActionItems(items: unknown[]): ActionPlan {
921
- const total = items.length;
922
- const steps: ActionPlan["steps"] = items.map((raw, idx) => {
923
- let description: string;
924
- let agent: string | undefined;
925
- let hasDeps = false;
926
- if (typeof raw === "string") {
927
- description = raw;
928
- } else if (raw && typeof raw === "object") {
929
- const o = raw as Record<string, unknown>;
930
- const step = typeof o.step === "string" ? o.step : "";
931
- const owner = typeof o.owner_lens === "string" ? o.owner_lens : undefined;
932
- const time = typeof o.time_estimate === "string" ? ` (${o.time_estimate})` : "";
933
- const accept = typeof o.acceptance_criteria === "string" ? ` — accept: ${o.acceptance_criteria}` : "";
934
- description = step ? `${step}${time}${accept}` : JSON.stringify(o).slice(0, 200);
935
- agent = owner;
936
- const deps = o.depends_on;
937
- hasDeps =
938
- (Array.isArray(deps) && deps.length > 0) ||
939
- (typeof deps === "string" && deps.trim().length > 0 && deps !== "none");
940
- } else {
941
- description = String(raw);
942
- }
943
- const inFirstHalf = idx < total / 2;
944
- const inLastThird = idx >= (total * 2) / 3;
945
- const priority: "high" | "medium" | "low" =
946
- hasDeps || inLastThird ? (inLastThird ? "low" : "medium") : inFirstHalf ? "high" : "medium";
947
- return { description, agent, priority };
948
- });
949
- // Complexity heuristic: ≤4 steps trivial, 5-9 moderate, ≥10 complex.
950
- const complexity: "trivial" | "moderate" | "complex" = total <= 4 ? "trivial" : total <= 9 ? "moderate" : "complex";
951
- return {
952
- steps,
953
- estimatedComplexity: complexity,
954
- prerequisites: [],
955
- };
956
- }