@treeseed/sdk 0.12.62 → 0.13.0-rc.10

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 (1108) hide show
  1. package/LICENSE +13 -0
  2. package/README.md +33 -359
  3. package/dist/accounts/account-contracts.d.ts +170 -0
  4. package/dist/accounts/account-contracts.js +33 -0
  5. package/dist/agent-capacity/allocation.d.ts +186 -0
  6. package/dist/agent-capacity/allocation.js +226 -0
  7. package/dist/agent-capacity/artifact-mutation-receipt.d.ts +49 -0
  8. package/dist/agent-capacity/artifact-mutation-receipt.js +36 -0
  9. package/dist/agent-capacity/artifacts.d.ts +107 -0
  10. package/dist/agent-capacity/artifacts.js +39 -0
  11. package/dist/agent-capacity/authority/agent-authority-presets.d.ts +13 -0
  12. package/dist/agent-capacity/authority/agent-authority-presets.js +106 -0
  13. package/dist/agent-capacity/contracts/capacity/assignments/assignment-records.d.ts +269 -0
  14. package/dist/agent-capacity/contracts/capacity/assignments/assignment-records.js +10 -0
  15. package/dist/agent-capacity/contracts/capacity/communication/communication-records.d.ts +101 -0
  16. package/dist/agent-capacity/contracts/capacity/communication/communication-records.js +9 -0
  17. package/dist/agent-capacity/contracts/capacity/providers/supply-policy.d.ts +36 -0
  18. package/dist/agent-capacity/contracts/capacity/providers/supply-policy.js +4 -0
  19. package/dist/agent-capacity/contracts/capacity/workdays/workday-records.d.ts +188 -0
  20. package/dist/agent-capacity/contracts/configuration/configuration.d.ts +11 -0
  21. package/dist/agent-capacity/contracts/configuration/configuration.js +20 -0
  22. package/dist/agent-capacity/contracts/operations/research-workflow.d.ts +59 -0
  23. package/dist/agent-capacity/contracts/operations/research-workflow.js +16 -0
  24. package/dist/agent-capacity/contracts/operations/workflow-promotion.d.ts +24 -0
  25. package/dist/agent-capacity/contracts/projects/agents/project-agent-class.d.ts +37 -0
  26. package/dist/agent-capacity/contracts/runtime/runtime-observability.d.ts +335 -0
  27. package/dist/agent-capacity/contracts/support/agent-atlas.d.ts +185 -0
  28. package/dist/agent-capacity/contracts/support/agent-atlas.js +47 -0
  29. package/dist/agent-capacity/contracts/support/agent-lab-monitoring.d.ts +96 -0
  30. package/dist/agent-capacity/contracts/support/agent-lab-monitoring.js +14 -0
  31. package/dist/agent-capacity/contracts/support/authority/execution-mode.d.ts +10 -0
  32. package/dist/agent-capacity/contracts/support/authority/execution-mode.js +17 -0
  33. package/dist/agent-capacity/contracts/support/decision-work.d.ts +251 -0
  34. package/dist/agent-capacity/contracts/support/failure-records.d.ts +9 -0
  35. package/dist/agent-capacity/contracts/support/failure-records.js +0 -0
  36. package/dist/agent-capacity/contracts/support/financial-records.d.ts +124 -0
  37. package/dist/agent-capacity/contracts/support/financial-records.js +0 -0
  38. package/dist/agent-capacity/contracts/support/planning-records.d.ts +121 -0
  39. package/dist/agent-capacity/contracts/support/planning-records.js +0 -0
  40. package/dist/agent-capacity/contracts/support/research-citation.d.ts +15 -0
  41. package/dist/agent-capacity/contracts/support/research-citation.js +0 -0
  42. package/dist/agent-capacity/contracts/support/research-source-policy.d.ts +8 -0
  43. package/dist/agent-capacity/contracts/support/research-source-policy.js +0 -0
  44. package/dist/agent-capacity/contracts/support/time-capacity.d.ts +163 -0
  45. package/dist/agent-capacity/contracts/support/time-capacity.js +63 -0
  46. package/dist/agent-capacity/policy/capacity/allocations/allocation-hierarchy.d.ts +29 -0
  47. package/dist/agent-capacity/policy/capacity/allocations/allocation-hierarchy.js +110 -0
  48. package/dist/agent-capacity/validation/activity-profile.d.ts +12 -0
  49. package/dist/agent-capacity/validation/activity-profile.js +264 -0
  50. package/dist/agent-capacity/validation/agent-definition-schema.d.ts +9140 -0
  51. package/dist/agent-capacity/validation/agent-definition-schema.js +198 -0
  52. package/dist/agent-capacity/validation/agent-lab-forensics-schema.d.ts +234 -0
  53. package/dist/agent-capacity/validation/agent-lab-forensics-schema.js +104 -0
  54. package/dist/agent-capacity/validation/agent-signal.d.ts +30 -0
  55. package/dist/agent-capacity/validation/agent-signal.js +31 -0
  56. package/dist/agent-capacity/validation/allocation.d.ts +12 -0
  57. package/dist/agent-capacity/validation/allocation.js +115 -0
  58. package/dist/agent-capacity/validation/assignment-records.d.ts +16 -0
  59. package/dist/agent-capacity/validation/assignment-records.js +92 -0
  60. package/dist/agent-capacity/validation/configuration.d.ts +14 -0
  61. package/dist/agent-capacity/validation/configuration.js +23 -0
  62. package/dist/agent-capacity/validation/index.d.ts +11 -0
  63. package/dist/agent-capacity/validation/index.js +11 -0
  64. package/dist/agent-capacity/validation/proposal-type.d.ts +22 -0
  65. package/dist/agent-capacity/validation/proposal-type.js +21 -0
  66. package/dist/agent-capacity/validation/research/citation.d.ts +16 -0
  67. package/dist/agent-capacity/validation/research/citation.js +47 -0
  68. package/dist/agent-capacity/validation/research/source-policy.d.ts +11 -0
  69. package/dist/agent-capacity/validation/research/source-policy.js +26 -0
  70. package/dist/agent-capacity/validation/research/workflow.d.ts +10 -0
  71. package/dist/agent-capacity/validation/research/workflow.js +31 -0
  72. package/dist/agent-capacity/validation/workflow-promotion.d.ts +2 -0
  73. package/dist/agent-capacity/validation/workflow-promotion.js +34 -0
  74. package/dist/agent-capacity/workday.d.ts +52 -0
  75. package/dist/agent-capacity/workday.js +105 -0
  76. package/dist/ai-appliance/contracts.d.ts +90 -0
  77. package/dist/ai-appliance/contracts.js +16 -0
  78. package/dist/ai-appliance/validation.d.ts +4 -0
  79. package/dist/ai-appliance/validation.js +62 -0
  80. package/dist/capacity/agents/agent-capacity.d.ts +21 -0
  81. package/dist/capacity/agents/agent-capacity.js +20 -0
  82. package/dist/capacity/capacity-core/capacity-pagination.d.ts +18 -0
  83. package/dist/capacity/capacity-core/capacity-pagination.js +33 -0
  84. package/dist/capacity/providers/capacity-provider.d.ts +1 -0
  85. package/dist/capacity/providers/capacity-provider.js +1 -0
  86. package/dist/capacity-provider/client.d.ts +56 -0
  87. package/dist/capacity-provider/client.js +163 -0
  88. package/dist/capacity-provider/contracts/capacity-facts.d.ts +64 -0
  89. package/dist/capacity-provider/contracts/capacity-facts.js +0 -0
  90. package/dist/capacity-provider/contracts/governance.d.ts +399 -0
  91. package/dist/capacity-provider/contracts/governance.js +18 -0
  92. package/dist/capacity-provider/contracts/index.d.ts +2 -0
  93. package/dist/capacity-provider/contracts/index.js +2 -0
  94. package/dist/capacity-provider/index.d.ts +3 -0
  95. package/dist/capacity-provider/index.js +3 -0
  96. package/dist/capacity-provider/validation.d.ts +27 -0
  97. package/dist/capacity-provider/validation.js +184 -0
  98. package/dist/configuration/secrets-capability.d.ts +4 -0
  99. package/dist/configuration/secrets-capability.js +4 -0
  100. package/dist/content/contracts.d.ts +12 -0
  101. package/dist/content/contracts.js +0 -0
  102. package/dist/content/validation/agent-operational-content-schemas.d.ts +1351 -0
  103. package/dist/content/validation/agent-operational-content-schemas.js +146 -0
  104. package/dist/content/validation/auxiliary-content-schemas.d.ts +1715 -0
  105. package/dist/content/validation/auxiliary-content-schemas.js +173 -0
  106. package/dist/content/validation/content-model-schemas.d.ts +21728 -0
  107. package/dist/content/validation/content-model-schemas.js +271 -0
  108. package/dist/content/validation/index.d.ts +3 -0
  109. package/dist/content/validation/index.js +3 -0
  110. package/dist/content/validation/portable-content-data.d.ts +2101 -0
  111. package/dist/content/validation/portable-content-data.js +49 -0
  112. package/dist/entrypoints/clients/control-plane-client.d.ts +112 -0
  113. package/dist/entrypoints/clients/control-plane-client.js +180 -0
  114. package/dist/entrypoints/models/field-aliases.d.ts +11 -0
  115. package/dist/entrypoints/models/model-registry.d.ts +3 -0
  116. package/dist/entrypoints/models/model-registry.js +3 -0
  117. package/dist/entrypoints/models/sdk-fields.d.ts +11 -0
  118. package/dist/entrypoints/models/sdk-types.d.ts +10 -0
  119. package/dist/entrypoints/models/sdk-types.js +10 -0
  120. package/dist/feedback/contracts.d.ts +142 -0
  121. package/dist/feedback/contracts.js +18 -0
  122. package/dist/feedback/index.d.ts +1 -0
  123. package/dist/feedback/index.js +1 -0
  124. package/dist/governance/groups/contracts.d.ts +102 -0
  125. package/dist/governance/groups/contracts.js +6 -0
  126. package/dist/graph/context-query-contracts.d.ts +19 -1
  127. package/dist/graph/context-query-contracts.js +49 -8
  128. package/dist/knowledge/contracts.d.ts +173 -0
  129. package/dist/knowledge/contracts.js +16 -0
  130. package/dist/knowledge/index.d.ts +1 -0
  131. package/dist/knowledge/index.js +1 -0
  132. package/dist/model-registry/agent-operational-models.d.ts +4 -0
  133. package/dist/model-registry/agent-operational-models.js +38 -0
  134. package/dist/model-registry/build-builtin-model-registry.d.ts +2 -0
  135. package/dist/model-registry/build-builtin-model-registry.js +426 -0
  136. package/dist/model-registry/content-root.d.ts +9 -0
  137. package/dist/model-registry/content-root.js +33 -0
  138. package/dist/model-registry/discussion-models.d.ts +4 -0
  139. package/dist/model-registry/discussion-models.js +84 -0
  140. package/dist/model-registry/group-models.d.ts +2 -0
  141. package/dist/model-registry/group-models.js +52 -0
  142. package/dist/model-registry/knowledge-models.d.ts +2 -0
  143. package/dist/model-registry/knowledge-models.js +89 -0
  144. package/dist/model-registry/normalize-definition.d.ts +8 -0
  145. package/dist/model-registry/normalize-definition.js +69 -0
  146. package/dist/operator-contracts/canonical-command-tree.d.ts +3 -0
  147. package/dist/operator-contracts/canonical-command-tree.js +81 -0
  148. package/dist/operator-contracts/command-tree.d.ts +79 -0
  149. package/dist/operator-contracts/command-tree.js +53 -0
  150. package/dist/operator-contracts/control-plane-operation.d.ts +80 -0
  151. package/dist/operator-contracts/control-plane-operation.js +75 -0
  152. package/dist/operator-contracts/control-plane-operations.d.ts +546 -0
  153. package/dist/operator-contracts/control-plane-operations.js +352 -0
  154. package/dist/operator-contracts/index.d.ts +8 -0
  155. package/dist/operator-contracts/index.js +8 -0
  156. package/dist/operator-contracts/mcp.d.ts +78 -0
  157. package/dist/operator-contracts/mcp.js +23 -0
  158. package/dist/operator-contracts/oauth.d.ts +46 -0
  159. package/dist/operator-contracts/oauth.js +0 -0
  160. package/dist/operator-contracts/workday-lifecycle.d.ts +157 -0
  161. package/dist/operator-contracts/workday-lifecycle.js +65 -0
  162. package/dist/operator-contracts/workday-profile.d.ts +72 -0
  163. package/dist/operator-contracts/workday-profile.js +106 -0
  164. package/dist/projects/projects-core/project-workflow.d.ts +179 -0
  165. package/dist/projects/projects-core/project-workflow.js +66 -0
  166. package/dist/sdk-types/configuration/sdk-dispatch-credential-source.d.ts +201 -0
  167. package/dist/sdk-types/configuration/sdk-dispatch-credential-source.js +0 -0
  168. package/dist/sdk-types/control-plane/resource-requests.d.ts +124 -0
  169. package/dist/sdk-types/control-plane/resource-requests.js +0 -0
  170. package/dist/sdk-types/governance/commons/commons-question-input.d.ts +61 -0
  171. package/dist/sdk-types/governance/commons/commons-question-input.js +0 -0
  172. package/dist/sdk-types/support/planning-policy.d.ts +210 -0
  173. package/dist/sdk-types/support/planning-policy.js +0 -0
  174. package/dist/sdk-types/support/platform-contracts.d.ts +178 -0
  175. package/dist/sdk-types/support/platform-contracts.js +15 -0
  176. package/dist/sdk-types/support/sdk-model-names.d.ts +44 -0
  177. package/dist/sdk-types/support/sdk-model-names.js +80 -0
  178. package/dist/sdk-types/support/sdk-search-request.d.ts +182 -0
  179. package/dist/sdk-types/support/sdk-search-request.js +0 -0
  180. package/dist/sdk-types/support/task-planning.d.ts +189 -0
  181. package/dist/sdk-types/support/task-planning.js +0 -0
  182. package/dist/sdk-types/treedx/graph/sdk-graph-query-request.d.ts +157 -0
  183. package/dist/sdk-types/treedx/graph/sdk-graph-query-request.js +0 -0
  184. package/dist/secrets-capability/provider-operation-contracts.d.ts +90 -0
  185. package/dist/secrets-capability/provider-operation-contracts.js +10 -0
  186. package/dist/secrets-capability/service-provider-contracts.d.ts +92 -0
  187. package/dist/secrets-capability/service-provider-contracts.js +183 -0
  188. package/dist/secrets-capability/service-vault-contracts.d.ts +61 -0
  189. package/dist/secrets-capability/service-vault-contracts.js +39 -0
  190. package/dist/secrets-capability/workflow-operation-contracts.d.ts +95 -0
  191. package/dist/secrets-capability/workflow-operation-contracts.js +0 -0
  192. package/dist/standards/canonicalize.d.ts +10 -0
  193. package/dist/standards/canonicalize.js +43 -0
  194. package/dist/standards/compatibility-attestation.d.ts +23 -0
  195. package/dist/standards/compatibility-attestation.js +40 -0
  196. package/dist/standards/composition.d.ts +15 -0
  197. package/dist/standards/composition.js +14 -0
  198. package/dist/standards/contract-bundle.d.ts +8 -0
  199. package/dist/standards/contract-bundle.js +23 -0
  200. package/dist/standards/contracts.d.ts +39 -0
  201. package/dist/standards/contracts.js +0 -0
  202. package/dist/standards/errors.d.ts +6 -0
  203. package/dist/standards/errors.js +13 -0
  204. package/dist/standards/index.d.ts +8 -0
  205. package/dist/standards/index.js +8 -0
  206. package/dist/standards/mcp/compare.d.ts +2 -0
  207. package/dist/standards/mcp/compare.js +38 -0
  208. package/dist/standards/mcp/contracts.d.ts +34 -0
  209. package/dist/standards/mcp/contracts.js +0 -0
  210. package/dist/standards/mcp/index.d.ts +3 -0
  211. package/dist/standards/mcp/index.js +3 -0
  212. package/dist/standards/mcp/normalize.d.ts +4 -0
  213. package/dist/standards/mcp/normalize.js +30 -0
  214. package/dist/standards/openapi/compare.d.ts +2 -0
  215. package/dist/standards/openapi/compare.js +112 -0
  216. package/dist/standards/openapi/contracts.d.ts +24 -0
  217. package/dist/standards/openapi/contracts.js +0 -0
  218. package/dist/standards/openapi/index.d.ts +3 -0
  219. package/dist/standards/openapi/index.js +3 -0
  220. package/dist/standards/openapi/normalize.d.ts +2 -0
  221. package/dist/standards/openapi/normalize.js +57 -0
  222. package/dist/standards/package-manifest.d.ts +37 -0
  223. package/dist/standards/package-manifest.js +89 -0
  224. package/dist/standards/portfolio-entry.d.ts +12 -0
  225. package/dist/standards/portfolio-entry.js +11 -0
  226. package/dist/standards/typescript/compare.d.ts +2 -0
  227. package/dist/standards/typescript/compare.js +88 -0
  228. package/dist/standards/typescript/contracts.d.ts +44 -0
  229. package/dist/standards/typescript/contracts.js +0 -0
  230. package/dist/standards/typescript/extract.d.ts +10 -0
  231. package/dist/standards/typescript/extract.js +244 -0
  232. package/dist/standards/typescript/index.d.ts +3 -0
  233. package/dist/standards/typescript/index.js +3 -0
  234. package/dist/treedx/accounts/auth.d.ts +17 -0
  235. package/dist/treedx/accounts/auth.js +48 -0
  236. package/dist/treedx/client/accounts/contracts/auth-mode.d.ts +3 -0
  237. package/dist/treedx/client/accounts/contracts/auth-mode.js +6 -0
  238. package/dist/treedx/client/build/creation/build-context.d.ts +3 -0
  239. package/dist/treedx/client/build/creation/build-context.js +7 -0
  240. package/dist/treedx/client/build/creation/build-snapshot.d.ts +3 -0
  241. package/dist/treedx/client/build/creation/build-snapshot.js +8 -0
  242. package/dist/treedx/client/capacity/allocations/contracts/put-capability-grant.d.ts +3 -0
  243. package/dist/treedx/client/capacity/allocations/contracts/put-capability-grant.js +7 -0
  244. package/dist/treedx/client/capacity/allocations/queries/list-capability-grants.d.ts +6 -0
  245. package/dist/treedx/client/capacity/allocations/queries/list-capability-grants.js +10 -0
  246. package/dist/treedx/client/methods.d.ts +102 -0
  247. package/dist/treedx/client/methods.js +209 -0
  248. package/dist/treedx/client/persistence/contracts/restore-storage.d.ts +3 -0
  249. package/dist/treedx/client/persistence/contracts/restore-storage.js +6 -0
  250. package/dist/treedx/client/persistence/lifecycle/verify-storage-restore.d.ts +3 -0
  251. package/dist/treedx/client/persistence/lifecycle/verify-storage-restore.js +6 -0
  252. package/dist/treedx/client/repositories/creation/register-repository.d.ts +3 -0
  253. package/dist/treedx/client/repositories/creation/register-repository.js +7 -0
  254. package/dist/treedx/client/repositories/queries/get-repository.d.ts +3 -0
  255. package/dist/treedx/client/repositories/queries/get-repository.js +7 -0
  256. package/dist/treedx/client/repositories/queries/list-repository-paths.d.ts +3 -0
  257. package/dist/treedx/client/repositories/queries/list-repository-paths.js +7 -0
  258. package/dist/treedx/client/repositories/queries/list-repository-refs.d.ts +3 -0
  259. package/dist/treedx/client/repositories/queries/list-repository-refs.js +12 -0
  260. package/dist/treedx/client/repositories/queries/query-repository.d.ts +3 -0
  261. package/dist/treedx/client/repositories/queries/query-repository.js +7 -0
  262. package/dist/treedx/client/repositories/queries/read-repository-file.d.ts +3 -0
  263. package/dist/treedx/client/repositories/queries/read-repository-file.js +6 -0
  264. package/dist/treedx/client/repositories/queries/read-repository-files.d.ts +3 -0
  265. package/dist/treedx/client/repositories/queries/read-repository-files.js +7 -0
  266. package/dist/treedx/client/repositories/queries/search-repository-files.d.ts +3 -0
  267. package/dist/treedx/client/repositories/queries/search-repository-files.js +7 -0
  268. package/dist/treedx/client/support/contracts/treedx/artifacts/contracts/download-artifact.d.ts +3 -0
  269. package/dist/treedx/client/support/contracts/treedx/artifacts/contracts/download-artifact.js +9 -0
  270. package/dist/treedx/client/support/contracts/treedx/authorization/contracts/whoami.d.ts +3 -0
  271. package/dist/treedx/client/support/contracts/treedx/authorization/contracts/whoami.js +6 -0
  272. package/dist/treedx/client/support/contracts/treedx/graph/contracts/parse-context-dsl.d.ts +3 -0
  273. package/dist/treedx/client/support/contracts/treedx/graph/contracts/parse-context-dsl.js +7 -0
  274. package/dist/treedx/client/support/contracts/treedx/health/contracts/deep-health.d.ts +5 -0
  275. package/dist/treedx/client/support/contracts/treedx/health/contracts/deep-health.js +7 -0
  276. package/dist/treedx/client/support/contracts/treedx/health/contracts/health.d.ts +3 -0
  277. package/dist/treedx/client/support/contracts/treedx/health/contracts/health.js +6 -0
  278. package/dist/treedx/client/support/contracts/treedx/health/contracts/metrics.d.ts +3 -0
  279. package/dist/treedx/client/support/contracts/treedx/health/contracts/metrics.js +7 -0
  280. package/dist/treedx/client/support/contracts/treedx/health/contracts/prometheus-metrics.d.ts +2 -0
  281. package/dist/treedx/client/support/contracts/treedx/health/contracts/prometheus-metrics.js +19 -0
  282. package/dist/treedx/client/support/contracts/treedx/health/contracts/ready.d.ts +3 -0
  283. package/dist/treedx/client/support/contracts/treedx/health/contracts/ready.js +7 -0
  284. package/dist/treedx/client/support/contracts/treedx/health/contracts/status.d.ts +3 -0
  285. package/dist/treedx/client/support/contracts/treedx/health/contracts/status.js +6 -0
  286. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/commit.d.ts +3 -0
  287. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/commit.js +7 -0
  288. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/diff.d.ts +3 -0
  289. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/diff.js +6 -0
  290. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/fetch-remote.d.ts +3 -0
  291. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/fetch-remote.js +7 -0
  292. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/push.d.ts +6 -0
  293. package/dist/treedx/client/support/contracts/treedx/repositories/contracts/push.js +23 -0
  294. package/dist/treedx/client/support/contracts/treedx/search/contracts/compact-search-index.d.ts +3 -0
  295. package/dist/treedx/client/support/contracts/treedx/search/contracts/compact-search-index.js +8 -0
  296. package/dist/treedx/client/support/contracts/treedx/search/contracts/search.d.ts +3 -0
  297. package/dist/treedx/client/support/contracts/treedx/search/contracts/search.js +7 -0
  298. package/dist/treedx/client/support/contracts/treedx/storage/contracts/backup-storage.d.ts +3 -0
  299. package/dist/treedx/client/support/contracts/treedx/storage/contracts/backup-storage.js +8 -0
  300. package/dist/treedx/client/support/contracts/treedx/storage/contracts/compact-storage.d.ts +3 -0
  301. package/dist/treedx/client/support/contracts/treedx/storage/contracts/compact-storage.js +8 -0
  302. package/dist/treedx/client/support/contracts/treedx/transport/contracts/assert-binary-ok.d.ts +2 -0
  303. package/dist/treedx/client/support/contracts/treedx/transport/contracts/assert-binary-ok.js +15 -0
  304. package/dist/treedx/client/support/contracts/treedx/transport/contracts/fetch-with-timeout.d.ts +2 -0
  305. package/dist/treedx/client/support/contracts/treedx/transport/contracts/fetch-with-timeout.js +38 -0
  306. package/dist/treedx/client/support/contracts/treedx/transport/contracts/headers.d.ts +2 -0
  307. package/dist/treedx/client/support/contracts/treedx/transport/contracts/headers.js +15 -0
  308. package/dist/treedx/client/support/contracts/treedx/transport/contracts/parse-json-response.d.ts +2 -0
  309. package/dist/treedx/client/support/contracts/treedx/transport/contracts/parse-json-response.js +15 -0
  310. package/dist/treedx/client/support/contracts/treedx/transport/contracts/query.d.ts +2 -0
  311. package/dist/treedx/client/support/contracts/treedx/transport/contracts/query.js +14 -0
  312. package/dist/treedx/client/support/contracts/treedx/transport/contracts/repo-id.d.ts +2 -0
  313. package/dist/treedx/client/support/contracts/treedx/transport/contracts/repo-id.js +14 -0
  314. package/dist/treedx/client/support/contracts/treedx/transport/contracts/request.d.ts +6 -0
  315. package/dist/treedx/client/support/contracts/treedx/transport/contracts/request.js +41 -0
  316. package/dist/treedx/client/support/contracts/treedx/transport/contracts/throw-api-error.d.ts +2 -0
  317. package/dist/treedx/client/support/contracts/treedx/transport/contracts/throw-api-error.js +14 -0
  318. package/dist/treedx/client/support/contracts/treedx/workspaces/contracts/exec.d.ts +3 -0
  319. package/dist/treedx/client/support/contracts/treedx/workspaces/contracts/exec.js +7 -0
  320. package/dist/treedx/client/support/creation/apply-changeset.d.ts +3 -0
  321. package/dist/treedx/client/support/creation/apply-changeset.js +10 -0
  322. package/dist/treedx/client/support/creation/apply-storage-migration.d.ts +3 -0
  323. package/dist/treedx/client/support/creation/apply-storage-migration.js +7 -0
  324. package/dist/treedx/client/support/creation/create-migration.d.ts +6 -0
  325. package/dist/treedx/client/support/creation/create-migration.js +7 -0
  326. package/dist/treedx/client/support/creation/export-artifact.d.ts +3 -0
  327. package/dist/treedx/client/support/creation/export-artifact.js +8 -0
  328. package/dist/treedx/client/support/creation/plan-storage-migration.d.ts +3 -0
  329. package/dist/treedx/client/support/creation/plan-storage-migration.js +7 -0
  330. package/dist/treedx/client/support/creation/request-binary.d.ts +6 -0
  331. package/dist/treedx/client/support/creation/request-binary.js +42 -0
  332. package/dist/treedx/client/support/creation/write-file.d.ts +3 -0
  333. package/dist/treedx/client/support/creation/write-file.js +10 -0
  334. package/dist/treedx/client/support/creation/write-files.d.ts +3 -0
  335. package/dist/treedx/client/support/creation/write-files.js +12 -0
  336. package/dist/treedx/client/support/queries/treedx/artifacts/queries/get-artifact.d.ts +3 -0
  337. package/dist/treedx/client/support/queries/treedx/artifacts/queries/get-artifact.js +7 -0
  338. package/dist/treedx/client/support/queries/treedx/artifacts/queries/list-artifacts.d.ts +3 -0
  339. package/dist/treedx/client/support/queries/treedx/artifacts/queries/list-artifacts.js +7 -0
  340. package/dist/treedx/client/support/queries/treedx/authorization/queries/effective-scope.d.ts +3 -0
  341. package/dist/treedx/client/support/queries/treedx/authorization/queries/effective-scope.js +9 -0
  342. package/dist/treedx/client/support/queries/treedx/authorization/queries/list-capabilities.d.ts +4 -0
  343. package/dist/treedx/client/support/queries/treedx/authorization/queries/list-capabilities.js +6 -0
  344. package/dist/treedx/client/support/queries/treedx/federation/queries/get-placement.d.ts +3 -0
  345. package/dist/treedx/client/support/queries/treedx/federation/queries/get-placement.js +7 -0
  346. package/dist/treedx/client/support/queries/treedx/graph/queries/get-node.d.ts +3 -0
  347. package/dist/treedx/client/support/queries/treedx/graph/queries/get-node.js +7 -0
  348. package/dist/treedx/client/support/queries/treedx/graph/queries/get-related.d.ts +3 -0
  349. package/dist/treedx/client/support/queries/treedx/graph/queries/get-related.js +7 -0
  350. package/dist/treedx/client/support/queries/treedx/graph/queries/list-nodes.d.ts +3 -0
  351. package/dist/treedx/client/support/queries/treedx/graph/queries/list-nodes.js +7 -0
  352. package/dist/treedx/client/support/queries/treedx/repositories/queries/list-tree.d.ts +3 -0
  353. package/dist/treedx/client/support/queries/treedx/repositories/queries/list-tree.js +10 -0
  354. package/dist/treedx/client/support/queries/treedx/repositories/queries/read-file.d.ts +3 -0
  355. package/dist/treedx/client/support/queries/treedx/repositories/queries/read-file.js +9 -0
  356. package/dist/treedx/client/support/queries/treedx/search/queries/get-search-index-status.d.ts +3 -0
  357. package/dist/treedx/client/support/queries/treedx/search/queries/get-search-index-status.js +7 -0
  358. package/dist/treedx/client/support/queries/treedx/storage/queries/get-migration.d.ts +6 -0
  359. package/dist/treedx/client/support/queries/treedx/storage/queries/get-migration.js +7 -0
  360. package/dist/treedx/client/support/queries/treedx/storage/queries/get-snapshot.d.ts +6 -0
  361. package/dist/treedx/client/support/queries/treedx/storage/queries/get-snapshot.js +7 -0
  362. package/dist/treedx/client/support/queries/treedx/storage/queries/list-storage-migrations.d.ts +6 -0
  363. package/dist/treedx/client/support/queries/treedx/storage/queries/list-storage-migrations.js +6 -0
  364. package/dist/treedx/client/support/queries/treedx/transport/queries/list-audit-events.d.ts +15 -0
  365. package/dist/treedx/client/support/queries/treedx/transport/queries/list-audit-events.js +6 -0
  366. package/dist/treedx/client/support/queries/treedx/transport/queries/list-repositories.d.ts +3 -0
  367. package/dist/treedx/client/support/queries/treedx/transport/queries/list-repositories.js +7 -0
  368. package/dist/treedx/client/support/retirement/cleanup-artifacts.d.ts +3 -0
  369. package/dist/treedx/client/support/retirement/cleanup-artifacts.js +7 -0
  370. package/dist/treedx/client/support/retirement/delete-artifact.d.ts +3 -0
  371. package/dist/treedx/client/support/retirement/delete-artifact.js +7 -0
  372. package/dist/treedx/client/support/retirement/delete-file.d.ts +3 -0
  373. package/dist/treedx/client/support/retirement/delete-file.js +10 -0
  374. package/dist/treedx/client/support/retirement/rollback-storage-migration.d.ts +3 -0
  375. package/dist/treedx/client/support/retirement/rollback-storage-migration.js +7 -0
  376. package/dist/treedx/client/support/updates/patch-file.d.ts +3 -0
  377. package/dist/treedx/client/support/updates/patch-file.js +10 -0
  378. package/dist/treedx/client/support/updates/refresh-search-index.d.ts +3 -0
  379. package/dist/treedx/client/support/updates/refresh-search-index.js +8 -0
  380. package/dist/treedx/client/treedx/blobs/contracts/download-blob.d.ts +3 -0
  381. package/dist/treedx/client/treedx/blobs/contracts/download-blob.js +6 -0
  382. package/dist/treedx/client/treedx/blobs/creation/create-blob-upload.d.ts +3 -0
  383. package/dist/treedx/client/treedx/blobs/creation/create-blob-upload.js +8 -0
  384. package/dist/treedx/client/treedx/blobs/creation/request-blob-download.d.ts +3 -0
  385. package/dist/treedx/client/treedx/blobs/creation/request-blob-download.js +27 -0
  386. package/dist/treedx/client/treedx/blobs/creation/request-blob-upload.d.ts +3 -0
  387. package/dist/treedx/client/treedx/blobs/creation/request-blob-upload.js +41 -0
  388. package/dist/treedx/client/treedx/blobs/creation/upload-blob-part.d.ts +3 -0
  389. package/dist/treedx/client/treedx/blobs/creation/upload-blob-part.js +27 -0
  390. package/dist/treedx/client/treedx/blobs/creation/upload-blob.d.ts +3 -0
  391. package/dist/treedx/client/treedx/blobs/creation/upload-blob.js +6 -0
  392. package/dist/treedx/client/treedx/blobs/creation/write-blob.d.ts +3 -0
  393. package/dist/treedx/client/treedx/blobs/creation/write-blob.js +8 -0
  394. package/dist/treedx/client/treedx/blobs/lifecycle/complete-blob-upload.d.ts +3 -0
  395. package/dist/treedx/client/treedx/blobs/lifecycle/complete-blob-upload.js +8 -0
  396. package/dist/treedx/client/treedx/blobs/queries/read-blob.d.ts +3 -0
  397. package/dist/treedx/client/treedx/blobs/queries/read-blob.js +10 -0
  398. package/dist/treedx/client/treedx/blobs/retirement/abort-blob-upload.d.ts +3 -0
  399. package/dist/treedx/client/treedx/blobs/retirement/abort-blob-upload.js +7 -0
  400. package/dist/treedx/client/treedx/blobs/retirement/delete-blob.d.ts +3 -0
  401. package/dist/treedx/client/treedx/blobs/retirement/delete-blob.js +8 -0
  402. package/dist/treedx/client/treedx/federation/contracts/federated-query.d.ts +3 -0
  403. package/dist/treedx/client/treedx/federation/contracts/federated-query.js +7 -0
  404. package/dist/treedx/client/treedx/federation/creation/plan-federated-query.d.ts +3 -0
  405. package/dist/treedx/client/treedx/federation/creation/plan-federated-query.js +6 -0
  406. package/dist/treedx/client/treedx/federation/queries/check-mirror-health.d.ts +3 -0
  407. package/dist/treedx/client/treedx/federation/queries/check-mirror-health.js +7 -0
  408. package/dist/treedx/client/treedx/federation/updates/promote-mirror.d.ts +3 -0
  409. package/dist/treedx/client/treedx/federation/updates/promote-mirror.js +7 -0
  410. package/dist/treedx/client/treedx/federation/updates/sync-mirror.d.ts +3 -0
  411. package/dist/treedx/client/treedx/federation/updates/sync-mirror.js +7 -0
  412. package/dist/treedx/client/treedx/graph/contracts/federated-context.d.ts +3 -0
  413. package/dist/treedx/client/treedx/graph/contracts/federated-context.js +7 -0
  414. package/dist/treedx/client/treedx/graph/contracts/federated-graph.d.ts +3 -0
  415. package/dist/treedx/client/treedx/graph/contracts/federated-graph.js +7 -0
  416. package/dist/treedx/client/treedx/graph/contracts/graph-search.d.ts +3 -0
  417. package/dist/treedx/client/treedx/graph/contracts/graph-search.js +8 -0
  418. package/dist/treedx/client/treedx/graph/queries/get-graph-node.d.ts +3 -0
  419. package/dist/treedx/client/treedx/graph/queries/get-graph-node.js +10 -0
  420. package/dist/treedx/client/treedx/graph/queries/get-graph-refresh-job.d.ts +3 -0
  421. package/dist/treedx/client/treedx/graph/queries/get-graph-refresh-job.js +7 -0
  422. package/dist/treedx/client/treedx/graph/queries/get-subgraph.d.ts +3 -0
  423. package/dist/treedx/client/treedx/graph/queries/get-subgraph.js +7 -0
  424. package/dist/treedx/client/treedx/graph/queries/query-graph.d.ts +3 -0
  425. package/dist/treedx/client/treedx/graph/queries/query-graph.js +7 -0
  426. package/dist/treedx/client/treedx/graph/queries/search-graph-entities.d.ts +3 -0
  427. package/dist/treedx/client/treedx/graph/queries/search-graph-entities.js +6 -0
  428. package/dist/treedx/client/treedx/graph/queries/search-graph-files.d.ts +3 -0
  429. package/dist/treedx/client/treedx/graph/queries/search-graph-files.js +6 -0
  430. package/dist/treedx/client/treedx/graph/queries/search-graph-sections.d.ts +3 -0
  431. package/dist/treedx/client/treedx/graph/queries/search-graph-sections.js +6 -0
  432. package/dist/treedx/client/treedx/graph/updates/refresh-graph.d.ts +3 -0
  433. package/dist/treedx/client/treedx/graph/updates/refresh-graph.js +7 -0
  434. package/dist/treedx/client/treedx/search/contracts/federated-search.d.ts +3 -0
  435. package/dist/treedx/client/treedx/search/contracts/federated-search.js +7 -0
  436. package/dist/treedx/client/treedx/workspaces/creation/create-workspace.d.ts +3 -0
  437. package/dist/treedx/client/treedx/workspaces/creation/create-workspace.js +7 -0
  438. package/dist/treedx/client/treedx/workspaces/retirement/abandon-workspace.d.ts +3 -0
  439. package/dist/treedx/client/treedx/workspaces/retirement/abandon-workspace.js +12 -0
  440. package/dist/treedx/client/treedx/workspaces/retirement/close-workspace.d.ts +2 -0
  441. package/dist/treedx/client/treedx/workspaces/retirement/close-workspace.js +6 -0
  442. package/dist/treedx/generated/openapi-types.d.ts +104 -0
  443. package/dist/treedx/support/client.d.ts +251 -0
  444. package/dist/treedx/support/client.js +252 -0
  445. package/dist/treedx/support/errors.d.ts +13 -0
  446. package/dist/treedx/types/tree-dx-actor.d.ts +209 -0
  447. package/dist/treedx/types/tree-dx-actor.js +8 -0
  448. package/dist/treedx/types/tree-dx-artifact-list-response.d.ts +13 -0
  449. package/dist/treedx/types/tree-dx-artifact-list-response.js +0 -0
  450. package/dist/treedx/types/tree-dx-changeset.d.ts +51 -0
  451. package/dist/treedx/types/tree-dx-changeset.js +6 -0
  452. package/dist/treedx/types/tree-dx-context-request.d.ts +245 -0
  453. package/dist/treedx/types/tree-dx-context-request.js +0 -0
  454. package/dist/treedx/types/tree-dx-exec-result.d.ts +249 -0
  455. package/dist/treedx/types/tree-dx-exec-result.js +0 -0
  456. package/dist/treedx/types/tree-dx-list-tree-request.d.ts +222 -0
  457. package/dist/treedx/types/tree-dx-list-tree-request.js +0 -0
  458. package/dist/treedx/types/tree-dx-push-request.d.ts +229 -0
  459. package/dist/treedx/types/tree-dx-push-request.js +0 -0
  460. package/dist/treedx/types.d.ts +7 -1084
  461. package/dist/treedx/types.js +7 -8
  462. package/dist/types/agents/agent-activity-profile.d.ts +267 -0
  463. package/dist/types/agents/agent-activity-profile.js +0 -0
  464. package/dist/types/agents/agent-trigger-kinds.d.ts +189 -0
  465. package/dist/types/agents/agent-trigger-kinds.js +107 -0
  466. package/dist/types/agents/execution-run-ref.d.ts +136 -0
  467. package/dist/types/agents/execution-run-ref.js +0 -0
  468. package/dist/types/agents.d.ts +3 -493
  469. package/dist/types/agents.js +3 -95
  470. package/package.json +77 -362
  471. package/dist/agent-capacity.d.ts +0 -1100
  472. package/dist/agent-capacity.js +0 -1822
  473. package/dist/agent-tools.d.ts +0 -37
  474. package/dist/agent-tools.js +0 -301
  475. package/dist/api/app.d.ts +0 -8
  476. package/dist/api/app.js +0 -404
  477. package/dist/api/auth/d1-database.d.ts +0 -3
  478. package/dist/api/auth/d1-database.js +0 -20
  479. package/dist/api/auth/d1-provider.d.ts +0 -85
  480. package/dist/api/auth/d1-provider.js +0 -95
  481. package/dist/api/auth/d1-store.d.ts +0 -121
  482. package/dist/api/auth/d1-store.js +0 -990
  483. package/dist/api/auth/memory-provider.d.ts +0 -82
  484. package/dist/api/auth/memory-provider.js +0 -297
  485. package/dist/api/auth/rbac.d.ts +0 -22
  486. package/dist/api/auth/rbac.js +0 -162
  487. package/dist/api/auth/tokens.d.ts +0 -18
  488. package/dist/api/auth/tokens.js +0 -56
  489. package/dist/api/config.d.ts +0 -4
  490. package/dist/api/config.js +0 -149
  491. package/dist/api/http.d.ts +0 -28
  492. package/dist/api/http.js +0 -51
  493. package/dist/api/index.d.ts +0 -10
  494. package/dist/api/index.js +0 -29
  495. package/dist/api/operations-routes.d.ts +0 -11
  496. package/dist/api/operations-routes.js +0 -39
  497. package/dist/api/operations.d.ts +0 -3
  498. package/dist/api/operations.js +0 -26
  499. package/dist/api/providers.d.ts +0 -2
  500. package/dist/api/providers.js +0 -85
  501. package/dist/api/railway.d.ts +0 -53
  502. package/dist/api/railway.js +0 -71
  503. package/dist/api/sdk-dispatch.d.ts +0 -6
  504. package/dist/api/sdk-dispatch.js +0 -14
  505. package/dist/api/sdk-routes.d.ts +0 -11
  506. package/dist/api/sdk-routes.js +0 -29
  507. package/dist/api/templates.d.ts +0 -3
  508. package/dist/api/templates.js +0 -31
  509. package/dist/api/types.d.ts +0 -238
  510. package/dist/capacity-provider.d.ts +0 -494
  511. package/dist/capacity-provider.js +0 -727
  512. package/dist/capacity.d.ts +0 -483
  513. package/dist/capacity.js +0 -2331
  514. package/dist/cli-tools.d.ts +0 -3
  515. package/dist/cli-tools.js +0 -46
  516. package/dist/content-operations.d.ts +0 -97
  517. package/dist/content-operations.js +0 -250
  518. package/dist/content-store.d.ts +0 -25
  519. package/dist/content-store.js +0 -269
  520. package/dist/control-plane-client.d.ts +0 -203
  521. package/dist/control-plane-client.js +0 -540
  522. package/dist/control-plane.d.ts +0 -101
  523. package/dist/control-plane.js +0 -201
  524. package/dist/copilot.d.ts +0 -18
  525. package/dist/copilot.js +0 -90
  526. package/dist/d1-http.d.ts +0 -38
  527. package/dist/d1-http.js +0 -95
  528. package/dist/d1-store.d.ts +0 -336
  529. package/dist/d1-store.js +0 -1431
  530. package/dist/db/d1.d.ts +0 -246
  531. package/dist/db/d1.js +0 -8
  532. package/dist/db/index.d.ts +0 -3
  533. package/dist/db/index.js +0 -3
  534. package/dist/db/market-schema.d.ts +0 -83651
  535. package/dist/db/market-schema.js +0 -3725
  536. package/dist/db/node-sqlite.d.ts +0 -297
  537. package/dist/db/node-sqlite.js +0 -133
  538. package/dist/db/schema.d.ts +0 -483
  539. package/dist/db/schema.js +0 -29
  540. package/dist/dispatch.d.ts +0 -4
  541. package/dist/dispatch.js +0 -174
  542. package/dist/field-aliases.d.ts +0 -11
  543. package/dist/fixture-support.d.ts +0 -24
  544. package/dist/fixture-support.js +0 -385
  545. package/dist/frontmatter.d.ts +0 -6
  546. package/dist/frontmatter.js +0 -33
  547. package/dist/git-runtime.d.ts +0 -16
  548. package/dist/git-runtime.js +0 -69
  549. package/dist/governance.d.ts +0 -133
  550. package/dist/governance.js +0 -285
  551. package/dist/graph/build.d.ts +0 -19
  552. package/dist/graph/build.js +0 -949
  553. package/dist/graph/dsl.d.ts +0 -2
  554. package/dist/graph/dsl.js +0 -243
  555. package/dist/graph/query.d.ts +0 -47
  556. package/dist/graph/query.js +0 -447
  557. package/dist/graph/ranking.d.ts +0 -3
  558. package/dist/graph/ranking.js +0 -483
  559. package/dist/graph/schema.d.ts +0 -142
  560. package/dist/graph/schema.js +0 -137
  561. package/dist/graph.d.ts +0 -52
  562. package/dist/graph.js +0 -133
  563. package/dist/guarantees/index.d.ts +0 -512
  564. package/dist/guarantees/index.js +0 -1782
  565. package/dist/hosting/apps.d.ts +0 -12
  566. package/dist/hosting/apps.js +0 -107
  567. package/dist/hosting/builtins.d.ts +0 -25
  568. package/dist/hosting/builtins.js +0 -685
  569. package/dist/hosting/contracts.d.ts +0 -190
  570. package/dist/hosting/graph.d.ts +0 -110
  571. package/dist/hosting/graph.js +0 -993
  572. package/dist/hosting/index.d.ts +0 -4
  573. package/dist/hosting/index.js +0 -4
  574. package/dist/index.d.ts +0 -88
  575. package/dist/index.js +0 -757
  576. package/dist/local-dev/managed-dev.d.ts +0 -85
  577. package/dist/local-dev/managed-dev.js +0 -431
  578. package/dist/managed-dependencies.d.ts +0 -91
  579. package/dist/managed-dependencies.js +0 -1186
  580. package/dist/market-client.d.ts +0 -831
  581. package/dist/market-client.js +0 -1219
  582. package/dist/model-registry.d.ts +0 -8
  583. package/dist/model-registry.js +0 -674
  584. package/dist/operations/agent-tools.d.ts +0 -105
  585. package/dist/operations/agent-tools.js +0 -171
  586. package/dist/operations/providers/default.d.ts +0 -10
  587. package/dist/operations/providers/default.js +0 -1245
  588. package/dist/operations/repository-operations.d.ts +0 -158
  589. package/dist/operations/repository-operations.js +0 -851
  590. package/dist/operations/runtime.d.ts +0 -7
  591. package/dist/operations/runtime.js +0 -61
  592. package/dist/operations/services/bootstrap-runner.d.ts +0 -39
  593. package/dist/operations/services/bootstrap-runner.js +0 -191
  594. package/dist/operations/services/build-warning-policy.d.ts +0 -34
  595. package/dist/operations/services/build-warning-policy.js +0 -91
  596. package/dist/operations/services/commit-message-provider.d.ts +0 -65
  597. package/dist/operations/services/commit-message-provider.js +0 -496
  598. package/dist/operations/services/config-runtime.d.ts +0 -558
  599. package/dist/operations/services/config-runtime.js +0 -3494
  600. package/dist/operations/services/d1-migration.d.ts +0 -6
  601. package/dist/operations/services/d1-migration.js +0 -120
  602. package/dist/operations/services/deploy.d.ts +0 -645
  603. package/dist/operations/services/deploy.js +0 -3826
  604. package/dist/operations/services/deployment-readiness.d.ts +0 -30
  605. package/dist/operations/services/deployment-readiness.js +0 -217
  606. package/dist/operations/services/export-runtime.d.ts +0 -18
  607. package/dist/operations/services/export-runtime.js +0 -140
  608. package/dist/operations/services/git-remote-policy.d.ts +0 -9
  609. package/dist/operations/services/git-remote-policy.js +0 -63
  610. package/dist/operations/services/git-runner.d.ts +0 -68
  611. package/dist/operations/services/git-runner.js +0 -500
  612. package/dist/operations/services/git-workflow.d.ts +0 -255
  613. package/dist/operations/services/git-workflow.js +0 -845
  614. package/dist/operations/services/github-actions-verification.d.ts +0 -148
  615. package/dist/operations/services/github-actions-verification.js +0 -589
  616. package/dist/operations/services/github-api.d.ts +0 -279
  617. package/dist/operations/services/github-api.js +0 -936
  618. package/dist/operations/services/github-automation.d.ts +0 -230
  619. package/dist/operations/services/github-automation.js +0 -520
  620. package/dist/operations/services/github-credentials.d.ts +0 -13
  621. package/dist/operations/services/github-credentials.js +0 -59
  622. package/dist/operations/services/hosted-service-checks.d.ts +0 -82
  623. package/dist/operations/services/hosted-service-checks.js +0 -527
  624. package/dist/operations/services/hosting-audit.d.ts +0 -69
  625. package/dist/operations/services/hosting-audit.js +0 -638
  626. package/dist/operations/services/hub-launch.d.ts +0 -182
  627. package/dist/operations/services/hub-launch.js +0 -309
  628. package/dist/operations/services/hub-provider-launch.d.ts +0 -160
  629. package/dist/operations/services/hub-provider-launch.js +0 -1056
  630. package/dist/operations/services/key-agent.d.ts +0 -137
  631. package/dist/operations/services/key-agent.js +0 -641
  632. package/dist/operations/services/live-hosted-service-checks.d.ts +0 -30
  633. package/dist/operations/services/live-hosted-service-checks.js +0 -611
  634. package/dist/operations/services/local-cleanup.d.ts +0 -30
  635. package/dist/operations/services/local-cleanup.js +0 -77
  636. package/dist/operations/services/local-dev.d.ts +0 -8
  637. package/dist/operations/services/local-dev.js +0 -97
  638. package/dist/operations/services/managed-host-security.d.ts +0 -13
  639. package/dist/operations/services/managed-host-security.js +0 -56
  640. package/dist/operations/services/managed-repositories.d.ts +0 -37
  641. package/dist/operations/services/managed-repositories.js +0 -177
  642. package/dist/operations/services/market-packaging.d.ts +0 -59
  643. package/dist/operations/services/market-packaging.js +0 -234
  644. package/dist/operations/services/operations-runner-smoke.d.ts +0 -31
  645. package/dist/operations/services/operations-runner-smoke.js +0 -212
  646. package/dist/operations/services/package-adapters.d.ts +0 -184
  647. package/dist/operations/services/package-adapters.js +0 -912
  648. package/dist/operations/services/package-artifacts.d.ts +0 -37
  649. package/dist/operations/services/package-artifacts.js +0 -99
  650. package/dist/operations/services/package-reference-policy.d.ts +0 -64
  651. package/dist/operations/services/package-reference-policy.js +0 -364
  652. package/dist/operations/services/project-host-operations.d.ts +0 -153
  653. package/dist/operations/services/project-host-operations.js +0 -365
  654. package/dist/operations/services/project-platform.d.ts +0 -727
  655. package/dist/operations/services/project-platform.js +0 -1603
  656. package/dist/operations/services/project-web-monitor.d.ts +0 -15
  657. package/dist/operations/services/project-web-monitor.js +0 -377
  658. package/dist/operations/services/railway-api.d.ts +0 -494
  659. package/dist/operations/services/railway-api.js +0 -1874
  660. package/dist/operations/services/railway-cli.d.ts +0 -47
  661. package/dist/operations/services/railway-cli.js +0 -142
  662. package/dist/operations/services/railway-deploy.d.ts +0 -161
  663. package/dist/operations/services/railway-deploy.js +0 -1808
  664. package/dist/operations/services/railway-source-policy.d.ts +0 -25
  665. package/dist/operations/services/railway-source-policy.js +0 -111
  666. package/dist/operations/services/release-history.d.ts +0 -59
  667. package/dist/operations/services/release-history.js +0 -158
  668. package/dist/operations/services/release-proof-ledger.d.ts +0 -13
  669. package/dist/operations/services/release-proof-ledger.js +0 -81
  670. package/dist/operations/services/release-proof-planner.d.ts +0 -48
  671. package/dist/operations/services/release-proof-planner.js +0 -195
  672. package/dist/operations/services/release-proof-runner.d.ts +0 -16
  673. package/dist/operations/services/release-proof-runner.js +0 -169
  674. package/dist/operations/services/release-proof.d.ts +0 -81
  675. package/dist/operations/services/release-proof.js +0 -79
  676. package/dist/operations/services/repository-save-orchestrator.d.ts +0 -193
  677. package/dist/operations/services/repository-save-orchestrator.js +0 -2110
  678. package/dist/operations/services/runtime-paths.d.ts +0 -19
  679. package/dist/operations/services/runtime-paths.js +0 -54
  680. package/dist/operations/services/runtime-tools.d.ts +0 -35
  681. package/dist/operations/services/runtime-tools.js +0 -212
  682. package/dist/operations/services/save-deploy-preflight.d.ts +0 -32
  683. package/dist/operations/services/save-deploy-preflight.js +0 -82
  684. package/dist/operations/services/template-host-bindings.d.ts +0 -68
  685. package/dist/operations/services/template-host-bindings.js +0 -401
  686. package/dist/operations/services/template-registry.d.ts +0 -110
  687. package/dist/operations/services/template-registry.js +0 -595
  688. package/dist/operations/services/template-secret-sync.d.ts +0 -97
  689. package/dist/operations/services/template-secret-sync.js +0 -292
  690. package/dist/operations/services/verification-cache.d.ts +0 -25
  691. package/dist/operations/services/verification-cache.js +0 -71
  692. package/dist/operations/services/watch-dev.d.ts +0 -21
  693. package/dist/operations/services/watch-dev.js +0 -282
  694. package/dist/operations/services/workflow-timing.d.ts +0 -25
  695. package/dist/operations/services/workflow-timing.js +0 -79
  696. package/dist/operations/services/workspace-dependency-mode.d.ts +0 -74
  697. package/dist/operations/services/workspace-dependency-mode.js +0 -478
  698. package/dist/operations/services/workspace-preflight.d.ts +0 -40
  699. package/dist/operations/services/workspace-preflight.js +0 -172
  700. package/dist/operations/services/workspace-save-script.d.ts +0 -26
  701. package/dist/operations/services/workspace-save-script.js +0 -50
  702. package/dist/operations/services/workspace-save.d.ts +0 -76
  703. package/dist/operations/services/workspace-save.js +0 -453
  704. package/dist/operations/services/workspace-tools.d.ts +0 -17
  705. package/dist/operations/services/workspace-tools.js +0 -320
  706. package/dist/operations-registry.d.ts +0 -5
  707. package/dist/operations-registry.js +0 -98
  708. package/dist/operations-types.d.ts +0 -75
  709. package/dist/operations-types.js +0 -17
  710. package/dist/operations.d.ts +0 -17
  711. package/dist/operations.js +0 -114
  712. package/dist/platform/book-export.d.ts +0 -78
  713. package/dist/platform/book-export.js +0 -451
  714. package/dist/platform/books-data.d.ts +0 -28
  715. package/dist/platform/books-data.js +0 -111
  716. package/dist/platform/config.d.ts +0 -27
  717. package/dist/platform/config.js +0 -100
  718. package/dist/platform/content-runtime-source.d.ts +0 -54
  719. package/dist/platform/content-runtime-source.js +0 -169
  720. package/dist/platform/contracts.d.ts +0 -361
  721. package/dist/platform/deploy-config.d.ts +0 -17
  722. package/dist/platform/deploy-config.js +0 -731
  723. package/dist/platform/deploy-runtime.d.ts +0 -22
  724. package/dist/platform/deploy-runtime.js +0 -93
  725. package/dist/platform/desired-state.d.ts +0 -66
  726. package/dist/platform/desired-state.js +0 -1071
  727. package/dist/platform/env.yaml +0 -1126
  728. package/dist/platform/environment.d.ts +0 -159
  729. package/dist/platform/environment.js +0 -778
  730. package/dist/platform/local-content-materialization.d.ts +0 -9
  731. package/dist/platform/local-content-materialization.js +0 -212
  732. package/dist/platform/plugin.d.ts +0 -103
  733. package/dist/platform/plugin.js +0 -6
  734. package/dist/platform/plugins/constants.d.ts +0 -26
  735. package/dist/platform/plugins/constants.js +0 -33
  736. package/dist/platform/plugins/runtime.d.ts +0 -41
  737. package/dist/platform/plugins/runtime.js +0 -257
  738. package/dist/platform/plugins.d.ts +0 -6
  739. package/dist/platform/plugins.js +0 -42
  740. package/dist/platform/published-content-pipeline.d.ts +0 -84
  741. package/dist/platform/published-content-pipeline.js +0 -547
  742. package/dist/platform/published-content.d.ts +0 -224
  743. package/dist/platform/published-content.js +0 -611
  744. package/dist/platform/site-config-schema.d.ts +0 -1
  745. package/dist/platform/site-config-schema.js +0 -4
  746. package/dist/platform/tenant/runtime-config.d.ts +0 -154
  747. package/dist/platform/tenant/runtime-config.js +0 -69
  748. package/dist/platform/tenant-config.d.ts +0 -8
  749. package/dist/platform/tenant-config.js +0 -207
  750. package/dist/platform/utils/site-config-schema.d.ts +0 -154
  751. package/dist/platform/utils/site-config-schema.js +0 -450
  752. package/dist/platform-operation-store.d.ts +0 -94
  753. package/dist/platform-operation-store.js +0 -531
  754. package/dist/platform-operations.d.ts +0 -273
  755. package/dist/platform-operations.js +0 -440
  756. package/dist/plugin-default.d.ts +0 -28
  757. package/dist/plugin-default.js +0 -55
  758. package/dist/project-import.d.ts +0 -91
  759. package/dist/project-import.js +0 -257
  760. package/dist/project-workflow.d.ts +0 -233
  761. package/dist/project-workflow.js +0 -82
  762. package/dist/reconcile/bootstrap-systems.d.ts +0 -32
  763. package/dist/reconcile/bootstrap-systems.js +0 -175
  764. package/dist/reconcile/builtin-adapters.d.ts +0 -9
  765. package/dist/reconcile/builtin-adapters.js +0 -5545
  766. package/dist/reconcile/contracts.d.ts +0 -172
  767. package/dist/reconcile/desired-state.d.ts +0 -10
  768. package/dist/reconcile/desired-state.js +0 -322
  769. package/dist/reconcile/engine.d.ts +0 -118
  770. package/dist/reconcile/engine.js +0 -645
  771. package/dist/reconcile/errors.d.ts +0 -5
  772. package/dist/reconcile/errors.js +0 -13
  773. package/dist/reconcile/index.d.ts +0 -10
  774. package/dist/reconcile/index.js +0 -10
  775. package/dist/reconcile/live-acceptance.d.ts +0 -100
  776. package/dist/reconcile/live-acceptance.js +0 -2018
  777. package/dist/reconcile/platform.d.ts +0 -104
  778. package/dist/reconcile/platform.js +0 -100
  779. package/dist/reconcile/providers/docker-private.d.ts +0 -54
  780. package/dist/reconcile/providers/docker-private.js +0 -101
  781. package/dist/reconcile/providers/github-private.d.ts +0 -69
  782. package/dist/reconcile/providers/github-private.js +0 -145
  783. package/dist/reconcile/providers/local-private.d.ts +0 -28
  784. package/dist/reconcile/providers/local-private.js +0 -75
  785. package/dist/reconcile/providers/railway-iac.d.ts +0 -220
  786. package/dist/reconcile/providers/railway-iac.js +0 -621
  787. package/dist/reconcile/providers/release-private.d.ts +0 -89
  788. package/dist/reconcile/providers/release-private.js +0 -140
  789. package/dist/reconcile/registry.d.ts +0 -7
  790. package/dist/reconcile/registry.js +0 -79
  791. package/dist/reconcile/state.d.ts +0 -7
  792. package/dist/reconcile/state.js +0 -270
  793. package/dist/reconcile/units.d.ts +0 -6
  794. package/dist/reconcile/units.js +0 -72
  795. package/dist/remote.d.ts +0 -244
  796. package/dist/remote.js +0 -284
  797. package/dist/scenes/artifacts.d.ts +0 -16
  798. package/dist/scenes/artifacts.js +0 -61
  799. package/dist/scenes/auth.d.ts +0 -2
  800. package/dist/scenes/auth.js +0 -28
  801. package/dist/scenes/base-url.d.ts +0 -12
  802. package/dist/scenes/base-url.js +0 -123
  803. package/dist/scenes/builtin-plugins.d.ts +0 -2
  804. package/dist/scenes/builtin-plugins.js +0 -499
  805. package/dist/scenes/checkpoints.d.ts +0 -14
  806. package/dist/scenes/checkpoints.js +0 -33
  807. package/dist/scenes/device-matrix.d.ts +0 -2
  808. package/dist/scenes/device-matrix.js +0 -100
  809. package/dist/scenes/devices.d.ts +0 -11
  810. package/dist/scenes/devices.js +0 -40
  811. package/dist/scenes/diagnostics.d.ts +0 -5
  812. package/dist/scenes/diagnostics.js +0 -22
  813. package/dist/scenes/diagram-providers.d.ts +0 -2
  814. package/dist/scenes/diagram-providers.js +0 -181
  815. package/dist/scenes/diagram-validation.d.ts +0 -22
  816. package/dist/scenes/diagram-validation.js +0 -74
  817. package/dist/scenes/environment.d.ts +0 -2
  818. package/dist/scenes/environment.js +0 -65
  819. package/dist/scenes/evidence-bundle.d.ts +0 -5
  820. package/dist/scenes/evidence-bundle.js +0 -42
  821. package/dist/scenes/evidence-report.d.ts +0 -10
  822. package/dist/scenes/evidence-report.js +0 -73
  823. package/dist/scenes/evidence.d.ts +0 -16
  824. package/dist/scenes/evidence.js +0 -277
  825. package/dist/scenes/index.d.ts +0 -48
  826. package/dist/scenes/index.js +0 -312
  827. package/dist/scenes/inspect.d.ts +0 -9
  828. package/dist/scenes/inspect.js +0 -64
  829. package/dist/scenes/loader.d.ts +0 -3
  830. package/dist/scenes/loader.js +0 -38
  831. package/dist/scenes/logs.d.ts +0 -2
  832. package/dist/scenes/logs.js +0 -47
  833. package/dist/scenes/operations.d.ts +0 -3
  834. package/dist/scenes/operations.js +0 -128
  835. package/dist/scenes/phase0.d.ts +0 -9
  836. package/dist/scenes/phase0.js +0 -637
  837. package/dist/scenes/planner.d.ts +0 -12
  838. package/dist/scenes/planner.js +0 -166
  839. package/dist/scenes/playwright-adapter.d.ts +0 -2
  840. package/dist/scenes/playwright-adapter.js +0 -63
  841. package/dist/scenes/plugins.d.ts +0 -5
  842. package/dist/scenes/plugins.js +0 -115
  843. package/dist/scenes/progress.d.ts +0 -17
  844. package/dist/scenes/progress.js +0 -24
  845. package/dist/scenes/publish-destinations.d.ts +0 -12
  846. package/dist/scenes/publish-destinations.js +0 -99
  847. package/dist/scenes/publish-plan-report.d.ts +0 -10
  848. package/dist/scenes/publish-plan-report.js +0 -70
  849. package/dist/scenes/publish-plan.d.ts +0 -15
  850. package/dist/scenes/publish-plan.js +0 -248
  851. package/dist/scenes/publish-redaction.d.ts +0 -16
  852. package/dist/scenes/publish-redaction.js +0 -148
  853. package/dist/scenes/publish-release-record.d.ts +0 -13
  854. package/dist/scenes/publish-release-record.js +0 -34
  855. package/dist/scenes/publish-report.d.ts +0 -10
  856. package/dist/scenes/publish-report.js +0 -67
  857. package/dist/scenes/publish.d.ts +0 -16
  858. package/dist/scenes/publish.js +0 -298
  859. package/dist/scenes/registry.d.ts +0 -12
  860. package/dist/scenes/registry.js +0 -65
  861. package/dist/scenes/remotion-adapter.d.ts +0 -3
  862. package/dist/scenes/remotion-adapter.js +0 -94
  863. package/dist/scenes/remotion-composition-registry.d.ts +0 -2
  864. package/dist/scenes/remotion-composition-registry.js +0 -12
  865. package/dist/scenes/remotion-compositions.d.ts +0 -15
  866. package/dist/scenes/remotion-compositions.js +0 -464
  867. package/dist/scenes/remotion-diagrams.d.ts +0 -9
  868. package/dist/scenes/remotion-diagrams.js +0 -188
  869. package/dist/scenes/remotion-input.d.ts +0 -13
  870. package/dist/scenes/remotion-input.js +0 -291
  871. package/dist/scenes/remotion-visuals.d.ts +0 -29
  872. package/dist/scenes/remotion-visuals.js +0 -198
  873. package/dist/scenes/render-media-assets.d.ts +0 -9
  874. package/dist/scenes/render-media-assets.js +0 -117
  875. package/dist/scenes/render-report.d.ts +0 -10
  876. package/dist/scenes/render-report.js +0 -27
  877. package/dist/scenes/render.d.ts +0 -2
  878. package/dist/scenes/render.js +0 -218
  879. package/dist/scenes/reporter.d.ts +0 -3
  880. package/dist/scenes/reporter.js +0 -101
  881. package/dist/scenes/resume.d.ts +0 -2
  882. package/dist/scenes/resume.js +0 -79
  883. package/dist/scenes/runner.d.ts +0 -2
  884. package/dist/scenes/runner.js +0 -687
  885. package/dist/scenes/schema.d.ts +0 -6
  886. package/dist/scenes/schema.js +0 -1023
  887. package/dist/scenes/seed.d.ts +0 -2
  888. package/dist/scenes/seed.js +0 -83
  889. package/dist/scenes/segments.d.ts +0 -15
  890. package/dist/scenes/segments.js +0 -79
  891. package/dist/scenes/selectors.d.ts +0 -3
  892. package/dist/scenes/selectors.js +0 -21
  893. package/dist/scenes/timeline.d.ts +0 -11
  894. package/dist/scenes/timeline.js +0 -26
  895. package/dist/scenes/timeouts.d.ts +0 -6
  896. package/dist/scenes/timeouts.js +0 -17
  897. package/dist/scenes/training-captions.d.ts +0 -14
  898. package/dist/scenes/training-captions.js +0 -98
  899. package/dist/scenes/training-report.d.ts +0 -10
  900. package/dist/scenes/training-report.js +0 -78
  901. package/dist/scenes/training-transcript.d.ts +0 -24
  902. package/dist/scenes/training-transcript.js +0 -204
  903. package/dist/scenes/training.d.ts +0 -10
  904. package/dist/scenes/training.js +0 -134
  905. package/dist/scenes/types.d.ts +0 -1900
  906. package/dist/scenes/types.js +0 -8
  907. package/dist/scenes/visual-audit-contact-sheets.d.ts +0 -6
  908. package/dist/scenes/visual-audit-contact-sheets.js +0 -119
  909. package/dist/scenes/visual-audit-fixtures.d.ts +0 -25
  910. package/dist/scenes/visual-audit-fixtures.js +0 -247
  911. package/dist/scenes/visual-audit-report.d.ts +0 -11
  912. package/dist/scenes/visual-audit-report.js +0 -85
  913. package/dist/scenes/visual-audit-review.d.ts +0 -23
  914. package/dist/scenes/visual-audit-review.js +0 -829
  915. package/dist/scenes/visual-audit-routes.d.ts +0 -13
  916. package/dist/scenes/visual-audit-routes.js +0 -308
  917. package/dist/scenes/visual-audit.d.ts +0 -3
  918. package/dist/scenes/visual-audit.js +0 -596
  919. package/dist/scripts/aggregate-book.js +0 -16
  920. package/dist/scripts/assert-release-tag-version.js +0 -23
  921. package/dist/scripts/build-dist.js +0 -294
  922. package/dist/scripts/build-tenant-worker.js +0 -36
  923. package/dist/scripts/check-build-warnings.js +0 -51
  924. package/dist/scripts/cleanup-markdown.js +0 -377
  925. package/dist/scripts/cli-test-fixtures.js +0 -44
  926. package/dist/scripts/config-treeseed.js +0 -131
  927. package/dist/scripts/deployment-readiness.js +0 -20
  928. package/dist/scripts/generate-treedx-openapi-types.js +0 -186
  929. package/dist/scripts/install-managed-dependencies.js +0 -12
  930. package/dist/scripts/key-agent.js +0 -165
  931. package/dist/scripts/local-dev.js +0 -129
  932. package/dist/scripts/migrate-journey-csv-to-guarantees.js +0 -140
  933. package/dist/scripts/operations-runner-smoke.js +0 -16
  934. package/dist/scripts/package-tools.js +0 -85
  935. package/dist/scripts/patch-starlight-content-path.js +0 -173
  936. package/dist/scripts/prepare.js +0 -10
  937. package/dist/scripts/publish-package.js +0 -29
  938. package/dist/scripts/release-verify.js +0 -105
  939. package/dist/scripts/run-fixture-astro-command.js +0 -18
  940. package/dist/scripts/scaffold-site.js +0 -66
  941. package/dist/scripts/sync-template.js +0 -20
  942. package/dist/scripts/template-catalog.test.js +0 -86
  943. package/dist/scripts/template-command.js +0 -31
  944. package/dist/scripts/tenant-astro-command.js +0 -3
  945. package/dist/scripts/tenant-build.js +0 -48
  946. package/dist/scripts/tenant-check.js +0 -10
  947. package/dist/scripts/tenant-d1-migrate-local.js +0 -15
  948. package/dist/scripts/tenant-deploy.js +0 -220
  949. package/dist/scripts/tenant-destroy.js +0 -112
  950. package/dist/scripts/tenant-dev.js +0 -160
  951. package/dist/scripts/tenant-lint.js +0 -4
  952. package/dist/scripts/tenant-test.js +0 -4
  953. package/dist/scripts/tenant-workflow-action.js +0 -101
  954. package/dist/scripts/test-cloudflare-local.js +0 -209
  955. package/dist/scripts/test-scaffold.js +0 -300
  956. package/dist/scripts/test-smoke.js +0 -137
  957. package/dist/scripts/treeseed-assert-release-tag-version.js +0 -21
  958. package/dist/scripts/treeseed-build-dist.js +0 -131
  959. package/dist/scripts/treeseed-publish-package.js +0 -19
  960. package/dist/scripts/treeseed-release-verify.js +0 -131
  961. package/dist/scripts/validate-templates.js +0 -6
  962. package/dist/scripts/verify-driver.js +0 -45
  963. package/dist/scripts/workflow-commands.test.js +0 -31
  964. package/dist/scripts/workspace-command-e2e.js +0 -718
  965. package/dist/scripts/workspace-lint.js +0 -15
  966. package/dist/scripts/workspace-preflight.js +0 -22
  967. package/dist/scripts/workspace-publish-changed-packages.js +0 -16
  968. package/dist/scripts/workspace-release-test.js +0 -104
  969. package/dist/scripts/workspace-release-verify.js +0 -81
  970. package/dist/scripts/workspace-save.js +0 -64
  971. package/dist/scripts/workspace-start-warning.js +0 -3
  972. package/dist/scripts/workspace-test-unit.js +0 -4
  973. package/dist/scripts/workspace-test.js +0 -17
  974. package/dist/sdk-dispatch.d.ts +0 -12
  975. package/dist/sdk-dispatch.js +0 -126
  976. package/dist/sdk-fields.d.ts +0 -11
  977. package/dist/sdk-filters.d.ts +0 -4
  978. package/dist/sdk-filters.js +0 -74
  979. package/dist/sdk-types.d.ts +0 -3868
  980. package/dist/sdk-types.js +0 -542
  981. package/dist/sdk-version.d.ts +0 -2
  982. package/dist/sdk-version.js +0 -42
  983. package/dist/sdk.d.ts +0 -266
  984. package/dist/sdk.js +0 -825
  985. package/dist/secrets-capability.d.ts +0 -421
  986. package/dist/secrets-capability.js +0 -530
  987. package/dist/seeds/errors.d.ts +0 -5
  988. package/dist/seeds/errors.js +0 -22
  989. package/dist/seeds/index.d.ts +0 -20
  990. package/dist/seeds/index.js +0 -53
  991. package/dist/seeds/loader.d.ts +0 -8
  992. package/dist/seeds/loader.js +0 -32
  993. package/dist/seeds/normalize.d.ts +0 -13
  994. package/dist/seeds/normalize.js +0 -282
  995. package/dist/seeds/planner.d.ts +0 -10
  996. package/dist/seeds/planner.js +0 -149
  997. package/dist/seeds/schema.d.ts +0 -2
  998. package/dist/seeds/schema.js +0 -893
  999. package/dist/seeds/types.d.ts +0 -312
  1000. package/dist/seeds/types.js +0 -12
  1001. package/dist/service-credentials.d.ts +0 -54
  1002. package/dist/service-credentials.js +0 -112
  1003. package/dist/stores/cursor-store.d.ts +0 -10
  1004. package/dist/stores/cursor-store.js +0 -164
  1005. package/dist/stores/envelopes.d.ts +0 -116
  1006. package/dist/stores/envelopes.js +0 -219
  1007. package/dist/stores/helpers.d.ts +0 -12
  1008. package/dist/stores/helpers.js +0 -42
  1009. package/dist/stores/lease-store.d.ts +0 -18
  1010. package/dist/stores/lease-store.js +0 -189
  1011. package/dist/stores/message-store.d.ts +0 -12
  1012. package/dist/stores/message-store.js +0 -273
  1013. package/dist/stores/operational-store.d.ts +0 -55
  1014. package/dist/stores/operational-store.js +0 -861
  1015. package/dist/stores/project-workflow-store.d.ts +0 -56
  1016. package/dist/stores/project-workflow-store.js +0 -482
  1017. package/dist/stores/run-store.d.ts +0 -9
  1018. package/dist/stores/run-store.js +0 -75
  1019. package/dist/stores/subscription-store.d.ts +0 -8
  1020. package/dist/stores/subscription-store.js +0 -73
  1021. package/dist/template-catalog.d.ts +0 -13
  1022. package/dist/template-catalog.js +0 -151
  1023. package/dist/template-launch-requirements.d.ts +0 -118
  1024. package/dist/template-launch-requirements.js +0 -768
  1025. package/dist/template-launch-ui.d.ts +0 -85
  1026. package/dist/template-launch-ui.js +0 -189
  1027. package/dist/timing.d.ts +0 -20
  1028. package/dist/timing.js +0 -73
  1029. package/dist/treedx/adapters.d.ts +0 -6
  1030. package/dist/treedx/adapters.js +0 -36
  1031. package/dist/treedx/client.d.ts +0 -222
  1032. package/dist/treedx/client.js +0 -871
  1033. package/dist/treedx/errors.d.ts +0 -13
  1034. package/dist/treedx/federated-client.d.ts +0 -27
  1035. package/dist/treedx/federated-client.js +0 -158
  1036. package/dist/treedx/graph-adapter.d.ts +0 -33
  1037. package/dist/treedx/graph-adapter.js +0 -156
  1038. package/dist/treedx/index.d.ts +0 -14
  1039. package/dist/treedx/index.js +0 -48
  1040. package/dist/treedx/market-integration.d.ts +0 -27
  1041. package/dist/treedx/market-integration.js +0 -131
  1042. package/dist/treedx/ports.d.ts +0 -166
  1043. package/dist/treedx/ports.js +0 -231
  1044. package/dist/treedx/query-adapter.d.ts +0 -19
  1045. package/dist/treedx/query-adapter.js +0 -62
  1046. package/dist/treedx/registry-client.d.ts +0 -11
  1047. package/dist/treedx/registry-client.js +0 -19
  1048. package/dist/treedx/repository-adapter.d.ts +0 -45
  1049. package/dist/treedx/repository-adapter.js +0 -319
  1050. package/dist/treedx/sdk-integration.d.ts +0 -27
  1051. package/dist/treedx/sdk-integration.js +0 -63
  1052. package/dist/treedx/workspace-adapter.d.ts +0 -27
  1053. package/dist/treedx/workspace-adapter.js +0 -65
  1054. package/dist/treedx-backends.d.ts +0 -220
  1055. package/dist/treedx-backends.js +0 -634
  1056. package/dist/treedx-client.d.ts +0 -89
  1057. package/dist/treedx-client.js +0 -184
  1058. package/dist/treeseed/services/compose.yml +0 -6
  1059. package/dist/treeseed/template-catalog/catalog.fixture.json +0 -707
  1060. package/dist/types/cloudflare.d.ts +0 -54
  1061. package/dist/verification.d.ts +0 -31
  1062. package/dist/verification.js +0 -430
  1063. package/dist/workflow/operations.d.ts +0 -1516
  1064. package/dist/workflow/operations.js +0 -7001
  1065. package/dist/workflow/policy.d.ts +0 -12
  1066. package/dist/workflow/policy.js +0 -70
  1067. package/dist/workflow/runs.d.ts +0 -143
  1068. package/dist/workflow/runs.js +0 -720
  1069. package/dist/workflow/session.d.ts +0 -34
  1070. package/dist/workflow/session.js +0 -160
  1071. package/dist/workflow/worktrees.d.ts +0 -43
  1072. package/dist/workflow/worktrees.js +0 -307
  1073. package/dist/workflow-state.d.ts +0 -250
  1074. package/dist/workflow-state.js +0 -844
  1075. package/dist/workflow-support.d.ts +0 -28
  1076. package/dist/workflow-support.js +0 -390
  1077. package/dist/workflow.d.ts +0 -327
  1078. package/dist/workflow.js +0 -140
  1079. package/drizzle/d1/0000_treeseed_d1.sql +0 -19
  1080. package/drizzle/market/0000_market_control_plane.sql +0 -3223
  1081. package/drizzle/market/0001_capacity_budget_mode_default.sql +0 -4
  1082. package/drizzle/market/0002_user_email_addresses.sql +0 -26
  1083. package/drizzle/market/0003_project_team_slug_unique.sql +0 -4
  1084. package/drizzle/market/0004_treedx_market_integration.sql +0 -99
  1085. package/drizzle/market/0005_agent_capacity_coordination.sql +0 -145
  1086. package/drizzle/market/0006_provider_assignment_lifecycle.sql +0 -9
  1087. package/drizzle/market/0007_agent_architecture_gap_closure.sql +0 -157
  1088. package/drizzle/market/0008_agent_capacity_operational_closure.sql +0 -27
  1089. package/drizzle/market/0009_agent_capacity_runtime_hardening.sql +0 -29
  1090. package/drizzle/market/0010_secrets_capability_persistence.sql +0 -130
  1091. package/drizzle/market/0011_github_app_adapter.sql +0 -47
  1092. package/drizzle/market/0012_workday_test_runs.sql +0 -44
  1093. package/drizzle/market/0013_runtime_task_lifecycle.sql +0 -39
  1094. package/drizzle/market/0014_governance_pipeline.sql +0 -189
  1095. package/drizzle/market/0015_agent_decision_assignment_graphs.sql +0 -60
  1096. package/scripts/verify-driver.ts +0 -51
  1097. package/templates/github/deploy-web.workflow.yml +0 -168
  1098. package/templates/github/hosted-project.workflow.yml +0 -76
  1099. /package/dist/{api/types.js → agent-capacity/contracts/capacity/workdays/workday-records.js} +0 -0
  1100. /package/dist/{hosting/contracts.js → agent-capacity/contracts/operations/workflow-promotion.js} +0 -0
  1101. /package/dist/{platform/contracts.js → agent-capacity/contracts/projects/agents/project-agent-class.js} +0 -0
  1102. /package/dist/{reconcile/contracts.js → agent-capacity/contracts/runtime/runtime-observability.js} +0 -0
  1103. /package/dist/{types/cloudflare.js → agent-capacity/contracts/support/decision-work.js} +0 -0
  1104. /package/dist/{field-aliases.js → entrypoints/models/field-aliases.js} +0 -0
  1105. /package/dist/{sdk-fields.js → entrypoints/models/sdk-fields.js} +0 -0
  1106. /package/dist/{runtime.d.ts → runtime/runtime.d.ts} +0 -0
  1107. /package/dist/{runtime.js → runtime/runtime.js} +0 -0
  1108. /package/dist/treedx/{errors.js → support/errors.js} +0 -0
@@ -1,1023 +0,0 @@
1
- import { sceneErrorDiagnostic, sceneWarningDiagnostic } from "./diagnostics.js";
2
- import { findBuiltInTreeseedSceneAction, findBuiltInTreeseedSceneAssertion } from "./registry.js";
3
- import {
4
- TREESEED_SCENE_BROWSERS,
5
- TREESEED_SCENE_ENVIRONMENTS,
6
- TREESEED_SCENE_SCHEMA_VERSION
7
- } from "./types.js";
8
- const FILESYSTEM_SAFE_SCENE_ID = /^[a-z0-9][a-z0-9._-]*$/u;
9
- const TOP_LEVEL_FIELDS = /* @__PURE__ */ new Set(["schemaVersion", "id", "title", "description", "audience", "journey", "mode", "target", "devices", "setup", "artifacts", "workflow", "chapters", "overlays", "diagrams", "render", "runtime", "training", "visualAudit", "xScenario"]);
10
- const FILESYSTEM_SAFE_CHECKPOINT_ID = /^[a-z0-9][a-z0-9._-]*$/u;
11
- const DIAGRAM_PLACEMENTS = ["overlay", "interstitial", "standalone"];
12
- const CAPTION_FORMATS = ["vtt", "srt"];
13
- const TRANSCRIPT_FORMATS = ["json", "markdown"];
14
- const NARRATION_STYLES = ["concise", "instructional", "operator"];
15
- const EVIDENCE_FITS = ["fixed-browser", "contain", "cover"];
16
- const DEVICE_ORIENTATIONS = ["landscape", "portrait"];
17
- const DEVICE_BROWSER_CHROME = ["desktop", "tablet", "mobile"];
18
- const VISUAL_UNITS = ["px", "percent"];
19
- const VISUAL_REGIONS = ["top-left", "top", "top-right", "left", "center", "right", "bottom-left", "bottom", "bottom-right"];
20
- const VISUAL_TONES = ["neutral", "info", "success", "warning", "danger", "brand"];
21
- const VISUAL_SHADOWS = ["none", "soft", "medium", "strong"];
22
- const MOTION_UNITS = ["seconds", "progress"];
23
- const MOTION_EASINGS = ["linear", "ease", "ease-in", "ease-out", "ease-in-out"];
24
- const VISUAL_OBJECT_TYPES = ["text", "box", "circle", "line", "arrow", "badge", "cursor", "spotlight"];
25
- const OVERLAY_VARIANTS = ["callout", "spotlight", "label", "panel", "lower-third", "badge", "cursor", "custom"];
26
- function isRecord(value) {
27
- return typeof value === "object" && value !== null && !Array.isArray(value);
28
- }
29
- function asString(value) {
30
- return typeof value === "string" ? value.trim() : "";
31
- }
32
- function requireString(record, field, path, diagnostics) {
33
- const value = asString(record[field]);
34
- if (!value) {
35
- diagnostics.push(sceneErrorDiagnostic("scene.missing_field", `Missing required field: ${field}.`, `${path}.${field}`));
36
- }
37
- return value;
38
- }
39
- function optionalString(record, field) {
40
- return asString(record[field]) || void 0;
41
- }
42
- function booleanField(record, field, defaultValue, path, diagnostics) {
43
- const value = record[field];
44
- if (value === void 0) return defaultValue;
45
- if (typeof value !== "boolean") {
46
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_boolean", `Expected ${field} to be a boolean.`, `${path}.${field}`));
47
- return defaultValue;
48
- }
49
- return value;
50
- }
51
- function positiveNumberField(record, field, defaultValue, path, diagnostics) {
52
- const value = record[field];
53
- if (value === void 0) return defaultValue;
54
- if (typeof value !== "number" || !Number.isFinite(value) || value <= 0) {
55
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_number", `Expected ${field} to be a positive finite number.`, `${path}.${field}`));
56
- return defaultValue;
57
- }
58
- return value;
59
- }
60
- function finiteNumberField(record, field, defaultValue, path, diagnostics) {
61
- const value = record[field];
62
- if (value === void 0) return defaultValue;
63
- if (typeof value !== "number" || !Number.isFinite(value)) {
64
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_number", `Expected ${field} to be a finite number.`, `${path}.${field}`));
65
- return defaultValue;
66
- }
67
- return value;
68
- }
69
- function nullablePositiveNumberField(record, field, defaultValue, path, diagnostics) {
70
- const value = record[field];
71
- if (value === void 0) return defaultValue;
72
- if (value === null) return null;
73
- if (typeof value !== "number" || !Number.isFinite(value) || value <= 0) {
74
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_number", `Expected ${field} to be a positive finite number or null.`, `${path}.${field}`));
75
- return defaultValue;
76
- }
77
- return value;
78
- }
79
- function objectField(record, field, path, diagnostics) {
80
- const value = record[field];
81
- if (value === void 0) return void 0;
82
- if (!isRecord(value)) {
83
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_object", `Expected ${field} to be an object.`, `${path}.${field}`));
84
- return void 0;
85
- }
86
- return value;
87
- }
88
- function arrayField(record, field, path, diagnostics) {
89
- const value = record[field];
90
- if (value === void 0) return void 0;
91
- if (!Array.isArray(value)) {
92
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_array", `Expected ${field} to be an array.`, `${path}.${field}`));
93
- return void 0;
94
- }
95
- return value;
96
- }
97
- function stringArrayField(record, field, path, diagnostics) {
98
- const value = arrayField(record, field, path, diagnostics);
99
- if (!value) return [];
100
- const strings = [];
101
- value.forEach((entry, index) => {
102
- const text = asString(entry);
103
- if (!text) {
104
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_string", `Expected ${field} entry to be a non-empty string.`, `${path}.${field}[${index}]`));
105
- return;
106
- }
107
- strings.push(text);
108
- });
109
- return strings;
110
- }
111
- function stateRefArray(record, field, path, diagnostics) {
112
- const value = arrayField(record, field, path, diagnostics);
113
- if (!value) return void 0;
114
- const refs = [];
115
- value.forEach((entry, index) => {
116
- const entryPath = `${path}.${field}[${index}]`;
117
- if (!isRecord(entry)) {
118
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_state_ref", `Expected ${field} entry to be an object.`, entryPath));
119
- return;
120
- }
121
- refs.push({ key: requireString(entry, "key", entryPath, diagnostics), kind: requireString(entry, "kind", entryPath, diagnostics) });
122
- });
123
- return refs;
124
- }
125
- function parseJourney(record, diagnostics) {
126
- const journey = objectField(record, "journey", "manifest", diagnostics);
127
- if (!journey) return void 0;
128
- const kind = optionalString(journey, "kind");
129
- if (kind && !["service", "page", "visual-audit"].includes(kind)) diagnostics.push(sceneErrorDiagnostic("scene.invalid_journey_kind", `Unsupported journey kind: ${kind}.`, "journey.kind"));
130
- return {
131
- kind: kind === "page" || kind === "visual-audit" ? kind : "service",
132
- proves: stringArrayField(journey, "proves", "journey", diagnostics),
133
- minimumSteps: positiveNumberField(journey, "minimumSteps", void 0, "journey", diagnostics),
134
- requiresInteractiveAction: booleanField(journey, "requiresInteractiveAction", false, "journey", diagnostics),
135
- producesState: stateRefArray(journey, "producesState", "journey", diagnostics),
136
- consumesState: stateRefArray(journey, "consumesState", "journey", diagnostics)
137
- };
138
- }
139
- function enumArrayField(record, field, allowed, defaultValue, path, diagnostics) {
140
- const value = record[field];
141
- if (value === void 0) return defaultValue;
142
- if (!Array.isArray(value)) {
143
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_array", `Expected ${field} to be an array.`, `${path}.${field}`));
144
- return defaultValue;
145
- }
146
- const result = [];
147
- value.forEach((entry, index) => {
148
- const text = asString(entry);
149
- if (!allowed.includes(text)) {
150
- diagnostics.push(sceneErrorDiagnostic("scene.training_invalid_config", `Unsupported ${field} entry: ${text}.`, `${path}.${field}[${index}]`));
151
- return;
152
- }
153
- result.push(text);
154
- });
155
- return result.length > 0 ? [...new Set(result)] : defaultValue;
156
- }
157
- function parseEnvironment(value, path, diagnostics, defaultValue) {
158
- const environment = asString(value) || defaultValue;
159
- if (!TREESEED_SCENE_ENVIRONMENTS.includes(environment)) {
160
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_environment", `Unknown environment: ${environment}.`, path));
161
- return defaultValue;
162
- }
163
- return environment;
164
- }
165
- function parseBrowser(value, path, diagnostics) {
166
- const browser = asString(value) || "chromium";
167
- if (!TREESEED_SCENE_BROWSERS.includes(browser)) {
168
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_browser", `Unknown browser: ${browser}.`, path));
169
- return "chromium";
170
- }
171
- return browser;
172
- }
173
- function parseSelector(value, path, diagnostics) {
174
- if (!isRecord(value)) {
175
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_selector", "Expected selector to be an object.", path));
176
- return null;
177
- }
178
- const keys = ["scene", "testId", "role", "text", "css"].filter((key) => value[key] !== void 0);
179
- if (keys.length !== 1) {
180
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_selector", "Expected selector to define exactly one of scene, testId, role, text, or css.", path));
181
- return null;
182
- }
183
- if (value.scene !== void 0) return { scene: requireString(value, "scene", path, diagnostics) };
184
- if (value.testId !== void 0) return { testId: requireString(value, "testId", path, diagnostics) };
185
- if (value.role !== void 0) return { role: requireString(value, "role", path, diagnostics), ...optionalString(value, "name") ? { name: optionalString(value, "name") } : {} };
186
- if (value.text !== void 0) return { text: requireString(value, "text", path, diagnostics) };
187
- const css = requireString(value, "css", path, diagnostics);
188
- const brittle = booleanField(value, "brittle", false, path, diagnostics);
189
- const internal = booleanField(value, "internal", false, path, diagnostics);
190
- if (!brittle && !internal) {
191
- diagnostics.push(sceneWarningDiagnostic("scene.raw_css_selector", "CSS selector should be marked brittle or internal.", `${path}.css`));
192
- }
193
- return { css, ...brittle ? { brittle } : {}, ...internal ? { internal } : {} };
194
- }
195
- function parseAction(value, path, diagnostics) {
196
- if (!isRecord(value)) {
197
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_action", "Expected action to be an object.", path));
198
- return null;
199
- }
200
- const keys = Object.keys(value).filter((key2) => value[key2] !== void 0);
201
- const supported = keys.filter((key2) => findBuiltInTreeseedSceneAction(key2));
202
- if (keys.length !== 1 || supported.length !== 1) {
203
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_action", `Expected exactly one supported action key. Supported actions: goto, click, fill, select, keyboard, pause, mailpitConfirmLatest, apiRequest, waitForOperation.`, path));
204
- return null;
205
- }
206
- const key = supported[0];
207
- if (key === "goto") return { goto: asString(value.goto) || "" };
208
- if (key === "keyboard") return { keyboard: asString(value.keyboard) || "" };
209
- if (key === "apiRequest") return { apiRequest: isRecord(value.apiRequest) ? value.apiRequest : {} };
210
- if (key === "waitForOperation") {
211
- const operation = isRecord(value.waitForOperation) ? value.waitForOperation : {};
212
- const status = stringArrayField(operation, "status", `${path}.waitForOperation`, diagnostics);
213
- return {
214
- waitForOperation: {
215
- ...optionalString(operation, "id") ? { id: optionalString(operation, "id") } : {},
216
- ...optionalString(operation, "kind") ? { kind: optionalString(operation, "kind") } : {},
217
- status,
218
- timeoutSeconds: positiveNumberField(operation, "timeoutSeconds", void 0, `${path}.waitForOperation`, diagnostics),
219
- pollIntervalSeconds: positiveNumberField(operation, "pollIntervalSeconds", void 0, `${path}.waitForOperation`, diagnostics),
220
- ...asString(operation.source) ? { source: asString(operation.source) } : {}
221
- }
222
- };
223
- }
224
- if (key === "pause") {
225
- const pause = isRecord(value.pause) ? value.pause : {};
226
- const mode = asString(pause.mode) === "timed" ? "timed" : "manual";
227
- const durationSeconds = positiveNumberField(pause, "durationSeconds", void 0, `${path}.pause`, diagnostics);
228
- if (mode === "timed" && durationSeconds === void 0) diagnostics.push(sceneErrorDiagnostic("scene.missing_field", "Timed pause actions must define durationSeconds.", `${path}.pause.durationSeconds`));
229
- return { pause: { mode, ...optionalString(pause, "prompt") ? { prompt: optionalString(pause, "prompt") } : {}, ...durationSeconds ? { durationSeconds } : {} } };
230
- }
231
- if (key === "mailpitConfirmLatest") {
232
- const spec = isRecord(value.mailpitConfirmLatest) ? value.mailpitConfirmLatest : {};
233
- return {
234
- mailpitConfirmLatest: {
235
- mailpitUrl: requireString(spec, "mailpitUrl", `${path}.mailpitConfirmLatest`, diagnostics),
236
- email: requireString(spec, "email", `${path}.mailpitConfirmLatest`, diagnostics),
237
- ...optionalString(spec, "subjectIncludes") ? { subjectIncludes: optionalString(spec, "subjectIncludes") } : {},
238
- ...spec.displayInboxSeconds !== void 0 ? { displayInboxSeconds: positiveNumberField(spec, "displayInboxSeconds", void 0, `${path}.mailpitConfirmLatest`, diagnostics) } : {},
239
- ...spec.displayMessageSeconds !== void 0 ? { displayMessageSeconds: positiveNumberField(spec, "displayMessageSeconds", void 0, `${path}.mailpitConfirmLatest`, diagnostics) } : {}
240
- }
241
- };
242
- }
243
- if (key === "click") {
244
- const selector2 = parseSelector(value.click, `${path}.click`, diagnostics);
245
- return selector2 ? { click: selector2 } : null;
246
- }
247
- if (key === "select") {
248
- const selectValue = isRecord(value.select) ? value.select : {};
249
- const selector2 = parseSelector(selectValue, `${path}.select`, diagnostics);
250
- const optionValue = asString(selectValue.value);
251
- const optionLabel = asString(selectValue.label);
252
- if (!optionValue && !optionLabel) diagnostics.push(sceneErrorDiagnostic("scene.missing_field", "Select actions must define value or label.", `${path}.select.value`));
253
- return selector2 ? { select: { ...selector2, ...optionValue ? { value: optionValue } : {}, ...optionLabel ? { label: optionLabel } : {} } } : null;
254
- }
255
- const fillValue = isRecord(value.fill) ? value.fill : {};
256
- const selector = parseSelector(fillValue, `${path}.fill`, diagnostics);
257
- const fillText = asString(fillValue.value);
258
- if (!fillText) diagnostics.push(sceneErrorDiagnostic("scene.missing_field", "Missing required field: value.", `${path}.fill.value`));
259
- return selector ? { fill: { ...selector, value: fillText } } : null;
260
- }
261
- function parseExpectation(value, path, diagnostics) {
262
- if (value === void 0) return void 0;
263
- if (!isRecord(value)) {
264
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_expectation", "Expected expect to be an object.", path));
265
- return void 0;
266
- }
267
- const expectation = {};
268
- for (const key of Object.keys(value)) {
269
- if (!findBuiltInTreeseedSceneAssertion(key)) {
270
- diagnostics.push(sceneWarningDiagnostic("scene.unknown_expectation", `Unknown expectation key: ${key}.`, `${path}.${key}`));
271
- }
272
- }
273
- if (value.visible !== void 0) {
274
- const visible = arrayField(value, "visible", path, diagnostics) ?? [];
275
- expectation.visible = visible.map((entry, index) => parseSelector(entry, `${path}.visible[${index}]`, diagnostics)).filter((entry) => Boolean(entry));
276
- }
277
- if (value.text !== void 0) expectation.text = asString(value.text);
278
- if (value.urlIncludes !== void 0) expectation.urlIncludes = asString(value.urlIncludes);
279
- if (value.operation !== void 0) {
280
- if (!isRecord(value.operation)) {
281
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_operation_expectation", "Expected operation expectation to be an object.", `${path}.operation`));
282
- } else {
283
- expectation.operation = {
284
- ...optionalString(value.operation, "id") ? { id: optionalString(value.operation, "id") } : {},
285
- kind: requireString(value.operation, "kind", `${path}.operation`, diagnostics),
286
- status: stringArrayField(value.operation, "status", `${path}.operation`, diagnostics),
287
- timeoutSeconds: positiveNumberField(value.operation, "timeoutSeconds", void 0, `${path}.operation`, diagnostics),
288
- pollIntervalSeconds: positiveNumberField(value.operation, "pollIntervalSeconds", void 0, `${path}.operation`, diagnostics),
289
- ...asString(value.operation.source) ? { source: asString(value.operation.source) } : {}
290
- };
291
- }
292
- }
293
- return expectation;
294
- }
295
- function expectationKeys(expectation) {
296
- if (!expectation) return [];
297
- return ["visible", "text", "urlIncludes", "operation"].filter((key) => expectation[key] !== void 0);
298
- }
299
- function actionCanOmitExpectation(action) {
300
- return Boolean(action && ("fill" in action || "select" in action || "keyboard" in action));
301
- }
302
- function parseMode(value, diagnostics) {
303
- const record = isRecord(value) ? value : {};
304
- return {
305
- test: booleanField(record, "test", true, "mode", diagnostics),
306
- demo: booleanField(record, "demo", false, "mode", diagnostics),
307
- training: booleanField(record, "training", false, "mode", diagnostics)
308
- };
309
- }
310
- function parseTarget(value, diagnostics) {
311
- const record = isRecord(value) ? value : {};
312
- if (!isRecord(value)) diagnostics.push(sceneErrorDiagnostic("scene.missing_field", "Missing required field: target.", "target"));
313
- const viewport = isRecord(record.viewport) ? record.viewport : {};
314
- return {
315
- app: requireString(record, "app", "target", diagnostics),
316
- environment: parseEnvironment(record.environment, "target.environment", diagnostics, "local"),
317
- baseUrl: asString(record.baseUrl) || "auto",
318
- viewport: {
319
- width: positiveNumberField(viewport, "width", 1440, "target.viewport", diagnostics) ?? 1440,
320
- height: positiveNumberField(viewport, "height", 1e3, "target.viewport", diagnostics) ?? 1e3
321
- },
322
- browser: parseBrowser(record.browser, "target.browser", diagnostics)
323
- };
324
- }
325
- function parseDimensionPair(value, path, diagnostics, defaults) {
326
- const record = isRecord(value) ? value : {};
327
- if (value !== void 0 && !isRecord(value)) diagnostics.push(sceneErrorDiagnostic("scene.invalid_object", `Expected ${path} to be an object.`, path));
328
- return {
329
- width: positiveNumberField(record, "width", defaults.width, path, diagnostics) ?? defaults.width,
330
- height: positiveNumberField(record, "height", defaults.height, path, diagnostics) ?? defaults.height
331
- };
332
- }
333
- function defaultTreeseedSceneDeviceConfig() {
334
- return {
335
- defaultProfile: "desktop",
336
- profiles: [
337
- {
338
- id: "desktop",
339
- title: "Desktop",
340
- orientation: "landscape",
341
- viewport: { width: 1600, height: 900 },
342
- video: { width: 1600, height: 900 },
343
- output: { width: 1920, height: 1080 },
344
- deviceScaleFactor: 1,
345
- isMobile: false,
346
- hasTouch: false
347
- }
348
- ]
349
- };
350
- }
351
- function parseDevices(value, target, diagnostics) {
352
- const defaults = defaultTreeseedSceneDeviceConfig();
353
- if (value === void 0) return defaults;
354
- if (!isRecord(value)) {
355
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_object", "Expected devices to be an object.", "devices"));
356
- return defaults;
357
- }
358
- for (const key of Object.keys(value)) {
359
- if (!["defaultProfile", "profiles"].includes(key)) diagnostics.push(sceneWarningDiagnostic("scene.unknown_device_field", `Unknown devices field: ${key}.`, `devices.${key}`));
360
- }
361
- const entries = arrayField(value, "profiles", "devices", diagnostics) ?? [];
362
- const profiles = [];
363
- const seen = /* @__PURE__ */ new Set();
364
- entries.forEach((entry, index) => {
365
- const path = `devices.profiles[${index}]`;
366
- if (!isRecord(entry)) {
367
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_device_profile", "Expected device profile to be an object.", path));
368
- return;
369
- }
370
- for (const key of Object.keys(entry)) {
371
- if (!["id", "title", "orientation", "viewport", "video", "output", "userAgent", "deviceScaleFactor", "isMobile", "hasTouch", "browserFrame"].includes(key)) diagnostics.push(sceneWarningDiagnostic("scene.unknown_device_field", `Unknown device profile field: ${key}.`, `${path}.${key}`));
372
- }
373
- const id = requireString(entry, "id", path, diagnostics);
374
- if (id && !FILESYSTEM_SAFE_SCENE_ID.test(id)) diagnostics.push(sceneErrorDiagnostic("scene.invalid_id", `Invalid device profile id: ${id}.`, `${path}.id`));
375
- if (id && seen.has(id)) diagnostics.push(sceneErrorDiagnostic("scene.device_duplicate", `Duplicate device profile id: ${id}.`, `${path}.id`));
376
- seen.add(id);
377
- const orientationValue = optionalString(entry, "orientation");
378
- const orientation = orientationValue && DEVICE_ORIENTATIONS.includes(orientationValue) ? orientationValue : void 0;
379
- if (orientationValue && !orientation) diagnostics.push(sceneErrorDiagnostic("scene.device_orientation_invalid", `Unknown device orientation: ${orientationValue}.`, `${path}.orientation`));
380
- const browserFrame = objectField(entry, "browserFrame", path, diagnostics);
381
- const chromeValue = browserFrame ? optionalString(browserFrame, "chrome") : void 0;
382
- const chrome = chromeValue && DEVICE_BROWSER_CHROME.includes(chromeValue) ? chromeValue : void 0;
383
- if (chromeValue && !chrome) diagnostics.push(sceneErrorDiagnostic("scene.device_browser_chrome_invalid", `Unknown browser frame chrome: ${chromeValue}.`, `${path}.browserFrame.chrome`));
384
- const profile = {
385
- id,
386
- ...optionalString(entry, "title") ? { title: optionalString(entry, "title") } : {},
387
- ...orientation ? { orientation } : {},
388
- viewport: parseDimensionPair(entry.viewport, `${path}.viewport`, diagnostics, target.viewport),
389
- ...entry.video !== void 0 ? { video: parseDimensionPair(entry.video, `${path}.video`, diagnostics, target.viewport) } : {},
390
- ...entry.output !== void 0 ? { output: parseDimensionPair(entry.output, `${path}.output`, diagnostics, { width: 1920, height: 1080 }) } : {},
391
- ...optionalString(entry, "userAgent") ? { userAgent: optionalString(entry, "userAgent") } : {},
392
- ...entry.deviceScaleFactor !== void 0 ? { deviceScaleFactor: positiveNumberField(entry, "deviceScaleFactor", 1, path, diagnostics) ?? 1 } : {},
393
- ...entry.isMobile !== void 0 ? { isMobile: booleanField(entry, "isMobile", false, path, diagnostics) } : {},
394
- ...entry.hasTouch !== void 0 ? { hasTouch: booleanField(entry, "hasTouch", false, path, diagnostics) } : {},
395
- ...browserFrame ? { browserFrame: { enabled: booleanField(browserFrame, "enabled", false, `${path}.browserFrame`, diagnostics), ...optionalString(browserFrame, "title") ? { title: optionalString(browserFrame, "title") } : {}, ...chrome ? { chrome } : {} } } : {}
396
- };
397
- profiles.push(profile);
398
- });
399
- if (profiles.length === 0) return defaults;
400
- const defaultProfile = optionalString(value, "defaultProfile") ?? profiles[0].id;
401
- if (!profiles.some((profile) => profile.id === defaultProfile)) diagnostics.push(sceneErrorDiagnostic("scene.device_unknown", `Default device profile not found: ${defaultProfile}.`, "devices.defaultProfile"));
402
- return { defaultProfile, profiles };
403
- }
404
- function parseSetup(value, targetEnvironment, diagnostics) {
405
- const record = isRecord(value) ? value : {};
406
- const setup = {};
407
- const dev = objectField(record, "dev", "setup", diagnostics);
408
- if (dev) setup.dev = { required: booleanField(dev, "required", false, "setup.dev", diagnostics), command: optionalString(dev, "command"), reuseExisting: booleanField(dev, "reuseExisting", true, "setup.dev", diagnostics) };
409
- const auth = objectField(record, "auth", "setup", diagnostics);
410
- if (auth) setup.auth = { profile: optionalString(auth, "profile"), required: booleanField(auth, "required", false, "setup.auth", diagnostics), seedOnly: booleanField(auth, "seedOnly", false, "setup.auth", diagnostics), ...optionalString(auth, "role") ? { role: optionalString(auth, "role") } : {} };
411
- const seed = objectField(record, "seed", "setup", diagnostics);
412
- if (seed) {
413
- const environments = (arrayField(seed, "environments", "setup.seed", diagnostics) ?? [targetEnvironment]).map((entry, index) => parseEnvironment(entry, `setup.seed.environments[${index}]`, diagnostics, targetEnvironment));
414
- setup.seed = { name: optionalString(seed, "name"), environments: [...new Set(environments)], apply: booleanField(seed, "apply", false, "setup.seed", diagnostics) };
415
- }
416
- return setup;
417
- }
418
- function parseArtifacts(value, diagnostics) {
419
- const record = isRecord(value) ? value : {};
420
- return {
421
- trace: booleanField(record, "trace", true, "artifacts", diagnostics),
422
- video: booleanField(record, "video", false, "artifacts", diagnostics),
423
- screenshots: booleanField(record, "screenshots", true, "artifacts", diagnostics),
424
- console: booleanField(record, "console", true, "artifacts", diagnostics),
425
- network: booleanField(record, "network", true, "artifacts", diagnostics),
426
- timeline: booleanField(record, "timeline", true, "artifacts", diagnostics),
427
- appLogs: booleanField(record, "appLogs", true, "artifacts", diagnostics)
428
- };
429
- }
430
- function parseWorkflow(value, diagnostics) {
431
- if (!Array.isArray(value)) {
432
- diagnostics.push(sceneErrorDiagnostic("scene.missing_field", "Missing required field: workflow.", "workflow"));
433
- return [];
434
- }
435
- const steps = [];
436
- const seen = /* @__PURE__ */ new Set();
437
- const checkpointIds = /* @__PURE__ */ new Set();
438
- value.forEach((entry, index) => {
439
- const path = `workflow[${index}]`;
440
- if (!isRecord(entry)) {
441
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_workflow_step", "Expected workflow step to be an object.", path));
442
- return;
443
- }
444
- const id = requireString(entry, "id", path, diagnostics);
445
- if (id && !FILESYSTEM_SAFE_SCENE_ID.test(id)) diagnostics.push(sceneErrorDiagnostic("scene.invalid_id", `Invalid workflow step id: ${id}.`, `${path}.id`));
446
- if (id && seen.has(id)) diagnostics.push(sceneErrorDiagnostic("scene.duplicate_step_id", `Duplicate workflow step id: ${id}.`, `${path}.id`));
447
- seen.add(id);
448
- const action = parseAction(entry.action, `${path}.action`, diagnostics);
449
- const expect = parseExpectation(entry.expect, `${path}.expect`, diagnostics);
450
- const demoOnly = booleanField(entry, "demoOnly", false, path, diagnostics);
451
- const timeoutSeconds = positiveNumberField(entry, "timeoutSeconds", void 0, path, diagnostics);
452
- const continueOnFailure = entry.continueOnFailure === void 0 ? void 0 : booleanField(entry, "continueOnFailure", false, path, diagnostics);
453
- const checkpointRecord = objectField(entry, "checkpoint", path, diagnostics);
454
- const checkpoint = checkpointRecord ? {
455
- ...optionalString(checkpointRecord, "id") ? { id: optionalString(checkpointRecord, "id") } : {},
456
- ...checkpointRecord.resumable === void 0 ? {} : { resumable: booleanField(checkpointRecord, "resumable", false, `${path}.checkpoint`, diagnostics) }
457
- } : void 0;
458
- const checkpointId = checkpoint?.id ?? id;
459
- if (checkpoint?.id && !FILESYSTEM_SAFE_CHECKPOINT_ID.test(checkpoint.id)) diagnostics.push(sceneErrorDiagnostic("scene.invalid_id", `Invalid checkpoint id: ${checkpoint.id}.`, `${path}.checkpoint.id`));
460
- if (checkpointIds.has(checkpointId)) diagnostics.push(sceneErrorDiagnostic("scene.duplicate_checkpoint_id", `Duplicate checkpoint id: ${checkpointId}.`, `${path}.checkpoint.id`));
461
- checkpointIds.add(checkpointId);
462
- if ("pause" in (action ?? {}) && action.pause?.mode === "manual" && !demoOnly && !expectationKeys(expect).length) {
463
- diagnostics.push(sceneErrorDiagnostic("scene.manual_pause_requires_demo_only", "Manual pause steps must be demoOnly or define explicit expectations.", path));
464
- }
465
- if (!expectationKeys(expect).length && !demoOnly && !actionCanOmitExpectation(action)) diagnostics.push(sceneErrorDiagnostic("scene.missing_assertion", "Workflow step must define expect or set demoOnly: true.", path));
466
- if (action) steps.push({
467
- id,
468
- title: requireString(entry, "title", path, diagnostics),
469
- action,
470
- ...expect ? { expect } : {},
471
- demoOnly,
472
- ...timeoutSeconds ? { timeoutSeconds } : {},
473
- ...continueOnFailure !== void 0 ? { continueOnFailure } : {},
474
- ...checkpoint ? { checkpoint } : {}
475
- });
476
- });
477
- return steps;
478
- }
479
- function parseChapters(value, stepIds, diagnostics) {
480
- const chapters = [];
481
- const entries = Array.isArray(value) ? value : [];
482
- entries.forEach((entry, index) => {
483
- const path = `chapters[${index}]`;
484
- if (!isRecord(entry)) {
485
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_chapter", "Expected chapter to be an object.", path));
486
- return;
487
- }
488
- const id = requireString(entry, "id", path, diagnostics);
489
- const startsAt = requireString(entry, "startsAt", path, diagnostics);
490
- if (id && !FILESYSTEM_SAFE_SCENE_ID.test(id)) diagnostics.push(sceneErrorDiagnostic("scene.invalid_id", `Invalid chapter id: ${id}.`, `${path}.id`));
491
- if (startsAt && !stepIds.has(startsAt)) diagnostics.push(sceneErrorDiagnostic("scene.unknown_step_reference", `Unknown workflow step reference: ${startsAt}.`, `${path}.startsAt`));
492
- chapters.push({ id, title: requireString(entry, "title", path, diagnostics), startsAt });
493
- });
494
- return chapters;
495
- }
496
- function enumValue(value, allowed, defaultValue, path, code, diagnostics) {
497
- const text = asString(value);
498
- if (!text) return defaultValue;
499
- if (allowed.includes(text)) return text;
500
- diagnostics.push(sceneErrorDiagnostic(code, `Unsupported value: ${text}.`, path));
501
- return defaultValue;
502
- }
503
- function parseVisualPoint(value, path, diagnostics) {
504
- if (value === void 0) return void 0;
505
- if (!isRecord(value)) {
506
- diagnostics.push(sceneErrorDiagnostic("scene.visual_invalid_point", "Expected visual point to be an object.", path));
507
- return void 0;
508
- }
509
- const unit = enumValue(value.unit, VISUAL_UNITS, "px", `${path}.unit`, "scene.visual_invalid_unit", diagnostics);
510
- const x = typeof value.x === "number" && Number.isFinite(value.x) ? value.x : null;
511
- const y = typeof value.y === "number" && Number.isFinite(value.y) ? value.y : null;
512
- if (x === null) diagnostics.push(sceneErrorDiagnostic("scene.visual_invalid_point", "Expected x to be a finite number.", `${path}.x`));
513
- if (y === null) diagnostics.push(sceneErrorDiagnostic("scene.visual_invalid_point", "Expected y to be a finite number.", `${path}.y`));
514
- if (unit === "percent") {
515
- if (typeof x === "number" && (x < 0 || x > 100)) diagnostics.push(sceneWarningDiagnostic("scene.visual_percent_out_of_range", "Percent x is outside 0..100.", `${path}.x`));
516
- if (typeof y === "number" && (y < 0 || y > 100)) diagnostics.push(sceneWarningDiagnostic("scene.visual_percent_out_of_range", "Percent y is outside 0..100.", `${path}.y`));
517
- }
518
- if (x === null || y === null) return void 0;
519
- return { x, y, ...unit ? { unit } : {} };
520
- }
521
- function parseVisualSize(value, path, diagnostics) {
522
- if (value === void 0) return void 0;
523
- if (!isRecord(value)) {
524
- diagnostics.push(sceneErrorDiagnostic("scene.visual_invalid_size", "Expected visual size to be an object.", path));
525
- return void 0;
526
- }
527
- const unit = enumValue(value.unit, VISUAL_UNITS, "px", `${path}.unit`, "scene.visual_invalid_unit", diagnostics);
528
- const width = typeof value.width === "number" && Number.isFinite(value.width) && value.width > 0 ? value.width : null;
529
- const height = typeof value.height === "number" && Number.isFinite(value.height) && value.height > 0 ? value.height : null;
530
- if (width === null) diagnostics.push(sceneErrorDiagnostic("scene.visual_invalid_size", "Expected width to be a positive finite number.", `${path}.width`));
531
- if (height === null) diagnostics.push(sceneErrorDiagnostic("scene.visual_invalid_size", "Expected height to be a positive finite number.", `${path}.height`));
532
- if (unit === "percent") {
533
- if (typeof width === "number" && width > 100) diagnostics.push(sceneWarningDiagnostic("scene.visual_percent_out_of_range", "Percent width is greater than 100.", `${path}.width`));
534
- if (typeof height === "number" && height > 100) diagnostics.push(sceneWarningDiagnostic("scene.visual_percent_out_of_range", "Percent height is greater than 100.", `${path}.height`));
535
- }
536
- if (width === null || height === null) return void 0;
537
- return { width, height, ...unit ? { unit } : {} };
538
- }
539
- function parseVisualStyle(value, path, diagnostics) {
540
- if (value === void 0) return void 0;
541
- if (!isRecord(value)) {
542
- diagnostics.push(sceneErrorDiagnostic("scene.visual_invalid_style", "Expected visual style to be an object.", path));
543
- return void 0;
544
- }
545
- for (const key of Object.keys(value)) {
546
- if (!["tone", "background", "color", "borderColor", "borderWidth", "radius", "shadow", "opacity"].includes(key)) diagnostics.push(sceneWarningDiagnostic("scene.visual_unknown_style_field", `Unknown visual style field: ${key}.`, `${path}.${key}`));
547
- }
548
- const opacity = value.opacity === void 0 ? void 0 : finiteNumberField(value, "opacity", void 0, path, diagnostics);
549
- if (opacity !== void 0 && opacity > 1) diagnostics.push(sceneErrorDiagnostic("scene.visual_invalid_opacity", "Opacity must be between 0 and 1.", `${path}.opacity`));
550
- const tone = enumValue(value.tone, VISUAL_TONES, void 0, `${path}.tone`, "scene.visual_invalid_tone", diagnostics);
551
- const shadow = enumValue(value.shadow, VISUAL_SHADOWS, void 0, `${path}.shadow`, "scene.visual_invalid_shadow", diagnostics);
552
- return {
553
- ...tone ? { tone } : {},
554
- ...optionalString(value, "background") ? { background: optionalString(value, "background") } : {},
555
- ...optionalString(value, "color") ? { color: optionalString(value, "color") } : {},
556
- ...optionalString(value, "borderColor") ? { borderColor: optionalString(value, "borderColor") } : {},
557
- ...value.borderWidth !== void 0 ? { borderWidth: positiveNumberField(value, "borderWidth", void 0, path, diagnostics) ?? 0 } : {},
558
- ...value.radius !== void 0 ? { radius: positiveNumberField(value, "radius", void 0, path, diagnostics) ?? 0 } : {},
559
- ...shadow ? { shadow } : {},
560
- ...opacity !== void 0 ? { opacity } : {}
561
- };
562
- }
563
- function parseMotion(value, path, diagnostics) {
564
- if (value === void 0) return void 0;
565
- if (!isRecord(value)) {
566
- diagnostics.push(sceneErrorDiagnostic("scene.motion_invalid", "Expected motion to be an object.", path));
567
- return void 0;
568
- }
569
- const entries = arrayField(value, "keyframes", path, diagnostics) ?? [];
570
- let previous = -Infinity;
571
- const keyframes = entries.map((entry, index) => {
572
- const framePath = `${path}.keyframes[${index}]`;
573
- if (!isRecord(entry)) {
574
- diagnostics.push(sceneErrorDiagnostic("scene.motion_invalid_keyframe", "Expected keyframe to be an object.", framePath));
575
- return null;
576
- }
577
- const at = typeof entry.at === "number" && Number.isFinite(entry.at) ? entry.at : null;
578
- if (at === null) diagnostics.push(sceneErrorDiagnostic("scene.motion_invalid_keyframe", "Expected at to be a finite number.", `${framePath}.at`));
579
- if (at !== null && at < previous) diagnostics.push(sceneErrorDiagnostic("scene.motion_keyframes_unsorted", "Motion keyframes must be sorted by at.", `${framePath}.at`));
580
- if (at !== null) previous = at;
581
- const unit = enumValue(entry.unit, MOTION_UNITS, "seconds", `${framePath}.unit`, "scene.motion_invalid_unit", diagnostics);
582
- if (unit === "progress" && at !== null && (at < 0 || at > 1)) diagnostics.push(sceneErrorDiagnostic("scene.motion_invalid_progress", "Progress keyframes must use at between 0 and 1.", `${framePath}.at`));
583
- const opacity = entry.opacity === void 0 ? void 0 : finiteNumberField(entry, "opacity", void 0, framePath, diagnostics);
584
- if (opacity !== void 0 && opacity > 1) diagnostics.push(sceneErrorDiagnostic("scene.visual_invalid_opacity", "Opacity must be between 0 and 1.", `${framePath}.opacity`));
585
- const scale = entry.scale === void 0 ? void 0 : positiveNumberField(entry, "scale", void 0, framePath, diagnostics);
586
- if (at === null) return null;
587
- const position = parseVisualPoint(entry.position, `${framePath}.position`, diagnostics);
588
- const size = parseVisualSize(entry.size, `${framePath}.size`, diagnostics);
589
- const motionEasing = enumValue(entry.easing, MOTION_EASINGS, void 0, `${framePath}.easing`, "scene.motion_invalid_easing", diagnostics);
590
- return {
591
- at,
592
- ...unit ? { unit } : {},
593
- ...position ? { position } : {},
594
- ...size ? { size } : {},
595
- ...opacity !== void 0 ? { opacity } : {},
596
- ...scale !== void 0 ? { scale } : {},
597
- ...typeof entry.rotateDeg === "number" && Number.isFinite(entry.rotateDeg) ? { rotateDeg: entry.rotateDeg } : {},
598
- ...motionEasing ? { easing: motionEasing } : {}
599
- };
600
- }).filter((entry) => Boolean(entry));
601
- if (keyframes.length === 0) diagnostics.push(sceneErrorDiagnostic("scene.motion_invalid", "Motion must define at least one keyframe.", `${path}.keyframes`));
602
- return { keyframes, ...value.loop !== void 0 ? { loop: booleanField(value, "loop", false, path, diagnostics) } : {} };
603
- }
604
- function parseVisualObjects(value, path, diagnostics) {
605
- if (value === void 0) return void 0;
606
- const entries = arrayField({ objects: value }, "objects", path.replace(/\.objects$/u, ""), diagnostics) ?? [];
607
- const objects = [];
608
- const seen = /* @__PURE__ */ new Set();
609
- entries.forEach((entry, index) => {
610
- const objectPath = `${path}[${index}]`;
611
- if (!isRecord(entry)) {
612
- diagnostics.push(sceneErrorDiagnostic("scene.visual_invalid_object", "Expected visual object to be an object.", objectPath));
613
- return;
614
- }
615
- const id = requireString(entry, "id", objectPath, diagnostics);
616
- if (id && seen.has(id)) diagnostics.push(sceneErrorDiagnostic("scene.visual_duplicate_object", `Duplicate visual object id: ${id}.`, `${objectPath}.id`));
617
- seen.add(id);
618
- const type = enumValue(entry.type, VISUAL_OBJECT_TYPES, void 0, `${objectPath}.type`, "scene.visual_invalid_object_type", diagnostics);
619
- if (!type) return;
620
- const region = enumValue(entry.region, VISUAL_REGIONS, void 0, `${objectPath}.region`, "scene.visual_invalid_region", diagnostics);
621
- const position = parseVisualPoint(entry.position, `${objectPath}.position`, diagnostics);
622
- const size = parseVisualSize(entry.size, `${objectPath}.size`, diagnostics);
623
- const style = parseVisualStyle(entry.style, `${objectPath}.style`, diagnostics);
624
- const motion = parseMotion(entry.motion, `${objectPath}.motion`, diagnostics);
625
- const from = parseVisualPoint(entry.from, `${objectPath}.from`, diagnostics);
626
- const to = parseVisualPoint(entry.to, `${objectPath}.to`, diagnostics);
627
- objects.push({
628
- id,
629
- type,
630
- ...optionalString(entry, "text") ? { text: optionalString(entry, "text") } : {},
631
- ...position ? { position } : {},
632
- ...size ? { size } : {},
633
- ...region ? { region } : {},
634
- ...style ? { style } : {},
635
- ...motion ? { motion } : {},
636
- ...from ? { from } : {},
637
- ...to ? { to } : {}
638
- });
639
- });
640
- return objects;
641
- }
642
- function parseOverlays(value, stepIds, diagnostics) {
643
- const overlays = [];
644
- const entries = Array.isArray(value) ? value : [];
645
- entries.forEach((entry, index) => {
646
- const path = `overlays[${index}]`;
647
- if (!isRecord(entry)) {
648
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_overlay", "Expected overlay to be an object.", path));
649
- return;
650
- }
651
- const id = requireString(entry, "id", path, diagnostics);
652
- const at = requireString(entry, "at", path, diagnostics);
653
- if (id && !FILESYSTEM_SAFE_SCENE_ID.test(id)) diagnostics.push(sceneErrorDiagnostic("scene.invalid_id", `Invalid overlay id: ${id}.`, `${path}.id`));
654
- if (at && !stepIds.has(at)) diagnostics.push(sceneErrorDiagnostic("scene.unknown_step_reference", `Unknown workflow step reference: ${at}.`, `${path}.at`));
655
- const anchor = entry.anchor === void 0 ? null : parseSelector(entry.anchor, `${path}.anchor`, diagnostics);
656
- const variant = enumValue(entry.variant, OVERLAY_VARIANTS, void 0, `${path}.variant`, "scene.overlay_invalid_variant", diagnostics);
657
- const region = enumValue(entry.region, VISUAL_REGIONS, void 0, `${path}.region`, "scene.visual_invalid_region", diagnostics);
658
- const position = parseVisualPoint(entry.position, `${path}.position`, diagnostics);
659
- const size = parseVisualSize(entry.size, `${path}.size`, diagnostics);
660
- const style = parseVisualStyle(entry.style, `${path}.style`, diagnostics);
661
- const motion = parseMotion(entry.motion, `${path}.motion`, diagnostics);
662
- const objects = parseVisualObjects(entry.objects, `${path}.objects`, diagnostics);
663
- overlays.push({
664
- id,
665
- at,
666
- renderer: requireString(entry, "renderer", path, diagnostics),
667
- type: requireString(entry, "type", path, diagnostics),
668
- ...optionalString(entry, "text") ? { text: optionalString(entry, "text") } : {},
669
- ...anchor ? { anchor } : {},
670
- ...variant ? { variant } : {},
671
- ...region ? { region } : {},
672
- ...position ? { position } : {},
673
- ...size ? { size } : {},
674
- ...style ? { style } : {},
675
- ...motion ? { motion } : {},
676
- ...objects ? { objects } : {},
677
- ...entry.durationSeconds !== void 0 ? { durationSeconds: positiveNumberField(entry, "durationSeconds", void 0, path, diagnostics) } : {}
678
- });
679
- });
680
- return overlays;
681
- }
682
- function parseDiagrams(value, stepIds, diagnostics) {
683
- const diagrams = [];
684
- const entries = Array.isArray(value) ? value : [];
685
- entries.forEach((entry, index) => {
686
- const path = `diagrams[${index}]`;
687
- if (!isRecord(entry)) {
688
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_diagram", "Expected diagram to be an object.", path));
689
- return;
690
- }
691
- const id = requireString(entry, "id", path, diagnostics);
692
- const at = requireString(entry, "at", path, diagnostics);
693
- if (id && !FILESYSTEM_SAFE_SCENE_ID.test(id)) diagnostics.push(sceneErrorDiagnostic("scene.invalid_id", `Invalid diagram id: ${id}.`, `${path}.id`));
694
- if (at && !stepIds.has(at)) diagnostics.push(sceneErrorDiagnostic("scene.unknown_step_reference", `Unknown workflow step reference: ${at}.`, `${path}.at`));
695
- const placementValue = optionalString(entry, "placement") ?? "interstitial";
696
- const placement = DIAGRAM_PLACEMENTS.includes(placementValue) ? placementValue : "interstitial";
697
- if (placementValue && placementValue !== placement) diagnostics.push(sceneErrorDiagnostic("scene.diagram_invalid_placement", `Unknown diagram placement: ${placementValue}.`, `${path}.placement`));
698
- const objects = parseVisualObjects(entry.objects, `${path}.objects`, diagnostics);
699
- const motion = parseMotion(entry.motion, `${path}.motion`, diagnostics);
700
- const style = parseVisualStyle(entry.style, `${path}.style`, diagnostics);
701
- diagrams.push({
702
- id,
703
- at,
704
- renderer: requireString(entry, "renderer", path, diagnostics),
705
- component: requireString(entry, "component", path, diagnostics),
706
- durationSeconds: positiveNumberField(entry, "durationSeconds", void 0, path, diagnostics),
707
- placement,
708
- props: objectField(entry, "props", path, diagnostics),
709
- ...objects ? { objects } : {},
710
- ...motion ? { motion } : {},
711
- ...style ? { style } : {}
712
- });
713
- });
714
- return diagrams;
715
- }
716
- function parseRender(value, diagnostics) {
717
- const record = isRecord(value) ? value : {};
718
- const remotion = objectField(record, "remotion", "render", diagnostics);
719
- if (!remotion) return {};
720
- const output = objectField(remotion, "output", "render.remotion", diagnostics);
721
- const resolution = output ? objectField(output, "resolution", "render.remotion.output", diagnostics) : void 0;
722
- const capture = objectField(remotion, "capture", "render.remotion", diagnostics);
723
- const captureViewport = capture ? objectField(capture, "viewport", "render.remotion.capture", diagnostics) : void 0;
724
- const captureVideo = capture ? objectField(capture, "video", "render.remotion.capture", diagnostics) : void 0;
725
- const evidenceFitValue = capture ? optionalString(capture, "evidenceFit") ?? "fixed-browser" : "fixed-browser";
726
- const evidenceFit = EVIDENCE_FITS.includes(evidenceFitValue) ? evidenceFitValue : "fixed-browser";
727
- if (capture && evidenceFitValue !== evidenceFit) diagnostics.push(sceneErrorDiagnostic("scene.render_capture_fit_invalid", `Unknown scene render evidence fit: ${evidenceFitValue}.`, "render.remotion.capture.evidenceFit"));
728
- const browserFrame = objectField(remotion, "browserFrame", "render.remotion", diagnostics);
729
- return {
730
- remotion: {
731
- composition: optionalString(remotion, "composition"),
732
- ...output ? {
733
- output: {
734
- format: optionalString(output, "format"),
735
- fps: positiveNumberField(output, "fps", void 0, "render.remotion.output", diagnostics),
736
- ...resolution ? { resolution: { width: positiveNumberField(resolution, "width", 1920, "render.remotion.output.resolution", diagnostics) ?? 1920, height: positiveNumberField(resolution, "height", 1080, "render.remotion.output.resolution", diagnostics) ?? 1080 } } : {}
737
- }
738
- } : {},
739
- ...capture ? {
740
- capture: {
741
- ...captureViewport ? { viewport: { width: positiveNumberField(captureViewport, "width", 1600, "render.remotion.capture.viewport", diagnostics) ?? 1600, height: positiveNumberField(captureViewport, "height", 900, "render.remotion.capture.viewport", diagnostics) ?? 900 } } : {},
742
- ...captureVideo ? { video: { width: positiveNumberField(captureVideo, "width", 1600, "render.remotion.capture.video", diagnostics) ?? 1600, height: positiveNumberField(captureVideo, "height", 900, "render.remotion.capture.video", diagnostics) ?? 900 } } : {},
743
- evidenceFit
744
- }
745
- } : {},
746
- ...browserFrame ? {
747
- browserFrame: {
748
- enabled: booleanField(browserFrame, "enabled", false, "render.remotion.browserFrame", diagnostics),
749
- ...optionalString(browserFrame, "title") ? { title: optionalString(browserFrame, "title") } : {}
750
- }
751
- } : {}
752
- }
753
- };
754
- }
755
- function parseRuntime(value, mode, diagnostics) {
756
- const record = isRecord(value) ? value : {};
757
- const modeValue = asString(record.mode);
758
- let runtimeMode = modeValue || (mode.test ? "acceptance" : mode.training ? "training" : mode.demo ? "demo" : "acceptance");
759
- if (!["acceptance", "demo", "training", "record-only"].includes(runtimeMode)) {
760
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_runtime_mode", `Unknown runtime mode: ${runtimeMode}.`, "runtime.mode"));
761
- runtimeMode = "acceptance";
762
- }
763
- const timeouts = objectField(record, "timeouts", "runtime", diagnostics) ?? {};
764
- const checkpoints = objectField(record, "checkpoints", "runtime", diagnostics) ?? {};
765
- const progress = objectField(record, "progress", "runtime", diagnostics) ?? {};
766
- const failure = objectField(record, "failure", "runtime", diagnostics) ?? {};
767
- return {
768
- mode: runtimeMode,
769
- timeouts: {
770
- sceneSeconds: nullablePositiveNumberField(timeouts, "sceneSeconds", null, "runtime.timeouts", diagnostics),
771
- chapterSeconds: nullablePositiveNumberField(timeouts, "chapterSeconds", null, "runtime.timeouts", diagnostics),
772
- stepSeconds: positiveNumberField(timeouts, "stepSeconds", 120, "runtime.timeouts", diagnostics) ?? 120
773
- },
774
- checkpoints: {
775
- enabled: booleanField(checkpoints, "enabled", true, "runtime.checkpoints", diagnostics),
776
- defaultResumable: booleanField(checkpoints, "defaultResumable", false, "runtime.checkpoints", diagnostics),
777
- everyStep: booleanField(checkpoints, "everyStep", true, "runtime.checkpoints", diagnostics)
778
- },
779
- progress: {
780
- heartbeatSeconds: positiveNumberField(progress, "heartbeatSeconds", 15, "runtime.progress", diagnostics) ?? 15
781
- },
782
- failure: {
783
- continueOnFailure: booleanField(failure, "continueOnFailure", false, "runtime.failure", diagnostics)
784
- }
785
- };
786
- }
787
- function defaultTreeseedSceneTrainingConfig() {
788
- return {
789
- enabled: true,
790
- captions: {
791
- enabled: true,
792
- formats: ["vtt", "srt"],
793
- maxCueSeconds: 6,
794
- renderInTrainingVideo: true
795
- },
796
- transcript: {
797
- enabled: true,
798
- formats: ["json", "markdown"]
799
- },
800
- narration: {
801
- enabled: true,
802
- style: "instructional",
803
- includeDiagnostics: true
804
- },
805
- glossary: {
806
- enabled: true,
807
- terms: []
808
- },
809
- chapterClips: {
810
- enabled: true,
811
- format: "manifest"
812
- }
813
- };
814
- }
815
- function parseTraining(value, stepIds, diagnostics) {
816
- const record = isRecord(value) ? value : {};
817
- for (const key of Object.keys(record)) {
818
- if (!["enabled", "captions", "transcript", "narration", "glossary", "chapterClips"].includes(key)) diagnostics.push(sceneWarningDiagnostic("scene.unknown_training_field", `Unknown training field: ${key}.`, `training.${key}`));
819
- }
820
- const captions = objectField(record, "captions", "training", diagnostics) ?? {};
821
- const transcript = objectField(record, "transcript", "training", diagnostics) ?? {};
822
- const narration = objectField(record, "narration", "training", diagnostics) ?? {};
823
- const glossary = objectField(record, "glossary", "training", diagnostics) ?? {};
824
- const chapterClips = objectField(record, "chapterClips", "training", diagnostics) ?? {};
825
- const styleValue = asString(narration.style) || "instructional";
826
- const style = NARRATION_STYLES.includes(styleValue) ? styleValue : "instructional";
827
- if (styleValue !== style) diagnostics.push(sceneErrorDiagnostic("scene.training_invalid_config", `Unknown narration style: ${styleValue}.`, "training.narration.style"));
828
- const terms = (arrayField(glossary, "terms", "training.glossary", diagnostics) ?? []).map((entry, index) => {
829
- const path = `training.glossary.terms[${index}]`;
830
- if (!isRecord(entry)) {
831
- diagnostics.push(sceneErrorDiagnostic("scene.training_invalid_config", "Glossary term entries must be objects.", path));
832
- return null;
833
- }
834
- const term = requireString(entry, "term", path, diagnostics);
835
- const sourceStep = optionalString(entry, "sourceStep");
836
- if (sourceStep && !stepIds.has(sourceStep)) diagnostics.push(sceneErrorDiagnostic("scene.unknown_step_reference", `Unknown workflow step reference: ${sourceStep}.`, `${path}.sourceStep`));
837
- const tags = stringArrayField(entry, "tags", path, diagnostics);
838
- return {
839
- term,
840
- ...optionalString(entry, "definition") ? { definition: optionalString(entry, "definition") } : {},
841
- ...sourceStep ? { sourceStep } : {},
842
- ...tags.length > 0 ? { tags } : {}
843
- };
844
- }).filter((entry) => Boolean(entry));
845
- const clipFormat = asString(chapterClips.format) || "manifest";
846
- if (clipFormat !== "manifest") diagnostics.push(sceneErrorDiagnostic("scene.training_invalid_config", `Unsupported chapter clip format: ${clipFormat}.`, "training.chapterClips.format"));
847
- return {
848
- enabled: booleanField(record, "enabled", true, "training", diagnostics),
849
- captions: {
850
- enabled: booleanField(captions, "enabled", true, "training.captions", diagnostics),
851
- formats: enumArrayField(captions, "formats", CAPTION_FORMATS, ["vtt", "srt"], "training.captions", diagnostics),
852
- maxCueSeconds: positiveNumberField(captions, "maxCueSeconds", 6, "training.captions", diagnostics) ?? 6,
853
- renderInTrainingVideo: booleanField(captions, "renderInTrainingVideo", true, "training.captions", diagnostics)
854
- },
855
- transcript: {
856
- enabled: booleanField(transcript, "enabled", true, "training.transcript", diagnostics),
857
- formats: enumArrayField(transcript, "formats", TRANSCRIPT_FORMATS, ["json", "markdown"], "training.transcript", diagnostics)
858
- },
859
- narration: {
860
- enabled: booleanField(narration, "enabled", true, "training.narration", diagnostics),
861
- style,
862
- includeDiagnostics: booleanField(narration, "includeDiagnostics", true, "training.narration", diagnostics)
863
- },
864
- glossary: {
865
- enabled: booleanField(glossary, "enabled", true, "training.glossary", diagnostics),
866
- terms
867
- },
868
- chapterClips: {
869
- enabled: booleanField(chapterClips, "enabled", true, "training.chapterClips", diagnostics),
870
- format: "manifest"
871
- }
872
- };
873
- }
874
- function defaultTreeseedSceneVisualAuditConfig() {
875
- return {
876
- enabled: true,
877
- roles: ["anonymous", "owner", "admin", "member"],
878
- pathRoots: [],
879
- pathGlobs: [],
880
- excludePathGlobs: [],
881
- includeFullPage: false,
882
- review: {
883
- enabled: true,
884
- detail: "standard",
885
- maxFindings: 250,
886
- contactSheets: true
887
- },
888
- routeDiscovery: {
889
- core: true,
890
- admin: true,
891
- tenantOverrides: true,
892
- contentCollections: true
893
- }
894
- };
895
- }
896
- function parseVisualAudit(value, diagnostics) {
897
- const defaults = defaultTreeseedSceneVisualAuditConfig();
898
- if (value === void 0) return defaults;
899
- if (!isRecord(value)) {
900
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_object", "Expected visualAudit to be an object.", "visualAudit"));
901
- return defaults;
902
- }
903
- for (const key of Object.keys(value)) {
904
- if (!["enabled", "roles", "pathRoots", "pathGlobs", "excludePathGlobs", "includeFullPage", "review", "routeDiscovery"].includes(key)) {
905
- diagnostics.push(sceneWarningDiagnostic("scene.visual_audit_unknown_field", `Unknown visual audit field: ${key}.`, `visualAudit.${key}`));
906
- }
907
- }
908
- const roles = stringArrayField(value, "roles", "visualAudit", diagnostics);
909
- if (value.roles !== void 0 && roles.length === 0) {
910
- diagnostics.push(sceneErrorDiagnostic("scene.visual_audit_invalid_roles", "Visual audit roles must include at least one role.", "visualAudit.roles"));
911
- }
912
- const rawPathRoots = stringArrayField(value, "pathRoots", "visualAudit", diagnostics);
913
- const pathRoots = rawPathRoots.filter((entry, index) => {
914
- const ok = entry.startsWith("/");
915
- if (!ok) diagnostics.push(sceneErrorDiagnostic("scene.visual_audit_invalid_path_root", `Visual audit path root must start with "/": ${entry}.`, `visualAudit.pathRoots[${index}]`));
916
- return ok;
917
- });
918
- const pathGlobs = stringArrayField(value, "pathGlobs", "visualAudit", diagnostics).filter(Boolean);
919
- const excludePathGlobs = stringArrayField(value, "excludePathGlobs", "visualAudit", diagnostics).filter(Boolean);
920
- const routeDiscovery = objectField(value, "routeDiscovery", "visualAudit", diagnostics);
921
- if (routeDiscovery) {
922
- for (const key of Object.keys(routeDiscovery)) {
923
- if (!["core", "admin", "tenantOverrides", "contentCollections"].includes(key)) {
924
- diagnostics.push(sceneWarningDiagnostic("scene.visual_audit_unknown_field", `Unknown visual audit routeDiscovery field: ${key}.`, `visualAudit.routeDiscovery.${key}`));
925
- }
926
- }
927
- }
928
- const review = objectField(value, "review", "visualAudit", diagnostics);
929
- if (review) {
930
- for (const key of Object.keys(review)) {
931
- if (!["enabled", "detail", "maxFindings", "contactSheets"].includes(key)) {
932
- diagnostics.push(sceneWarningDiagnostic("scene.visual_audit_unknown_field", `Unknown visual audit review field: ${key}.`, `visualAudit.review.${key}`));
933
- }
934
- }
935
- }
936
- const rawReviewDetail = review && typeof review.detail === "string" ? review.detail : defaults.review.detail;
937
- const reviewDetail = ["summary", "standard", "full"].includes(rawReviewDetail) ? rawReviewDetail : defaults.review.detail;
938
- if (review && review.detail !== void 0 && reviewDetail !== review.detail) {
939
- diagnostics.push(sceneErrorDiagnostic("scene.visual_audit_invalid_review_detail", "Visual audit review detail must be summary, standard, or full.", "visualAudit.review.detail"));
940
- }
941
- const rawMaxFindings = review?.maxFindings;
942
- const maxFindings = typeof rawMaxFindings === "number" && Number.isInteger(rawMaxFindings) && rawMaxFindings > 0 ? rawMaxFindings : defaults.review.maxFindings;
943
- if (rawMaxFindings !== void 0 && maxFindings !== rawMaxFindings) {
944
- diagnostics.push(sceneErrorDiagnostic("scene.visual_audit_invalid_max_findings", "Visual audit review maxFindings must be a positive integer.", "visualAudit.review.maxFindings"));
945
- }
946
- return {
947
- enabled: booleanField(value, "enabled", defaults.enabled, "visualAudit", diagnostics),
948
- roles: value.roles === void 0 ? defaults.roles : roles,
949
- pathRoots: value.pathRoots === void 0 ? defaults.pathRoots : pathRoots,
950
- pathGlobs: value.pathGlobs === void 0 ? defaults.pathGlobs : pathGlobs,
951
- excludePathGlobs: value.excludePathGlobs === void 0 ? defaults.excludePathGlobs : excludePathGlobs,
952
- includeFullPage: booleanField(value, "includeFullPage", defaults.includeFullPage, "visualAudit", diagnostics),
953
- review: {
954
- enabled: review ? booleanField(review, "enabled", defaults.review.enabled, "visualAudit.review", diagnostics) : defaults.review.enabled,
955
- detail: reviewDetail,
956
- maxFindings,
957
- contactSheets: review ? booleanField(review, "contactSheets", defaults.review.contactSheets, "visualAudit.review", diagnostics) : defaults.review.contactSheets
958
- },
959
- routeDiscovery: {
960
- core: routeDiscovery ? booleanField(routeDiscovery, "core", true, "visualAudit.routeDiscovery", diagnostics) : defaults.routeDiscovery.core,
961
- admin: routeDiscovery ? booleanField(routeDiscovery, "admin", true, "visualAudit.routeDiscovery", diagnostics) : defaults.routeDiscovery.admin,
962
- tenantOverrides: routeDiscovery ? booleanField(routeDiscovery, "tenantOverrides", true, "visualAudit.routeDiscovery", diagnostics) : defaults.routeDiscovery.tenantOverrides,
963
- contentCollections: routeDiscovery ? booleanField(routeDiscovery, "contentCollections", true, "visualAudit.routeDiscovery", diagnostics) : defaults.routeDiscovery.contentCollections
964
- }
965
- };
966
- }
967
- function actionKind(action) {
968
- return Object.keys(action)[0] ?? "";
969
- }
970
- function sceneActionKind(action) {
971
- return actionKind(action);
972
- }
973
- function sceneExpectationKinds(expectation) {
974
- return expectationKeys(expectation);
975
- }
976
- function parseTreeseedSceneManifest(value, diagnostics) {
977
- if (!isRecord(value)) {
978
- diagnostics.push(sceneErrorDiagnostic("scene.invalid_manifest", "Expected scene manifest to be an object.", "manifest"));
979
- return null;
980
- }
981
- for (const key of Object.keys(value)) {
982
- if (!TOP_LEVEL_FIELDS.has(key)) diagnostics.push(sceneWarningDiagnostic("scene.unknown_field", `Unknown top-level field: ${key}.`, key));
983
- }
984
- const schemaVersion = requireString(value, "schemaVersion", "manifest", diagnostics);
985
- if (schemaVersion && schemaVersion !== TREESEED_SCENE_SCHEMA_VERSION) diagnostics.push(sceneErrorDiagnostic("scene.unsupported_schema_version", `Unsupported scene schema version: ${schemaVersion}.`, "schemaVersion"));
986
- const id = requireString(value, "id", "manifest", diagnostics);
987
- if (id && !FILESYSTEM_SAFE_SCENE_ID.test(id)) diagnostics.push(sceneErrorDiagnostic("scene.invalid_id", `Invalid scene id: ${id}.`, "id"));
988
- const title = requireString(value, "title", "manifest", diagnostics);
989
- const target = parseTarget(value.target, diagnostics);
990
- const devices = parseDevices(value.devices, target, diagnostics);
991
- const mode = parseMode(value.mode, diagnostics);
992
- const workflow = parseWorkflow(value.workflow, diagnostics);
993
- if (workflow.length > 10 && !Array.isArray(value.chapters)) diagnostics.push(sceneErrorDiagnostic("scene.missing_chapters", "Scenes with more than 10 workflow steps must define chapters.", "chapters"));
994
- const stepIds = new Set(workflow.map((step) => step.id));
995
- return {
996
- schemaVersion: TREESEED_SCENE_SCHEMA_VERSION,
997
- id,
998
- title,
999
- description: optionalString(value, "description"),
1000
- audience: stringArrayField(value, "audience", "manifest", diagnostics),
1001
- journey: parseJourney(value, diagnostics),
1002
- mode,
1003
- target,
1004
- devices,
1005
- setup: parseSetup(value.setup, target.environment, diagnostics),
1006
- artifacts: parseArtifacts(value.artifacts, diagnostics),
1007
- workflow,
1008
- chapters: parseChapters(value.chapters, stepIds, diagnostics),
1009
- overlays: parseOverlays(value.overlays, stepIds, diagnostics),
1010
- diagrams: parseDiagrams(value.diagrams, stepIds, diagnostics),
1011
- render: parseRender(value.render, diagnostics),
1012
- runtime: parseRuntime(value.runtime, mode, diagnostics),
1013
- training: parseTraining(value.training, stepIds, diagnostics),
1014
- visualAudit: parseVisualAudit(value.visualAudit, diagnostics)
1015
- };
1016
- }
1017
- export {
1018
- defaultTreeseedSceneDeviceConfig,
1019
- defaultTreeseedSceneTrainingConfig,
1020
- parseTreeseedSceneManifest,
1021
- sceneActionKind,
1022
- sceneExpectationKinds
1023
- };