agent-bober 0.11.6 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (570) hide show
  1. package/CHANGELOG.md +311 -0
  2. package/README.md +124 -9
  3. package/agents/bober-architect.md +38 -0
  4. package/agents/bober-code-reviewer.md +236 -0
  5. package/agents/bober-curator.md +37 -0
  6. package/agents/bober-deployer.md +267 -0
  7. package/agents/bober-diagnoser.md +289 -0
  8. package/agents/bober-evaluator.md +127 -1
  9. package/agents/bober-generator.md +122 -3
  10. package/agents/bober-planner.md +293 -32
  11. package/agents/bober-postmortemer.md +185 -0
  12. package/agents/bober-researcher.md +38 -0
  13. package/dist/cli/commands/approve.d.ts +17 -0
  14. package/dist/cli/commands/approve.d.ts.map +1 -0
  15. package/dist/cli/commands/approve.js +64 -0
  16. package/dist/cli/commands/approve.js.map +1 -0
  17. package/dist/cli/commands/audit-show.d.ts +14 -0
  18. package/dist/cli/commands/audit-show.d.ts.map +1 -0
  19. package/dist/cli/commands/audit-show.js +85 -0
  20. package/dist/cli/commands/audit-show.js.map +1 -0
  21. package/dist/cli/commands/config.d.ts +10 -0
  22. package/dist/cli/commands/config.d.ts.map +1 -0
  23. package/dist/cli/commands/config.js +73 -0
  24. package/dist/cli/commands/config.js.map +1 -0
  25. package/dist/cli/commands/eval.js +6 -6
  26. package/dist/cli/commands/eval.js.map +1 -1
  27. package/dist/cli/commands/graph.d.ts +8 -0
  28. package/dist/cli/commands/graph.d.ts.map +1 -0
  29. package/dist/cli/commands/graph.js +219 -0
  30. package/dist/cli/commands/graph.js.map +1 -0
  31. package/dist/cli/commands/impact.d.ts +19 -0
  32. package/dist/cli/commands/impact.d.ts.map +1 -0
  33. package/dist/cli/commands/impact.js +191 -0
  34. package/dist/cli/commands/impact.js.map +1 -0
  35. package/dist/cli/commands/incident.d.ts +19 -0
  36. package/dist/cli/commands/incident.d.ts.map +1 -0
  37. package/dist/cli/commands/incident.js +324 -0
  38. package/dist/cli/commands/incident.js.map +1 -0
  39. package/dist/cli/commands/init.js +82 -3
  40. package/dist/cli/commands/init.js.map +1 -1
  41. package/dist/cli/commands/list-approvals.d.ts +16 -0
  42. package/dist/cli/commands/list-approvals.d.ts.map +1 -0
  43. package/dist/cli/commands/list-approvals.js +57 -0
  44. package/dist/cli/commands/list-approvals.js.map +1 -0
  45. package/dist/cli/commands/onboard.d.ts +3 -0
  46. package/dist/cli/commands/onboard.d.ts.map +1 -0
  47. package/dist/cli/commands/onboard.js +190 -0
  48. package/dist/cli/commands/onboard.js.map +1 -0
  49. package/dist/cli/commands/plan.d.ts +12 -0
  50. package/dist/cli/commands/plan.d.ts.map +1 -1
  51. package/dist/cli/commands/plan.js +232 -37
  52. package/dist/cli/commands/plan.js.map +1 -1
  53. package/dist/cli/commands/playbook.d.ts +17 -0
  54. package/dist/cli/commands/playbook.d.ts.map +1 -0
  55. package/dist/cli/commands/playbook.js +123 -0
  56. package/dist/cli/commands/playbook.js.map +1 -0
  57. package/dist/cli/commands/postmortem.d.ts +12 -0
  58. package/dist/cli/commands/postmortem.d.ts.map +1 -0
  59. package/dist/cli/commands/postmortem.js +67 -0
  60. package/dist/cli/commands/postmortem.js.map +1 -0
  61. package/dist/cli/commands/reject.d.ts +17 -0
  62. package/dist/cli/commands/reject.d.ts.map +1 -0
  63. package/dist/cli/commands/reject.js +52 -0
  64. package/dist/cli/commands/reject.js.map +1 -0
  65. package/dist/cli/commands/rollback.d.ts +21 -0
  66. package/dist/cli/commands/rollback.d.ts.map +1 -0
  67. package/dist/cli/commands/rollback.js +90 -0
  68. package/dist/cli/commands/rollback.js.map +1 -0
  69. package/dist/cli/commands/run.d.ts +9 -0
  70. package/dist/cli/commands/run.d.ts.map +1 -1
  71. package/dist/cli/commands/run.js +31 -2
  72. package/dist/cli/commands/run.js.map +1 -1
  73. package/dist/cli/commands/sprint.d.ts.map +1 -1
  74. package/dist/cli/commands/sprint.js +8 -8
  75. package/dist/cli/commands/sprint.js.map +1 -1
  76. package/dist/cli/commands/telemetry.d.ts +16 -0
  77. package/dist/cli/commands/telemetry.d.ts.map +1 -0
  78. package/dist/cli/commands/telemetry.js +152 -0
  79. package/dist/cli/commands/telemetry.js.map +1 -0
  80. package/dist/cli/commands/worktree.d.ts +12 -0
  81. package/dist/cli/commands/worktree.d.ts.map +1 -0
  82. package/dist/cli/commands/worktree.js +57 -0
  83. package/dist/cli/commands/worktree.js.map +1 -0
  84. package/dist/cli/index.js +73 -2
  85. package/dist/cli/index.js.map +1 -1
  86. package/dist/config/defaults.d.ts.map +1 -1
  87. package/dist/config/defaults.js +27 -0
  88. package/dist/config/defaults.js.map +1 -1
  89. package/dist/config/index.d.ts +1 -1
  90. package/dist/config/index.d.ts.map +1 -1
  91. package/dist/config/index.js +4 -0
  92. package/dist/config/index.js.map +1 -1
  93. package/dist/config/loader.d.ts.map +1 -1
  94. package/dist/config/loader.js +18 -1
  95. package/dist/config/loader.js.map +1 -1
  96. package/dist/config/schema.d.ts +1016 -96
  97. package/dist/config/schema.d.ts.map +1 -1
  98. package/dist/config/schema.js +147 -0
  99. package/dist/config/schema.js.map +1 -1
  100. package/dist/contracts/eval-result.d.ts +38 -38
  101. package/dist/contracts/index.d.ts +2 -2
  102. package/dist/contracts/index.d.ts.map +1 -1
  103. package/dist/contracts/index.js +8 -4
  104. package/dist/contracts/index.js.map +1 -1
  105. package/dist/contracts/spec.d.ts +335 -40
  106. package/dist/contracts/spec.d.ts.map +1 -1
  107. package/dist/contracts/spec.js +210 -18
  108. package/dist/contracts/spec.js.map +1 -1
  109. package/dist/contracts/sprint-contract.d.ts +155 -88
  110. package/dist/contracts/sprint-contract.d.ts.map +1 -1
  111. package/dist/contracts/sprint-contract.js +176 -29
  112. package/dist/contracts/sprint-contract.js.map +1 -1
  113. package/dist/evaluators/builtin/api-check.js +1 -1
  114. package/dist/evaluators/builtin/api-check.js.map +1 -1
  115. package/dist/graph/artifact-store.d.ts +14 -0
  116. package/dist/graph/artifact-store.d.ts.map +1 -0
  117. package/dist/graph/artifact-store.js +100 -0
  118. package/dist/graph/artifact-store.js.map +1 -0
  119. package/dist/graph/cli.d.ts +49 -0
  120. package/dist/graph/cli.d.ts.map +1 -0
  121. package/dist/graph/cli.js +140 -0
  122. package/dist/graph/cli.js.map +1 -0
  123. package/dist/graph/client.d.ts +64 -0
  124. package/dist/graph/client.d.ts.map +1 -0
  125. package/dist/graph/client.js +216 -0
  126. package/dist/graph/client.js.map +1 -0
  127. package/dist/graph/fallback.d.ts +13 -0
  128. package/dist/graph/fallback.d.ts.map +1 -0
  129. package/dist/graph/fallback.js +57 -0
  130. package/dist/graph/fallback.js.map +1 -0
  131. package/dist/graph/hook-handler.d.ts +50 -0
  132. package/dist/graph/hook-handler.d.ts.map +1 -0
  133. package/dist/graph/hook-handler.js +217 -0
  134. package/dist/graph/hook-handler.js.map +1 -0
  135. package/dist/graph/incidents.d.ts +59 -0
  136. package/dist/graph/incidents.d.ts.map +1 -0
  137. package/dist/graph/incidents.js +22 -0
  138. package/dist/graph/incidents.js.map +1 -0
  139. package/dist/graph/mcp-client.d.ts +51 -0
  140. package/dist/graph/mcp-client.d.ts.map +1 -0
  141. package/dist/graph/mcp-client.js +285 -0
  142. package/dist/graph/mcp-client.js.map +1 -0
  143. package/dist/graph/onboarding-composer.d.ts +30 -0
  144. package/dist/graph/onboarding-composer.d.ts.map +1 -0
  145. package/dist/graph/onboarding-composer.js +275 -0
  146. package/dist/graph/onboarding-composer.js.map +1 -0
  147. package/dist/graph/pipeline-lifecycle.d.ts +86 -0
  148. package/dist/graph/pipeline-lifecycle.d.ts.map +1 -0
  149. package/dist/graph/pipeline-lifecycle.js +329 -0
  150. package/dist/graph/pipeline-lifecycle.js.map +1 -0
  151. package/dist/graph/preflight-budgets.d.ts +52 -0
  152. package/dist/graph/preflight-budgets.d.ts.map +1 -0
  153. package/dist/graph/preflight-budgets.js +78 -0
  154. package/dist/graph/preflight-budgets.js.map +1 -0
  155. package/dist/graph/preflight-injector.d.ts +116 -0
  156. package/dist/graph/preflight-injector.d.ts.map +1 -0
  157. package/dist/graph/preflight-injector.js +538 -0
  158. package/dist/graph/preflight-injector.js.map +1 -0
  159. package/dist/graph/prereq.d.ts +12 -0
  160. package/dist/graph/prereq.d.ts.map +1 -0
  161. package/dist/graph/prereq.js +61 -0
  162. package/dist/graph/prereq.js.map +1 -0
  163. package/dist/graph/prompts.d.ts +42 -0
  164. package/dist/graph/prompts.d.ts.map +1 -0
  165. package/dist/graph/prompts.js +80 -0
  166. package/dist/graph/prompts.js.map +1 -0
  167. package/dist/graph/sandbox.d.ts +19 -0
  168. package/dist/graph/sandbox.d.ts.map +1 -0
  169. package/dist/graph/sandbox.js +25 -0
  170. package/dist/graph/sandbox.js.map +1 -0
  171. package/dist/graph/token-usage.d.ts +21 -0
  172. package/dist/graph/token-usage.d.ts.map +1 -0
  173. package/dist/graph/token-usage.js +22 -0
  174. package/dist/graph/token-usage.js.map +1 -0
  175. package/dist/graph/types.d.ts +129 -0
  176. package/dist/graph/types.d.ts.map +1 -0
  177. package/dist/graph/types.js +12 -0
  178. package/dist/graph/types.js.map +1 -0
  179. package/dist/incident/orchestrator.d.ts +168 -0
  180. package/dist/incident/orchestrator.d.ts.map +1 -0
  181. package/dist/incident/orchestrator.js +279 -0
  182. package/dist/incident/orchestrator.js.map +1 -0
  183. package/dist/incident/playbook-search.d.ts +67 -0
  184. package/dist/incident/playbook-search.d.ts.map +1 -0
  185. package/dist/incident/playbook-search.js +288 -0
  186. package/dist/incident/playbook-search.js.map +1 -0
  187. package/dist/incident/postmortem.d.ts +44 -0
  188. package/dist/incident/postmortem.d.ts.map +1 -0
  189. package/dist/incident/postmortem.js +486 -0
  190. package/dist/incident/postmortem.js.map +1 -0
  191. package/dist/incident/resolution-verify.d.ts +186 -0
  192. package/dist/incident/resolution-verify.d.ts.map +1 -0
  193. package/dist/incident/resolution-verify.js +210 -0
  194. package/dist/incident/resolution-verify.js.map +1 -0
  195. package/dist/incident/rollback.d.ts +137 -0
  196. package/dist/incident/rollback.d.ts.map +1 -0
  197. package/dist/incident/rollback.js +328 -0
  198. package/dist/incident/rollback.js.map +1 -0
  199. package/dist/incident/timeline.d.ts +147 -0
  200. package/dist/incident/timeline.d.ts.map +1 -0
  201. package/dist/incident/timeline.js +452 -0
  202. package/dist/incident/timeline.js.map +1 -0
  203. package/dist/incident/types.d.ts +335 -0
  204. package/dist/incident/types.d.ts.map +1 -0
  205. package/dist/incident/types.js +158 -0
  206. package/dist/incident/types.js.map +1 -0
  207. package/dist/index.d.ts +3 -3
  208. package/dist/index.d.ts.map +1 -1
  209. package/dist/index.js +3 -3
  210. package/dist/index.js.map +1 -1
  211. package/dist/mcp/event-stream.d.ts +46 -0
  212. package/dist/mcp/event-stream.d.ts.map +1 -0
  213. package/dist/mcp/event-stream.js +421 -0
  214. package/dist/mcp/event-stream.js.map +1 -0
  215. package/dist/mcp/external-client.d.ts +38 -0
  216. package/dist/mcp/external-client.d.ts.map +1 -0
  217. package/dist/mcp/external-client.js +121 -0
  218. package/dist/mcp/external-client.js.map +1 -0
  219. package/dist/mcp/run-manager.d.ts +74 -9
  220. package/dist/mcp/run-manager.d.ts.map +1 -1
  221. package/dist/mcp/run-manager.js +127 -31
  222. package/dist/mcp/run-manager.js.map +1 -1
  223. package/dist/mcp/server.d.ts.map +1 -1
  224. package/dist/mcp/server.js +56 -0
  225. package/dist/mcp/server.js.map +1 -1
  226. package/dist/mcp/tools/abort-run.d.ts +2 -0
  227. package/dist/mcp/tools/abort-run.d.ts.map +1 -0
  228. package/dist/mcp/tools/abort-run.js +62 -0
  229. package/dist/mcp/tools/abort-run.js.map +1 -0
  230. package/dist/mcp/tools/anchor.js +1 -1
  231. package/dist/mcp/tools/anchor.js.map +1 -1
  232. package/dist/mcp/tools/approve-checkpoint.d.ts +2 -0
  233. package/dist/mcp/tools/approve-checkpoint.d.ts.map +1 -0
  234. package/dist/mcp/tools/approve-checkpoint.js +70 -0
  235. package/dist/mcp/tools/approve-checkpoint.js.map +1 -0
  236. package/dist/mcp/tools/brownfield.js +1 -1
  237. package/dist/mcp/tools/brownfield.js.map +1 -1
  238. package/dist/mcp/tools/contracts.js +2 -2
  239. package/dist/mcp/tools/contracts.js.map +1 -1
  240. package/dist/mcp/tools/eval.js +8 -8
  241. package/dist/mcp/tools/eval.js.map +1 -1
  242. package/dist/mcp/tools/get-project-state.d.ts +2 -0
  243. package/dist/mcp/tools/get-project-state.d.ts.map +1 -0
  244. package/dist/mcp/tools/get-project-state.js +107 -0
  245. package/dist/mcp/tools/get-project-state.js.map +1 -0
  246. package/dist/mcp/tools/get-run-status.d.ts +2 -0
  247. package/dist/mcp/tools/get-run-status.d.ts.map +1 -0
  248. package/dist/mcp/tools/get-run-status.js +40 -0
  249. package/dist/mcp/tools/get-run-status.js.map +1 -0
  250. package/dist/mcp/tools/graph-schemas.d.ts +100 -0
  251. package/dist/mcp/tools/graph-schemas.d.ts.map +1 -0
  252. package/dist/mcp/tools/graph-schemas.js +39 -0
  253. package/dist/mcp/tools/graph-schemas.js.map +1 -0
  254. package/dist/mcp/tools/graph.d.ts +19 -0
  255. package/dist/mcp/tools/graph.d.ts.map +1 -0
  256. package/dist/mcp/tools/graph.js +263 -0
  257. package/dist/mcp/tools/graph.js.map +1 -0
  258. package/dist/mcp/tools/incident.d.ts +2 -0
  259. package/dist/mcp/tools/incident.d.ts.map +1 -0
  260. package/dist/mcp/tools/incident.js +246 -0
  261. package/dist/mcp/tools/incident.js.map +1 -0
  262. package/dist/mcp/tools/index.d.ts +38 -18
  263. package/dist/mcp/tools/index.d.ts.map +1 -1
  264. package/dist/mcp/tools/index.js +74 -18
  265. package/dist/mcp/tools/index.js.map +1 -1
  266. package/dist/mcp/tools/list-active-runs.d.ts +2 -0
  267. package/dist/mcp/tools/list-active-runs.d.ts.map +1 -0
  268. package/dist/mcp/tools/list-active-runs.js +35 -0
  269. package/dist/mcp/tools/list-active-runs.js.map +1 -0
  270. package/dist/mcp/tools/list-pending-approvals.d.ts +2 -0
  271. package/dist/mcp/tools/list-pending-approvals.d.ts.map +1 -0
  272. package/dist/mcp/tools/list-pending-approvals.js +40 -0
  273. package/dist/mcp/tools/list-pending-approvals.js.map +1 -0
  274. package/dist/mcp/tools/list-projects.d.ts +2 -0
  275. package/dist/mcp/tools/list-projects.d.ts.map +1 -0
  276. package/dist/mcp/tools/list-projects.js +101 -0
  277. package/dist/mcp/tools/list-projects.js.map +1 -0
  278. package/dist/mcp/tools/list-specs.d.ts +2 -0
  279. package/dist/mcp/tools/list-specs.d.ts.map +1 -0
  280. package/dist/mcp/tools/list-specs.js +48 -0
  281. package/dist/mcp/tools/list-specs.js.map +1 -0
  282. package/dist/mcp/tools/plan.d.ts.map +1 -1
  283. package/dist/mcp/tools/plan.js +40 -14
  284. package/dist/mcp/tools/plan.js.map +1 -1
  285. package/dist/mcp/tools/playbook.d.ts +2 -0
  286. package/dist/mcp/tools/playbook.d.ts.map +1 -0
  287. package/dist/mcp/tools/playbook.js +104 -0
  288. package/dist/mcp/tools/playbook.js.map +1 -0
  289. package/dist/mcp/tools/postmortem.d.ts +2 -0
  290. package/dist/mcp/tools/postmortem.d.ts.map +1 -0
  291. package/dist/mcp/tools/postmortem.js +75 -0
  292. package/dist/mcp/tools/postmortem.js.map +1 -0
  293. package/dist/mcp/tools/react.js +1 -1
  294. package/dist/mcp/tools/react.js.map +1 -1
  295. package/dist/mcp/tools/reject-checkpoint.d.ts +2 -0
  296. package/dist/mcp/tools/reject-checkpoint.d.ts.map +1 -0
  297. package/dist/mcp/tools/reject-checkpoint.js +79 -0
  298. package/dist/mcp/tools/reject-checkpoint.js.map +1 -0
  299. package/dist/mcp/tools/rollback.d.ts +2 -0
  300. package/dist/mcp/tools/rollback.d.ts.map +1 -0
  301. package/dist/mcp/tools/rollback.js +78 -0
  302. package/dist/mcp/tools/rollback.js.map +1 -0
  303. package/dist/mcp/tools/run-in-worktree.d.ts +2 -0
  304. package/dist/mcp/tools/run-in-worktree.d.ts.map +1 -0
  305. package/dist/mcp/tools/run-in-worktree.js +90 -0
  306. package/dist/mcp/tools/run-in-worktree.js.map +1 -0
  307. package/dist/mcp/tools/run.js +1 -1
  308. package/dist/mcp/tools/run.js.map +1 -1
  309. package/dist/mcp/tools/solidity.js +1 -1
  310. package/dist/mcp/tools/solidity.js.map +1 -1
  311. package/dist/mcp/tools/sprint.d.ts.map +1 -1
  312. package/dist/mcp/tools/sprint.js +11 -11
  313. package/dist/mcp/tools/sprint.js.map +1 -1
  314. package/dist/mcp/tools/status.d.ts.map +1 -1
  315. package/dist/mcp/tools/status.js +11 -0
  316. package/dist/mcp/tools/status.js.map +1 -1
  317. package/dist/mcp/tools/subscribe-events.d.ts +2 -0
  318. package/dist/mcp/tools/subscribe-events.d.ts.map +1 -0
  319. package/dist/mcp/tools/subscribe-events.js +48 -0
  320. package/dist/mcp/tools/subscribe-events.js.map +1 -0
  321. package/dist/mcp/tools/unsubscribe-events.d.ts +2 -0
  322. package/dist/mcp/tools/unsubscribe-events.d.ts.map +1 -0
  323. package/dist/mcp/tools/unsubscribe-events.js +45 -0
  324. package/dist/mcp/tools/unsubscribe-events.js.map +1 -0
  325. package/dist/orchestrator/agent-loader.d.ts +16 -0
  326. package/dist/orchestrator/agent-loader.d.ts.map +1 -1
  327. package/dist/orchestrator/agent-loader.js +16 -0
  328. package/dist/orchestrator/agent-loader.js.map +1 -1
  329. package/dist/orchestrator/architect-agent.d.ts.map +1 -1
  330. package/dist/orchestrator/architect-agent.js +37 -8
  331. package/dist/orchestrator/architect-agent.js.map +1 -1
  332. package/dist/orchestrator/checkpoints/audit.d.ts +128 -0
  333. package/dist/orchestrator/checkpoints/audit.d.ts.map +1 -0
  334. package/dist/orchestrator/checkpoints/audit.js +272 -0
  335. package/dist/orchestrator/checkpoints/audit.js.map +1 -0
  336. package/dist/orchestrator/checkpoints/feedback-router.d.ts +213 -0
  337. package/dist/orchestrator/checkpoints/feedback-router.d.ts.map +1 -0
  338. package/dist/orchestrator/checkpoints/feedback-router.js +438 -0
  339. package/dist/orchestrator/checkpoints/feedback-router.js.map +1 -0
  340. package/dist/orchestrator/checkpoints/index.d.ts +11 -0
  341. package/dist/orchestrator/checkpoints/index.d.ts.map +1 -0
  342. package/dist/orchestrator/checkpoints/index.js +12 -0
  343. package/dist/orchestrator/checkpoints/index.js.map +1 -0
  344. package/dist/orchestrator/checkpoints/mechanisms/cli.d.ts +35 -0
  345. package/dist/orchestrator/checkpoints/mechanisms/cli.d.ts.map +1 -0
  346. package/dist/orchestrator/checkpoints/mechanisms/cli.js +153 -0
  347. package/dist/orchestrator/checkpoints/mechanisms/cli.js.map +1 -0
  348. package/dist/orchestrator/checkpoints/mechanisms/disk.d.ts +34 -0
  349. package/dist/orchestrator/checkpoints/mechanisms/disk.d.ts.map +1 -0
  350. package/dist/orchestrator/checkpoints/mechanisms/disk.js +139 -0
  351. package/dist/orchestrator/checkpoints/mechanisms/disk.js.map +1 -0
  352. package/dist/orchestrator/checkpoints/mechanisms/pr.d.ts +141 -0
  353. package/dist/orchestrator/checkpoints/mechanisms/pr.d.ts.map +1 -0
  354. package/dist/orchestrator/checkpoints/mechanisms/pr.js +445 -0
  355. package/dist/orchestrator/checkpoints/mechanisms/pr.js.map +1 -0
  356. package/dist/orchestrator/checkpoints/noop.d.ts +12 -0
  357. package/dist/orchestrator/checkpoints/noop.d.ts.map +1 -0
  358. package/dist/orchestrator/checkpoints/noop.js +13 -0
  359. package/dist/orchestrator/checkpoints/noop.js.map +1 -0
  360. package/dist/orchestrator/checkpoints/registry.d.ts +48 -0
  361. package/dist/orchestrator/checkpoints/registry.d.ts.map +1 -0
  362. package/dist/orchestrator/checkpoints/registry.js +89 -0
  363. package/dist/orchestrator/checkpoints/registry.js.map +1 -0
  364. package/dist/orchestrator/checkpoints/renderers/_util.d.ts +50 -0
  365. package/dist/orchestrator/checkpoints/renderers/_util.d.ts.map +1 -0
  366. package/dist/orchestrator/checkpoints/renderers/_util.js +137 -0
  367. package/dist/orchestrator/checkpoints/renderers/_util.js.map +1 -0
  368. package/dist/orchestrator/checkpoints/renderers/code-review.d.ts +15 -0
  369. package/dist/orchestrator/checkpoints/renderers/code-review.d.ts.map +1 -0
  370. package/dist/orchestrator/checkpoints/renderers/code-review.js +66 -0
  371. package/dist/orchestrator/checkpoints/renderers/code-review.js.map +1 -0
  372. package/dist/orchestrator/checkpoints/renderers/curator-briefing.d.ts +15 -0
  373. package/dist/orchestrator/checkpoints/renderers/curator-briefing.d.ts.map +1 -0
  374. package/dist/orchestrator/checkpoints/renderers/curator-briefing.js +40 -0
  375. package/dist/orchestrator/checkpoints/renderers/curator-briefing.js.map +1 -0
  376. package/dist/orchestrator/checkpoints/renderers/eval-result.d.ts +15 -0
  377. package/dist/orchestrator/checkpoints/renderers/eval-result.d.ts.map +1 -0
  378. package/dist/orchestrator/checkpoints/renderers/eval-result.js +54 -0
  379. package/dist/orchestrator/checkpoints/renderers/eval-result.js.map +1 -0
  380. package/dist/orchestrator/checkpoints/renderers/generator-diff.d.ts +49 -0
  381. package/dist/orchestrator/checkpoints/renderers/generator-diff.d.ts.map +1 -0
  382. package/dist/orchestrator/checkpoints/renderers/generator-diff.js +154 -0
  383. package/dist/orchestrator/checkpoints/renderers/generator-diff.js.map +1 -0
  384. package/dist/orchestrator/checkpoints/renderers/pipeline-summary.d.ts +15 -0
  385. package/dist/orchestrator/checkpoints/renderers/pipeline-summary.d.ts.map +1 -0
  386. package/dist/orchestrator/checkpoints/renderers/pipeline-summary.js +59 -0
  387. package/dist/orchestrator/checkpoints/renderers/pipeline-summary.js.map +1 -0
  388. package/dist/orchestrator/checkpoints/renderers/plan.d.ts +15 -0
  389. package/dist/orchestrator/checkpoints/renderers/plan.d.ts.map +1 -0
  390. package/dist/orchestrator/checkpoints/renderers/plan.js +34 -0
  391. package/dist/orchestrator/checkpoints/renderers/plan.js.map +1 -0
  392. package/dist/orchestrator/checkpoints/renderers/registry.d.ts +43 -0
  393. package/dist/orchestrator/checkpoints/renderers/registry.d.ts.map +1 -0
  394. package/dist/orchestrator/checkpoints/renderers/registry.js +83 -0
  395. package/dist/orchestrator/checkpoints/renderers/registry.js.map +1 -0
  396. package/dist/orchestrator/checkpoints/renderers/research.d.ts +15 -0
  397. package/dist/orchestrator/checkpoints/renderers/research.d.ts.map +1 -0
  398. package/dist/orchestrator/checkpoints/renderers/research.js +39 -0
  399. package/dist/orchestrator/checkpoints/renderers/research.js.map +1 -0
  400. package/dist/orchestrator/checkpoints/renderers/sprint-contract.d.ts +20 -0
  401. package/dist/orchestrator/checkpoints/renderers/sprint-contract.d.ts.map +1 -0
  402. package/dist/orchestrator/checkpoints/renderers/sprint-contract.js +57 -0
  403. package/dist/orchestrator/checkpoints/renderers/sprint-contract.js.map +1 -0
  404. package/dist/orchestrator/checkpoints/renderers/sprint-summary.d.ts +15 -0
  405. package/dist/orchestrator/checkpoints/renderers/sprint-summary.d.ts.map +1 -0
  406. package/dist/orchestrator/checkpoints/renderers/sprint-summary.js +38 -0
  407. package/dist/orchestrator/checkpoints/renderers/sprint-summary.js.map +1 -0
  408. package/dist/orchestrator/checkpoints/sites.d.ts +22 -0
  409. package/dist/orchestrator/checkpoints/sites.d.ts.map +1 -0
  410. package/dist/orchestrator/checkpoints/sites.js +57 -0
  411. package/dist/orchestrator/checkpoints/sites.js.map +1 -0
  412. package/dist/orchestrator/checkpoints/types.d.ts +51 -0
  413. package/dist/orchestrator/checkpoints/types.d.ts.map +1 -0
  414. package/dist/orchestrator/checkpoints/types.js +9 -0
  415. package/dist/orchestrator/checkpoints/types.js.map +1 -0
  416. package/dist/orchestrator/code-reviewer-agent.d.ts +50 -0
  417. package/dist/orchestrator/code-reviewer-agent.d.ts.map +1 -0
  418. package/dist/orchestrator/code-reviewer-agent.js +283 -0
  419. package/dist/orchestrator/code-reviewer-agent.js.map +1 -0
  420. package/dist/orchestrator/context-handoff.d.ts +484 -224
  421. package/dist/orchestrator/context-handoff.d.ts.map +1 -1
  422. package/dist/orchestrator/context-handoff.js +32 -12
  423. package/dist/orchestrator/context-handoff.js.map +1 -1
  424. package/dist/orchestrator/curator-agent.d.ts.map +1 -1
  425. package/dist/orchestrator/curator-agent.js +63 -12
  426. package/dist/orchestrator/curator-agent.js.map +1 -1
  427. package/dist/orchestrator/deploy/classify.d.ts +31 -0
  428. package/dist/orchestrator/deploy/classify.d.ts.map +1 -0
  429. package/dist/orchestrator/deploy/classify.js +109 -0
  430. package/dist/orchestrator/deploy/classify.js.map +1 -0
  431. package/dist/orchestrator/deploy/execute.d.ts +45 -0
  432. package/dist/orchestrator/deploy/execute.d.ts.map +1 -0
  433. package/dist/orchestrator/deploy/execute.js +146 -0
  434. package/dist/orchestrator/deploy/execute.js.map +1 -0
  435. package/dist/orchestrator/deploy/executor.d.ts +22 -0
  436. package/dist/orchestrator/deploy/executor.d.ts.map +1 -0
  437. package/dist/orchestrator/deploy/executor.js +31 -0
  438. package/dist/orchestrator/deploy/executor.js.map +1 -0
  439. package/dist/orchestrator/deploy/index.d.ts +21 -0
  440. package/dist/orchestrator/deploy/index.d.ts.map +1 -0
  441. package/dist/orchestrator/deploy/index.js +21 -0
  442. package/dist/orchestrator/deploy/index.js.map +1 -0
  443. package/dist/orchestrator/deploy/resolve.d.ts +51 -0
  444. package/dist/orchestrator/deploy/resolve.d.ts.map +1 -0
  445. package/dist/orchestrator/deploy/resolve.js +53 -0
  446. package/dist/orchestrator/deploy/resolve.js.map +1 -0
  447. package/dist/orchestrator/deploy/spawn.d.ts +60 -0
  448. package/dist/orchestrator/deploy/spawn.d.ts.map +1 -0
  449. package/dist/orchestrator/deploy/spawn.js +62 -0
  450. package/dist/orchestrator/deploy/spawn.js.map +1 -0
  451. package/dist/orchestrator/deploy/types.d.ts +98 -0
  452. package/dist/orchestrator/deploy/types.d.ts.map +1 -0
  453. package/dist/orchestrator/deploy/types.js +39 -0
  454. package/dist/orchestrator/deploy/types.js.map +1 -0
  455. package/dist/orchestrator/evaluator-agent.d.ts.map +1 -1
  456. package/dist/orchestrator/evaluator-agent.js +23 -10
  457. package/dist/orchestrator/evaluator-agent.js.map +1 -1
  458. package/dist/orchestrator/generator-agent.d.ts.map +1 -1
  459. package/dist/orchestrator/generator-agent.js +24 -11
  460. package/dist/orchestrator/generator-agent.js.map +1 -1
  461. package/dist/orchestrator/model-resolver.d.ts.map +1 -1
  462. package/dist/orchestrator/model-resolver.js +4 -2
  463. package/dist/orchestrator/model-resolver.js.map +1 -1
  464. package/dist/orchestrator/observability/index.d.ts +12 -0
  465. package/dist/orchestrator/observability/index.d.ts.map +1 -0
  466. package/dist/orchestrator/observability/index.js +12 -0
  467. package/dist/orchestrator/observability/index.js.map +1 -0
  468. package/dist/orchestrator/observability/merge.d.ts +73 -0
  469. package/dist/orchestrator/observability/merge.d.ts.map +1 -0
  470. package/dist/orchestrator/observability/merge.js +110 -0
  471. package/dist/orchestrator/observability/merge.js.map +1 -0
  472. package/dist/orchestrator/pipeline.d.ts +28 -0
  473. package/dist/orchestrator/pipeline.d.ts.map +1 -1
  474. package/dist/orchestrator/pipeline.js +223 -30
  475. package/dist/orchestrator/pipeline.js.map +1 -1
  476. package/dist/orchestrator/planner-agent.d.ts +21 -1
  477. package/dist/orchestrator/planner-agent.d.ts.map +1 -1
  478. package/dist/orchestrator/planner-agent.js +16 -6
  479. package/dist/orchestrator/planner-agent.js.map +1 -1
  480. package/dist/orchestrator/research-agent.d.ts.map +1 -1
  481. package/dist/orchestrator/research-agent.js +46 -9
  482. package/dist/orchestrator/research-agent.js.map +1 -1
  483. package/dist/orchestrator/tools/handlers.d.ts +2 -0
  484. package/dist/orchestrator/tools/handlers.d.ts.map +1 -1
  485. package/dist/orchestrator/tools/handlers.js +1 -1
  486. package/dist/orchestrator/tools/handlers.js.map +1 -1
  487. package/dist/orchestrator/tools/index.d.ts +84 -1
  488. package/dist/orchestrator/tools/index.d.ts.map +1 -1
  489. package/dist/orchestrator/tools/index.js +164 -1
  490. package/dist/orchestrator/tools/index.js.map +1 -1
  491. package/dist/orchestrator/worktree.d.ts +18 -0
  492. package/dist/orchestrator/worktree.d.ts.map +1 -0
  493. package/dist/orchestrator/worktree.js +129 -0
  494. package/dist/orchestrator/worktree.js.map +1 -0
  495. package/dist/providers/anthropic.d.ts +8 -1
  496. package/dist/providers/anthropic.d.ts.map +1 -1
  497. package/dist/providers/anthropic.js +86 -5
  498. package/dist/providers/anthropic.js.map +1 -1
  499. package/dist/providers/factory.d.ts.map +1 -1
  500. package/dist/providers/factory.js +35 -2
  501. package/dist/providers/factory.js.map +1 -1
  502. package/dist/providers/google.d.ts.map +1 -1
  503. package/dist/providers/google.js +5 -0
  504. package/dist/providers/google.js.map +1 -1
  505. package/dist/providers/index.d.ts +1 -1
  506. package/dist/providers/index.d.ts.map +1 -1
  507. package/dist/providers/index.js.map +1 -1
  508. package/dist/providers/openai.d.ts.map +1 -1
  509. package/dist/providers/openai.js +4 -0
  510. package/dist/providers/openai.js.map +1 -1
  511. package/dist/providers/types.d.ts +25 -2
  512. package/dist/providers/types.d.ts.map +1 -1
  513. package/dist/state/approval-state.d.ts +74 -0
  514. package/dist/state/approval-state.d.ts.map +1 -0
  515. package/dist/state/approval-state.js +127 -0
  516. package/dist/state/approval-state.js.map +1 -0
  517. package/dist/state/history.d.ts.map +1 -1
  518. package/dist/state/history.js +3 -3
  519. package/dist/state/history.js.map +1 -1
  520. package/dist/state/index.d.ts +3 -0
  521. package/dist/state/index.d.ts.map +1 -1
  522. package/dist/state/index.js +4 -1
  523. package/dist/state/index.js.map +1 -1
  524. package/dist/state/plan-state.js +1 -1
  525. package/dist/state/plan-state.js.map +1 -1
  526. package/dist/state/review-state.d.ts +15 -0
  527. package/dist/state/review-state.d.ts.map +1 -0
  528. package/dist/state/review-state.js +51 -0
  529. package/dist/state/review-state.js.map +1 -0
  530. package/dist/state/run-state.d.ts +39 -0
  531. package/dist/state/run-state.d.ts.map +1 -0
  532. package/dist/state/run-state.js +101 -0
  533. package/dist/state/run-state.js.map +1 -0
  534. package/dist/state/sprint-state.d.ts +9 -2
  535. package/dist/state/sprint-state.d.ts.map +1 -1
  536. package/dist/state/sprint-state.js +25 -11
  537. package/dist/state/sprint-state.js.map +1 -1
  538. package/dist/telemetry/emit.d.ts +41 -0
  539. package/dist/telemetry/emit.d.ts.map +1 -0
  540. package/dist/telemetry/emit.js +65 -0
  541. package/dist/telemetry/emit.js.map +1 -0
  542. package/dist/utils/git.d.ts +27 -0
  543. package/dist/utils/git.d.ts.map +1 -1
  544. package/dist/utils/git.js +50 -0
  545. package/dist/utils/git.js.map +1 -1
  546. package/hooks/hooks.json +17 -1
  547. package/hooks/session-start +42 -0
  548. package/package.json +6 -2
  549. package/scripts/check-prereqs.sh +12 -0
  550. package/scripts/e2e-graph-smoke.sh +167 -0
  551. package/scripts/graph-hook.mjs +151 -0
  552. package/scripts/migrate-specs.mjs +127 -0
  553. package/scripts/run-kpi-gate.mjs +245 -0
  554. package/scripts/sync-skills.mjs +99 -0
  555. package/skills/bober.code-review/SKILL.md +186 -0
  556. package/skills/bober.debug/SKILL.md +300 -0
  557. package/skills/bober.deploy/SKILL.md +262 -0
  558. package/skills/bober.diagnose/SKILL.md +254 -0
  559. package/skills/bober.graph/SKILL.md +85 -0
  560. package/skills/bober.impact/SKILL.md +101 -0
  561. package/skills/bober.incident/SKILL.md +245 -0
  562. package/skills/bober.onboard/SKILL.md +84 -0
  563. package/skills/bober.plan/SKILL.md +51 -0
  564. package/skills/bober.plan/references/spec-schema.md +31 -4
  565. package/skills/bober.postmortem/SKILL.md +231 -0
  566. package/skills/bober.run/SKILL.md +41 -7
  567. package/skills/bober.runbook/SKILL.md +335 -0
  568. package/skills/bober.sprint/SKILL.md +6 -259
  569. package/skills/bober.using-bober/SKILL.md +133 -0
  570. package/skills/bober.verify/SKILL.md +143 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator-diff.js","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/generator-diff.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Renderer for `pipeline-summary` artifacts.
3
+ *
4
+ * Shows: spec title, success status, completed/failed sprints, duration (formatted),
5
+ * and current sprint. No hard line cap (typically small).
6
+ *
7
+ * Pure function — no I/O. Receives a PipelineResult-shaped object.
8
+ *
9
+ * Sprint 11 — colocated in renderers/ per mechanisms/ precedent.
10
+ */
11
+ /**
12
+ * Render a `pipeline-summary` artifact as markdown.
13
+ */
14
+ export declare function renderPipelineSummary(artifact: unknown): string;
15
+ //# sourceMappingURL=pipeline-summary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline-summary.d.ts","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/pipeline-summary.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAiCH;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAiC/D"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Renderer for `pipeline-summary` artifacts.
3
+ *
4
+ * Shows: spec title, success status, completed/failed sprints, duration (formatted),
5
+ * and current sprint. No hard line cap (typically small).
6
+ *
7
+ * Pure function — no I/O. Receives a PipelineResult-shaped object.
8
+ *
9
+ * Sprint 11 — colocated in renderers/ per mechanisms/ precedent.
10
+ */
11
+ import { applyLineCap } from "./_util.js";
12
+ /**
13
+ * Format a duration in milliseconds as a human-readable string.
14
+ */
15
+ function formatDuration(ms) {
16
+ const totalSeconds = Math.floor(ms / 1000);
17
+ const hours = Math.floor(totalSeconds / 3600);
18
+ const minutes = Math.floor((totalSeconds % 3600) / 60);
19
+ const seconds = totalSeconds % 60;
20
+ if (hours > 0)
21
+ return `${hours}h ${minutes}m ${seconds}s`;
22
+ if (minutes > 0)
23
+ return `${minutes}m ${seconds}s`;
24
+ return `${seconds}s`;
25
+ }
26
+ /**
27
+ * Render a `pipeline-summary` artifact as markdown.
28
+ */
29
+ export function renderPipelineSummary(artifact) {
30
+ const a = (artifact ?? {});
31
+ const spec = a.spec ?? {};
32
+ const completedSprints = a.completedSprints ?? [];
33
+ const failedSprints = a.failedSprints ?? [];
34
+ const success = a.success === true ? "SUCCESS" : a.success === false ? "FAILED" : "UNKNOWN";
35
+ const durationStr = typeof a.duration === "number" ? formatDuration(a.duration) : "unknown";
36
+ const lines = [
37
+ `## Pipeline Summary`,
38
+ ``,
39
+ `**Spec:** ${spec.title ?? "(untitled)"}`,
40
+ `**Result:** **${success}**`,
41
+ `**Duration:** ${durationStr}`,
42
+ ``,
43
+ `### Sprint results`,
44
+ `- **Completed:** ${completedSprints.length}`,
45
+ `- **Failed:** ${failedSprints.length}`,
46
+ `- **Total:** ${completedSprints.length + failedSprints.length}`,
47
+ ``,
48
+ ];
49
+ if (a.currentSprint) {
50
+ lines.push(`**Current sprint:** ${a.currentSprint}`);
51
+ lines.push(``);
52
+ }
53
+ if (typeof a.totalIterationsUsed === "number") {
54
+ lines.push(`**Total iterations used:** ${a.totalIterationsUsed}`);
55
+ lines.push(``);
56
+ }
57
+ return applyLineCap(lines.join("\n"), 150);
58
+ }
59
+ //# sourceMappingURL=pipeline-summary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline-summary.js","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/pipeline-summary.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAkB1C;;GAEG;AACH,SAAS,cAAc,CAAC,EAAU;IAChC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,YAAY,GAAG,EAAE,CAAC;IAClC,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,GAAG,KAAK,KAAK,OAAO,KAAK,OAAO,GAAG,CAAC;IAC1D,IAAI,OAAO,GAAG,CAAC;QAAE,OAAO,GAAG,OAAO,KAAK,OAAO,GAAG,CAAC;IAClD,OAAO,GAAG,OAAO,GAAG,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAiB;IACrD,MAAM,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAA4B,CAAC;IACtD,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;IAC1B,MAAM,gBAAgB,GAAG,CAAC,CAAC,gBAAgB,IAAI,EAAE,CAAC;IAClD,MAAM,aAAa,GAAG,CAAC,CAAC,aAAa,IAAI,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5F,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE5F,MAAM,KAAK,GAAa;QACtB,qBAAqB;QACrB,EAAE;QACF,aAAa,IAAI,CAAC,KAAK,IAAI,YAAY,EAAE;QACzC,iBAAiB,OAAO,IAAI;QAC5B,iBAAiB,WAAW,EAAE;QAC9B,EAAE;QACF,oBAAoB;QACpB,oBAAoB,gBAAgB,CAAC,MAAM,EAAE;QAC7C,iBAAiB,aAAa,CAAC,MAAM,EAAE;QACvC,gBAAgB,gBAAgB,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE;QAChE,EAAE;KACH,CAAC;IAEF,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,mBAAmB,KAAK,QAAQ,EAAE,CAAC;QAC9C,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAClE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Renderer for `plan-spec` artifacts.
3
+ *
4
+ * Extracts: title, ambiguity score, features count, sprints count (inline only),
5
+ * assumptions list, out-of-scope list. Caps output at 300 lines.
6
+ *
7
+ * Pure function — no I/O. Receives the parsed PlanSpec object directly.
8
+ *
9
+ * Sprint 11 — colocated in renderers/ per mechanisms/ precedent.
10
+ */
11
+ /**
12
+ * Render a `plan-spec` artifact as markdown.
13
+ */
14
+ export declare function renderPlanSpec(artifact: unknown): string;
15
+ //# sourceMappingURL=plan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAgBH;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAoBxD"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Renderer for `plan-spec` artifacts.
3
+ *
4
+ * Extracts: title, ambiguity score, features count, sprints count (inline only),
5
+ * assumptions list, out-of-scope list. Caps output at 300 lines.
6
+ *
7
+ * Pure function — no I/O. Receives the parsed PlanSpec object directly.
8
+ *
9
+ * Sprint 11 — colocated in renderers/ per mechanisms/ precedent.
10
+ */
11
+ import { applyLineCap } from "./_util.js";
12
+ /**
13
+ * Render a `plan-spec` artifact as markdown.
14
+ */
15
+ export function renderPlanSpec(artifact) {
16
+ const spec = (artifact ?? {});
17
+ const lines = [
18
+ `## Plan: ${spec.title ?? "(untitled)"}`,
19
+ ``,
20
+ `- **Spec ID:** \`${spec.specId ?? "unknown"}\``,
21
+ `- **Status:** ${spec.status ?? "unknown"}`,
22
+ `- **Ambiguity:** ${spec.ambiguityScore ?? "n/a"}/10`,
23
+ `- **Features:** ${spec.features?.length ?? 0}`,
24
+ `- **Sprints (inline):** ${spec.sprints?.length ?? 0}`,
25
+ ``,
26
+ `### Assumptions (${spec.assumptions?.length ?? 0})`,
27
+ ...(spec.assumptions ?? []).map((a) => `- ${a}`),
28
+ ``,
29
+ `### Out of scope (${spec.outOfScope?.length ?? 0})`,
30
+ ...(spec.outOfScope ?? []).map((o) => `- ${o}`),
31
+ ];
32
+ return applyLineCap(lines.join("\n"), 300);
33
+ }
34
+ //# sourceMappingURL=plan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAc1C;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,QAAiB;IAC9C,MAAM,IAAI,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAiB,CAAC;IAE9C,MAAM,KAAK,GAAa;QACtB,YAAY,IAAI,CAAC,KAAK,IAAI,YAAY,EAAE;QACxC,EAAE;QACF,oBAAoB,IAAI,CAAC,MAAM,IAAI,SAAS,IAAI;QAChD,iBAAiB,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE;QAC3C,oBAAoB,IAAI,CAAC,cAAc,IAAI,KAAK,KAAK;QACrD,mBAAmB,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,EAAE;QAC/C,2BAA2B,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE;QACtD,EAAE;QACF,oBAAoB,IAAI,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,GAAG;QACpD,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;QAChD,EAAE;QACF,qBAAqB,IAAI,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC,GAAG;QACpD,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;KAChD,CAAC;IAEF,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Per-artifact-type renderer registry.
3
+ *
4
+ * Renderers are pure functions: (artifact) => markdown string.
5
+ * Mechanisms (cli/disk/pr) call render(artifact) to get a human-readable
6
+ * summary instead of stringifying the full artifact.
7
+ *
8
+ * Sprint 11 — replaces inline renderArtifact (cli), summarizeArtifact (disk),
9
+ * renderCheckpointComment (pr) bodies. Colocated in renderers/ per mechanisms/
10
+ * precedent established in Sprints 7-10.
11
+ */
12
+ /**
13
+ * Canonical artifact type strings.
14
+ * CLI/disk/PR mechanisms MUST pass artifact.type matching one of these.
15
+ * Unknown types fall back to a generic JSON text dump with a stderr warning (s11-c2).
16
+ */
17
+ export type ArtifactType = "research" | "plan-spec" | "sprint-contract" | "curator-briefing" | "generator-diff" | "eval-result" | "code-review" | "sprint-summary" | "pipeline-summary";
18
+ /** A renderer function: artifact in, markdown string out. Pure, synchronous. */
19
+ export type Renderer = (artifact: unknown) => string;
20
+ /**
21
+ * Register a renderer for a given artifact type.
22
+ * Allows test fixtures or future sprints to extend the registry.
23
+ */
24
+ export declare function registerRenderer(type: string, renderer: Renderer): void;
25
+ /**
26
+ * Get the renderer for a given artifact type.
27
+ * Returns undefined if the type is not registered.
28
+ */
29
+ export declare function getRenderer(type: string): Renderer | undefined;
30
+ /**
31
+ * Dispatch to the correct renderer by artifact.type.
32
+ * Unknown types fall through to a generic JSON text dump + stderr warning (s11-c2).
33
+ */
34
+ export declare function render(artifact: unknown): string;
35
+ /**
36
+ * Generic fallback renderer — single source of truth for unknown-type rendering.
37
+ *
38
+ * Only picks safe metadata fields (type, path, summary, lines) — never stringifies
39
+ * the entire artifact. Large fields (content, fullContent, text, data) are dropped
40
+ * to preserve the 100ms perf budget (per disk.ts: large artifact safety test).
41
+ */
42
+ export declare function renderGeneric(artifact: unknown): string;
43
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAYH;;;;GAIG;AACH,MAAM,MAAM,YAAY,GACpB,UAAU,GACV,WAAW,GACX,iBAAiB,GACjB,kBAAkB,GAClB,gBAAgB,GAChB,aAAa,GACb,aAAa,GACb,gBAAgB,GAChB,kBAAkB,CAAC;AAEvB,gFAAgF;AAChF,MAAM,MAAM,QAAQ,GAAG,CAAC,QAAQ,EAAE,OAAO,KAAK,MAAM,CAAC;AAerD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAEvE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAE9D;AAED;;;GAGG;AACH,wBAAgB,MAAM,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAahD;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAiBvD"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Per-artifact-type renderer registry.
3
+ *
4
+ * Renderers are pure functions: (artifact) => markdown string.
5
+ * Mechanisms (cli/disk/pr) call render(artifact) to get a human-readable
6
+ * summary instead of stringifying the full artifact.
7
+ *
8
+ * Sprint 11 — replaces inline renderArtifact (cli), summarizeArtifact (disk),
9
+ * renderCheckpointComment (pr) bodies. Colocated in renderers/ per mechanisms/
10
+ * precedent established in Sprints 7-10.
11
+ */
12
+ import { renderResearch } from "./research.js";
13
+ import { renderPlanSpec } from "./plan.js";
14
+ import { renderSprintContract } from "./sprint-contract.js";
15
+ import { renderCuratorBriefing } from "./curator-briefing.js";
16
+ import { renderGeneratorDiff } from "./generator-diff.js";
17
+ import { renderEvalResult } from "./eval-result.js";
18
+ import { renderCodeReview } from "./code-review.js";
19
+ import { renderSprintSummary } from "./sprint-summary.js";
20
+ import { renderPipelineSummary } from "./pipeline-summary.js";
21
+ /** Module-level dispatch table — populated from the 9 canonical renderer modules. */
22
+ const renderers = new Map([
23
+ ["research", renderResearch],
24
+ ["plan-spec", renderPlanSpec],
25
+ ["sprint-contract", renderSprintContract],
26
+ ["curator-briefing", renderCuratorBriefing],
27
+ ["generator-diff", renderGeneratorDiff],
28
+ ["eval-result", renderEvalResult],
29
+ ["code-review", renderCodeReview],
30
+ ["sprint-summary", renderSprintSummary],
31
+ ["pipeline-summary", renderPipelineSummary],
32
+ ]);
33
+ /**
34
+ * Register a renderer for a given artifact type.
35
+ * Allows test fixtures or future sprints to extend the registry.
36
+ */
37
+ export function registerRenderer(type, renderer) {
38
+ renderers.set(type, renderer);
39
+ }
40
+ /**
41
+ * Get the renderer for a given artifact type.
42
+ * Returns undefined if the type is not registered.
43
+ */
44
+ export function getRenderer(type) {
45
+ return renderers.get(type);
46
+ }
47
+ /**
48
+ * Dispatch to the correct renderer by artifact.type.
49
+ * Unknown types fall through to a generic JSON text dump + stderr warning (s11-c2).
50
+ */
51
+ export function render(artifact) {
52
+ const a = artifact;
53
+ const type = a && typeof a === "object" && typeof a["type"] === "string" ? a["type"] : null;
54
+ if (type !== null && renderers.has(type)) {
55
+ return renderers.get(type)(artifact);
56
+ }
57
+ process.stderr.write(`warn: renderer registry has no entry for artifact.type=${JSON.stringify(type)}; falling back to generic JSON dump.\n`);
58
+ return renderGeneric(artifact);
59
+ }
60
+ /**
61
+ * Generic fallback renderer — single source of truth for unknown-type rendering.
62
+ *
63
+ * Only picks safe metadata fields (type, path, summary, lines) — never stringifies
64
+ * the entire artifact. Large fields (content, fullContent, text, data) are dropped
65
+ * to preserve the 100ms perf budget (per disk.ts: large artifact safety test).
66
+ */
67
+ export function renderGeneric(artifact) {
68
+ const a = artifact;
69
+ if (!a || typeof a !== "object") {
70
+ return `\`\`\`\n${String(artifact)}\n\`\`\``;
71
+ }
72
+ // Safe metadata fields to surface
73
+ const safe = {};
74
+ const SAFE_FIELDS = ["type", "path", "summary", "lines", "status", "id", "contractId", "specId", "title", "feature"];
75
+ for (const key of SAFE_FIELDS) {
76
+ if (key in a && (typeof a[key] === "string" || typeof a[key] === "number" || typeof a[key] === "boolean")) {
77
+ safe[key] = a[key];
78
+ }
79
+ }
80
+ const json = JSON.stringify(safe, null, 2);
81
+ return ["```json", json, "```"].join("\n");
82
+ }
83
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Renderer for `research` artifacts.
3
+ *
4
+ * Extracts: title (H1), assumptions count, files-explored count, key findings count,
5
+ * and first 3 lines of the executive summary. Caps output at 500 lines.
6
+ *
7
+ * Pure function — no I/O. Mechanisms must preload file content into artifact.content.
8
+ *
9
+ * Sprint 11 — colocated in renderers/ per mechanisms/ precedent.
10
+ */
11
+ /**
12
+ * Render a `research` artifact as markdown.
13
+ */
14
+ export declare function renderResearch(artifact: unknown): string;
15
+ //# sourceMappingURL=research.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"research.d.ts","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/research.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAWH;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CA4BxD"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Renderer for `research` artifacts.
3
+ *
4
+ * Extracts: title (H1), assumptions count, files-explored count, key findings count,
5
+ * and first 3 lines of the executive summary. Caps output at 500 lines.
6
+ *
7
+ * Pure function — no I/O. Mechanisms must preload file content into artifact.content.
8
+ *
9
+ * Sprint 11 — colocated in renderers/ per mechanisms/ precedent.
10
+ */
11
+ import { applyLineCap, extractH1, countSectionItems, parseInlineCount, firstNNonBlankAfter, extractMarkdownContent, } from "./_util.js";
12
+ /**
13
+ * Render a `research` artifact as markdown.
14
+ */
15
+ export function renderResearch(artifact) {
16
+ const { content, path } = extractMarkdownContent(artifact);
17
+ const title = extractH1(content) ?? "(untitled research)";
18
+ const assumptions = countSectionItems(content, "Assumptions");
19
+ const filesExplored = parseInlineCount(content, /\*\*Files Explored:\*\*\s+(\d+)/) ??
20
+ parseInlineCount(content, /Files Explored[:\s]+(\d+)/i) ??
21
+ 0;
22
+ const findings = countSectionItems(content, "Existing Patterns") +
23
+ countSectionItems(content, "Key Findings") +
24
+ countSectionItems(content, "Key files");
25
+ const execSummary = firstNNonBlankAfter(content, 3, /^---$/);
26
+ const lines = [
27
+ `## Research: ${title}`,
28
+ ``,
29
+ `- **Assumptions:** ${assumptions}`,
30
+ `- **Files explored:** ${filesExplored}`,
31
+ `- **Key findings:** ${findings}`,
32
+ ``,
33
+ `### Executive summary`,
34
+ ...execSummary,
35
+ ``,
36
+ ];
37
+ return applyLineCap(lines.join("\n"), 500, path);
38
+ }
39
+ //# sourceMappingURL=research.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"research.js","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/research.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,YAAY,EACZ,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,QAAiB;IAC9C,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAE3D,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,qBAAqB,CAAC;IAC1D,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAC9D,MAAM,aAAa,GACjB,gBAAgB,CAAC,OAAO,EAAE,iCAAiC,CAAC;QAC5D,gBAAgB,CAAC,OAAO,EAAE,4BAA4B,CAAC;QACvD,CAAC,CAAC;IACJ,MAAM,QAAQ,GACZ,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,CAAC;QAC/C,iBAAiB,CAAC,OAAO,EAAE,cAAc,CAAC;QAC1C,iBAAiB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,mBAAmB,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAE7D,MAAM,KAAK,GAAa;QACtB,gBAAgB,KAAK,EAAE;QACvB,EAAE;QACF,sBAAsB,WAAW,EAAE;QACnC,yBAAyB,aAAa,EAAE;QACxC,uBAAuB,QAAQ,EAAE;QACjC,EAAE;QACF,uBAAuB;QACvB,GAAG,WAAW;QACd,EAAE;KACH,CAAC;IAEF,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AACnD,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Renderer for `sprint-contract` artifacts.
3
+ *
4
+ * Extracts: contractId, feature/title, expectedChanges paths, successCriteria
5
+ * count + first 5, dependsOn, and (at iteration 2+) a "Previous feedback"
6
+ * section listing prior rejections.
7
+ *
8
+ * Pure function — no I/O. Receives the parsed SprintContract object directly.
9
+ *
10
+ * Sprint 11 — colocated in renderers/ per mechanisms/ precedent.
11
+ * Sprint 12 — extended with iterationMeta support (s12-c5).
12
+ */
13
+ /**
14
+ * Render a `sprint-contract` artifact as markdown.
15
+ *
16
+ * At iteration 2+, appends a "### Previous feedback" section so reviewers
17
+ * can see what was already asked of the generator (s12-c5).
18
+ */
19
+ export declare function renderSprintContract(artifact: unknown): string;
20
+ //# sourceMappingURL=sprint-contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sprint-contract.d.ts","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/sprint-contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAyCH;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CA8C9D"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Renderer for `sprint-contract` artifacts.
3
+ *
4
+ * Extracts: contractId, feature/title, expectedChanges paths, successCriteria
5
+ * count + first 5, dependsOn, and (at iteration 2+) a "Previous feedback"
6
+ * section listing prior rejections.
7
+ *
8
+ * Pure function — no I/O. Receives the parsed SprintContract object directly.
9
+ *
10
+ * Sprint 11 — colocated in renderers/ per mechanisms/ precedent.
11
+ * Sprint 12 — extended with iterationMeta support (s12-c5).
12
+ */
13
+ import { applyLineCap } from "./_util.js";
14
+ /**
15
+ * Render a `sprint-contract` artifact as markdown.
16
+ *
17
+ * At iteration 2+, appends a "### Previous feedback" section so reviewers
18
+ * can see what was already asked of the generator (s12-c5).
19
+ */
20
+ export function renderSprintContract(artifact) {
21
+ const c = (artifact ?? {});
22
+ const sc = c.successCriteria ?? [];
23
+ const ec = c.expectedChanges ?? [];
24
+ // Resolve iteration metadata from either the explicit `iterationMeta` field
25
+ // or the `_iterationMetadata` field written by runCheckpointWithFeedback.
26
+ const im = c.iterationMeta ??
27
+ (c._iterationMetadata
28
+ ? {
29
+ currentIteration: c._iterationMetadata.iteration,
30
+ maxIterations: c._iterationMetadata.maxIterations,
31
+ priorRejections: c._iterationMetadata.priorFeedback,
32
+ }
33
+ : undefined);
34
+ const lines = [
35
+ `## Sprint Contract: \`${c.contractId ?? "unknown"}\``,
36
+ ``,
37
+ `**Feature:** ${c.feature ?? c.title ?? "(untitled)"}`,
38
+ ``,
39
+ `### Expected changes (${ec.length})`,
40
+ ...ec.map((e) => `- \`${e.path ?? "?"}\` (${e.action ?? "?"})`),
41
+ ``,
42
+ `### Success criteria (${sc.length}, first 5 shown)`,
43
+ ...sc.slice(0, 5).map((s) => `- **${s.criterionId ?? s.id ?? "?"}**: ${s.description ?? ""}`),
44
+ ``,
45
+ `### Depends on`,
46
+ ...(c.dependsOn ?? []).map((d) => `- \`${d}\``),
47
+ ];
48
+ // s12-c5: append prior-feedback section at iteration 2+.
49
+ if (im && im.currentIteration > 1 && im.priorRejections.length > 0) {
50
+ lines.push(``, `### Previous feedback (iteration ${im.currentIteration} of ${im.maxIterations})`);
51
+ for (const r of im.priorRejections) {
52
+ lines.push(`- _iteration ${r.iteration}:_ ${r.feedback}`);
53
+ }
54
+ }
55
+ return applyLineCap(lines.join("\n"), 200);
56
+ }
57
+ //# sourceMappingURL=sprint-contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sprint-contract.js","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/sprint-contract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAuC1C;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAiB;IACpD,MAAM,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAuB,CAAC;IACjD,MAAM,EAAE,GAAG,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC;IACnC,MAAM,EAAE,GAAG,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC;IAEnC,4EAA4E;IAC5E,0EAA0E;IAC1E,MAAM,EAAE,GACN,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,CAAC,kBAAkB;YACnB,CAAC,CAAC;gBACE,gBAAgB,EAAE,CAAC,CAAC,kBAAkB,CAAC,SAAS;gBAChD,aAAa,EAAE,CAAC,CAAC,kBAAkB,CAAC,aAAa;gBACjD,eAAe,EAAE,CAAC,CAAC,kBAAkB,CAAC,aAAa;aACpD;YACH,CAAC,CAAC,SAAS,CAAC,CAAC;IAEjB,MAAM,KAAK,GAAa;QACtB,yBAAyB,CAAC,CAAC,UAAU,IAAI,SAAS,IAAI;QACtD,EAAE;QACF,gBAAgB,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,IAAI,YAAY,EAAE;QACtD,EAAE;QACF,yBAAyB,EAAE,CAAC,MAAM,GAAG;QACrC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,CAAC,MAAM,IAAI,GAAG,GAAG,CAAC;QAC/D,EAAE;QACF,yBAAyB,EAAE,CAAC,MAAM,kBAAkB;QACpD,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CACnB,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,WAAW,IAAI,EAAE,EAAE,CACvE;QACD,EAAE;QACF,gBAAgB;QAChB,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;KAChD,CAAC;IAEF,yDAAyD;IACzD,IAAI,EAAE,IAAI,EAAE,CAAC,gBAAgB,GAAG,CAAC,IAAI,EAAE,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnE,KAAK,CAAC,IAAI,CACR,EAAE,EACF,oCAAoC,EAAE,CAAC,gBAAgB,OAAO,EAAE,CAAC,aAAa,GAAG,CAClF,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,eAAe,EAAE,CAAC;YACnC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Renderer for `sprint-summary` artifacts.
3
+ *
4
+ * Shows: contractId, title, evaluation result, passedOnIteration,
5
+ * files-changed count and list, commit. No hard line cap (typically small).
6
+ *
7
+ * Pure function — no I/O. Receives a compound artifact { contract, evaluation, generatorResult }.
8
+ *
9
+ * Sprint 11 — colocated in renderers/ per mechanisms/ precedent.
10
+ */
11
+ /**
12
+ * Render a `sprint-summary` artifact as markdown.
13
+ */
14
+ export declare function renderSprintSummary(artifact: unknown): string;
15
+ //# sourceMappingURL=sprint-summary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sprint-summary.d.ts","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/sprint-summary.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AA6BH;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CA0B7D"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Renderer for `sprint-summary` artifacts.
3
+ *
4
+ * Shows: contractId, title, evaluation result, passedOnIteration,
5
+ * files-changed count and list, commit. No hard line cap (typically small).
6
+ *
7
+ * Pure function — no I/O. Receives a compound artifact { contract, evaluation, generatorResult }.
8
+ *
9
+ * Sprint 11 — colocated in renderers/ per mechanisms/ precedent.
10
+ */
11
+ import { applyLineCap } from "./_util.js";
12
+ /**
13
+ * Render a `sprint-summary` artifact as markdown.
14
+ */
15
+ export function renderSprintSummary(artifact) {
16
+ const a = (artifact ?? {});
17
+ const contract = a.contract ?? {};
18
+ const evaluation = a.evaluation ?? {};
19
+ const generatorResult = a.generatorResult ?? {};
20
+ const overall = evaluation.overallResult ?? (evaluation.passed === true ? "pass" : evaluation.passed === false ? "fail" : "unknown");
21
+ const filesChanged = generatorResult.filesChanged ?? [];
22
+ const commit = generatorResult.commit ?? (generatorResult.commits?.[0] ?? "none");
23
+ const feature = contract.feature ?? contract.title ?? "(untitled)";
24
+ const lines = [
25
+ `## Sprint Summary: \`${contract.contractId ?? "unknown"}\``,
26
+ ``,
27
+ `**Feature:** ${feature}`,
28
+ `**Result:** **${overall.toUpperCase()}**`,
29
+ `**Iteration:** ${evaluation.passedOnIteration ?? "n/a"}`,
30
+ `**Commit:** \`${commit}\``,
31
+ ``,
32
+ `### Files changed (${filesChanged.length})`,
33
+ ...filesChanged.map((f) => `- \`${f.path ?? "?"}\` (${f.action ?? "?"})`),
34
+ ``,
35
+ ];
36
+ return applyLineCap(lines.join("\n"), 200);
37
+ }
38
+ //# sourceMappingURL=sprint-summary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sprint-summary.js","sourceRoot":"","sources":["../../../../src/orchestrator/checkpoints/renderers/sprint-summary.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA2B1C;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAiB;IACnD,MAAM,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAA0B,CAAC;IACpD,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC;IAClC,MAAM,UAAU,GAAG,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC;IACtC,MAAM,eAAe,GAAG,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC;IAEhD,MAAM,OAAO,GACX,UAAU,CAAC,aAAa,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACvH,MAAM,YAAY,GAAG,eAAe,CAAC,YAAY,IAAI,EAAE,CAAC;IACxD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC;IAClF,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,KAAK,IAAI,YAAY,CAAC;IAEnE,MAAM,KAAK,GAAa;QACtB,wBAAwB,QAAQ,CAAC,UAAU,IAAI,SAAS,IAAI;QAC5D,EAAE;QACF,gBAAgB,OAAO,EAAE;QACzB,iBAAiB,OAAO,CAAC,WAAW,EAAE,IAAI;QAC1C,kBAAkB,UAAU,CAAC,iBAAiB,IAAI,KAAK,EAAE;QACzD,iBAAiB,MAAM,IAAI;QAC3B,EAAE;QACF,sBAAsB,YAAY,CAAC,MAAM,GAAG;QAC5C,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,CAAC,MAAM,IAAI,GAAG,GAAG,CAAC;QACzE,EAAE;KACH,CAAC;IAEF,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC"}
@@ -0,0 +1,22 @@
1
+ import type { CheckpointId } from "./types.js";
2
+ /**
3
+ * Static enumeration of all checkpoint sites the orchestrator invokes.
4
+ * Each entry documents WHICH artifact the site surfaces (matches the
5
+ * variable name in scope at pipeline.ts at that location).
6
+ *
7
+ * Adding a new site requires: (a) add the literal to CheckpointId in types.ts,
8
+ * (b) add the row here with file:line + artifact description, (c) add the
9
+ * one-line `await getCheckpointMechanism(...).request(id, artifact)` to
10
+ * pipeline.ts at the documented location.
11
+ */
12
+ export interface CheckpointSite {
13
+ id: CheckpointId;
14
+ /** When the site fires, in plain English. */
15
+ when: string;
16
+ /** What artifact (variable + type) is surfaced. */
17
+ artifact: string;
18
+ /** Pipeline.ts location for traceability (file:line at sprint authoring time). */
19
+ pipelineLocation: string;
20
+ }
21
+ export declare const CHECKPOINT_SITES: readonly CheckpointSite[];
22
+ //# sourceMappingURL=sites.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sites.d.ts","sourceRoot":"","sources":["../../../src/orchestrator/checkpoints/sites.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C;;;;;;;;;GASG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,YAAY,CAAC;IACjB,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,gBAAgB,EAAE,SAAS,cAAc,EAuD5C,CAAC"}
@@ -0,0 +1,57 @@
1
+ export const CHECKPOINT_SITES = [
2
+ {
3
+ id: "post-research",
4
+ when: "After researcher finalizes .bober/research/<id>-research.md",
5
+ artifact: "researchDoc: ResearchDoc (full findings, filesExplored, questionsAnswered)",
6
+ pipelineLocation: "src/orchestrator/pipeline.ts:~479",
7
+ },
8
+ {
9
+ id: "post-plan",
10
+ when: "After planner produces and saveSpec()-s a PlanSpec",
11
+ artifact: "spec: PlanSpec (full features[] tree)",
12
+ pipelineLocation: "src/orchestrator/pipeline.ts:~614",
13
+ },
14
+ {
15
+ id: "post-sprint-contract",
16
+ when: "After all sprint contracts are auto-generated and saveContract()-d",
17
+ artifact: "contracts: SprintContract[]",
18
+ pipelineLocation: "src/orchestrator/pipeline.ts:~643",
19
+ },
20
+ {
21
+ id: "pre-curator",
22
+ when: "Just before runCurator() is spawned inside runSprintCycle",
23
+ artifact: "{ contract: SprintContract, spec: PlanSpec, completedContracts: SprintContract[] }",
24
+ pipelineLocation: "src/orchestrator/pipeline.ts:~139",
25
+ },
26
+ {
27
+ id: "pre-generator",
28
+ when: "Just before runGenerator() is spawned (per iteration)",
29
+ artifact: "{ contract: SprintContract, iteration: number, handoff: ContextHandoff }",
30
+ pipelineLocation: "src/orchestrator/pipeline.ts:~233",
31
+ },
32
+ {
33
+ id: "pre-evaluator",
34
+ when: "Just before runEvaluatorAgent() is spawned (per iteration)",
35
+ artifact: "{ contract: SprintContract, iteration: number, generatorResult: GeneratorResult }",
36
+ pipelineLocation: "src/orchestrator/pipeline.ts:~295",
37
+ },
38
+ {
39
+ id: "pre-code-reviewer",
40
+ when: "Inside `if (evaluation.passed && reviewEnabled)`, before runCodeReviewer Promise.race",
41
+ artifact: "{ contract: SprintContract, evaluation: EvaluationRunResult }",
42
+ pipelineLocation: "src/orchestrator/pipeline.ts:~351",
43
+ },
44
+ {
45
+ id: "post-sprint",
46
+ when: "Sprint passed branch, just before `return { contract, evaluation, generatorResult }`",
47
+ artifact: "{ contract, evaluation, generatorResult }",
48
+ pipelineLocation: "src/orchestrator/pipeline.ts:~385",
49
+ },
50
+ {
51
+ id: "end-of-pipeline",
52
+ when: "After pipeline-complete history event, just before final return",
53
+ artifact: "{ success, completedSprints, failedSprints, duration, spec } (PipelineResult shape)",
54
+ pipelineLocation: "src/orchestrator/pipeline.ts:~703",
55
+ },
56
+ ];
57
+ //# sourceMappingURL=sites.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sites.js","sourceRoot":"","sources":["../../../src/orchestrator/checkpoints/sites.ts"],"names":[],"mappings":"AAsBA,MAAM,CAAC,MAAM,gBAAgB,GAA8B;IACzD;QACE,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,6DAA6D;QACnE,QAAQ,EAAE,4EAA4E;QACtF,gBAAgB,EAAE,mCAAmC;KACtD;IACD;QACE,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,oDAAoD;QAC1D,QAAQ,EAAE,uCAAuC;QACjD,gBAAgB,EAAE,mCAAmC;KACtD;IACD;QACE,EAAE,EAAE,sBAAsB;QAC1B,IAAI,EAAE,oEAAoE;QAC1E,QAAQ,EAAE,6BAA6B;QACvC,gBAAgB,EAAE,mCAAmC;KACtD;IACD;QACE,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,2DAA2D;QACjE,QAAQ,EAAE,oFAAoF;QAC9F,gBAAgB,EAAE,mCAAmC;KACtD;IACD;QACE,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,uDAAuD;QAC7D,QAAQ,EAAE,0EAA0E;QACpF,gBAAgB,EAAE,mCAAmC;KACtD;IACD;QACE,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,4DAA4D;QAClE,QAAQ,EAAE,mFAAmF;QAC7F,gBAAgB,EAAE,mCAAmC;KACtD;IACD;QACE,EAAE,EAAE,mBAAmB;QACvB,IAAI,EAAE,uFAAuF;QAC7F,QAAQ,EAAE,+DAA+D;QACzE,gBAAgB,EAAE,mCAAmC;KACtD;IACD;QACE,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,sFAAsF;QAC5F,QAAQ,EAAE,2CAA2C;QACrD,gBAAgB,EAAE,mCAAmC;KACtD;IACD;QACE,EAAE,EAAE,iBAAiB;QACrB,IAAI,EAAE,iEAAiE;QACvE,QAAQ,EAAE,qFAAqF;QAC/F,gBAAgB,EAAE,mCAAmC;KACtD;CACO,CAAC"}