vgxness 1.20.4 → 1.20.6

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 (375) hide show
  1. package/dist/adapters/claude/agent-renderer.js +82 -0
  2. package/dist/{mcp → adapters/claude/install}/claude-code-agent-config.js +64 -9
  3. package/dist/{mcp → adapters/claude/install}/claude-code-config.js +28 -6
  4. package/dist/{mcp → adapters/claude/install}/claude-code-project-memory.js +35 -5
  5. package/dist/{mcp → adapters/claude/install}/claude-code-scope.js +12 -3
  6. package/dist/{mcp → adapters/claude/install}/claude-code-user-config.js +26 -5
  7. package/dist/{mcp → adapters/claude/install}/claude-code-user-memory.js +47 -7
  8. package/dist/{mcp → adapters/claude/install}/client-install-claude-code-contract.js +45 -8
  9. package/dist/{mcp → adapters/claude/install}/client-install-claude-code.js +98 -14
  10. package/dist/adapters/json/agent-renderer.js +104 -0
  11. package/dist/adapters/opencode/agent-renderer.js +113 -0
  12. package/dist/{mcp → adapters/opencode/install}/client-install-opencode-contract.js +2 -2
  13. package/dist/{mcp → adapters/opencode/install}/client-install-opencode.js +1 -1
  14. package/dist/{mcp → adapters/opencode/install}/opencode-default-agent-config.js +2 -2
  15. package/dist/{mcp → adapters/opencode/install}/opencode-handoff-preview.js +60 -7
  16. package/dist/{mcp → adapters/opencode/install}/opencode-visibility.js +1 -1
  17. package/dist/adapters/provider-renderer.js +6 -0
  18. package/dist/agents/agent-activation-service.js +1 -263
  19. package/dist/agents/agent-lookup-contexts.js +1 -28
  20. package/dist/agents/agent-registry-service.js +1 -81
  21. package/dist/agents/agent-resolver.js +1 -287
  22. package/dist/agents/agent-seed-service.js +1 -157
  23. package/dist/agents/agent-seed-upgrade-service.js +1 -231
  24. package/dist/agents/agent-selector-resolver.js +1 -28
  25. package/dist/agents/boot-upgrade.js +1 -59
  26. package/dist/agents/canonical-agent-manifest.js +1 -245
  27. package/dist/agents/canonical-agent-projection.js +1 -236
  28. package/dist/agents/manager-profile-overlay-service.js +1 -60
  29. package/dist/agents/profile-model-routing.js +1 -30
  30. package/dist/agents/renderers/claude-renderer.js +1 -82
  31. package/dist/agents/renderers/index.js +1 -14
  32. package/dist/agents/renderers/json-renderer.js +1 -104
  33. package/dist/agents/renderers/opencode-renderer.js +1 -113
  34. package/dist/agents/renderers/provider-adapter.js +1 -6
  35. package/dist/agents/repositories/agent-seed-history.js +1 -128
  36. package/dist/agents/repositories/agents.js +1 -200
  37. package/dist/agents/repositories/manager-profile-overlays.js +1 -90
  38. package/dist/agents/schema.js +1 -1
  39. package/dist/application/agents/agent-activation-service.js +261 -0
  40. package/dist/application/agents/agent-lookup-contexts.js +28 -0
  41. package/dist/application/agents/agent-registry-service.js +81 -0
  42. package/dist/application/agents/agent-resolver.js +287 -0
  43. package/dist/application/agents/agent-seed-service.js +157 -0
  44. package/dist/application/agents/agent-seed-upgrade-service.js +231 -0
  45. package/dist/application/agents/agent-selector-resolver.js +28 -0
  46. package/dist/application/agents/boot-upgrade.js +59 -0
  47. package/dist/application/agents/canonical-agent-projection.js +236 -0
  48. package/dist/application/agents/manager-profile-overlay-service.js +68 -0
  49. package/dist/application/agents/profile-model-routing.js +30 -0
  50. package/dist/application/agents/renderers/claude-renderer.js +1 -0
  51. package/dist/application/agents/renderers/index.js +14 -0
  52. package/dist/application/agents/renderers/json-renderer.js +1 -0
  53. package/dist/application/agents/renderers/opencode-renderer.js +1 -0
  54. package/dist/application/agents/renderers/provider-adapter.js +1 -0
  55. package/dist/application/memory/active-work-preview.js +75 -0
  56. package/dist/application/memory/agent-memory-capture-service.js +498 -0
  57. package/dist/application/memory/import/dry-run-planner.js +58 -0
  58. package/dist/application/memory/import/index.js +3 -0
  59. package/dist/application/memory/import/observation-writer.js +226 -0
  60. package/dist/application/memory/import/package.js +179 -0
  61. package/dist/application/memory/memory-service.js +202 -0
  62. package/dist/application/memory/search.js +11 -0
  63. package/dist/{mcp → application/provider-setup}/provider-change-plan.js +74 -13
  64. package/dist/{mcp → application/provider-setup}/provider-doctor.js +201 -31
  65. package/dist/{mcp → application/provider-setup}/provider-health-types.js +1 -1
  66. package/dist/{mcp → application/provider-setup}/provider-status.js +170 -33
  67. package/dist/application/runs/execution-planning.js +180 -0
  68. package/dist/application/runs/operation-execution.js +1 -0
  69. package/dist/application/runs/operation-retry.js +129 -0
  70. package/dist/application/runs/resume-after-approval-result.js +88 -0
  71. package/dist/application/runs/run-insights.js +270 -0
  72. package/dist/application/runs/run-service.js +1480 -0
  73. package/dist/application/runs/run-snapshot-export-service.js +31 -0
  74. package/dist/application/runs/sandbox-process-execution.js +244 -0
  75. package/dist/application/runs/sandbox-worktree-planning.js +59 -0
  76. package/dist/application/runs/task-scoped-command-grant-service.js +224 -0
  77. package/dist/application/sdd/artifact-portability-service.js +137 -0
  78. package/dist/application/sdd/cockpit-read-model.js +195 -0
  79. package/dist/application/sdd/sdd-continuation-plan.js +265 -0
  80. package/dist/application/sdd/sdd-workflow-service.js +892 -0
  81. package/dist/application/skills/boot-seed.js +42 -0
  82. package/dist/application/skills/personal-skills.js +41 -0
  83. package/dist/application/skills/skill-export-service.js +34 -0
  84. package/dist/application/skills/skill-index-service.js +126 -0
  85. package/dist/application/skills/skill-payload.js +186 -0
  86. package/dist/application/skills/skill-registry-service.js +648 -0
  87. package/dist/application/skills/skill-resolver.js +368 -0
  88. package/dist/application/skills/skill-seed-service.js +242 -0
  89. package/dist/application/skills/skill-status-service.js +147 -0
  90. package/dist/cli/bun-bin.js +0 -0
  91. package/dist/cli/cli-flags.js +1 -387
  92. package/dist/cli/cli-help.js +1 -173
  93. package/dist/cli/cli-helpers.js +1 -77
  94. package/dist/cli/cli-types.js +1 -1
  95. package/dist/cli/commands/agent-skill-dispatcher.js +1 -700
  96. package/dist/cli/commands/index.js +1 -9
  97. package/dist/cli/commands/interactive-entrypoint-dispatcher.js +1 -14
  98. package/dist/cli/commands/mcp-dispatcher.js +1 -232
  99. package/dist/cli/commands/memory-sdd-dispatcher.js +1 -367
  100. package/dist/cli/commands/run-permission-dispatcher.js +1 -455
  101. package/dist/cli/commands/setup-dispatcher.js +1 -496
  102. package/dist/cli/commands/status-dispatcher.js +1 -130
  103. package/dist/cli/commands/verification-dispatcher.js +1 -47
  104. package/dist/cli/commands/workflow-dispatcher.js +1 -566
  105. package/dist/cli/dispatcher.js +1 -247
  106. package/dist/cli/doctor-renderer.js +1 -26
  107. package/dist/cli/home-tui-app.js +1 -411
  108. package/dist/cli/home-tui-controller.js +1 -314
  109. package/dist/cli/mcp-start-path.js +1 -21
  110. package/dist/cli/product-resume-renderer.js +1 -32
  111. package/dist/cli/product-status-renderer.js +1 -81
  112. package/dist/cli/sdd-renderer.js +1 -247
  113. package/dist/cli/setup-plan-renderer.js +1 -79
  114. package/dist/cli/setup-status-renderer.js +1 -50
  115. package/dist/cli/setup-tui-app.js +1 -130
  116. package/dist/cli/setup-tui-controller.js +1 -89
  117. package/dist/cli/tui/focus-reducer.js +1 -0
  118. package/dist/cli/tui/focus-types.js +1 -0
  119. package/dist/cli/tui/ink/app-shell.js +1 -0
  120. package/dist/cli/tui/ink/components.js +1 -38
  121. package/dist/cli/tui/ink/help-overlay.js +1 -0
  122. package/dist/cli/tui/ink/state-components.js +1 -0
  123. package/dist/cli/tui/ink/theme.js +1 -36
  124. package/dist/cli/tui/key-intents.js +1 -0
  125. package/dist/cli/tui/keymap.js +1 -20
  126. package/dist/cli/tui/navigation.js +1 -10
  127. package/dist/cli/tui/screen-registry.js +1 -0
  128. package/dist/cli/tui/terminal-capabilities.js +1 -12
  129. package/dist/cli/tui/tui-types.js +1 -1
  130. package/dist/cli/tui/visual/badges.js +1 -19
  131. package/dist/cli/tui/visual/footer.js +1 -27
  132. package/dist/cli/tui/visual/index.js +1 -3
  133. package/dist/cli/tui/visual/viewport.js +1 -11
  134. package/dist/cli/tui-render-helpers.js +1 -200
  135. package/dist/cli/verification-plan-renderer.js +1 -25
  136. package/dist/cli/verification-report-renderer.js +1 -19
  137. package/dist/domain/agents/canonical-agent-manifest.js +355 -0
  138. package/dist/domain/agents/schema.js +1 -0
  139. package/dist/domain/memory/active-work-topics.js +64 -0
  140. package/dist/domain/memory/memory-capture-schema.js +1 -0
  141. package/dist/domain/memory/schema.js +1 -0
  142. package/dist/domain/runs/schema.js +5 -0
  143. package/dist/domain/sdd/cockpit-types.js +1 -0
  144. package/dist/domain/sdd/schema.js +111 -0
  145. package/dist/domain/skills/schema.js +1 -0
  146. package/dist/governance/risk-classifier.js +2 -0
  147. package/dist/interfaces/cli/bun-bin.js +46 -0
  148. package/dist/interfaces/cli/cli-flags.js +391 -0
  149. package/dist/interfaces/cli/cli-help.js +173 -0
  150. package/dist/interfaces/cli/cli-helpers.js +77 -0
  151. package/dist/interfaces/cli/cli-types.js +1 -0
  152. package/dist/interfaces/cli/commands/agent-skill-dispatcher.js +700 -0
  153. package/dist/interfaces/cli/commands/index.js +9 -0
  154. package/dist/interfaces/cli/commands/interactive-entrypoint-dispatcher.js +14 -0
  155. package/dist/interfaces/cli/commands/mcp-dispatcher.js +252 -0
  156. package/dist/interfaces/cli/commands/memory-sdd-dispatcher.js +367 -0
  157. package/dist/interfaces/cli/commands/run-permission-dispatcher.js +460 -0
  158. package/dist/interfaces/cli/commands/setup-dispatcher.js +496 -0
  159. package/dist/interfaces/cli/commands/status-dispatcher.js +130 -0
  160. package/dist/interfaces/cli/commands/verification-dispatcher.js +47 -0
  161. package/dist/interfaces/cli/commands/workflow-dispatcher.js +566 -0
  162. package/dist/interfaces/cli/dispatcher.js +247 -0
  163. package/dist/interfaces/cli/doctor-renderer.js +26 -0
  164. package/dist/interfaces/cli/home-tui-app.js +462 -0
  165. package/dist/interfaces/cli/home-tui-controller.js +341 -0
  166. package/dist/interfaces/cli/index.js +27 -0
  167. package/dist/interfaces/cli/mcp-start-path.js +21 -0
  168. package/dist/interfaces/cli/product-resume-renderer.js +32 -0
  169. package/dist/interfaces/cli/product-status-renderer.js +81 -0
  170. package/dist/interfaces/cli/sdd-renderer.js +247 -0
  171. package/dist/interfaces/cli/setup-plan-renderer.js +79 -0
  172. package/dist/interfaces/cli/setup-status-renderer.js +50 -0
  173. package/dist/interfaces/cli/setup-tui-app.js +135 -0
  174. package/dist/interfaces/cli/setup-tui-controller.js +89 -0
  175. package/dist/interfaces/cli/tui/focus-reducer.js +60 -0
  176. package/dist/interfaces/cli/tui/focus-types.js +10 -0
  177. package/dist/interfaces/cli/tui/ink/app-shell.js +16 -0
  178. package/dist/interfaces/cli/tui/ink/components.js +38 -0
  179. package/dist/interfaces/cli/tui/ink/help-overlay.js +6 -0
  180. package/dist/interfaces/cli/tui/ink/state-components.js +22 -0
  181. package/dist/interfaces/cli/tui/ink/theme.js +36 -0
  182. package/dist/interfaces/cli/tui/key-intents.js +33 -0
  183. package/dist/interfaces/cli/tui/keymap.js +20 -0
  184. package/dist/interfaces/cli/tui/navigation.js +10 -0
  185. package/dist/interfaces/cli/tui/screen-registry.js +43 -0
  186. package/dist/interfaces/cli/tui/terminal-capabilities.js +12 -0
  187. package/dist/interfaces/cli/tui/tui-types.js +1 -0
  188. package/dist/interfaces/cli/tui/visual/badges.js +19 -0
  189. package/dist/interfaces/cli/tui/visual/footer.js +27 -0
  190. package/dist/interfaces/cli/tui/visual/index.js +3 -0
  191. package/dist/interfaces/cli/tui/visual/viewport.js +11 -0
  192. package/dist/interfaces/cli/tui-render-helpers.js +200 -0
  193. package/dist/interfaces/cli/verification-plan-renderer.js +25 -0
  194. package/dist/interfaces/cli/verification-report-renderer.js +19 -0
  195. package/dist/interfaces/mcp/contracts/agents.js +1 -0
  196. package/dist/interfaces/mcp/contracts/context.js +1 -0
  197. package/dist/interfaces/mcp/contracts/governance.js +1 -0
  198. package/dist/interfaces/mcp/contracts/index.js +1 -0
  199. package/dist/interfaces/mcp/contracts/memory.js +1 -0
  200. package/dist/interfaces/mcp/contracts/providers.js +1 -0
  201. package/dist/interfaces/mcp/contracts/runs.js +1 -0
  202. package/dist/interfaces/mcp/contracts/sdd.js +1 -0
  203. package/dist/interfaces/mcp/contracts/sessions.js +1 -0
  204. package/dist/interfaces/mcp/contracts/skills.js +1 -0
  205. package/dist/interfaces/mcp/contracts/verification.js +1 -0
  206. package/dist/interfaces/mcp/control-plane/handlers/agents.js +38 -0
  207. package/dist/interfaces/mcp/control-plane/handlers/context.js +12 -0
  208. package/dist/interfaces/mcp/control-plane/handlers/memory.js +95 -0
  209. package/dist/interfaces/mcp/control-plane/handlers/providers.js +19 -0
  210. package/dist/interfaces/mcp/control-plane/handlers/runs.js +134 -0
  211. package/dist/interfaces/mcp/control-plane/handlers/sdd.js +225 -0
  212. package/dist/interfaces/mcp/control-plane/handlers/sessions.js +39 -0
  213. package/dist/interfaces/mcp/control-plane/handlers/skills.js +82 -0
  214. package/dist/interfaces/mcp/control-plane/handlers/verification.js +11 -0
  215. package/dist/interfaces/mcp/control-plane/types.js +1 -0
  216. package/dist/interfaces/mcp/control-plane.js +235 -0
  217. package/dist/interfaces/mcp/schema.js +174 -0
  218. package/dist/interfaces/mcp/schemas/common.js +121 -0
  219. package/dist/interfaces/mcp/schemas/inputs/agents.js +69 -0
  220. package/dist/interfaces/mcp/schemas/inputs/context.js +32 -0
  221. package/dist/interfaces/mcp/schemas/inputs/governance.js +23 -0
  222. package/dist/interfaces/mcp/schemas/inputs/index.js +10 -0
  223. package/dist/interfaces/mcp/schemas/inputs/memory.js +50 -0
  224. package/dist/interfaces/mcp/schemas/inputs/providers.js +35 -0
  225. package/dist/interfaces/mcp/schemas/inputs/runs.js +146 -0
  226. package/dist/interfaces/mcp/schemas/inputs/sdd.js +102 -0
  227. package/dist/interfaces/mcp/schemas/inputs/sessions.js +32 -0
  228. package/dist/interfaces/mcp/schemas/inputs/skills.js +231 -0
  229. package/dist/interfaces/mcp/schemas/inputs/verification.js +9 -0
  230. package/dist/interfaces/mcp/schemas/outputs/index.js +2 -0
  231. package/dist/interfaces/mcp/schemas/outputs/providers.js +28 -0
  232. package/dist/interfaces/mcp/schemas/outputs/sdd.js +166 -0
  233. package/dist/interfaces/mcp/stdio-server.js +116 -0
  234. package/dist/interfaces/mcp/validation/agents.js +189 -0
  235. package/dist/interfaces/mcp/validation/common.js +415 -0
  236. package/dist/interfaces/mcp/validation/governance.js +50 -0
  237. package/dist/interfaces/mcp/validation/memory.js +133 -0
  238. package/dist/interfaces/mcp/validation/providers.js +94 -0
  239. package/dist/interfaces/mcp/validation/runs.js +514 -0
  240. package/dist/interfaces/mcp/validation/sdd.js +247 -0
  241. package/dist/interfaces/mcp/validation/sessions.js +51 -0
  242. package/dist/interfaces/mcp/validation/skills.js +685 -0
  243. package/dist/interfaces/mcp/validation/verification.js +24 -0
  244. package/dist/interfaces/mcp/validation.js +149 -0
  245. package/dist/mcp/control-plane-snapshot-service.js +65 -2
  246. package/dist/mcp/control-plane.js +1 -646
  247. package/dist/mcp/doctor.js +1 -1
  248. package/dist/mcp/index.js +17 -17
  249. package/dist/mcp/schema.js +1 -1072
  250. package/dist/mcp/stdio-server.js +1 -116
  251. package/dist/mcp/validation.js +1 -2239
  252. package/dist/memory/active-work-preview.js +1 -75
  253. package/dist/memory/active-work-topics.js +1 -64
  254. package/dist/memory/agent-memory-capture-service.js +1 -497
  255. package/dist/memory/import/dry-run-planner.js +1 -58
  256. package/dist/memory/import/index.js +1 -3
  257. package/dist/memory/import/observation-writer.js +1 -226
  258. package/dist/memory/import/package.js +1 -179
  259. package/dist/memory/memory-capture-schema.js +1 -1
  260. package/dist/memory/memory-service.js +1 -201
  261. package/dist/memory/repositories/artifacts.js +1 -67
  262. package/dist/memory/repositories/observations.js +1 -217
  263. package/dist/memory/repositories/sessions.js +1 -125
  264. package/dist/memory/repositories/traces.js +1 -78
  265. package/dist/memory/schema.js +1 -1
  266. package/dist/memory/search.js +1 -11
  267. package/dist/memory/sqlite/database.js +1 -228
  268. package/dist/memory/storage-paths.js +1 -72
  269. package/dist/payload/context-budget-policy.js +10 -0
  270. package/dist/payload/context-budget-service.js +26 -0
  271. package/dist/payload/payload-diagnostics.js +50 -0
  272. package/dist/permissions/explicit-request-authorization.js +126 -0
  273. package/dist/permissions/policy-evaluator.js +54 -14
  274. package/dist/runs/execution-planning.js +1 -178
  275. package/dist/runs/operation-execution.js +1 -1
  276. package/dist/runs/operation-retry.js +1 -129
  277. package/dist/runs/repositories/runs.js +1 -676
  278. package/dist/runs/repositories/task-scoped-command-grants.js +1 -462
  279. package/dist/runs/resume-after-approval-result.js +1 -84
  280. package/dist/runs/run-insights.js +1 -270
  281. package/dist/runs/run-service.js +1 -1439
  282. package/dist/runs/run-snapshot-export-service.js +1 -31
  283. package/dist/runs/sandbox-process-execution.js +1 -240
  284. package/dist/runs/sandbox-worktree-planning.js +1 -59
  285. package/dist/runs/schema.js +1 -5
  286. package/dist/runs/task-scoped-command-grant-service.js +1 -216
  287. package/dist/sdd/artifact-portability-service.js +1 -137
  288. package/dist/sdd/cockpit-read-model.js +1 -195
  289. package/dist/sdd/cockpit-types.js +1 -1
  290. package/dist/sdd/schema.js +1 -111
  291. package/dist/sdd/sdd-continuation-plan.js +1 -265
  292. package/dist/sdd/sdd-workflow-service.js +1 -822
  293. package/dist/setup/providers/claude-setup-adapter.js +11 -4
  294. package/dist/setup/providers/opencode-setup-adapter.js +10 -7
  295. package/dist/setup/setup-plan.js +20 -7
  296. package/dist/skills/boot-seed.js +1 -42
  297. package/dist/skills/personal-skills.js +1 -41
  298. package/dist/skills/repositories/skill-evaluation-requests.js +1 -190
  299. package/dist/skills/repositories/skill-evaluation-scenarios.js +1 -305
  300. package/dist/skills/repositories/skill-improvement-proposals.js +1 -355
  301. package/dist/skills/repositories/skills.js +1 -1077
  302. package/dist/skills/schema.js +1 -1
  303. package/dist/skills/skill-export-service.js +1 -34
  304. package/dist/skills/skill-index-service.js +1 -126
  305. package/dist/skills/skill-payload.js +1 -186
  306. package/dist/skills/skill-registry-service.js +1 -644
  307. package/dist/skills/skill-resolver.js +1 -368
  308. package/dist/skills/skill-seed-service.js +1 -242
  309. package/dist/skills/skill-status-service.js +1 -147
  310. package/dist/storage/agents/repositories/agent-seed-history.js +128 -0
  311. package/dist/storage/agents/repositories/agents.js +200 -0
  312. package/dist/storage/agents/repositories/manager-profile-overlays.js +90 -0
  313. package/dist/storage/memory/repositories/artifacts.js +67 -0
  314. package/dist/storage/memory/repositories/observations.js +217 -0
  315. package/dist/storage/memory/repositories/sessions.js +125 -0
  316. package/dist/storage/memory/repositories/traces.js +78 -0
  317. package/dist/storage/memory/sqlite/database.js +228 -0
  318. package/dist/storage/memory/storage-paths.js +72 -0
  319. package/dist/storage/runs/repositories/runs.js +676 -0
  320. package/dist/storage/runs/repositories/task-scoped-command-grants.js +464 -0
  321. package/dist/storage/skills/repositories/skill-evaluation-requests.js +190 -0
  322. package/dist/storage/skills/repositories/skill-evaluation-scenarios.js +305 -0
  323. package/dist/storage/skills/repositories/skill-improvement-proposals.js +355 -0
  324. package/dist/storage/skills/repositories/skills.js +1084 -0
  325. package/docs/architecture.md +2 -2
  326. package/docs/glossary.md +1 -1
  327. package/docs/mcp.md +1 -1
  328. package/docs/module-boundaries.md +114 -0
  329. package/docs/prd.md +1 -1
  330. package/docs/project-health-audit-v1.10.x.md +1 -1
  331. package/docs/providers.md +2 -2
  332. package/docs/safety.md +3 -3
  333. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/apply-progress.md +122 -0
  334. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/archive-report.md +61 -0
  335. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/design.md +66 -0
  336. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/proposal.md +79 -0
  337. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/spec.md +67 -0
  338. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/tasks.md +63 -0
  339. package/docs/sdd/archive/2026-06-26-ambitious-structure-reorganization/verify-report.md +71 -0
  340. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/apply-progress.md +68 -0
  341. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/archive-report.md +61 -0
  342. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/design.md +43 -0
  343. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/proposal.md +61 -0
  344. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/spec.md +31 -0
  345. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/tasks.md +27 -0
  346. package/docs/sdd/archive/2026-06-26-legacy-facade-cleanup/verify-report.md +58 -0
  347. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/apply-progress.md +65 -0
  348. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/archive-report.md +53 -0
  349. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/design.md +64 -0
  350. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/proposal.md +62 -0
  351. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/spec.md +51 -0
  352. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/tasks.md +50 -0
  353. package/docs/sdd/archive/2026-06-26-provider-install-adapter-boundary/verify-report.md +66 -0
  354. package/docs/storage.md +2 -2
  355. package/package.json +2 -2
  356. /package/dist/{mcp → adapters/claude/install}/claude-code-cli.js +0 -0
  357. /package/dist/{memory → storage/memory}/sqlite/migrations/001_initial.sql +0 -0
  358. /package/dist/{memory → storage/memory}/sqlite/migrations/002_observation_revisions.sql +0 -0
  359. /package/dist/{memory → storage/memory}/sqlite/migrations/003_agent_registry.sql +0 -0
  360. /package/dist/{memory → storage/memory}/sqlite/migrations/004_run_runtime.sql +0 -0
  361. /package/dist/{memory → storage/memory}/sqlite/migrations/005_run_approvals.sql +0 -0
  362. /package/dist/{memory → storage/memory}/sqlite/migrations/006_run_operation_attempts.sql +0 -0
  363. /package/dist/{memory → storage/memory}/sqlite/migrations/007_abandoned_operation_attempts.sql +0 -0
  364. /package/dist/{memory → storage/memory}/sqlite/migrations/008_run_execution_plan_events.sql +0 -0
  365. /package/dist/{memory → storage/memory}/sqlite/migrations/009_multiple_operation_attempts.sql +0 -0
  366. /package/dist/{memory → storage/memory}/sqlite/migrations/010_skill_registry.sql +0 -0
  367. /package/dist/{memory → storage/memory}/sqlite/migrations/011_skill_usage_resolution_outcomes.sql +0 -0
  368. /package/dist/{memory → storage/memory}/sqlite/migrations/012_skill_improvement_proposals.sql +0 -0
  369. /package/dist/{memory → storage/memory}/sqlite/migrations/013_skill_evaluation_scenarios.sql +0 -0
  370. /package/dist/{memory → storage/memory}/sqlite/migrations/014_manager_profile_overlays.sql +0 -0
  371. /package/dist/{memory → storage/memory}/sqlite/migrations/015_artifact_metadata.sql +0 -0
  372. /package/dist/{memory → storage/memory}/sqlite/migrations/016_agent_seed_history.sql +0 -0
  373. /package/dist/{memory → storage/memory}/sqlite/migrations/017_intent_signal_skill_targets.sql +0 -0
  374. /package/dist/{memory → storage/memory}/sqlite/migrations/018_skill_system_v2.sql +0 -0
  375. /package/dist/{memory → storage/memory}/sqlite/migrations/019_task_scoped_command_grants.sql +0 -0
@@ -1,270 +1 @@
1
- const insightSafety = {
2
- executableResume: false,
3
- executorInvoked: false,
4
- operationExecuted: false,
5
- writesProviderConfig: false,
6
- createsSandbox: false,
7
- createsWorktree: false,
8
- };
9
- export function buildRunInsights(run) {
10
- const resumePlan = buildResumePlan(run);
11
- return {
12
- runId: run.id,
13
- timeline: buildTimeline(run),
14
- debug: buildDebugSummary(run),
15
- resumePlan,
16
- safety: insightSafety,
17
- };
18
- }
19
- export function buildRunOperatorResumePlan(run) {
20
- const insights = buildRunInsights(run);
21
- const pendingApprovals = run.approvals.filter((approval) => approval.status === 'pending');
22
- const activeAttempts = run.operationAttempts.filter((attempt) => attempt.status === 'reserved');
23
- const failedAttempts = run.operationAttempts.filter((attempt) => attempt.status === 'failed');
24
- return {
25
- run: {
26
- id: run.id,
27
- project: run.project,
28
- status: run.status,
29
- ...(run.outcome === undefined ? {} : { outcome: run.outcome }),
30
- ...(run.outcomeReason === undefined ? {} : { outcomeReason: run.outcomeReason }),
31
- workflow: run.workflow,
32
- phase: run.phase,
33
- },
34
- debug: insights.debug,
35
- resumePlan: insights.resumePlan,
36
- latestCheckpoint: insights.resumePlan.latestCheckpoint ?? null,
37
- blockers: insights.resumePlan.blockers,
38
- pendingApprovals,
39
- activeAttempts,
40
- failedAttempts,
41
- manualNextCommands: buildManualNextCommands(run.id, insights.resumePlan.latestCheckpoint?.id, pendingApprovals),
42
- evidenceReferences: buildEvidenceReferences(run.id, insights.resumePlan.latestCheckpoint?.id, pendingApprovals, activeAttempts, failedAttempts, insights.debug),
43
- safety: insightSafety,
44
- };
45
- }
46
- function buildTimeline(run) {
47
- const entries = [
48
- {
49
- id: `${run.id}:created`,
50
- type: 'run-created',
51
- timestamp: run.createdAt,
52
- order: 0,
53
- sourceOrder: 0,
54
- label: 'Run created',
55
- evidence: { runId: run.id, status: run.status },
56
- },
57
- ];
58
- for (const event of run.events)
59
- entries.push({
60
- id: event.id,
61
- type: 'event',
62
- timestamp: event.createdAt,
63
- order: 0,
64
- sourceOrder: event.sequence,
65
- label: event.title,
66
- evidence: { kind: event.kind, payload: event.payload },
67
- });
68
- for (const checkpoint of run.checkpoints)
69
- entries.push({
70
- id: checkpoint.id,
71
- type: 'checkpoint',
72
- timestamp: checkpoint.createdAt,
73
- order: 0,
74
- sourceOrder: checkpoint.sequence,
75
- label: `Checkpoint: ${checkpoint.label}`,
76
- evidence: { checkpointId: checkpoint.id, sequence: checkpoint.sequence, state: checkpoint.state },
77
- });
78
- for (const approval of run.approvals)
79
- entries.push({
80
- id: approval.id,
81
- type: 'approval',
82
- timestamp: approval.resolvedAt ?? approval.requestedAt,
83
- order: 0,
84
- sourceOrder: 0,
85
- label: `Approval ${approval.status}`,
86
- evidence: approvalEvidence(approval),
87
- });
88
- for (const attempt of run.operationAttempts)
89
- entries.push({
90
- id: attempt.id,
91
- type: 'operation-attempt',
92
- timestamp: attempt.completedAt ?? attempt.updatedAt,
93
- order: 0,
94
- sourceOrder: attempt.attemptSequence,
95
- label: `Operation ${attempt.status}: ${attempt.category} ${attempt.operation}`,
96
- evidence: attemptEvidence(attempt),
97
- });
98
- if (run.outcome !== undefined || isTerminal(run.status))
99
- entries.push({
100
- id: `${run.id}:outcome`,
101
- type: 'outcome',
102
- timestamp: run.completedAt ?? latestTimestamp(entries, run.updatedAt),
103
- order: 0,
104
- sourceOrder: Number.MAX_SAFE_INTEGER,
105
- label: `Run ${run.status}`,
106
- evidence: { status: run.status, outcome: run.outcome ?? null, outcomeReason: run.outcomeReason ?? null },
107
- });
108
- return entries
109
- .sort((left, right) => left.timestamp.localeCompare(right.timestamp) ||
110
- typeRank(left.type) - typeRank(right.type) ||
111
- left.sourceOrder - right.sourceOrder ||
112
- left.id.localeCompare(right.id))
113
- .map(({ sourceOrder: _sourceOrder, ...entry }, order) => ({ ...entry, order }));
114
- }
115
- function buildDebugSummary(run) {
116
- const evidence = [];
117
- if (run.outcomeReason !== undefined)
118
- evidence.push({ source: 'outcome', message: run.outcomeReason });
119
- for (const attempt of run.operationAttempts.filter((item) => item.status === 'failed')) {
120
- evidence.push({
121
- source: 'operation-attempt',
122
- relatedId: attempt.id,
123
- message: `Failed attempt ${attempt.category} ${attempt.operation}: ${readErrorMessage(attempt.error)}`,
124
- });
125
- }
126
- if (run.operationAttempts.some((attempt) => attempt.status === 'failed'))
127
- return {
128
- cause: 'operation-failed',
129
- summary: 'A recorded operation attempt failed. Treat this as the likely cause, not proof of root cause.',
130
- evidence,
131
- recommendedAction: 'Inspect the failed operation evidence, fix the underlying issue, then consider a manual restart from the latest safe checkpoint.',
132
- };
133
- if (run.approvals.some((approval) => approval.status === 'pending'))
134
- return {
135
- cause: 'pending-approval',
136
- summary: 'The run is waiting on recorded human approval.',
137
- evidence: pendingApprovalEvidence(run),
138
- recommendedAction: 'Resolve the pending approval or inspect debug details before retrying.',
139
- };
140
- if (run.status === 'blocked')
141
- return {
142
- cause: 'blocked',
143
- summary: 'The run is blocked by recorded status or outcome evidence.',
144
- evidence: evidence.length === 0 ? [{ source: 'status', message: 'Run status is blocked' }] : evidence,
145
- recommendedAction: 'Inspect blockers and resolve the recorded constraint before starting another run.',
146
- };
147
- if (run.status === 'completed')
148
- return {
149
- cause: 'completed',
150
- summary: 'The run completed successfully.',
151
- evidence: evidence.length === 0 ? [{ source: 'status', message: 'Run status is completed' }] : evidence,
152
- recommendedAction: 'No resume action is recommended for a completed run.',
153
- };
154
- if (!isTerminal(run.status))
155
- return {
156
- cause: 'still-running',
157
- summary: 'The run has not reached a terminal outcome yet.',
158
- evidence: [{ source: 'status', message: `Run status is ${run.status}` }],
159
- recommendedAction: 'Wait for the run to finish or inspect live run events.',
160
- };
161
- return {
162
- cause: 'insufficient-evidence',
163
- summary: 'The run stopped without enough recorded evidence to classify a cause.',
164
- evidence,
165
- recommendedAction: 'Inspect the timeline and raw recorded details before deciding on a manual restart.',
166
- };
167
- }
168
- function buildResumePlan(run) {
169
- const latestCheckpoint = findLatestCheckpoint(run);
170
- const blockers = [];
171
- if (latestCheckpoint === undefined)
172
- blockers.push({ code: 'no-checkpoint', message: 'No recorded checkpoint is available for manual resume consideration.' });
173
- for (const approval of run.approvals.filter((item) => item.status === 'pending'))
174
- blockers.push({ code: 'pending-approval', message: 'A pending approval must be resolved first.', relatedId: approval.id });
175
- for (const attempt of run.operationAttempts.filter((item) => item.status === 'reserved'))
176
- blockers.push({ code: 'active-attempt', message: 'An active reserved operation attempt is already in progress.', relatedId: attempt.id });
177
- if (!isTerminal(run.status))
178
- blockers.push({ code: 'run-still-active', message: `Run status is ${run.status}; wait for a stopped state before resume planning.` });
179
- if (run.status === 'completed')
180
- blockers.push({ code: 'already-completed', message: 'Completed runs do not need resume.' });
181
- if (run.status === 'blocked')
182
- blockers.push({ code: 'blocked-run', message: 'Blocked runs require inspection before manual resume consideration.' });
183
- const plan = {
184
- resumable: blockers.length === 0,
185
- executable: false,
186
- blockers,
187
- recommendedAction: blockers.length === 0
188
- ? 'Review the latest safe checkpoint and manually decide whether to start a new run from that state.'
189
- : 'Resolve blockers or inspect debug details before considering a manual restart.',
190
- };
191
- if (latestCheckpoint !== undefined)
192
- plan.latestCheckpoint = {
193
- id: latestCheckpoint.id,
194
- label: latestCheckpoint.label,
195
- sequence: latestCheckpoint.sequence,
196
- createdAt: latestCheckpoint.createdAt,
197
- state: latestCheckpoint.state,
198
- };
199
- return plan;
200
- }
201
- function findLatestCheckpoint(run) {
202
- const byId = run.latestCheckpointId === undefined ? undefined : run.checkpoints.find((checkpoint) => checkpoint.id === run.latestCheckpointId);
203
- return byId ?? [...run.checkpoints].sort((left, right) => right.sequence - left.sequence || right.createdAt.localeCompare(left.createdAt))[0];
204
- }
205
- function approvalEvidence(approval) {
206
- return {
207
- approvalId: approval.id,
208
- status: approval.status,
209
- decisionEventId: approval.decisionEventId,
210
- resolvedBy: approval.resolvedBy ?? null,
211
- resolutionReason: approval.resolutionReason ?? null,
212
- };
213
- }
214
- function attemptEvidence(attempt) {
215
- return {
216
- attemptId: attempt.id,
217
- status: attempt.status,
218
- category: attempt.category,
219
- operation: attempt.operation,
220
- operationMetadata: attempt.operationMetadata,
221
- output: attempt.output ?? null,
222
- error: attempt.error ?? null,
223
- };
224
- }
225
- function pendingApprovalEvidence(run) {
226
- return run.approvals
227
- .filter((approval) => approval.status === 'pending')
228
- .map((approval) => ({ source: 'approval', relatedId: approval.id, message: 'Approval is pending' }));
229
- }
230
- function buildManualNextCommands(runId, checkpointId, pendingApprovals) {
231
- return [
232
- `vgxness runs get --id ${runId}`,
233
- `vgxness runs timeline --id ${runId}`,
234
- `vgxness runs debug --id ${runId}`,
235
- `vgxness runs resume-plan --id ${runId}`,
236
- ...manualApprovalCommands(runId, pendingApprovals),
237
- checkpointId === undefined
238
- ? 'No checkpoint is recorded; inspect the run details before deciding on manual recovery.'
239
- : `Review checkpoint ${checkpointId} manually before starting any new run.`,
240
- ];
241
- }
242
- function manualApprovalCommands(runId, pendingApprovals) {
243
- if (pendingApprovals.length === 0)
244
- return [];
245
- return [`vgxness runs approvals --run ${runId}`, ...pendingApprovals.map((approval) => `vgxness runs retry-check --approval ${approval.id}`)];
246
- }
247
- function buildEvidenceReferences(runId, checkpointId, pendingApprovals, activeAttempts, failedAttempts, debug) {
248
- return [
249
- `run:${runId}`,
250
- ...(checkpointId === undefined ? [] : [`checkpoint:${checkpointId}`]),
251
- ...pendingApprovals.map((approval) => `approval:${approval.id}`),
252
- ...activeAttempts.map((attempt) => `attempt:${attempt.id}`),
253
- ...failedAttempts.map((attempt) => `attempt:${attempt.id}`),
254
- ...debug.evidence.map((item) => `debug:${item.relatedId ?? item.message}`),
255
- ];
256
- }
257
- function readErrorMessage(error) {
258
- return typeof error === 'object' && error !== null && !Array.isArray(error) && typeof error.message === 'string'
259
- ? error.message
260
- : 'recorded error unavailable';
261
- }
262
- function isTerminal(status) {
263
- return status === 'completed' || status === 'failed' || status === 'blocked' || status === 'cancelled';
264
- }
265
- function typeRank(type) {
266
- return ['run-created', 'checkpoint', 'approval', 'operation-attempt', 'event', 'outcome'].indexOf(type);
267
- }
268
- function latestTimestamp(entries, fallback) {
269
- return entries.reduce((latest, entry) => (entry.timestamp > latest ? entry.timestamp : latest), fallback);
270
- }
1
+ export * from '../application/runs/run-insights.js';