@treeseed/sdk 0.10.28 → 0.12.4

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 (509) hide show
  1. package/README.md +213 -7
  2. package/dist/agent-capacity.d.ts +916 -0
  3. package/dist/agent-capacity.js +1600 -0
  4. package/dist/agent-tools.d.ts +37 -0
  5. package/dist/agent-tools.js +301 -0
  6. package/dist/api/app.d.ts +1 -1
  7. package/dist/api/auth/d1-database.d.ts +2 -2
  8. package/dist/api/auth/d1-provider.d.ts +4 -4
  9. package/dist/api/auth/d1-store.d.ts +2 -2
  10. package/dist/api/auth/memory-provider.d.ts +1 -1
  11. package/dist/api/auth/tokens.d.ts +1 -1
  12. package/dist/api/config.d.ts +3 -1
  13. package/dist/api/config.js +34 -10
  14. package/dist/api/http.d.ts +2 -2
  15. package/dist/api/index.d.ts +10 -10
  16. package/dist/api/index.js +4 -2
  17. package/dist/api/operations-routes.d.ts +3 -3
  18. package/dist/api/operations.d.ts +1 -1
  19. package/dist/api/providers.d.ts +1 -1
  20. package/dist/api/providers.js +21 -4
  21. package/dist/api/railway.d.ts +3 -2
  22. package/dist/api/sdk-dispatch.d.ts +4 -4
  23. package/dist/api/sdk-routes.d.ts +2 -2
  24. package/dist/api/templates.d.ts +2 -2
  25. package/dist/api/types.d.ts +3 -2
  26. package/dist/capacity-provider.d.ts +118 -59
  27. package/dist/capacity-provider.js +235 -43
  28. package/dist/capacity.d.ts +2 -2
  29. package/dist/cli-tools.d.ts +1 -1
  30. package/dist/content-operations.d.ts +97 -0
  31. package/dist/content-operations.js +250 -0
  32. package/dist/content-store.d.ts +4 -4
  33. package/dist/control-plane-client.d.ts +13 -18
  34. package/dist/control-plane-client.js +8 -86
  35. package/dist/control-plane.d.ts +3 -2
  36. package/dist/control-plane.js +38 -13
  37. package/dist/copilot.d.ts +3 -0
  38. package/dist/copilot.js +16 -1
  39. package/dist/d1-http.d.ts +1 -1
  40. package/dist/d1-store.d.ts +32 -57
  41. package/dist/d1-store.js +115 -318
  42. package/dist/db/d1.d.ts +1 -232
  43. package/dist/db/index.d.ts +3 -3
  44. package/dist/db/market-schema.d.ts +50900 -11018
  45. package/dist/db/market-schema.js +2313 -467
  46. package/dist/db/node-sqlite.d.ts +1 -232
  47. package/dist/db/node-sqlite.js +7 -2
  48. package/dist/db/schema.d.ts +0 -462
  49. package/dist/db/schema.js +2 -22
  50. package/dist/dispatch.d.ts +1 -1
  51. package/dist/dispatch.js +0 -11
  52. package/dist/fixture-support.js +52 -4
  53. package/dist/governance.d.ts +133 -0
  54. package/dist/governance.js +285 -0
  55. package/dist/graph/build.d.ts +2 -2
  56. package/dist/graph/context-query-contracts.d.ts +1 -1
  57. package/dist/graph/dsl.d.ts +1 -1
  58. package/dist/graph/query.d.ts +4 -4
  59. package/dist/graph/ranking.d.ts +1 -1
  60. package/dist/graph/schema.d.ts +1 -1
  61. package/dist/graph.d.ts +11 -11
  62. package/dist/guarantees/index.d.ts +425 -0
  63. package/dist/guarantees/index.js +1146 -0
  64. package/dist/hosting/apps.d.ts +12 -0
  65. package/dist/hosting/apps.js +107 -0
  66. package/dist/hosting/builtins.d.ts +25 -0
  67. package/dist/hosting/builtins.js +602 -0
  68. package/dist/hosting/contracts.d.ts +208 -0
  69. package/dist/hosting/contracts.js +0 -0
  70. package/dist/hosting/graph.d.ts +195 -0
  71. package/dist/hosting/graph.js +1092 -0
  72. package/dist/hosting/index.d.ts +4 -0
  73. package/dist/hosting/index.js +4 -0
  74. package/dist/index.d.ts +88 -67
  75. package/dist/index.js +142 -14
  76. package/dist/local-dev/managed-dev.d.ts +85 -0
  77. package/dist/local-dev/managed-dev.js +368 -0
  78. package/dist/managed-dependencies.d.ts +9 -0
  79. package/dist/managed-dependencies.js +10 -9
  80. package/dist/market-client.d.ts +327 -9
  81. package/dist/market-client.js +464 -20
  82. package/dist/model-registry.d.ts +1 -1
  83. package/dist/model-registry.js +19 -19
  84. package/dist/operations/agent-tools.d.ts +2 -11
  85. package/dist/operations/agent-tools.js +2 -14
  86. package/dist/operations/providers/default.d.ts +1 -1
  87. package/dist/operations/providers/default.js +20 -37
  88. package/dist/operations/repository-operations.d.ts +26 -2
  89. package/dist/operations/repository-operations.js +159 -1
  90. package/dist/operations/runtime.d.ts +3 -3
  91. package/dist/operations/services/bootstrap-runner.d.ts +4 -2
  92. package/dist/operations/services/bootstrap-runner.js +22 -2
  93. package/dist/operations/services/build-warning-policy.d.ts +34 -0
  94. package/dist/operations/services/build-warning-policy.js +81 -82
  95. package/dist/operations/services/commit-message-provider.js +4 -4
  96. package/dist/operations/services/config-runtime.d.ts +83 -24
  97. package/dist/operations/services/config-runtime.js +449 -130
  98. package/dist/operations/services/deploy.d.ts +106 -624
  99. package/dist/operations/services/deploy.js +746 -263
  100. package/dist/operations/services/deployment-readiness.d.ts +30 -0
  101. package/dist/operations/services/deployment-readiness.js +206 -0
  102. package/dist/operations/services/git-remote-policy.js +12 -4
  103. package/dist/operations/services/git-runner.d.ts +66 -0
  104. package/dist/operations/services/git-runner.js +479 -0
  105. package/dist/operations/services/git-workflow.d.ts +45 -6
  106. package/dist/operations/services/git-workflow.js +251 -23
  107. package/dist/operations/services/github-actions-verification.d.ts +4 -1
  108. package/dist/operations/services/github-actions-verification.js +12 -3
  109. package/dist/operations/services/github-api.js +22 -6
  110. package/dist/operations/services/github-automation.d.ts +4 -4
  111. package/dist/operations/services/github-automation.js +19 -21
  112. package/dist/operations/services/github-credentials.d.ts +13 -0
  113. package/dist/operations/services/github-credentials.js +59 -0
  114. package/dist/operations/services/hosted-service-checks.d.ts +81 -0
  115. package/dist/operations/services/hosted-service-checks.js +478 -0
  116. package/dist/operations/services/hosting-audit.d.ts +2 -2
  117. package/dist/operations/services/hosting-audit.js +7 -7
  118. package/dist/operations/services/hub-launch.d.ts +1 -1
  119. package/dist/operations/services/hub-provider-launch.d.ts +5 -5
  120. package/dist/operations/services/hub-provider-launch.js +22 -17
  121. package/dist/operations/services/live-hosted-service-checks.d.ts +26 -0
  122. package/dist/operations/services/live-hosted-service-checks.js +463 -0
  123. package/dist/operations/services/local-dev.js +0 -1
  124. package/dist/operations/services/managed-host-security.d.ts +1 -1
  125. package/dist/operations/services/managed-host-security.js +1 -1
  126. package/dist/operations/services/managed-repositories.d.ts +37 -0
  127. package/dist/operations/services/managed-repositories.js +177 -0
  128. package/dist/operations/services/operations-runner-smoke.d.ts +31 -0
  129. package/dist/operations/services/operations-runner-smoke.js +198 -0
  130. package/dist/operations/services/package-adapters.d.ts +170 -0
  131. package/dist/operations/services/package-adapters.js +859 -0
  132. package/dist/operations/services/package-reference-policy.d.ts +13 -88
  133. package/dist/operations/services/package-reference-policy.js +96 -215
  134. package/dist/operations/services/project-host-operations.d.ts +4 -4
  135. package/dist/operations/services/project-platform.d.ts +57 -173
  136. package/dist/operations/services/project-platform.js +80 -111
  137. package/dist/operations/services/project-web-monitor.d.ts +2 -2
  138. package/dist/operations/services/project-web-monitor.js +122 -5
  139. package/dist/operations/services/railway-api.d.ts +117 -5
  140. package/dist/operations/services/railway-api.js +915 -93
  141. package/dist/operations/services/railway-deploy.d.ts +30 -112
  142. package/dist/operations/services/railway-deploy.js +521 -961
  143. package/dist/operations/services/release-history.js +3 -4
  144. package/dist/operations/services/release-proof-ledger.d.ts +13 -0
  145. package/dist/operations/services/release-proof-ledger.js +81 -0
  146. package/dist/operations/services/release-proof-planner.d.ts +48 -0
  147. package/dist/operations/services/release-proof-planner.js +195 -0
  148. package/dist/operations/services/release-proof-runner.d.ts +16 -0
  149. package/dist/operations/services/release-proof-runner.js +169 -0
  150. package/dist/operations/services/release-proof.d.ts +81 -0
  151. package/dist/operations/services/release-proof.js +79 -0
  152. package/dist/operations/services/repository-save-orchestrator.d.ts +8 -7
  153. package/dist/operations/services/repository-save-orchestrator.js +604 -212
  154. package/dist/operations/services/runtime-paths.d.ts +1 -3
  155. package/dist/operations/services/runtime-paths.js +0 -4
  156. package/dist/operations/services/runtime-tools.d.ts +1 -191
  157. package/dist/operations/services/runtime-tools.js +4 -443
  158. package/dist/operations/services/save-deploy-preflight.js +9 -1
  159. package/dist/operations/services/template-host-bindings.d.ts +2 -2
  160. package/dist/operations/services/template-host-bindings.js +3 -2
  161. package/dist/operations/services/template-registry.d.ts +6 -6
  162. package/dist/operations/services/template-registry.js +33 -14
  163. package/dist/operations/services/template-secret-sync.d.ts +3 -3
  164. package/dist/operations/services/verification-cache.d.ts +25 -0
  165. package/dist/operations/services/verification-cache.js +71 -0
  166. package/dist/operations/services/workflow-timing.d.ts +25 -0
  167. package/dist/operations/services/workflow-timing.js +79 -0
  168. package/dist/operations/services/workspace-dependency-mode.js +50 -5
  169. package/dist/operations/services/workspace-preflight.js +8 -8
  170. package/dist/operations/services/workspace-save-script.d.ts +4 -4
  171. package/dist/operations/services/workspace-save.d.ts +1 -0
  172. package/dist/operations/services/workspace-save.js +42 -19
  173. package/dist/operations/services/workspace-tools.js +42 -7
  174. package/dist/operations-registry.d.ts +1 -1
  175. package/dist/operations-registry.js +5 -6
  176. package/dist/operations-types.d.ts +1 -1
  177. package/dist/operations.d.ts +17 -11
  178. package/dist/operations.js +57 -3
  179. package/dist/platform/book-export.js +2 -0
  180. package/dist/platform/books-data.d.ts +1 -1
  181. package/dist/platform/config.d.ts +27 -0
  182. package/dist/platform/config.js +100 -0
  183. package/dist/platform/content-runtime-source.d.ts +54 -0
  184. package/dist/platform/content-runtime-source.js +169 -0
  185. package/dist/platform/contracts.d.ts +38 -2
  186. package/dist/platform/deploy-config.d.ts +1 -1
  187. package/dist/platform/deploy-config.js +80 -9
  188. package/dist/platform/deploy-runtime.d.ts +1 -1
  189. package/dist/platform/desired-state.d.ts +63 -0
  190. package/dist/platform/desired-state.js +1021 -0
  191. package/dist/platform/env.yaml +568 -45
  192. package/dist/platform/environment.d.ts +3 -2
  193. package/dist/platform/environment.js +122 -21
  194. package/dist/platform/local-content-materialization.d.ts +9 -0
  195. package/dist/platform/local-content-materialization.js +212 -0
  196. package/dist/platform/plugin.d.ts +13 -4
  197. package/dist/platform/plugins/runtime.d.ts +3 -3
  198. package/dist/platform/plugins/runtime.js +62 -1
  199. package/dist/platform/plugins.d.ts +6 -6
  200. package/dist/platform/published-content-pipeline.d.ts +3 -3
  201. package/dist/platform/published-content-pipeline.js +5 -1
  202. package/dist/platform/published-content.d.ts +4 -3
  203. package/dist/platform/site-config-schema.d.ts +1 -0
  204. package/dist/platform/site-config-schema.js +4 -1
  205. package/dist/platform/tenant/runtime-config.d.ts +152 -2
  206. package/dist/platform/tenant-config.d.ts +1 -1
  207. package/dist/platform/utils/site-config-schema.d.ts +154 -0
  208. package/dist/platform/utils/site-config-schema.js +400 -461
  209. package/dist/platform-operation-store.d.ts +1 -1
  210. package/dist/platform-operation-store.js +2 -2
  211. package/dist/platform-operations.js +1 -1
  212. package/dist/plugin-default.d.ts +1 -1
  213. package/dist/plugin-default.js +27 -12
  214. package/dist/project-import.d.ts +91 -0
  215. package/dist/project-import.js +257 -0
  216. package/dist/project-workflow.d.ts +1 -1
  217. package/dist/reconcile/bootstrap-systems.d.ts +2 -2
  218. package/dist/reconcile/bootstrap-systems.js +5 -5
  219. package/dist/reconcile/builtin-adapters.d.ts +7 -1
  220. package/dist/reconcile/builtin-adapters.js +3190 -429
  221. package/dist/reconcile/contracts.d.ts +23 -6
  222. package/dist/reconcile/desired-state.d.ts +2 -192
  223. package/dist/reconcile/desired-state.js +29 -38
  224. package/dist/reconcile/engine.d.ts +61 -395
  225. package/dist/reconcile/engine.js +229 -44
  226. package/dist/reconcile/index.d.ts +10 -8
  227. package/dist/reconcile/index.js +2 -0
  228. package/dist/reconcile/live-acceptance.d.ts +100 -0
  229. package/dist/reconcile/live-acceptance.js +2027 -0
  230. package/dist/reconcile/platform.d.ts +104 -0
  231. package/dist/reconcile/platform.js +100 -0
  232. package/dist/reconcile/providers/docker-private.d.ts +54 -0
  233. package/dist/reconcile/providers/docker-private.js +101 -0
  234. package/dist/reconcile/providers/github-private.d.ts +65 -0
  235. package/dist/reconcile/providers/github-private.js +119 -0
  236. package/dist/reconcile/providers/local-private.d.ts +28 -0
  237. package/dist/reconcile/providers/local-private.js +75 -0
  238. package/dist/reconcile/providers/railway-iac.d.ts +66 -0
  239. package/dist/reconcile/providers/railway-iac.js +275 -0
  240. package/dist/reconcile/providers/release-private.d.ts +92 -0
  241. package/dist/reconcile/providers/release-private.js +152 -0
  242. package/dist/reconcile/registry.d.ts +2 -2
  243. package/dist/reconcile/registry.js +16 -1
  244. package/dist/reconcile/state.d.ts +1 -1
  245. package/dist/reconcile/state.js +7 -44
  246. package/dist/reconcile/units.d.ts +1 -1
  247. package/dist/reconcile/units.js +9 -3
  248. package/dist/remote.d.ts +6 -6
  249. package/dist/scenes/artifacts.d.ts +16 -0
  250. package/dist/scenes/artifacts.js +61 -0
  251. package/dist/scenes/auth.d.ts +2 -0
  252. package/dist/scenes/auth.js +28 -0
  253. package/dist/scenes/base-url.d.ts +12 -0
  254. package/dist/scenes/base-url.js +123 -0
  255. package/dist/scenes/builtin-plugins.d.ts +2 -0
  256. package/dist/scenes/builtin-plugins.js +447 -0
  257. package/dist/scenes/checkpoints.d.ts +14 -0
  258. package/dist/scenes/checkpoints.js +33 -0
  259. package/dist/scenes/device-matrix.d.ts +2 -0
  260. package/dist/scenes/device-matrix.js +97 -0
  261. package/dist/scenes/devices.d.ts +11 -0
  262. package/dist/scenes/devices.js +22 -0
  263. package/dist/scenes/diagnostics.d.ts +5 -0
  264. package/dist/scenes/diagnostics.js +22 -0
  265. package/dist/scenes/diagram-providers.d.ts +2 -0
  266. package/dist/scenes/diagram-providers.js +181 -0
  267. package/dist/scenes/diagram-validation.d.ts +22 -0
  268. package/dist/scenes/diagram-validation.js +74 -0
  269. package/dist/scenes/environment.d.ts +2 -0
  270. package/dist/scenes/environment.js +65 -0
  271. package/dist/scenes/evidence-bundle.d.ts +5 -0
  272. package/dist/scenes/evidence-bundle.js +42 -0
  273. package/dist/scenes/evidence-report.d.ts +10 -0
  274. package/dist/scenes/evidence-report.js +73 -0
  275. package/dist/scenes/evidence.d.ts +16 -0
  276. package/dist/scenes/evidence.js +277 -0
  277. package/dist/scenes/index.d.ts +48 -0
  278. package/dist/scenes/index.js +312 -0
  279. package/dist/scenes/inspect.d.ts +9 -0
  280. package/dist/scenes/inspect.js +64 -0
  281. package/dist/scenes/loader.d.ts +3 -0
  282. package/dist/scenes/loader.js +38 -0
  283. package/dist/scenes/logs.d.ts +2 -0
  284. package/dist/scenes/logs.js +47 -0
  285. package/dist/scenes/operations.d.ts +3 -0
  286. package/dist/scenes/operations.js +128 -0
  287. package/dist/scenes/phase0.d.ts +9 -0
  288. package/dist/scenes/phase0.js +637 -0
  289. package/dist/scenes/planner.d.ts +12 -0
  290. package/dist/scenes/planner.js +166 -0
  291. package/dist/scenes/playwright-adapter.d.ts +2 -0
  292. package/dist/scenes/playwright-adapter.js +63 -0
  293. package/dist/scenes/plugins.d.ts +5 -0
  294. package/dist/scenes/plugins.js +115 -0
  295. package/dist/scenes/progress.d.ts +17 -0
  296. package/dist/scenes/progress.js +24 -0
  297. package/dist/scenes/publish-destinations.d.ts +12 -0
  298. package/dist/scenes/publish-destinations.js +99 -0
  299. package/dist/scenes/publish-plan-report.d.ts +10 -0
  300. package/dist/scenes/publish-plan-report.js +70 -0
  301. package/dist/scenes/publish-plan.d.ts +15 -0
  302. package/dist/scenes/publish-plan.js +248 -0
  303. package/dist/scenes/publish-redaction.d.ts +16 -0
  304. package/dist/scenes/publish-redaction.js +148 -0
  305. package/dist/scenes/publish-release-record.d.ts +13 -0
  306. package/dist/scenes/publish-release-record.js +34 -0
  307. package/dist/scenes/publish-report.d.ts +10 -0
  308. package/dist/scenes/publish-report.js +67 -0
  309. package/dist/scenes/publish.d.ts +16 -0
  310. package/dist/scenes/publish.js +298 -0
  311. package/dist/scenes/registry.d.ts +12 -0
  312. package/dist/scenes/registry.js +65 -0
  313. package/dist/scenes/remotion-adapter.d.ts +3 -0
  314. package/dist/scenes/remotion-adapter.js +94 -0
  315. package/dist/scenes/remotion-composition-registry.d.ts +2 -0
  316. package/dist/scenes/remotion-composition-registry.js +12 -0
  317. package/dist/scenes/remotion-compositions.d.ts +15 -0
  318. package/dist/scenes/remotion-compositions.js +464 -0
  319. package/dist/scenes/remotion-diagrams.d.ts +9 -0
  320. package/dist/scenes/remotion-diagrams.js +188 -0
  321. package/dist/scenes/remotion-input.d.ts +13 -0
  322. package/dist/scenes/remotion-input.js +291 -0
  323. package/dist/scenes/remotion-visuals.d.ts +29 -0
  324. package/dist/scenes/remotion-visuals.js +198 -0
  325. package/dist/scenes/render-media-assets.d.ts +9 -0
  326. package/dist/scenes/render-media-assets.js +117 -0
  327. package/dist/scenes/render-report.d.ts +10 -0
  328. package/dist/scenes/render-report.js +27 -0
  329. package/dist/scenes/render.d.ts +2 -0
  330. package/dist/scenes/render.js +218 -0
  331. package/dist/scenes/reporter.d.ts +3 -0
  332. package/dist/scenes/reporter.js +101 -0
  333. package/dist/scenes/resume.d.ts +2 -0
  334. package/dist/scenes/resume.js +79 -0
  335. package/dist/scenes/runner.d.ts +2 -0
  336. package/dist/scenes/runner.js +674 -0
  337. package/dist/scenes/schema.d.ts +6 -0
  338. package/dist/scenes/schema.js +994 -0
  339. package/dist/scenes/seed.d.ts +2 -0
  340. package/dist/scenes/seed.js +83 -0
  341. package/dist/scenes/segments.d.ts +15 -0
  342. package/dist/scenes/segments.js +79 -0
  343. package/dist/scenes/selectors.d.ts +3 -0
  344. package/dist/scenes/selectors.js +21 -0
  345. package/dist/scenes/timeline.d.ts +11 -0
  346. package/dist/scenes/timeline.js +26 -0
  347. package/dist/scenes/timeouts.d.ts +6 -0
  348. package/dist/scenes/timeouts.js +17 -0
  349. package/dist/scenes/training-captions.d.ts +14 -0
  350. package/dist/scenes/training-captions.js +98 -0
  351. package/dist/scenes/training-report.d.ts +10 -0
  352. package/dist/scenes/training-report.js +78 -0
  353. package/dist/scenes/training-transcript.d.ts +24 -0
  354. package/dist/scenes/training-transcript.js +204 -0
  355. package/dist/scenes/training.d.ts +10 -0
  356. package/dist/scenes/training.js +134 -0
  357. package/dist/scenes/types.d.ts +1872 -0
  358. package/dist/scenes/types.js +8 -0
  359. package/dist/scenes/visual-audit-contact-sheets.d.ts +6 -0
  360. package/dist/scenes/visual-audit-contact-sheets.js +119 -0
  361. package/dist/scenes/visual-audit-fixtures.d.ts +25 -0
  362. package/dist/scenes/visual-audit-fixtures.js +210 -0
  363. package/dist/scenes/visual-audit-report.d.ts +11 -0
  364. package/dist/scenes/visual-audit-report.js +85 -0
  365. package/dist/scenes/visual-audit-review.d.ts +23 -0
  366. package/dist/scenes/visual-audit-review.js +829 -0
  367. package/dist/scenes/visual-audit-routes.d.ts +13 -0
  368. package/dist/scenes/visual-audit-routes.js +308 -0
  369. package/dist/scenes/visual-audit.d.ts +3 -0
  370. package/dist/scenes/visual-audit.js +596 -0
  371. package/dist/scripts/build-dist.js +154 -40
  372. package/dist/scripts/check-build-warnings.js +42 -53
  373. package/dist/scripts/cleanup-markdown.js +1 -1
  374. package/dist/scripts/cli-test-fixtures.js +24 -28
  375. package/dist/scripts/deployment-readiness.js +20 -0
  376. package/dist/scripts/generate-treedx-openapi-types.js +186 -0
  377. package/dist/scripts/migrate-journey-csv-to-guarantees.js +140 -0
  378. package/dist/scripts/operations-runner-smoke.js +16 -0
  379. package/dist/scripts/package-tools.js +12 -1
  380. package/dist/scripts/prepare.js +3 -7
  381. package/dist/scripts/release-verify.js +6 -6
  382. package/dist/scripts/run-fixture-astro-command.js +1 -1
  383. package/dist/scripts/template-catalog.test.js +68 -82
  384. package/dist/scripts/tenant-dev.js +0 -10
  385. package/dist/scripts/tenant-workflow-action.js +10 -1
  386. package/dist/scripts/test-cloudflare-local.js +1 -1
  387. package/dist/scripts/test-scaffold.js +0 -1
  388. package/dist/scripts/test-smoke.js +3 -3
  389. package/dist/scripts/treeseed-build-dist.js +4 -7
  390. package/dist/scripts/treeseed-release-verify.js +1 -1
  391. package/dist/scripts/verify-driver.js +30 -21
  392. package/dist/scripts/workflow-commands.test.js +18 -27
  393. package/dist/scripts/workspace-command-e2e.js +1 -1
  394. package/dist/scripts/workspace-lint.js +6 -0
  395. package/dist/scripts/workspace-release-test.js +90 -1
  396. package/dist/scripts/workspace-test.js +6 -0
  397. package/dist/sdk-dispatch.d.ts +1 -1
  398. package/dist/sdk-dispatch.js +0 -16
  399. package/dist/sdk-fields.d.ts +1 -1
  400. package/dist/sdk-filters.d.ts +1 -1
  401. package/dist/sdk-types.d.ts +1352 -116
  402. package/dist/sdk-types.js +413 -2
  403. package/dist/sdk.d.ts +106 -100
  404. package/dist/sdk.js +211 -51
  405. package/dist/secrets-capability.d.ts +421 -0
  406. package/dist/secrets-capability.js +530 -0
  407. package/dist/seeds/normalize.js +1 -0
  408. package/dist/seeds/planner.js +38 -0
  409. package/dist/seeds/schema.js +293 -4
  410. package/dist/seeds/types.d.ts +60 -0
  411. package/dist/seeds/types.js +9 -1
  412. package/dist/service-credentials.d.ts +54 -0
  413. package/dist/service-credentials.js +112 -0
  414. package/dist/stores/cursor-store.d.ts +2 -2
  415. package/dist/stores/envelopes.d.ts +1 -1
  416. package/dist/stores/helpers.d.ts +1 -1
  417. package/dist/stores/lease-store.d.ts +2 -2
  418. package/dist/stores/message-store.d.ts +2 -2
  419. package/dist/stores/operational-store.d.ts +3 -26
  420. package/dist/stores/operational-store.js +0 -225
  421. package/dist/stores/project-workflow-store.d.ts +2 -2
  422. package/dist/stores/run-store.d.ts +2 -3
  423. package/dist/stores/run-store.js +0 -98
  424. package/dist/stores/subscription-store.d.ts +2 -3
  425. package/dist/stores/subscription-store.js +0 -100
  426. package/dist/template-catalog.d.ts +1 -1
  427. package/dist/template-launch-requirements.d.ts +2 -2
  428. package/dist/template-launch-requirements.js +9 -0
  429. package/dist/template-launch-ui.d.ts +2 -2
  430. package/dist/treedx/adapters.d.ts +6 -0
  431. package/dist/treedx/adapters.js +36 -0
  432. package/dist/treedx/client.d.ts +222 -0
  433. package/dist/treedx/client.js +871 -0
  434. package/dist/treedx/errors.d.ts +13 -0
  435. package/dist/treedx/errors.js +17 -0
  436. package/dist/treedx/federated-client.d.ts +27 -0
  437. package/dist/treedx/federated-client.js +158 -0
  438. package/dist/treedx/generated/openapi-types.d.ts +3558 -0
  439. package/dist/treedx/generated/openapi-types.js +0 -0
  440. package/dist/treedx/graph-adapter.d.ts +33 -0
  441. package/dist/treedx/graph-adapter.js +156 -0
  442. package/dist/treedx/index.d.ts +14 -0
  443. package/dist/treedx/index.js +48 -0
  444. package/dist/treedx/market-integration.d.ts +27 -0
  445. package/dist/treedx/market-integration.js +131 -0
  446. package/dist/treedx/ports.d.ts +166 -0
  447. package/dist/treedx/ports.js +231 -0
  448. package/dist/treedx/query-adapter.d.ts +19 -0
  449. package/dist/treedx/query-adapter.js +62 -0
  450. package/dist/treedx/registry-client.d.ts +11 -0
  451. package/dist/treedx/registry-client.js +19 -0
  452. package/dist/treedx/repository-adapter.d.ts +45 -0
  453. package/dist/treedx/repository-adapter.js +319 -0
  454. package/dist/treedx/sdk-integration.d.ts +27 -0
  455. package/dist/treedx/sdk-integration.js +63 -0
  456. package/dist/treedx/types.d.ts +1084 -0
  457. package/dist/treedx/types.js +8 -0
  458. package/dist/treedx/workspace-adapter.d.ts +27 -0
  459. package/dist/treedx/workspace-adapter.js +65 -0
  460. package/dist/treedx-backends.d.ts +220 -0
  461. package/dist/treedx-backends.js +634 -0
  462. package/dist/treedx-client.d.ts +89 -0
  463. package/dist/treedx-client.js +184 -0
  464. package/dist/treeseed/services/compose.yml +2 -3
  465. package/dist/treeseed/template-catalog/catalog.fixture.json +27 -27
  466. package/dist/types/agents.d.ts +256 -0
  467. package/dist/types/agents.js +42 -1
  468. package/dist/verification.d.ts +1 -0
  469. package/dist/verification.js +143 -14
  470. package/dist/workflow/operations.d.ts +580 -523
  471. package/dist/workflow/operations.js +2084 -1279
  472. package/dist/workflow/policy.js +19 -7
  473. package/dist/workflow/runs.d.ts +9 -3
  474. package/dist/workflow/runs.js +66 -26
  475. package/dist/workflow/session.d.ts +4 -1
  476. package/dist/workflow/session.js +50 -10
  477. package/dist/workflow/worktrees.d.ts +6 -2
  478. package/dist/workflow/worktrees.js +98 -15
  479. package/dist/workflow-state.d.ts +17 -4
  480. package/dist/workflow-state.js +68 -41
  481. package/dist/workflow-support.d.ts +26 -17
  482. package/dist/workflow-support.js +84 -24
  483. package/dist/workflow.d.ts +51 -16
  484. package/dist/workflow.js +19 -7
  485. package/drizzle/d1/0000_treeseed_d1.sql +0 -18
  486. package/drizzle/market/0000_market_control_plane.sql +1793 -1499
  487. package/drizzle/market/0004_treedx_market_integration.sql +99 -0
  488. package/drizzle/market/0005_agent_capacity_coordination.sql +145 -0
  489. package/drizzle/market/0006_provider_assignment_lifecycle.sql +9 -0
  490. package/drizzle/market/0007_agent_architecture_gap_closure.sql +157 -0
  491. package/drizzle/market/0008_agent_capacity_operational_closure.sql +27 -0
  492. package/drizzle/market/0009_agent_capacity_runtime_hardening.sql +29 -0
  493. package/drizzle/market/0010_secrets_capability_persistence.sql +130 -0
  494. package/drizzle/market/0011_github_app_adapter.sql +47 -0
  495. package/drizzle/market/0012_workday_test_runs.sql +44 -0
  496. package/drizzle/market/0013_runtime_task_lifecycle.sql +39 -0
  497. package/drizzle/market/0014_governance_pipeline.sql +189 -0
  498. package/package.json +106 -18
  499. package/scripts/{verify-driver.mjs → verify-driver.ts} +19 -4
  500. package/templates/github/deploy-web.workflow.yml +49 -12
  501. package/dist/operations/services/mailpit-runtime.d.ts +0 -20
  502. package/dist/operations/services/mailpit-runtime.js +0 -67
  503. package/dist/operations/services/release-candidate.d.ts +0 -41
  504. package/dist/operations/services/release-candidate.js +0 -616
  505. package/dist/scripts/ensure-mailpit.js +0 -48
  506. package/dist/scripts/logs-mailpit.js +0 -2
  507. package/dist/scripts/run-ts.js +0 -45
  508. package/dist/scripts/stop-mailpit.js +0 -5
  509. package/dist/scripts/treeseed-run-ts.js +0 -45
@@ -0,0 +1,99 @@
1
+ CREATE TABLE IF NOT EXISTS "treedx_instances" (
2
+ "id" text PRIMARY KEY NOT NULL,
3
+ "team_id" text NOT NULL,
4
+ "kind" text NOT NULL,
5
+ "provider" text NOT NULL,
6
+ "name" text NOT NULL,
7
+ "base_url" text,
8
+ "registry_url" text,
9
+ "public_read" integer DEFAULT 0 NOT NULL,
10
+ "primary" integer DEFAULT 1 NOT NULL,
11
+ "status" text DEFAULT 'pending' NOT NULL,
12
+ "image_ref" text,
13
+ "railway_project_id" text,
14
+ "railway_service_id" text,
15
+ "railway_environment_id" text,
16
+ "volume_mount_path" text,
17
+ "metadata_json" text DEFAULT '{}' NOT NULL,
18
+ "created_at" text NOT NULL,
19
+ "updated_at" text NOT NULL
20
+ );
21
+
22
+ CREATE TABLE IF NOT EXISTS "treedx_project_libraries" (
23
+ "id" text PRIMARY KEY NOT NULL,
24
+ "team_id" text NOT NULL,
25
+ "project_id" text NOT NULL,
26
+ "instance_id" text NOT NULL,
27
+ "library_id" text NOT NULL,
28
+ "repository_id" text,
29
+ "content_path" text DEFAULT 'src/content' NOT NULL,
30
+ "content_repository_url" text,
31
+ "content_repository_default_branch" text,
32
+ "content_repository_ref" text,
33
+ "r2_bucket_name" text,
34
+ "r2_manifest_key" text,
35
+ "topology_json" text DEFAULT '{}' NOT NULL,
36
+ "metadata_json" text DEFAULT '{}' NOT NULL,
37
+ "created_at" text NOT NULL,
38
+ "updated_at" text NOT NULL
39
+ );
40
+
41
+ CREATE TABLE IF NOT EXISTS "treedx_mirrors" (
42
+ "id" text PRIMARY KEY NOT NULL,
43
+ "team_id" text NOT NULL,
44
+ "instance_id" text NOT NULL,
45
+ "name" text NOT NULL,
46
+ "direction" text DEFAULT 'bidirectional' NOT NULL,
47
+ "target_kind" text NOT NULL,
48
+ "target_url" text,
49
+ "status" text DEFAULT 'pending' NOT NULL,
50
+ "instructions" text,
51
+ "last_sync_at" text,
52
+ "last_sync_status" text,
53
+ "last_sync_metadata_json" text DEFAULT '{}' NOT NULL,
54
+ "metadata_json" text DEFAULT '{}' NOT NULL,
55
+ "created_at" text NOT NULL,
56
+ "updated_at" text NOT NULL
57
+ );
58
+
59
+ CREATE TABLE IF NOT EXISTS "treedx_shares" (
60
+ "id" text PRIMARY KEY NOT NULL,
61
+ "team_id" text NOT NULL,
62
+ "instance_id" text,
63
+ "project_id" text,
64
+ "library_id" text,
65
+ "scope" text NOT NULL,
66
+ "target_team_id" text,
67
+ "trust_grant_json" text DEFAULT '{}' NOT NULL,
68
+ "public_read" integer DEFAULT 0 NOT NULL,
69
+ "status" text DEFAULT 'active' NOT NULL,
70
+ "expires_at" text,
71
+ "metadata_json" text DEFAULT '{}' NOT NULL,
72
+ "created_at" text NOT NULL,
73
+ "updated_at" text NOT NULL,
74
+ "revoked_at" text
75
+ );
76
+
77
+ CREATE TABLE IF NOT EXISTS "treedx_deployments" (
78
+ "id" text PRIMARY KEY NOT NULL,
79
+ "team_id" text NOT NULL,
80
+ "instance_id" text,
81
+ "provider" text NOT NULL,
82
+ "status" text DEFAULT 'queued' NOT NULL,
83
+ "image_ref" text,
84
+ "volume_mount_path" text,
85
+ "service_refs_json" text DEFAULT '{}' NOT NULL,
86
+ "result_json" text DEFAULT '{}' NOT NULL,
87
+ "error_json" text,
88
+ "created_at" text NOT NULL,
89
+ "updated_at" text NOT NULL,
90
+ "completed_at" text
91
+ );
92
+
93
+ CREATE INDEX IF NOT EXISTS "idx_treedx_instances_team_status" ON "treedx_instances" USING btree ("team_id","status");
94
+ CREATE UNIQUE INDEX IF NOT EXISTS "idx_treedx_instances_one_active_primary" ON "treedx_instances" USING btree ("team_id") WHERE "primary" = 1 AND "status" = 'active';
95
+ CREATE UNIQUE INDEX IF NOT EXISTS "idx_treedx_project_libraries_project" ON "treedx_project_libraries" USING btree ("project_id");
96
+ CREATE INDEX IF NOT EXISTS "idx_treedx_project_libraries_instance" ON "treedx_project_libraries" USING btree ("instance_id");
97
+ CREATE INDEX IF NOT EXISTS "idx_treedx_mirrors_team_instance" ON "treedx_mirrors" USING btree ("team_id","instance_id");
98
+ CREATE INDEX IF NOT EXISTS "idx_treedx_shares_team_scope" ON "treedx_shares" USING btree ("team_id","scope","status");
99
+ CREATE INDEX IF NOT EXISTS "idx_treedx_deployments_team_instance" ON "treedx_deployments" USING btree ("team_id","instance_id","created_at");
@@ -0,0 +1,145 @@
1
+ CREATE TABLE IF NOT EXISTS "capacity_allocation_sets" (
2
+ "id" text PRIMARY KEY NOT NULL,
3
+ "team_id" text NOT NULL,
4
+ "version" text NOT NULL,
5
+ "status" text DEFAULT 'draft' NOT NULL,
6
+ "effective_from" text,
7
+ "effective_until" text,
8
+ "policy_json" text DEFAULT '{}' NOT NULL,
9
+ "slices_json" text DEFAULT '[]' NOT NULL,
10
+ "metadata_json" text DEFAULT '{}' NOT NULL,
11
+ "created_by_id" text,
12
+ "activated_at" text,
13
+ "superseded_by_id" text,
14
+ "created_at" text NOT NULL,
15
+ "updated_at" text NOT NULL
16
+ );
17
+ CREATE INDEX IF NOT EXISTS "idx_capacity_allocation_sets_team_status" ON "capacity_allocation_sets" ("team_id","status","version");
18
+ CREATE INDEX IF NOT EXISTS "idx_capacity_allocation_sets_team_created" ON "capacity_allocation_sets" ("team_id","created_at");
19
+
20
+ CREATE TABLE IF NOT EXISTS "project_agent_classes" (
21
+ "id" text PRIMARY KEY NOT NULL,
22
+ "team_id" text NOT NULL,
23
+ "project_id" text NOT NULL,
24
+ "slug" text NOT NULL,
25
+ "name" text NOT NULL,
26
+ "status" text DEFAULT 'active' NOT NULL,
27
+ "allowed_modes_json" text DEFAULT '[]' NOT NULL,
28
+ "required_capabilities_json" text DEFAULT '[]' NOT NULL,
29
+ "kernel_profile_json" text DEFAULT '{}' NOT NULL,
30
+ "kernel_policy_json" text DEFAULT '{}' NOT NULL,
31
+ "handler_refs_json" text DEFAULT '{}' NOT NULL,
32
+ "output_contracts_json" text DEFAULT '{}' NOT NULL,
33
+ "metadata_json" text DEFAULT '{}' NOT NULL,
34
+ "created_at" text NOT NULL,
35
+ "updated_at" text NOT NULL
36
+ );
37
+ CREATE UNIQUE INDEX IF NOT EXISTS "idx_project_agent_classes_project_slug" ON "project_agent_classes" ("project_id","slug");
38
+ CREATE INDEX IF NOT EXISTS "idx_project_agent_classes_team_project" ON "project_agent_classes" ("team_id","project_id","status");
39
+
40
+ CREATE TABLE IF NOT EXISTS "provider_availability_sessions" (
41
+ "id" text PRIMARY KEY NOT NULL,
42
+ "team_id" text NOT NULL,
43
+ "capacity_provider_id" text NOT NULL,
44
+ "registration_id" text,
45
+ "environment" text,
46
+ "status" text DEFAULT 'open' NOT NULL,
47
+ "checked_in_at" text NOT NULL,
48
+ "available_from" text,
49
+ "available_until" text,
50
+ "execution_providers_json" text DEFAULT '[]' NOT NULL,
51
+ "capabilities_json" text DEFAULT '[]' NOT NULL,
52
+ "grants_json" text DEFAULT '[]' NOT NULL,
53
+ "native_limits_json" text DEFAULT '{}' NOT NULL,
54
+ "runner_pressure_json" text DEFAULT '{}' NOT NULL,
55
+ "constraints_json" text DEFAULT '{}' NOT NULL,
56
+ "metadata_json" text DEFAULT '{}' NOT NULL,
57
+ "created_at" text NOT NULL,
58
+ "updated_at" text NOT NULL,
59
+ "closed_at" text
60
+ );
61
+ CREATE INDEX IF NOT EXISTS "idx_provider_availability_sessions_provider_status" ON "provider_availability_sessions" ("capacity_provider_id","status","checked_in_at");
62
+ CREATE INDEX IF NOT EXISTS "idx_provider_availability_sessions_team_status" ON "provider_availability_sessions" ("team_id","status","checked_in_at");
63
+
64
+ CREATE TABLE IF NOT EXISTS "provider_assignments" (
65
+ "id" text PRIMARY KEY NOT NULL,
66
+ "team_id" text NOT NULL,
67
+ "project_id" text NOT NULL,
68
+ "capacity_provider_id" text NOT NULL,
69
+ "provider_session_id" text,
70
+ "execution_provider_id" text,
71
+ "allocation_set_id" text,
72
+ "project_agent_class_id" text NOT NULL,
73
+ "reservation_id" text,
74
+ "work_day_id" text,
75
+ "task_id" text,
76
+ "mode" text NOT NULL,
77
+ "status" text DEFAULT 'pending' NOT NULL,
78
+ "lease_state" text DEFAULT 'unleased' NOT NULL,
79
+ "lease_expires_at" text,
80
+ "agent_id" text,
81
+ "handler_id" text,
82
+ "capacity_envelope_json" text DEFAULT '{}' NOT NULL,
83
+ "decision_input_json" text DEFAULT '{}' NOT NULL,
84
+ "workspace_context_json" text DEFAULT '{}' NOT NULL,
85
+ "allowed_outputs_json" text DEFAULT '{}' NOT NULL,
86
+ "explanation_json" text DEFAULT '{}' NOT NULL,
87
+ "attempt_count" integer DEFAULT 0 NOT NULL,
88
+ "assigned_at" text,
89
+ "claimed_at" text,
90
+ "completed_at" text,
91
+ "returned_at" text,
92
+ "failed_at" text,
93
+ "metadata_json" text DEFAULT '{}' NOT NULL,
94
+ "created_at" text NOT NULL,
95
+ "updated_at" text NOT NULL
96
+ );
97
+ CREATE INDEX IF NOT EXISTS "idx_provider_assignments_provider_status" ON "provider_assignments" ("capacity_provider_id","status","lease_expires_at");
98
+ CREATE INDEX IF NOT EXISTS "idx_provider_assignments_project_mode" ON "provider_assignments" ("project_id","mode","status");
99
+ CREATE INDEX IF NOT EXISTS "idx_provider_assignments_team_created" ON "provider_assignments" ("team_id","created_at");
100
+
101
+ CREATE TABLE IF NOT EXISTS "agent_mode_runs" (
102
+ "id" text PRIMARY KEY NOT NULL,
103
+ "team_id" text NOT NULL,
104
+ "project_id" text NOT NULL,
105
+ "provider_assignment_id" text NOT NULL,
106
+ "capacity_provider_id" text NOT NULL,
107
+ "execution_provider_id" text,
108
+ "project_agent_class_id" text NOT NULL,
109
+ "agent_id" text,
110
+ "handler_id" text,
111
+ "mode" text NOT NULL,
112
+ "status" text DEFAULT 'queued' NOT NULL,
113
+ "selected_input_json" text DEFAULT '{}' NOT NULL,
114
+ "capacity_envelope_json" text DEFAULT '{}' NOT NULL,
115
+ "outputs_json" text DEFAULT '{}' NOT NULL,
116
+ "trace_refs_json" text DEFAULT '{}' NOT NULL,
117
+ "usage_actual_json" text DEFAULT '{}' NOT NULL,
118
+ "validation_json" text DEFAULT '{}' NOT NULL,
119
+ "fallback_reason" text,
120
+ "started_at" text,
121
+ "completed_at" text,
122
+ "failed_at" text,
123
+ "metadata_json" text DEFAULT '{}' NOT NULL,
124
+ "created_at" text NOT NULL,
125
+ "updated_at" text NOT NULL
126
+ );
127
+ CREATE INDEX IF NOT EXISTS "idx_agent_mode_runs_assignment" ON "agent_mode_runs" ("provider_assignment_id","status");
128
+ CREATE INDEX IF NOT EXISTS "idx_agent_mode_runs_project_mode" ON "agent_mode_runs" ("project_id","mode","created_at");
129
+ CREATE INDEX IF NOT EXISTS "idx_agent_mode_runs_provider" ON "agent_mode_runs" ("capacity_provider_id","created_at");
130
+
131
+ ALTER TABLE "capacity_reservations" ADD COLUMN IF NOT EXISTS "allocation_set_id" text;
132
+ ALTER TABLE "capacity_reservations" ADD COLUMN IF NOT EXISTS "project_agent_class_id" text;
133
+ ALTER TABLE "capacity_reservations" ADD COLUMN IF NOT EXISTS "assignment_id" text;
134
+ ALTER TABLE "capacity_reservations" ADD COLUMN IF NOT EXISTS "mode" text;
135
+ CREATE INDEX IF NOT EXISTS "idx_capacity_reservations_assignment" ON "capacity_reservations" ("assignment_id");
136
+
137
+ ALTER TABLE "capacity_ledger_entries" ADD COLUMN IF NOT EXISTS "assignment_id" text;
138
+ ALTER TABLE "capacity_ledger_entries" ADD COLUMN IF NOT EXISTS "mode_run_id" text;
139
+ ALTER TABLE "capacity_ledger_entries" ADD COLUMN IF NOT EXISTS "mode" text;
140
+ CREATE INDEX IF NOT EXISTS "idx_capacity_ledger_assignment" ON "capacity_ledger_entries" ("assignment_id","mode_run_id");
141
+
142
+ ALTER TABLE "task_usage_actuals" ADD COLUMN IF NOT EXISTS "assignment_id" text;
143
+ ALTER TABLE "task_usage_actuals" ADD COLUMN IF NOT EXISTS "mode_run_id" text;
144
+ ALTER TABLE "task_usage_actuals" ADD COLUMN IF NOT EXISTS "mode" text;
145
+ CREATE INDEX IF NOT EXISTS "idx_task_usage_actuals_assignment" ON "task_usage_actuals" ("assignment_id","mode_run_id");
@@ -0,0 +1,9 @@
1
+ ALTER TABLE "provider_assignments" ADD COLUMN IF NOT EXISTS "lease_token" text;
2
+ ALTER TABLE "provider_assignments" ADD COLUMN IF NOT EXISTS "lease_renewed_at" text;
3
+ ALTER TABLE "provider_assignments" ADD COLUMN IF NOT EXISTS "runner_id" text;
4
+ ALTER TABLE "provider_assignments" ADD COLUMN IF NOT EXISTS "lifecycle_reason" text;
5
+ ALTER TABLE "provider_assignments" ADD COLUMN IF NOT EXISTS "lifecycle_code" text;
6
+ ALTER TABLE "provider_assignments" ADD COLUMN IF NOT EXISTS "lifecycle_output_json" text DEFAULT '{}' NOT NULL;
7
+
8
+ CREATE INDEX IF NOT EXISTS "idx_provider_assignments_lease" ON "provider_assignments" ("capacity_provider_id","lease_state","lease_expires_at");
9
+ CREATE INDEX IF NOT EXISTS "idx_provider_assignments_runner" ON "provider_assignments" ("runner_id","lease_state");
@@ -0,0 +1,157 @@
1
+ CREATE TABLE IF NOT EXISTS "decision_planning_statuses" (
2
+ "id" text PRIMARY KEY NOT NULL,
3
+ "team_id" text NOT NULL,
4
+ "project_id" text NOT NULL,
5
+ "decision_id" text NOT NULL,
6
+ "human_approval_state" text,
7
+ "execution_readiness" text DEFAULT 'draft' NOT NULL,
8
+ "planning_inputs_status" text DEFAULT 'requested' NOT NULL,
9
+ "scope_hash" text NOT NULL,
10
+ "stale_reason" text,
11
+ "ready_at" text,
12
+ "stale_at" text,
13
+ "metadata_json" text DEFAULT '{}' NOT NULL,
14
+ "created_at" text NOT NULL,
15
+ "updated_at" text NOT NULL
16
+ );
17
+ CREATE UNIQUE INDEX IF NOT EXISTS "idx_decision_planning_statuses_decision" ON "decision_planning_statuses" ("decision_id");
18
+ CREATE INDEX IF NOT EXISTS "idx_decision_planning_statuses_project" ON "decision_planning_statuses" ("project_id","execution_readiness","updated_at");
19
+
20
+ CREATE TABLE IF NOT EXISTS "planning_input_requests" (
21
+ "id" text PRIMARY KEY NOT NULL,
22
+ "team_id" text NOT NULL,
23
+ "project_id" text NOT NULL,
24
+ "decision_id" text NOT NULL,
25
+ "project_agent_class_id" text,
26
+ "mode" text DEFAULT 'planning' NOT NULL,
27
+ "status" text DEFAULT 'requested' NOT NULL,
28
+ "scope_hash" text NOT NULL,
29
+ "prompt" text,
30
+ "response_json" text DEFAULT '{}' NOT NULL,
31
+ "metadata_json" text DEFAULT '{}' NOT NULL,
32
+ "requested_at" text NOT NULL,
33
+ "completed_at" text,
34
+ "stale_at" text
35
+ );
36
+ CREATE INDEX IF NOT EXISTS "idx_planning_input_requests_decision" ON "planning_input_requests" ("decision_id","status","requested_at");
37
+ CREATE INDEX IF NOT EXISTS "idx_planning_input_requests_project" ON "planning_input_requests" ("project_id","status","requested_at");
38
+
39
+ CREATE TABLE IF NOT EXISTS "decision_execution_inputs" (
40
+ "id" text PRIMARY KEY NOT NULL,
41
+ "team_id" text NOT NULL,
42
+ "project_id" text NOT NULL,
43
+ "decision_id" text NOT NULL,
44
+ "project_agent_class_id" text NOT NULL,
45
+ "mode" text DEFAULT 'acting' NOT NULL,
46
+ "status" text DEFAULT 'proposed' NOT NULL,
47
+ "scope_hash" text NOT NULL,
48
+ "input_json" text DEFAULT '{}' NOT NULL,
49
+ "metadata_json" text DEFAULT '{}' NOT NULL,
50
+ "accepted_at" text,
51
+ "revision_requested_at" text,
52
+ "stale_at" text,
53
+ "created_at" text NOT NULL,
54
+ "updated_at" text NOT NULL
55
+ );
56
+ CREATE INDEX IF NOT EXISTS "idx_decision_execution_inputs_decision" ON "decision_execution_inputs" ("decision_id","status","created_at");
57
+ CREATE INDEX IF NOT EXISTS "idx_decision_execution_inputs_project" ON "decision_execution_inputs" ("project_id","status","mode","created_at");
58
+
59
+ CREATE TABLE IF NOT EXISTS "workday_capacity_envelopes" (
60
+ "id" text PRIMARY KEY NOT NULL,
61
+ "team_id" text NOT NULL,
62
+ "project_id" text NOT NULL,
63
+ "allocation_set_id" text,
64
+ "status" text DEFAULT 'draft' NOT NULL,
65
+ "started_at" text,
66
+ "paused_at" text,
67
+ "completed_at" text,
68
+ "envelope_json" text DEFAULT '{}' NOT NULL,
69
+ "mode_splits_json" text DEFAULT '{}' NOT NULL,
70
+ "caps_json" text DEFAULT '{}' NOT NULL,
71
+ "reserves_json" text DEFAULT '{}' NOT NULL,
72
+ "borrowing_rules_json" text DEFAULT '{}' NOT NULL,
73
+ "metadata_json" text DEFAULT '{}' NOT NULL,
74
+ "created_at" text NOT NULL,
75
+ "updated_at" text NOT NULL
76
+ );
77
+ CREATE INDEX IF NOT EXISTS "idx_workday_capacity_envelopes_project_status" ON "workday_capacity_envelopes" ("project_id","status","created_at");
78
+ CREATE INDEX IF NOT EXISTS "idx_workday_capacity_envelopes_team_status" ON "workday_capacity_envelopes" ("team_id","status","created_at");
79
+
80
+ CREATE TABLE IF NOT EXISTS "provider_assignment_explanations" (
81
+ "id" text PRIMARY KEY NOT NULL,
82
+ "team_id" text NOT NULL,
83
+ "assignment_id" text NOT NULL,
84
+ "source" text NOT NULL,
85
+ "source_id" text,
86
+ "eligible" integer DEFAULT 1 NOT NULL,
87
+ "reasons_json" text DEFAULT '[]' NOT NULL,
88
+ "gates_json" text DEFAULT '{}' NOT NULL,
89
+ "allocation_policy_version" text,
90
+ "grant_scope" text,
91
+ "metadata_json" text DEFAULT '{}' NOT NULL,
92
+ "created_at" text NOT NULL
93
+ );
94
+ CREATE UNIQUE INDEX IF NOT EXISTS "idx_provider_assignment_explanations_assignment" ON "provider_assignment_explanations" ("assignment_id");
95
+ CREATE INDEX IF NOT EXISTS "idx_provider_assignment_explanations_team" ON "provider_assignment_explanations" ("team_id","created_at");
96
+
97
+ CREATE TABLE IF NOT EXISTS "agent_fallback_outputs" (
98
+ "id" text PRIMARY KEY NOT NULL,
99
+ "team_id" text NOT NULL,
100
+ "project_id" text NOT NULL,
101
+ "assignment_id" text,
102
+ "mode" text NOT NULL,
103
+ "code" text NOT NULL,
104
+ "status" text DEFAULT 'draft' NOT NULL,
105
+ "output_json" text DEFAULT '{}' NOT NULL,
106
+ "provenance_json" text DEFAULT '{}' NOT NULL,
107
+ "quota_json" text DEFAULT '{}' NOT NULL,
108
+ "metadata_json" text DEFAULT '{}' NOT NULL,
109
+ "created_at" text NOT NULL
110
+ );
111
+ CREATE INDEX IF NOT EXISTS "idx_agent_fallback_outputs_project" ON "agent_fallback_outputs" ("project_id","status","created_at");
112
+ CREATE INDEX IF NOT EXISTS "idx_agent_fallback_outputs_assignment" ON "agent_fallback_outputs" ("assignment_id");
113
+
114
+ CREATE TABLE IF NOT EXISTS "treedx_project_proxy_audit" (
115
+ "id" text PRIMARY KEY NOT NULL,
116
+ "team_id" text NOT NULL,
117
+ "project_id" text NOT NULL,
118
+ "assignment_id" text,
119
+ "actor_type" text NOT NULL,
120
+ "actor_id" text,
121
+ "method" text NOT NULL,
122
+ "path" text NOT NULL,
123
+ "handle_json" text DEFAULT '{}' NOT NULL,
124
+ "result_status" text DEFAULT 'observed' NOT NULL,
125
+ "metadata_json" text DEFAULT '{}' NOT NULL,
126
+ "created_at" text NOT NULL
127
+ );
128
+ CREATE INDEX IF NOT EXISTS "idx_treedx_project_proxy_audit_project" ON "treedx_project_proxy_audit" ("project_id","created_at");
129
+ CREATE INDEX IF NOT EXISTS "idx_treedx_project_proxy_audit_assignment" ON "treedx_project_proxy_audit" ("assignment_id","created_at");
130
+
131
+ CREATE TABLE IF NOT EXISTS "capacity_settlement_summaries" (
132
+ "id" text PRIMARY KEY NOT NULL,
133
+ "team_id" text NOT NULL,
134
+ "project_id" text,
135
+ "work_day_id" text,
136
+ "allocation_set_id" text,
137
+ "policy_version" text,
138
+ "reserved_credits" real DEFAULT 0 NOT NULL,
139
+ "consumed_credits" real DEFAULT 0 NOT NULL,
140
+ "released_credits" real DEFAULT 0 NOT NULL,
141
+ "refunded_credits" real DEFAULT 0 NOT NULL,
142
+ "native_usage_json" text DEFAULT '{}' NOT NULL,
143
+ "provider_confidence" text DEFAULT 'medium' NOT NULL,
144
+ "warnings_json" text DEFAULT '[]' NOT NULL,
145
+ "metadata_json" text DEFAULT '{}' NOT NULL,
146
+ "created_at" text NOT NULL
147
+ );
148
+ CREATE INDEX IF NOT EXISTS "idx_capacity_settlement_summaries_scope" ON "capacity_settlement_summaries" ("team_id","project_id","work_day_id","created_at");
149
+
150
+ ALTER TABLE "provider_assignments" ADD COLUMN IF NOT EXISTS "synthesized_from" text;
151
+ ALTER TABLE "provider_assignments" ADD COLUMN IF NOT EXISTS "synthesis_key" text;
152
+ ALTER TABLE "provider_assignments" ADD COLUMN IF NOT EXISTS "decision_id" text;
153
+ ALTER TABLE "provider_assignments" ADD COLUMN IF NOT EXISTS "proposal_id" text;
154
+ ALTER TABLE "provider_assignments" ADD COLUMN IF NOT EXISTS "fallback_output_id" text;
155
+ ALTER TABLE "provider_assignments" ADD COLUMN IF NOT EXISTS "treedx_proxy_handle_json" text DEFAULT '{}' NOT NULL;
156
+ CREATE UNIQUE INDEX IF NOT EXISTS "idx_provider_assignments_synthesis_key" ON "provider_assignments" ("team_id","synthesis_key");
157
+ CREATE INDEX IF NOT EXISTS "idx_provider_assignments_decision" ON "provider_assignments" ("decision_id","status");
@@ -0,0 +1,27 @@
1
+ CREATE TABLE IF NOT EXISTS "agent_capacity_plans" (
2
+ "id" text PRIMARY KEY NOT NULL,
3
+ "team_id" text NOT NULL,
4
+ "project_id" text NOT NULL,
5
+ "decision_id" text NOT NULL,
6
+ "status" text DEFAULT 'draft' NOT NULL,
7
+ "scope_hash" text NOT NULL,
8
+ "allocation_set_id" text,
9
+ "work_day_id" text,
10
+ "expected_credits" real DEFAULT 0 NOT NULL,
11
+ "high_credits" real DEFAULT 0 NOT NULL,
12
+ "work_units_json" text DEFAULT '[]' NOT NULL,
13
+ "capability_needs_json" text DEFAULT '[]' NOT NULL,
14
+ "environment_needs_json" text DEFAULT '[]' NOT NULL,
15
+ "reserves_json" text DEFAULT '{}' NOT NULL,
16
+ "blockers_json" text DEFAULT '[]' NOT NULL,
17
+ "priority_rationale" text,
18
+ "metadata_json" text DEFAULT '{}' NOT NULL,
19
+ "accepted_at" text,
20
+ "scheduled_at" text,
21
+ "created_at" text NOT NULL,
22
+ "updated_at" text NOT NULL
23
+ );
24
+ CREATE INDEX IF NOT EXISTS "idx_agent_capacity_plans_decision" ON "agent_capacity_plans" ("decision_id","status","created_at");
25
+ CREATE INDEX IF NOT EXISTS "idx_agent_capacity_plans_project" ON "agent_capacity_plans" ("project_id","status","created_at");
26
+ CREATE INDEX IF NOT EXISTS "idx_agent_capacity_plans_workday" ON "agent_capacity_plans" ("work_day_id","status","created_at");
27
+
@@ -0,0 +1,29 @@
1
+ CREATE TABLE IF NOT EXISTS "treedx_proxy_handles" (
2
+ "id" text PRIMARY KEY NOT NULL,
3
+ "team_id" text NOT NULL,
4
+ "project_id" text NOT NULL,
5
+ "assignment_id" text,
6
+ "repository_id" text,
7
+ "workspace_id" text,
8
+ "status" text DEFAULT 'issued' NOT NULL,
9
+ "scopes_json" text DEFAULT '[]' NOT NULL,
10
+ "allowed_operations_json" text DEFAULT '[]' NOT NULL,
11
+ "allowed_paths_json" text DEFAULT '[]' NOT NULL,
12
+ "token_hash" text,
13
+ "expires_at" text,
14
+ "issued_at" text NOT NULL,
15
+ "revoked_at" text,
16
+ "metadata_json" text DEFAULT '{}' NOT NULL,
17
+ "created_at" text NOT NULL,
18
+ "updated_at" text NOT NULL
19
+ );
20
+ CREATE INDEX IF NOT EXISTS "idx_treedx_proxy_handles_assignment" ON "treedx_proxy_handles" ("assignment_id","status","expires_at");
21
+ CREATE INDEX IF NOT EXISTS "idx_treedx_proxy_handles_project" ON "treedx_proxy_handles" ("project_id","status","updated_at");
22
+
23
+ ALTER TABLE "treedx_project_proxy_audit" ADD COLUMN IF NOT EXISTS "reason_code" text;
24
+ ALTER TABLE "treedx_project_proxy_audit" ADD COLUMN IF NOT EXISTS "reason" text;
25
+ CREATE INDEX IF NOT EXISTS "idx_treedx_project_proxy_audit_result" ON "treedx_project_proxy_audit" ("project_id","result_status","created_at");
26
+
27
+ ALTER TABLE "agent_capacity_plans" ADD COLUMN IF NOT EXISTS "review_json" text DEFAULT '{}' NOT NULL;
28
+ ALTER TABLE "agent_capacity_plans" ADD COLUMN IF NOT EXISTS "superseded_at" text;
29
+
@@ -0,0 +1,130 @@
1
+ CREATE TABLE IF NOT EXISTS "secret_metadata_records" (
2
+ "id" text PRIMARY KEY NOT NULL,
3
+ "team_id" text NOT NULL,
4
+ "project_id" text,
5
+ "name" text NOT NULL,
6
+ "secret_class" text NOT NULL,
7
+ "custody_mode" text NOT NULL,
8
+ "owner_kind" text NOT NULL,
9
+ "status" text DEFAULT 'active' NOT NULL,
10
+ "github_secret_target_json" text DEFAULT '{}' NOT NULL,
11
+ "escrow_record_id" text,
12
+ "api_decryptable" integer DEFAULT 0 NOT NULL,
13
+ "plaintext_allowed" integer DEFAULT 0 NOT NULL,
14
+ "fail_closed_code" text,
15
+ "metadata_json" text DEFAULT '{}' NOT NULL,
16
+ "created_at" text NOT NULL,
17
+ "updated_at" text NOT NULL,
18
+ "tombstoned_at" text
19
+ );
20
+ CREATE INDEX IF NOT EXISTS "idx_secret_metadata_team_project" ON "secret_metadata_records" ("team_id","project_id","status");
21
+ CREATE INDEX IF NOT EXISTS "idx_secret_metadata_custody" ON "secret_metadata_records" ("custody_mode","status");
22
+ CREATE UNIQUE INDEX IF NOT EXISTS "idx_secret_metadata_team_name" ON "secret_metadata_records" ("team_id","project_id","name");
23
+
24
+ CREATE TABLE IF NOT EXISTS "client_encrypted_escrow_records" (
25
+ "id" text PRIMARY KEY NOT NULL,
26
+ "team_id" text NOT NULL,
27
+ "project_id" text,
28
+ "secret_id" text NOT NULL,
29
+ "status" text DEFAULT 'active' NOT NULL,
30
+ "ciphertext_ref" text NOT NULL,
31
+ "algorithm" text NOT NULL,
32
+ "wrapping_key_id" text NOT NULL,
33
+ "created_by_client_id" text,
34
+ "expires_at" text,
35
+ "migrated_to" text,
36
+ "metadata_json" text DEFAULT '{}' NOT NULL,
37
+ "created_at" text NOT NULL,
38
+ "updated_at" text NOT NULL,
39
+ "tombstoned_at" text
40
+ );
41
+ CREATE INDEX IF NOT EXISTS "idx_client_encrypted_escrow_secret" ON "client_encrypted_escrow_records" ("secret_id","status");
42
+ CREATE INDEX IF NOT EXISTS "idx_client_encrypted_escrow_project" ON "client_encrypted_escrow_records" ("team_id","project_id","status");
43
+
44
+ CREATE TABLE IF NOT EXISTS "github_repository_grants" (
45
+ "id" text PRIMARY KEY NOT NULL,
46
+ "team_id" text NOT NULL,
47
+ "project_id" text,
48
+ "repository" text NOT NULL,
49
+ "installation_id" text,
50
+ "account_login" text,
51
+ "account_id" text,
52
+ "status" text DEFAULT 'active' NOT NULL,
53
+ "permissions_json" text DEFAULT '{}' NOT NULL,
54
+ "environments_json" text DEFAULT '[]' NOT NULL,
55
+ "drift_code" text,
56
+ "observed_at" text,
57
+ "revoked_at" text,
58
+ "metadata_json" text DEFAULT '{}' NOT NULL,
59
+ "created_at" text NOT NULL,
60
+ "updated_at" text NOT NULL
61
+ );
62
+ CREATE INDEX IF NOT EXISTS "idx_github_repository_grants_project" ON "github_repository_grants" ("team_id","project_id","status");
63
+ CREATE UNIQUE INDEX IF NOT EXISTS "idx_github_repository_grants_repository" ON "github_repository_grants" ("team_id","repository");
64
+
65
+ CREATE TABLE IF NOT EXISTS "workflow_operation_records" (
66
+ "id" text PRIMARY KEY NOT NULL,
67
+ "team_id" text NOT NULL,
68
+ "project_id" text,
69
+ "name" text NOT NULL,
70
+ "repository" text NOT NULL,
71
+ "workflow_file" text NOT NULL,
72
+ "secret_bearing" integer DEFAULT 0 NOT NULL,
73
+ "trusted_execution_set_id" text NOT NULL,
74
+ "dispatch_json" text DEFAULT '{}' NOT NULL,
75
+ "inputs_json" text DEFAULT '[]' NOT NULL,
76
+ "secret_classes_json" text DEFAULT '[]' NOT NULL,
77
+ "status" text DEFAULT 'active' NOT NULL,
78
+ "fail_closed_code" text,
79
+ "metadata_json" text DEFAULT '{}' NOT NULL,
80
+ "created_at" text NOT NULL,
81
+ "updated_at" text NOT NULL,
82
+ "blocked_at" text
83
+ );
84
+ CREATE INDEX IF NOT EXISTS "idx_workflow_operation_records_project" ON "workflow_operation_records" ("team_id","project_id","status");
85
+ CREATE UNIQUE INDEX IF NOT EXISTS "idx_workflow_operation_records_operation" ON "workflow_operation_records" ("team_id","id");
86
+
87
+ CREATE TABLE IF NOT EXISTS "workflow_dispatch_records" (
88
+ "id" text PRIMARY KEY NOT NULL,
89
+ "team_id" text NOT NULL,
90
+ "project_id" text,
91
+ "workflow_operation_id" text NOT NULL,
92
+ "platform_operation_id" text,
93
+ "repository" text NOT NULL,
94
+ "workflow_file" text NOT NULL,
95
+ "ref" text,
96
+ "status" text DEFAULT 'queued' NOT NULL,
97
+ "inputs_json" text DEFAULT '{}' NOT NULL,
98
+ "result_json" text DEFAULT '{}' NOT NULL,
99
+ "fail_closed_code" text,
100
+ "metadata_json" text DEFAULT '{}' NOT NULL,
101
+ "created_at" text NOT NULL,
102
+ "updated_at" text NOT NULL,
103
+ "dispatched_at" text,
104
+ "completed_at" text
105
+ );
106
+ CREATE INDEX IF NOT EXISTS "idx_workflow_dispatch_records_operation" ON "workflow_dispatch_records" ("workflow_operation_id","status","created_at");
107
+ CREATE INDEX IF NOT EXISTS "idx_workflow_dispatch_records_platform" ON "workflow_dispatch_records" ("platform_operation_id");
108
+
109
+ CREATE TABLE IF NOT EXISTS "treedx_credential_issuance_records" (
110
+ "id" text PRIMARY KEY NOT NULL,
111
+ "team_id" text NOT NULL,
112
+ "project_id" text NOT NULL,
113
+ "assignment_id" text,
114
+ "repository" text,
115
+ "credential_provider" text NOT NULL,
116
+ "status" text DEFAULT 'issued' NOT NULL,
117
+ "token_prefix" text,
118
+ "token_hash" text,
119
+ "scopes_json" text DEFAULT '[]' NOT NULL,
120
+ "allowed_operations_json" text DEFAULT '[]' NOT NULL,
121
+ "expires_at" text,
122
+ "issued_at" text,
123
+ "revoked_at" text,
124
+ "fail_closed_code" text,
125
+ "metadata_json" text DEFAULT '{}' NOT NULL,
126
+ "created_at" text NOT NULL,
127
+ "updated_at" text NOT NULL
128
+ );
129
+ CREATE INDEX IF NOT EXISTS "idx_treedx_credential_issuance_assignment" ON "treedx_credential_issuance_records" ("assignment_id","status","expires_at");
130
+ CREATE INDEX IF NOT EXISTS "idx_treedx_credential_issuance_project" ON "treedx_credential_issuance_records" ("project_id","status","updated_at");
@@ -0,0 +1,47 @@
1
+ CREATE TABLE IF NOT EXISTS "github_app_installation_records" (
2
+ "id" text PRIMARY KEY NOT NULL,
3
+ "team_id" text NOT NULL,
4
+ "installation_id" text NOT NULL,
5
+ "account_login" text,
6
+ "account_id" text,
7
+ "account_type" text,
8
+ "status" text DEFAULT 'active' NOT NULL,
9
+ "permissions_json" text DEFAULT '{}' NOT NULL,
10
+ "repository_selection" text,
11
+ "drift_code" text,
12
+ "observed_at" text,
13
+ "revoked_at" text,
14
+ "suspended_at" text,
15
+ "metadata_json" text DEFAULT '{}' NOT NULL,
16
+ "created_at" text NOT NULL,
17
+ "updated_at" text NOT NULL
18
+ );
19
+ CREATE INDEX IF NOT EXISTS "idx_github_app_installations_team_status" ON "github_app_installation_records" ("team_id","status","updated_at");
20
+ CREATE UNIQUE INDEX IF NOT EXISTS "idx_github_app_installations_team_installation" ON "github_app_installation_records" ("team_id","installation_id");
21
+
22
+ CREATE TABLE IF NOT EXISTS "github_app_token_issuance_records" (
23
+ "id" text PRIMARY KEY NOT NULL,
24
+ "team_id" text NOT NULL,
25
+ "project_id" text,
26
+ "assignment_id" text,
27
+ "provider_id" text,
28
+ "workday_id" text,
29
+ "operation_id" text,
30
+ "repository" text NOT NULL,
31
+ "installation_id" text NOT NULL,
32
+ "status" text DEFAULT 'issued' NOT NULL,
33
+ "token_prefix" text,
34
+ "token_hash" text,
35
+ "permissions_json" text DEFAULT '{}' NOT NULL,
36
+ "allowed_operations_json" text DEFAULT '[]' NOT NULL,
37
+ "expires_at" text,
38
+ "issued_at" text,
39
+ "revoked_at" text,
40
+ "fail_closed_code" text,
41
+ "metadata_json" text DEFAULT '{}' NOT NULL,
42
+ "created_at" text NOT NULL,
43
+ "updated_at" text NOT NULL
44
+ );
45
+ CREATE INDEX IF NOT EXISTS "idx_github_app_token_issuance_project" ON "github_app_token_issuance_records" ("team_id","project_id","status","updated_at");
46
+ CREATE INDEX IF NOT EXISTS "idx_github_app_token_issuance_operation" ON "github_app_token_issuance_records" ("operation_id","status","expires_at");
47
+ CREATE INDEX IF NOT EXISTS "idx_github_app_token_issuance_assignment" ON "github_app_token_issuance_records" ("assignment_id","status","expires_at");