forgeos 0.1.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (540) hide show
  1. package/.npmignore +1 -0
  2. package/AGENTS.md +277 -0
  3. package/CHANGELOG.md +8 -0
  4. package/CONTRIBUTING.md +58 -0
  5. package/README.md +377 -0
  6. package/bin/forge-bun.mjs +110 -0
  7. package/bin/forge.mjs +19 -0
  8. package/package.json +96 -0
  9. package/packages/eslint-plugin-forge/index.ts +15 -0
  10. package/packages/eslint-plugin-forge/package.json +10 -0
  11. package/packages/eslint-plugin-forge/src/check-source.ts +95 -0
  12. package/packages/eslint-plugin-forge/src/load-artifacts.ts +24 -0
  13. package/packages/eslint-plugin-forge/src/rule-no-forge-guard-violation.ts +93 -0
  14. package/src/forge/_generated/actionSubscriptions.json +2 -0
  15. package/src/forge/_generated/actionSubscriptions.ts +10 -0
  16. package/src/forge/_generated/agentAdapterManifest.json +2 -0
  17. package/src/forge/_generated/agentAdapterManifest.ts +73 -0
  18. package/src/forge/_generated/agentContract.json +2 -0
  19. package/src/forge/_generated/agentContract.ts +912 -0
  20. package/src/forge/_generated/agentQuickstart.md +32 -0
  21. package/src/forge/_generated/aiContext.ts +59 -0
  22. package/src/forge/_generated/aiModels.json +2 -0
  23. package/src/forge/_generated/aiModels.ts +35 -0
  24. package/src/forge/_generated/aiProviders.json +2 -0
  25. package/src/forge/_generated/aiProviders.ts +23 -0
  26. package/src/forge/_generated/aiRegistry.json +2 -0
  27. package/src/forge/_generated/aiRegistry.ts +29 -0
  28. package/src/forge/_generated/api.json +2 -0
  29. package/src/forge/_generated/api.ts +8 -0
  30. package/src/forge/_generated/appGraph.json +2 -0
  31. package/src/forge/_generated/appGraph.ts +14511 -0
  32. package/src/forge/_generated/appMap.md +35 -0
  33. package/src/forge/_generated/artifactManifest.json +2 -0
  34. package/src/forge/_generated/artifactManifest.ts +7 -0
  35. package/src/forge/_generated/authClaims.json +2 -0
  36. package/src/forge/_generated/authClaims.ts +13 -0
  37. package/src/forge/_generated/authConfig.json +2 -0
  38. package/src/forge/_generated/authConfig.ts +17 -0
  39. package/src/forge/_generated/authContext.ts +23 -0
  40. package/src/forge/_generated/authRegistry.json +2 -0
  41. package/src/forge/_generated/authRegistry.ts +25 -0
  42. package/src/forge/_generated/buildInfo.json +2 -0
  43. package/src/forge/_generated/buildInfo.ts +9 -0
  44. package/src/forge/_generated/capabilityMap.json +2 -0
  45. package/src/forge/_generated/capabilityMap.md +15 -0
  46. package/src/forge/_generated/capabilityMap.ts +17 -0
  47. package/src/forge/_generated/client.ts +282 -0
  48. package/src/forge/_generated/clientApi.ts +9 -0
  49. package/src/forge/_generated/clientManifest.json +2 -0
  50. package/src/forge/_generated/clientManifest.ts +39 -0
  51. package/src/forge/_generated/clientTypes.ts +78 -0
  52. package/src/forge/_generated/configRegistry.json +2 -0
  53. package/src/forge/_generated/configRegistry.ts +4 -0
  54. package/src/forge/_generated/dataGraph.json +2 -0
  55. package/src/forge/_generated/dataGraph.ts +8 -0
  56. package/src/forge/_generated/db.json +2 -0
  57. package/src/forge/_generated/db.ts +2 -0
  58. package/src/forge/_generated/dbSecurityManifest.json +2 -0
  59. package/src/forge/_generated/dbSecurityManifest.ts +15 -0
  60. package/src/forge/_generated/dbSessionContext.json +2 -0
  61. package/src/forge/_generated/dbSessionContext.ts +39 -0
  62. package/src/forge/_generated/deployManifest.json +2 -0
  63. package/src/forge/_generated/deployManifest.ts +14 -0
  64. package/src/forge/_generated/devManifest.json +2 -0
  65. package/src/forge/_generated/devManifest.ts +47 -0
  66. package/src/forge/_generated/envSchema.json +2 -0
  67. package/src/forge/_generated/envSchema.ts +59 -0
  68. package/src/forge/_generated/frontendGraph.json +2 -0
  69. package/src/forge/_generated/frontendGraph.ts +27 -0
  70. package/src/forge/_generated/importGuards.json +2 -0
  71. package/src/forge/_generated/importGuards.ts +652 -0
  72. package/src/forge/_generated/index.ts +67 -0
  73. package/src/forge/_generated/liveProductionManifest.json +2 -0
  74. package/src/forge/_generated/liveProductionManifest.ts +23 -0
  75. package/src/forge/_generated/liveProtocol.json +2 -0
  76. package/src/forge/_generated/liveProtocol.ts +21 -0
  77. package/src/forge/_generated/liveQueryRegistry.json +2 -0
  78. package/src/forge/_generated/liveQueryRegistry.ts +9 -0
  79. package/src/forge/_generated/liveTransportConfig.json +2 -0
  80. package/src/forge/_generated/liveTransportConfig.ts +19 -0
  81. package/src/forge/_generated/makeRegistry.json +2 -0
  82. package/src/forge/_generated/makeRegistry.ts +163 -0
  83. package/src/forge/_generated/makeTemplates.json +2 -0
  84. package/src/forge/_generated/makeTemplates.ts +61 -0
  85. package/src/forge/_generated/mockMap.json +2 -0
  86. package/src/forge/_generated/mockMap.ts +7 -0
  87. package/src/forge/_generated/operationPlaybooks.md +145 -0
  88. package/src/forge/_generated/packageGraph.json +2 -0
  89. package/src/forge/_generated/packageGraph.ts +168569 -0
  90. package/src/forge/_generated/packageUpgradeRegistry.json +2 -0
  91. package/src/forge/_generated/packageUpgradeRegistry.ts +15 -0
  92. package/src/forge/_generated/permissionMatrix.json +2 -0
  93. package/src/forge/_generated/permissionMatrix.ts +7 -0
  94. package/src/forge/_generated/policyRegistry.json +2 -0
  95. package/src/forge/_generated/policyRegistry.ts +11 -0
  96. package/src/forge/_generated/queryRegistry.json +2 -0
  97. package/src/forge/_generated/queryRegistry.ts +9 -0
  98. package/src/forge/_generated/react.d.ts +22 -0
  99. package/src/forge/_generated/react.ts +29 -0
  100. package/src/forge/_generated/reactManifest.json +2 -0
  101. package/src/forge/_generated/reactManifest.ts +19 -0
  102. package/src/forge/_generated/releaseManifest.json +2 -0
  103. package/src/forge/_generated/releaseManifest.ts +25 -0
  104. package/src/forge/_generated/rlsPolicies.json +2 -0
  105. package/src/forge/_generated/rlsPolicies.sql +34 -0
  106. package/src/forge/_generated/rlsPolicies.ts +6 -0
  107. package/src/forge/_generated/runtimeGraph.json +2 -0
  108. package/src/forge/_generated/runtimeGraph.ts +8 -0
  109. package/src/forge/_generated/runtimeMatrix.json +2 -0
  110. package/src/forge/_generated/runtimeMatrix.ts +229125 -0
  111. package/src/forge/_generated/runtimeRegistry.ts +2 -0
  112. package/src/forge/_generated/runtimeRules.md +79 -0
  113. package/src/forge/_generated/secretRegistry.json +2 -0
  114. package/src/forge/_generated/secretRegistry.ts +50 -0
  115. package/src/forge/_generated/secretsContext.ts +11 -0
  116. package/src/forge/_generated/serverApi.ts +10 -0
  117. package/src/forge/_generated/sourceMapManifest.json +2 -0
  118. package/src/forge/_generated/sourceMapManifest.ts +7 -0
  119. package/src/forge/_generated/sqlPlan.json +2 -0
  120. package/src/forge/_generated/sqlPlan.ts +88 -0
  121. package/src/forge/_generated/subscriptionManifest.json +2 -0
  122. package/src/forge/_generated/subscriptionManifest.ts +7 -0
  123. package/src/forge/_generated/symbolicationManifest.json +2 -0
  124. package/src/forge/_generated/symbolicationManifest.ts +17 -0
  125. package/src/forge/_generated/telemetryRegistry.json +2 -0
  126. package/src/forge/_generated/telemetryRegistry.ts +9 -0
  127. package/src/forge/_generated/telemetrySinks.json +2 -0
  128. package/src/forge/_generated/telemetrySinks.ts +11 -0
  129. package/src/forge/_generated/tenantScope.json +2 -0
  130. package/src/forge/_generated/tenantScope.ts +8 -0
  131. package/src/forge/_generated/testGraph.json +2 -0
  132. package/src/forge/_generated/testGraph.ts +3054 -0
  133. package/src/forge/_generated/testPlanRegistry.json +2 -0
  134. package/src/forge/_generated/testPlanRegistry.ts +33 -0
  135. package/src/forge/_generated/uiRoutes.json +2 -0
  136. package/src/forge/_generated/uiRoutes.ts +16 -0
  137. package/src/forge/_generated/uiScenarios.json +2 -0
  138. package/src/forge/_generated/uiScenarios.ts +30 -0
  139. package/src/forge/_generated/uiTestManifest.json +2 -0
  140. package/src/forge/_generated/uiTestManifest.ts +27 -0
  141. package/src/forge/_generated/workflowRegistry.json +2 -0
  142. package/src/forge/_generated/workflowRegistry.ts +9 -0
  143. package/src/forge/_generated/workflowSubscriptions.json +2 -0
  144. package/src/forge/_generated/workflowSubscriptions.ts +10 -0
  145. package/src/forge/agent-adapters/index.ts +1002 -0
  146. package/src/forge/agent-adapters/types.ts +135 -0
  147. package/src/forge/cli/agent-contract.ts +50 -0
  148. package/src/forge/cli/ai.ts +148 -0
  149. package/src/forge/cli/auth.ts +198 -0
  150. package/src/forge/cli/build.ts +105 -0
  151. package/src/forge/cli/bun-exec.ts +4 -0
  152. package/src/forge/cli/commands.ts +1130 -0
  153. package/src/forge/cli/db.ts +316 -0
  154. package/src/forge/cli/deps.ts +277 -0
  155. package/src/forge/cli/dev.ts +529 -0
  156. package/src/forge/cli/doctor.ts +209 -0
  157. package/src/forge/cli/feature.ts +485 -0
  158. package/src/forge/cli/index.ts +25 -0
  159. package/src/forge/cli/lint-forge.ts +119 -0
  160. package/src/forge/cli/live.ts +179 -0
  161. package/src/forge/cli/main.ts +92 -0
  162. package/src/forge/cli/make.ts +133 -0
  163. package/src/forge/cli/new.ts +505 -0
  164. package/src/forge/cli/outbox.ts +297 -0
  165. package/src/forge/cli/output.ts +114 -0
  166. package/src/forge/cli/parse.ts +2211 -0
  167. package/src/forge/cli/policy.ts +204 -0
  168. package/src/forge/cli/query.ts +91 -0
  169. package/src/forge/cli/refactor.ts +221 -0
  170. package/src/forge/cli/release.ts +285 -0
  171. package/src/forge/cli/rls.ts +322 -0
  172. package/src/forge/cli/run.ts +76 -0
  173. package/src/forge/cli/secrets.ts +274 -0
  174. package/src/forge/cli/self-host.ts +468 -0
  175. package/src/forge/cli/serve.ts +93 -0
  176. package/src/forge/cli/telemetry.ts +219 -0
  177. package/src/forge/cli/verify.ts +587 -0
  178. package/src/forge/cli/version.ts +1 -0
  179. package/src/forge/cli/windows.ts +413 -0
  180. package/src/forge/cli/worker.ts +87 -0
  181. package/src/forge/cli/workflow.ts +424 -0
  182. package/src/forge/compiler/action-subscriptions/build.ts +116 -0
  183. package/src/forge/compiler/action-subscriptions/constants.ts +2 -0
  184. package/src/forge/compiler/action-subscriptions/index.ts +6 -0
  185. package/src/forge/compiler/action-subscriptions/parse.ts +6 -0
  186. package/src/forge/compiler/agent-contract/build.ts +1651 -0
  187. package/src/forge/compiler/agent-contract/types.ts +326 -0
  188. package/src/forge/compiler/ai-registry/build.ts +165 -0
  189. package/src/forge/compiler/ai-registry/constants.ts +2 -0
  190. package/src/forge/compiler/ai-registry/parse.ts +56 -0
  191. package/src/forge/compiler/api-surface/build.ts +107 -0
  192. package/src/forge/compiler/app-graph/build.ts +121 -0
  193. package/src/forge/compiler/app-graph/classify.ts +10 -0
  194. package/src/forge/compiler/app-graph/dup-symbol.ts +29 -0
  195. package/src/forge/compiler/app-graph/extract.ts +124 -0
  196. package/src/forge/compiler/app-graph/forge-apis.ts +29 -0
  197. package/src/forge/compiler/app-graph/index.ts +15 -0
  198. package/src/forge/compiler/app-graph/module-graph.ts +320 -0
  199. package/src/forge/compiler/app-graph/parser.ts +119 -0
  200. package/src/forge/compiler/app-graph/symbols.ts +48 -0
  201. package/src/forge/compiler/app-graph/tsconfig-hash.ts +62 -0
  202. package/src/forge/compiler/app-graph/types.ts +43 -0
  203. package/src/forge/compiler/app-graph/versions.ts +14 -0
  204. package/src/forge/compiler/cache/index.ts +17 -0
  205. package/src/forge/compiler/cache/key.ts +46 -0
  206. package/src/forge/compiler/cache/scheduler.ts +72 -0
  207. package/src/forge/compiler/cache/store.ts +78 -0
  208. package/src/forge/compiler/classifier/capabilities.ts +78 -0
  209. package/src/forge/compiler/classifier/classify.ts +113 -0
  210. package/src/forge/compiler/classifier/contexts.ts +188 -0
  211. package/src/forge/compiler/classifier/index.ts +18 -0
  212. package/src/forge/compiler/classifier/runtime-matrix.ts +45 -0
  213. package/src/forge/compiler/classifier/secrets.ts +41 -0
  214. package/src/forge/compiler/classifier/signals.ts +129 -0
  215. package/src/forge/compiler/client-sdk/build-manifest.ts +151 -0
  216. package/src/forge/compiler/client-sdk/render-client.ts +432 -0
  217. package/src/forge/compiler/data-graph/build.ts +131 -0
  218. package/src/forge/compiler/data-graph/constants.ts +5 -0
  219. package/src/forge/compiler/data-graph/index.ts +6 -0
  220. package/src/forge/compiler/data-graph/parse.ts +176 -0
  221. package/src/forge/compiler/data-graph/rls/build.ts +222 -0
  222. package/src/forge/compiler/data-graph/rls/types.ts +62 -0
  223. package/src/forge/compiler/data-graph/sql/ddl.ts +390 -0
  224. package/src/forge/compiler/data-graph/sql/naming.ts +10 -0
  225. package/src/forge/compiler/data-graph/sql/serialize.ts +85 -0
  226. package/src/forge/compiler/data-graph/sql/types.ts +37 -0
  227. package/src/forge/compiler/dev-manifest/build.ts +170 -0
  228. package/src/forge/compiler/dev-manifest/constants.ts +5 -0
  229. package/src/forge/compiler/diagnostics/codes.ts +611 -0
  230. package/src/forge/compiler/diagnostics/create.ts +245 -0
  231. package/src/forge/compiler/diagnostics/index.ts +55 -0
  232. package/src/forge/compiler/emitter/artifact-kind.ts +14 -0
  233. package/src/forge/compiler/emitter/barrel.ts +44 -0
  234. package/src/forge/compiler/emitter/constants.ts +7 -0
  235. package/src/forge/compiler/emitter/emit.ts +237 -0
  236. package/src/forge/compiler/emitter/index.ts +24 -0
  237. package/src/forge/compiler/emitter/lock.ts +62 -0
  238. package/src/forge/compiler/emitter/render.ts +73 -0
  239. package/src/forge/compiler/emitter/write.ts +35 -0
  240. package/src/forge/compiler/frontend-graph/build.ts +495 -0
  241. package/src/forge/compiler/fs/index.ts +23 -0
  242. package/src/forge/compiler/fs/memory.ts +233 -0
  243. package/src/forge/compiler/fs/node.ts +139 -0
  244. package/src/forge/compiler/fs/profile.ts +108 -0
  245. package/src/forge/compiler/fs/types.ts +52 -0
  246. package/src/forge/compiler/guards/artifacts.ts +96 -0
  247. package/src/forge/compiler/guards/check-ai-usage.ts +98 -0
  248. package/src/forge/compiler/guards/check-import-guards.ts +106 -0
  249. package/src/forge/compiler/guards/check-process-env.ts +98 -0
  250. package/src/forge/compiler/guards/check-query-usage.ts +76 -0
  251. package/src/forge/compiler/guards/index.ts +11 -0
  252. package/src/forge/compiler/guards/propagate-contexts.ts +57 -0
  253. package/src/forge/compiler/index.ts +17 -0
  254. package/src/forge/compiler/integration/add.ts +496 -0
  255. package/src/forge/compiler/integration/index.ts +17 -0
  256. package/src/forge/compiler/integration/plan.ts +283 -0
  257. package/src/forge/compiler/integration/render.ts +189 -0
  258. package/src/forge/compiler/integration/snapshot.ts +52 -0
  259. package/src/forge/compiler/integration/templates/ai.ts +131 -0
  260. package/src/forge/compiler/integration/templates/index.ts +8 -0
  261. package/src/forge/compiler/integration/templates/posthog.ts +145 -0
  262. package/src/forge/compiler/integration/templates/render.ts +113 -0
  263. package/src/forge/compiler/integration/templates/sentry.ts +151 -0
  264. package/src/forge/compiler/integration/templates/stripe.ts +109 -0
  265. package/src/forge/compiler/integration/templates/types.ts +14 -0
  266. package/src/forge/compiler/integration/templates/zod.ts +55 -0
  267. package/src/forge/compiler/live-production/types.ts +122 -0
  268. package/src/forge/compiler/live-query-registry/build.ts +150 -0
  269. package/src/forge/compiler/live-query-registry/constants.ts +2 -0
  270. package/src/forge/compiler/make-registry/build.ts +179 -0
  271. package/src/forge/compiler/orchestrator/discover.ts +214 -0
  272. package/src/forge/compiler/orchestrator/fast-check.ts +117 -0
  273. package/src/forge/compiler/orchestrator/generate-lock.ts +138 -0
  274. package/src/forge/compiler/orchestrator/guards.ts +5 -0
  275. package/src/forge/compiler/orchestrator/index.ts +27 -0
  276. package/src/forge/compiler/orchestrator/manifest-hashes.ts +21 -0
  277. package/src/forge/compiler/orchestrator/manifest.ts +92 -0
  278. package/src/forge/compiler/orchestrator/orphans.ts +51 -0
  279. package/src/forge/compiler/orchestrator/plan.ts +876 -0
  280. package/src/forge/compiler/orchestrator/profile.ts +36 -0
  281. package/src/forge/compiler/orchestrator/run.ts +277 -0
  282. package/src/forge/compiler/orchestrator/serialize.ts +886 -0
  283. package/src/forge/compiler/orchestrator/session.ts +96 -0
  284. package/src/forge/compiler/orchestrator/types.ts +31 -0
  285. package/src/forge/compiler/orchestrator/verify.ts +38 -0
  286. package/src/forge/compiler/orchestrator/workspace-index.ts +154 -0
  287. package/src/forge/compiler/package-graph/capabilities-stub.ts +33 -0
  288. package/src/forge/compiler/package-graph/checksum.ts +97 -0
  289. package/src/forge/compiler/package-graph/compiler.ts +392 -0
  290. package/src/forge/compiler/package-graph/constants.ts +4 -0
  291. package/src/forge/compiler/package-graph/dts-extractor.ts +142 -0
  292. package/src/forge/compiler/package-graph/exports-discovery.ts +84 -0
  293. package/src/forge/compiler/package-graph/extract-dts.ts +32 -0
  294. package/src/forge/compiler/package-graph/index.ts +33 -0
  295. package/src/forge/compiler/package-graph/jsdoc.ts +62 -0
  296. package/src/forge/compiler/package-graph/read-file.ts +21 -0
  297. package/src/forge/compiler/package-graph/resolve.ts +127 -0
  298. package/src/forge/compiler/package-manager/adapter.ts +237 -0
  299. package/src/forge/compiler/package-manager/bun-executable.ts +92 -0
  300. package/src/forge/compiler/package-manager/commands.ts +47 -0
  301. package/src/forge/compiler/package-manager/detect.ts +79 -0
  302. package/src/forge/compiler/package-manager/executor.ts +117 -0
  303. package/src/forge/compiler/package-manager/index.ts +22 -0
  304. package/src/forge/compiler/package-manager/parse-spec.ts +16 -0
  305. package/src/forge/compiler/package-manager/version.ts +27 -0
  306. package/src/forge/compiler/package-upgrades/apply.ts +195 -0
  307. package/src/forge/compiler/package-upgrades/comparator.ts +181 -0
  308. package/src/forge/compiler/package-upgrades/impact.ts +139 -0
  309. package/src/forge/compiler/package-upgrades/markdown.ts +97 -0
  310. package/src/forge/compiler/package-upgrades/planner.ts +532 -0
  311. package/src/forge/compiler/package-upgrades/risk.ts +208 -0
  312. package/src/forge/compiler/package-upgrades/types.ts +174 -0
  313. package/src/forge/compiler/policy-registry/build.ts +266 -0
  314. package/src/forge/compiler/policy-registry/constants.ts +2 -0
  315. package/src/forge/compiler/policy-registry/parse.ts +81 -0
  316. package/src/forge/compiler/primitives/compare.ts +26 -0
  317. package/src/forge/compiler/primitives/hash.ts +40 -0
  318. package/src/forge/compiler/primitives/header.ts +45 -0
  319. package/src/forge/compiler/primitives/index.ts +45 -0
  320. package/src/forge/compiler/primitives/paths.ts +24 -0
  321. package/src/forge/compiler/primitives/result.ts +164 -0
  322. package/src/forge/compiler/primitives/serialize.ts +66 -0
  323. package/src/forge/compiler/primitives/sort.ts +87 -0
  324. package/src/forge/compiler/query-registry/build.ts +114 -0
  325. package/src/forge/compiler/query-registry/constants.ts +2 -0
  326. package/src/forge/compiler/recipes/definitions.ts +289 -0
  327. package/src/forge/compiler/recipes/helpers.ts +37 -0
  328. package/src/forge/compiler/recipes/index.ts +21 -0
  329. package/src/forge/compiler/recipes/registry.ts +102 -0
  330. package/src/forge/compiler/release/build.ts +100 -0
  331. package/src/forge/compiler/release/types.ts +119 -0
  332. package/src/forge/compiler/runtime-graph/build.ts +137 -0
  333. package/src/forge/compiler/runtime-graph/constants.ts +5 -0
  334. package/src/forge/compiler/runtime-graph/index.ts +5 -0
  335. package/src/forge/compiler/sandbox/artifact-sanitize.ts +26 -0
  336. package/src/forge/compiler/sandbox/backends/child.ts +123 -0
  337. package/src/forge/compiler/sandbox/backends/docker.ts +173 -0
  338. package/src/forge/compiler/sandbox/index.ts +51 -0
  339. package/src/forge/compiler/sandbox/inspect.ts +143 -0
  340. package/src/forge/compiler/sandbox/inspector-entry.ts +115 -0
  341. package/src/forge/compiler/sandbox/limits.ts +31 -0
  342. package/src/forge/compiler/sandbox/scrub-env.ts +60 -0
  343. package/src/forge/compiler/sandbox/secret-scan.ts +54 -0
  344. package/src/forge/compiler/sandbox/serialize.ts +106 -0
  345. package/src/forge/compiler/sandbox/types.ts +7 -0
  346. package/src/forge/compiler/secret-registry/build.ts +123 -0
  347. package/src/forge/compiler/telemetry-registry/build.ts +89 -0
  348. package/src/forge/compiler/telemetry-registry/constants.ts +2 -0
  349. package/src/forge/compiler/telemetry-registry/parse.ts +13 -0
  350. package/src/forge/compiler/test-graph/build.ts +277 -0
  351. package/src/forge/compiler/types/action-subscriptions.ts +19 -0
  352. package/src/forge/compiler/types/ai-registry.ts +33 -0
  353. package/src/forge/compiler/types/app-graph.ts +80 -0
  354. package/src/forge/compiler/types/capability.ts +29 -0
  355. package/src/forge/compiler/types/classification.ts +9 -0
  356. package/src/forge/compiler/types/cli.ts +159 -0
  357. package/src/forge/compiler/types/data-graph.ts +24 -0
  358. package/src/forge/compiler/types/dev-manifest.ts +41 -0
  359. package/src/forge/compiler/types/diagnostic.ts +12 -0
  360. package/src/forge/compiler/types/emit.ts +25 -0
  361. package/src/forge/compiler/types/frontend-graph.ts +81 -0
  362. package/src/forge/compiler/types/import-guards.ts +19 -0
  363. package/src/forge/compiler/types/index.ts +98 -0
  364. package/src/forge/compiler/types/integration.ts +25 -0
  365. package/src/forge/compiler/types/json.ts +3 -0
  366. package/src/forge/compiler/types/live-query-registry.ts +32 -0
  367. package/src/forge/compiler/types/lock.ts +37 -0
  368. package/src/forge/compiler/types/package-graph.ts +84 -0
  369. package/src/forge/compiler/types/policy-registry.ts +69 -0
  370. package/src/forge/compiler/types/query-registry.ts +18 -0
  371. package/src/forge/compiler/types/runtime-graph.ts +30 -0
  372. package/src/forge/compiler/types/runtime-matrix.ts +16 -0
  373. package/src/forge/compiler/types/runtime.ts +30 -0
  374. package/src/forge/compiler/types/sandbox.ts +24 -0
  375. package/src/forge/compiler/types/secret-registry.ts +38 -0
  376. package/src/forge/compiler/types/telemetry-registry.ts +26 -0
  377. package/src/forge/compiler/types/test-graph.ts +45 -0
  378. package/src/forge/compiler/types/workflow-registry.ts +42 -0
  379. package/src/forge/compiler/workflow-registry/build.ts +180 -0
  380. package/src/forge/compiler/workflow-registry/constants.ts +2 -0
  381. package/src/forge/compiler/workflow-registry/index.ts +5 -0
  382. package/src/forge/compiler/workflow-registry/parse.ts +19 -0
  383. package/src/forge/dev/server.ts +1379 -0
  384. package/src/forge/dev/types.ts +49 -0
  385. package/src/forge/dev/watch.ts +109 -0
  386. package/src/forge/dev-console/cycle.ts +652 -0
  387. package/src/forge/dev-console/types.ts +99 -0
  388. package/src/forge/feature/compiler.ts +656 -0
  389. package/src/forge/feature/examples.ts +125 -0
  390. package/src/forge/feature/types.ts +177 -0
  391. package/src/forge/impact/index.ts +1160 -0
  392. package/src/forge/impact/types.ts +151 -0
  393. package/src/forge/intent/index.ts +490 -0
  394. package/src/forge/intent/types.ts +73 -0
  395. package/src/forge/make/fields.ts +146 -0
  396. package/src/forge/make/index.ts +1101 -0
  397. package/src/forge/make/naming.ts +42 -0
  398. package/src/forge/make/templates.ts +525 -0
  399. package/src/forge/make/types.ts +151 -0
  400. package/src/forge/platform/module.ts +20 -0
  401. package/src/forge/policy.ts +1 -0
  402. package/src/forge/react/index.ts +418 -0
  403. package/src/forge/refactor/index.ts +1936 -0
  404. package/src/forge/refactor/text-utils.ts +34 -0
  405. package/src/forge/refactor/types.ts +191 -0
  406. package/src/forge/refactor/workspace-fs.ts +171 -0
  407. package/src/forge/repair/index.ts +656 -0
  408. package/src/forge/repair/rules/index.ts +476 -0
  409. package/src/forge/repair/types.ts +175 -0
  410. package/src/forge/review/index.ts +992 -0
  411. package/src/forge/review/types.ts +196 -0
  412. package/src/forge/runtime/ai/check.ts +86 -0
  413. package/src/forge/runtime/ai/context.ts +394 -0
  414. package/src/forge/runtime/ai/cost-estimator.ts +41 -0
  415. package/src/forge/runtime/ai/mock.ts +49 -0
  416. package/src/forge/runtime/ai/providers.ts +78 -0
  417. package/src/forge/runtime/ai/state.ts +17 -0
  418. package/src/forge/runtime/ai/types.ts +67 -0
  419. package/src/forge/runtime/auth/authenticate.ts +58 -0
  420. package/src/forge/runtime/auth/claims.ts +119 -0
  421. package/src/forge/runtime/auth/config.ts +148 -0
  422. package/src/forge/runtime/auth/errors.ts +45 -0
  423. package/src/forge/runtime/auth/evaluate.ts +126 -0
  424. package/src/forge/runtime/auth/resolve.ts +74 -0
  425. package/src/forge/runtime/auth/types.ts +87 -0
  426. package/src/forge/runtime/auth/verifier.ts +138 -0
  427. package/src/forge/runtime/context/create-context.ts +204 -0
  428. package/src/forge/runtime/context/create-query-context.ts +34 -0
  429. package/src/forge/runtime/db/adapter.ts +31 -0
  430. package/src/forge/runtime/db/factory.ts +83 -0
  431. package/src/forge/runtime/db/generated-client.ts +294 -0
  432. package/src/forge/runtime/db/memory-adapter.ts +706 -0
  433. package/src/forge/runtime/db/migrate.ts +132 -0
  434. package/src/forge/runtime/db/outbox.ts +54 -0
  435. package/src/forge/runtime/db/pglite-adapter.ts +51 -0
  436. package/src/forge/runtime/db/postgres-adapter.ts +112 -0
  437. package/src/forge/runtime/db/read-only-client.ts +97 -0
  438. package/src/forge/runtime/db/session-context.ts +62 -0
  439. package/src/forge/runtime/executor.ts +446 -0
  440. package/src/forge/runtime/live/dependency-tracker.ts +57 -0
  441. package/src/forge/runtime/live/invalidation-log.ts +189 -0
  442. package/src/forge/runtime/live/live-query-runner.ts +267 -0
  443. package/src/forge/runtime/live/registry.ts +28 -0
  444. package/src/forge/runtime/live/sse.ts +75 -0
  445. package/src/forge/runtime/live/subscription-manager.ts +443 -0
  446. package/src/forge/runtime/live/types.ts +143 -0
  447. package/src/forge/runtime/outbox/claim.ts +153 -0
  448. package/src/forge/runtime/outbox/process.ts +298 -0
  449. package/src/forge/runtime/outbox/retry.ts +8 -0
  450. package/src/forge/runtime/outbox/subscriptions.ts +33 -0
  451. package/src/forge/runtime/outbox/types.ts +69 -0
  452. package/src/forge/runtime/policy/check.ts +157 -0
  453. package/src/forge/runtime/policy/load.ts +55 -0
  454. package/src/forge/runtime/query/registry.ts +19 -0
  455. package/src/forge/runtime/query/run-query.ts +347 -0
  456. package/src/forge/runtime/release/runtime.ts +322 -0
  457. package/src/forge/runtime/release/symbolicate.ts +175 -0
  458. package/src/forge/runtime/runner/command-transaction.ts +193 -0
  459. package/src/forge/runtime/runner/run-entry.ts +226 -0
  460. package/src/forge/runtime/secrets/check.ts +78 -0
  461. package/src/forge/runtime/secrets/create-context.ts +138 -0
  462. package/src/forge/runtime/secrets/env-loader.ts +94 -0
  463. package/src/forge/runtime/secrets/runtime-bundle.ts +47 -0
  464. package/src/forge/runtime/secrets/types.ts +31 -0
  465. package/src/forge/runtime/telemetry/buffer.ts +87 -0
  466. package/src/forge/runtime/telemetry/context.ts +192 -0
  467. package/src/forge/runtime/telemetry/correlation.ts +13 -0
  468. package/src/forge/runtime/telemetry/flush.ts +190 -0
  469. package/src/forge/runtime/telemetry/process.ts +20 -0
  470. package/src/forge/runtime/telemetry/scrubber.ts +115 -0
  471. package/src/forge/runtime/telemetry/sinks/local-jsonl.ts +39 -0
  472. package/src/forge/runtime/telemetry/sinks/posthog.ts +64 -0
  473. package/src/forge/runtime/telemetry/sinks/sentry.ts +60 -0
  474. package/src/forge/runtime/telemetry/spans.ts +58 -0
  475. package/src/forge/runtime/telemetry/types.ts +64 -0
  476. package/src/forge/runtime/workflows/cancel.ts +26 -0
  477. package/src/forge/runtime/workflows/create-run.ts +98 -0
  478. package/src/forge/runtime/workflows/process-run.ts +182 -0
  479. package/src/forge/runtime/workflows/process-step.ts +190 -0
  480. package/src/forge/runtime/workflows/process.ts +260 -0
  481. package/src/forge/runtime/workflows/registry.ts +51 -0
  482. package/src/forge/runtime/workflows/resolve-step.ts +46 -0
  483. package/src/forge/runtime/workflows/retry-run.ts +44 -0
  484. package/src/forge/runtime/workflows/retry.ts +8 -0
  485. package/src/forge/runtime/workflows/sanitize.ts +19 -0
  486. package/src/forge/runtime/workflows/start-from-outbox.ts +71 -0
  487. package/src/forge/runtime/workflows/types.ts +77 -0
  488. package/src/forge/server.ts +96 -0
  489. package/src/forge/ui/index.ts +770 -0
  490. package/src/forge/ui/types.ts +191 -0
  491. package/templates/b2b-support-web/.env.example +22 -0
  492. package/templates/b2b-support-web/.vscode/settings.json +14 -0
  493. package/templates/b2b-support-web/AGENTS.md +108 -0
  494. package/templates/b2b-support-web/README.md +48 -0
  495. package/templates/b2b-support-web/forge.config.ts +3 -0
  496. package/templates/b2b-support-web/package.json +34 -0
  497. package/templates/b2b-support-web/src/actions/captureTicketCreated.ts +14 -0
  498. package/templates/b2b-support-web/src/commands/closeTicket.ts +20 -0
  499. package/templates/b2b-support-web/src/commands/createTicket.ts +47 -0
  500. package/templates/b2b-support-web/src/commands/manageBilling.ts +9 -0
  501. package/templates/b2b-support-web/src/forge/schema.ts +35 -0
  502. package/templates/b2b-support-web/src/policies.ts +9 -0
  503. package/templates/b2b-support-web/src/queries/getTicket.ts +6 -0
  504. package/templates/b2b-support-web/src/queries/listTickets.ts +6 -0
  505. package/templates/b2b-support-web/src/queries/liveTickets.ts +9 -0
  506. package/templates/b2b-support-web/src/workflows/triageTicketWorkflow.ts +64 -0
  507. package/templates/b2b-support-web/tsconfig.json +14 -0
  508. package/templates/b2b-support-web/web/app/globals.css +77 -0
  509. package/templates/b2b-support-web/web/app/layout.tsx +13 -0
  510. package/templates/b2b-support-web/web/app/page.tsx +13 -0
  511. package/templates/b2b-support-web/web/app/providers.tsx +21 -0
  512. package/templates/b2b-support-web/web/app/tickets/page.tsx +21 -0
  513. package/templates/b2b-support-web/web/components/CreateTicketForm.tsx +43 -0
  514. package/templates/b2b-support-web/web/components/PolicyDeniedDemo.tsx +31 -0
  515. package/templates/b2b-support-web/web/components/TicketList.tsx +52 -0
  516. package/templates/b2b-support-web/web/components/TraceDetails.tsx +18 -0
  517. package/templates/b2b-support-web/web/components/TriageStatus.tsx +13 -0
  518. package/templates/b2b-support-web/web/lib/forge.ts +13 -0
  519. package/templates/b2b-support-web/web/next-env.d.ts +5 -0
  520. package/templates/b2b-support-web/web/next.config.ts +8 -0
  521. package/templates/b2b-support-web/web/package.json +21 -0
  522. package/templates/b2b-support-web/web/tsconfig.json +30 -0
  523. package/templates/minimal-web/.vscode/settings.json +14 -0
  524. package/templates/minimal-web/README.md +21 -0
  525. package/templates/minimal-web/forge.config.ts +3 -0
  526. package/templates/minimal-web/package.json +32 -0
  527. package/templates/minimal-web/src/actions/logNoteCreated.ts +11 -0
  528. package/templates/minimal-web/src/commands/createNote.ts +26 -0
  529. package/templates/minimal-web/src/forge/schema.ts +12 -0
  530. package/templates/minimal-web/src/policies.ts +6 -0
  531. package/templates/minimal-web/src/queries/listNotes.ts +8 -0
  532. package/templates/minimal-web/src/queries/liveNotes.ts +8 -0
  533. package/templates/minimal-web/tsconfig.json +15 -0
  534. package/templates/minimal-web/web/index.html +12 -0
  535. package/templates/minimal-web/web/package.json +21 -0
  536. package/templates/minimal-web/web/src/App.tsx +89 -0
  537. package/templates/minimal-web/web/src/lib/forge.ts +13 -0
  538. package/templates/minimal-web/web/src/main.tsx +13 -0
  539. package/templates/minimal-web/web/src/styles.css +156 -0
  540. package/templates/minimal-web/web/tsconfig.json +18 -0
@@ -0,0 +1,652 @@
1
+ // @forge-generated generator=0.0.0 input=6b855b87f2f57fce3e0939076b81cc0263cccfeae7bb969d2662613867b1c8ee content=35aa757da99dc2b35b9dd0dbdc76f61e454e8bbd99882425eb26787f6fddc01c
2
+ export const importGuards = {
3
+ "schemaVersion": "1",
4
+ "entries": [
5
+ {
6
+ "packageName": "@ai-sdk/anthropic",
7
+ "alias": "ai-provider-anthropic",
8
+ "compatible": [
9
+ "server",
10
+ "action",
11
+ "workflow",
12
+ "endpoint",
13
+ "test",
14
+ "build"
15
+ ],
16
+ "incompatible": [
17
+ "shared",
18
+ "client",
19
+ "query",
20
+ "liveQuery",
21
+ "command",
22
+ "edge"
23
+ ],
24
+ "rationale": {
25
+ "shared": "denied by integration recipe",
26
+ "client": "denied by integration recipe",
27
+ "server": "allowed by integration recipe",
28
+ "query": "denied by integration recipe",
29
+ "liveQuery": "denied by integration recipe",
30
+ "command": "denied by integration recipe",
31
+ "action": "allowed by integration recipe",
32
+ "workflow": "allowed by integration recipe",
33
+ "endpoint": "allowed by integration recipe",
34
+ "edge": "denied by integration recipe",
35
+ "test": "allowed by integration recipe",
36
+ "build": "allowed by integration recipe"
37
+ }
38
+ },
39
+ {
40
+ "packageName": "@ai-sdk/openai",
41
+ "alias": "ai-provider-openai",
42
+ "compatible": [
43
+ "server",
44
+ "action",
45
+ "workflow",
46
+ "endpoint",
47
+ "test",
48
+ "build"
49
+ ],
50
+ "incompatible": [
51
+ "shared",
52
+ "client",
53
+ "query",
54
+ "liveQuery",
55
+ "command",
56
+ "edge"
57
+ ],
58
+ "rationale": {
59
+ "shared": "denied by integration recipe",
60
+ "client": "denied by integration recipe",
61
+ "server": "allowed by integration recipe",
62
+ "query": "denied by integration recipe",
63
+ "liveQuery": "denied by integration recipe",
64
+ "command": "denied by integration recipe",
65
+ "action": "allowed by integration recipe",
66
+ "workflow": "allowed by integration recipe",
67
+ "endpoint": "allowed by integration recipe",
68
+ "edge": "denied by integration recipe",
69
+ "test": "allowed by integration recipe",
70
+ "build": "allowed by integration recipe"
71
+ }
72
+ },
73
+ {
74
+ "packageName": "@changesets/changelog-github",
75
+ "alias": "@changesets/changelog-github",
76
+ "compatible": [
77
+ "server",
78
+ "action",
79
+ "workflow",
80
+ "endpoint",
81
+ "edge",
82
+ "test",
83
+ "build"
84
+ ],
85
+ "incompatible": [
86
+ "shared",
87
+ "client",
88
+ "query",
89
+ "liveQuery",
90
+ "command"
91
+ ],
92
+ "rationale": {
93
+ "shared": "insufficient signals to prove shared-safe purity",
94
+ "client": "insufficient signals for client compatibility",
95
+ "server": "server-side context allows IO capabilities",
96
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
97
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
98
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
99
+ "action": "server-side context allows IO capabilities",
100
+ "workflow": "server-side context allows IO capabilities",
101
+ "endpoint": "server-side context allows IO capabilities",
102
+ "edge": "edge-compatible by heuristic",
103
+ "test": "test/build contexts allow broad compatibility",
104
+ "build": "test/build contexts allow broad compatibility"
105
+ }
106
+ },
107
+ {
108
+ "packageName": "@changesets/cli",
109
+ "alias": "@changesets/cli",
110
+ "compatible": [
111
+ "server",
112
+ "action",
113
+ "workflow",
114
+ "endpoint",
115
+ "edge",
116
+ "test",
117
+ "build"
118
+ ],
119
+ "incompatible": [
120
+ "shared",
121
+ "client",
122
+ "query",
123
+ "liveQuery",
124
+ "command"
125
+ ],
126
+ "rationale": {
127
+ "shared": "insufficient signals to prove shared-safe purity",
128
+ "client": "insufficient signals for client compatibility",
129
+ "server": "server-side context allows IO capabilities",
130
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
131
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
132
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
133
+ "action": "server-side context allows IO capabilities",
134
+ "workflow": "server-side context allows IO capabilities",
135
+ "endpoint": "server-side context allows IO capabilities",
136
+ "edge": "edge-compatible by heuristic",
137
+ "test": "test/build contexts allow broad compatibility",
138
+ "build": "test/build contexts allow broad compatibility"
139
+ }
140
+ },
141
+ {
142
+ "packageName": "@electric-sql/pglite",
143
+ "alias": "@electric-sql/pglite",
144
+ "compatible": [
145
+ "server",
146
+ "action",
147
+ "workflow",
148
+ "endpoint",
149
+ "edge",
150
+ "test",
151
+ "build"
152
+ ],
153
+ "incompatible": [
154
+ "shared",
155
+ "client",
156
+ "query",
157
+ "liveQuery",
158
+ "command"
159
+ ],
160
+ "rationale": {
161
+ "shared": "insufficient signals to prove shared-safe purity",
162
+ "client": "insufficient signals for client compatibility",
163
+ "server": "server-side context allows IO capabilities",
164
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
165
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
166
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
167
+ "action": "server-side context allows IO capabilities",
168
+ "workflow": "server-side context allows IO capabilities",
169
+ "endpoint": "server-side context allows IO capabilities",
170
+ "edge": "edge-compatible by heuristic",
171
+ "test": "test/build contexts allow broad compatibility",
172
+ "build": "test/build contexts allow broad compatibility"
173
+ }
174
+ },
175
+ {
176
+ "packageName": "@types/bun",
177
+ "alias": "@types/bun",
178
+ "compatible": [
179
+ "server",
180
+ "action",
181
+ "workflow",
182
+ "endpoint",
183
+ "edge",
184
+ "test",
185
+ "build"
186
+ ],
187
+ "incompatible": [
188
+ "shared",
189
+ "client",
190
+ "query",
191
+ "liveQuery",
192
+ "command"
193
+ ],
194
+ "rationale": {
195
+ "shared": "insufficient signals to prove shared-safe purity",
196
+ "client": "insufficient signals for client compatibility",
197
+ "server": "server-side context allows IO capabilities",
198
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
199
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
200
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
201
+ "action": "server-side context allows IO capabilities",
202
+ "workflow": "server-side context allows IO capabilities",
203
+ "endpoint": "server-side context allows IO capabilities",
204
+ "edge": "edge-compatible by heuristic",
205
+ "test": "test/build contexts allow broad compatibility",
206
+ "build": "test/build contexts allow broad compatibility"
207
+ }
208
+ },
209
+ {
210
+ "packageName": "@types/react",
211
+ "alias": "@types/react",
212
+ "compatible": [
213
+ "server",
214
+ "action",
215
+ "workflow",
216
+ "endpoint",
217
+ "edge",
218
+ "test",
219
+ "build"
220
+ ],
221
+ "incompatible": [
222
+ "shared",
223
+ "client",
224
+ "query",
225
+ "liveQuery",
226
+ "command"
227
+ ],
228
+ "rationale": {
229
+ "shared": "insufficient signals to prove shared-safe purity",
230
+ "client": "insufficient signals for client compatibility",
231
+ "server": "server-side context allows IO capabilities",
232
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
233
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
234
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
235
+ "action": "server-side context allows IO capabilities",
236
+ "workflow": "server-side context allows IO capabilities",
237
+ "endpoint": "server-side context allows IO capabilities",
238
+ "edge": "edge-compatible by heuristic",
239
+ "test": "test/build contexts allow broad compatibility",
240
+ "build": "test/build contexts allow broad compatibility"
241
+ }
242
+ },
243
+ {
244
+ "packageName": "@types/react-test-renderer",
245
+ "alias": "@types/react-test-renderer",
246
+ "compatible": [
247
+ "server",
248
+ "action",
249
+ "workflow",
250
+ "endpoint",
251
+ "edge",
252
+ "test",
253
+ "build"
254
+ ],
255
+ "incompatible": [
256
+ "shared",
257
+ "client",
258
+ "query",
259
+ "liveQuery",
260
+ "command"
261
+ ],
262
+ "rationale": {
263
+ "shared": "insufficient signals to prove shared-safe purity",
264
+ "client": "insufficient signals for client compatibility",
265
+ "server": "server-side context allows IO capabilities",
266
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
267
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
268
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
269
+ "action": "server-side context allows IO capabilities",
270
+ "workflow": "server-side context allows IO capabilities",
271
+ "endpoint": "server-side context allows IO capabilities",
272
+ "edge": "edge-compatible by heuristic",
273
+ "test": "test/build contexts allow broad compatibility",
274
+ "build": "test/build contexts allow broad compatibility"
275
+ }
276
+ },
277
+ {
278
+ "packageName": "ai",
279
+ "alias": "ai-gateway",
280
+ "compatible": [
281
+ "server",
282
+ "action",
283
+ "workflow",
284
+ "endpoint",
285
+ "test",
286
+ "build"
287
+ ],
288
+ "incompatible": [
289
+ "shared",
290
+ "client",
291
+ "query",
292
+ "liveQuery",
293
+ "command",
294
+ "edge"
295
+ ],
296
+ "rationale": {
297
+ "shared": "denied by integration recipe",
298
+ "client": "denied by integration recipe",
299
+ "server": "allowed by integration recipe",
300
+ "query": "denied by integration recipe",
301
+ "liveQuery": "denied by integration recipe",
302
+ "command": "denied by integration recipe",
303
+ "action": "allowed by integration recipe",
304
+ "workflow": "allowed by integration recipe",
305
+ "endpoint": "allowed by integration recipe",
306
+ "edge": "denied by integration recipe",
307
+ "test": "allowed by integration recipe",
308
+ "build": "allowed by integration recipe"
309
+ }
310
+ },
311
+ {
312
+ "packageName": "fast-check",
313
+ "alias": "fast-check",
314
+ "compatible": [
315
+ "server",
316
+ "action",
317
+ "workflow",
318
+ "endpoint",
319
+ "edge",
320
+ "test",
321
+ "build"
322
+ ],
323
+ "incompatible": [
324
+ "shared",
325
+ "client",
326
+ "query",
327
+ "liveQuery",
328
+ "command"
329
+ ],
330
+ "rationale": {
331
+ "shared": "insufficient signals to prove shared-safe purity",
332
+ "client": "insufficient signals for client compatibility",
333
+ "server": "server-side context allows IO capabilities",
334
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
335
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
336
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
337
+ "action": "server-side context allows IO capabilities",
338
+ "workflow": "server-side context allows IO capabilities",
339
+ "endpoint": "server-side context allows IO capabilities",
340
+ "edge": "edge-compatible by heuristic",
341
+ "test": "test/build contexts allow broad compatibility",
342
+ "build": "test/build contexts allow broad compatibility"
343
+ }
344
+ },
345
+ {
346
+ "packageName": "jose",
347
+ "alias": "jose",
348
+ "compatible": [
349
+ "client",
350
+ "server",
351
+ "action",
352
+ "workflow",
353
+ "endpoint",
354
+ "edge",
355
+ "test",
356
+ "build"
357
+ ],
358
+ "incompatible": [
359
+ "shared",
360
+ "query",
361
+ "liveQuery",
362
+ "command"
363
+ ],
364
+ "rationale": {
365
+ "shared": "shared context requires pure code without network/fs/process",
366
+ "client": "client may perform network egress",
367
+ "server": "server-side context allows IO capabilities",
368
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
369
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
370
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
371
+ "action": "server-side context allows IO capabilities",
372
+ "workflow": "server-side context allows IO capabilities",
373
+ "endpoint": "server-side context allows IO capabilities",
374
+ "edge": "edge-compatible by heuristic",
375
+ "test": "test/build contexts allow broad compatibility",
376
+ "build": "test/build contexts allow broad compatibility"
377
+ }
378
+ },
379
+ {
380
+ "packageName": "postgres",
381
+ "alias": "postgres",
382
+ "compatible": [
383
+ "server",
384
+ "action",
385
+ "workflow",
386
+ "endpoint",
387
+ "edge",
388
+ "test",
389
+ "build"
390
+ ],
391
+ "incompatible": [
392
+ "shared",
393
+ "client",
394
+ "query",
395
+ "liveQuery",
396
+ "command"
397
+ ],
398
+ "rationale": {
399
+ "shared": "insufficient signals to prove shared-safe purity",
400
+ "client": "insufficient signals for client compatibility",
401
+ "server": "server-side context allows IO capabilities",
402
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
403
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
404
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
405
+ "action": "server-side context allows IO capabilities",
406
+ "workflow": "server-side context allows IO capabilities",
407
+ "endpoint": "server-side context allows IO capabilities",
408
+ "edge": "edge-compatible by heuristic",
409
+ "test": "test/build contexts allow broad compatibility",
410
+ "build": "test/build contexts allow broad compatibility"
411
+ }
412
+ },
413
+ {
414
+ "packageName": "react",
415
+ "alias": "react",
416
+ "compatible": [
417
+ "server",
418
+ "action",
419
+ "workflow",
420
+ "endpoint",
421
+ "edge",
422
+ "test",
423
+ "build"
424
+ ],
425
+ "incompatible": [
426
+ "shared",
427
+ "client",
428
+ "query",
429
+ "liveQuery",
430
+ "command"
431
+ ],
432
+ "rationale": {
433
+ "shared": "insufficient signals to prove shared-safe purity",
434
+ "client": "insufficient signals for client compatibility",
435
+ "server": "server-side context allows IO capabilities",
436
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
437
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
438
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
439
+ "action": "server-side context allows IO capabilities",
440
+ "workflow": "server-side context allows IO capabilities",
441
+ "endpoint": "server-side context allows IO capabilities",
442
+ "edge": "edge-compatible by heuristic",
443
+ "test": "test/build contexts allow broad compatibility",
444
+ "build": "test/build contexts allow broad compatibility"
445
+ }
446
+ },
447
+ {
448
+ "packageName": "react-test-renderer",
449
+ "alias": "react-test-renderer",
450
+ "compatible": [
451
+ "server",
452
+ "action",
453
+ "workflow",
454
+ "endpoint",
455
+ "edge",
456
+ "test",
457
+ "build"
458
+ ],
459
+ "incompatible": [
460
+ "shared",
461
+ "client",
462
+ "query",
463
+ "liveQuery",
464
+ "command"
465
+ ],
466
+ "rationale": {
467
+ "shared": "insufficient signals to prove shared-safe purity",
468
+ "client": "insufficient signals for client compatibility",
469
+ "server": "server-side context allows IO capabilities",
470
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
471
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
472
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
473
+ "action": "server-side context allows IO capabilities",
474
+ "workflow": "server-side context allows IO capabilities",
475
+ "endpoint": "server-side context allows IO capabilities",
476
+ "edge": "edge-compatible by heuristic",
477
+ "test": "test/build contexts allow broad compatibility",
478
+ "build": "test/build contexts allow broad compatibility"
479
+ }
480
+ },
481
+ {
482
+ "packageName": "tree-sitter",
483
+ "alias": "tree-sitter",
484
+ "compatible": [
485
+ "server",
486
+ "action",
487
+ "workflow",
488
+ "endpoint",
489
+ "edge",
490
+ "test",
491
+ "build"
492
+ ],
493
+ "incompatible": [
494
+ "shared",
495
+ "client",
496
+ "query",
497
+ "liveQuery",
498
+ "command"
499
+ ],
500
+ "rationale": {
501
+ "shared": "insufficient signals to prove shared-safe purity",
502
+ "client": "insufficient signals for client compatibility",
503
+ "server": "server-side context allows IO capabilities",
504
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
505
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
506
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
507
+ "action": "server-side context allows IO capabilities",
508
+ "workflow": "server-side context allows IO capabilities",
509
+ "endpoint": "server-side context allows IO capabilities",
510
+ "edge": "edge-compatible by heuristic",
511
+ "test": "test/build contexts allow broad compatibility",
512
+ "build": "test/build contexts allow broad compatibility"
513
+ }
514
+ },
515
+ {
516
+ "packageName": "tree-sitter-typescript",
517
+ "alias": "tree-sitter-typescript",
518
+ "compatible": [
519
+ "server",
520
+ "action",
521
+ "workflow",
522
+ "endpoint",
523
+ "edge",
524
+ "test",
525
+ "build"
526
+ ],
527
+ "incompatible": [
528
+ "shared",
529
+ "client",
530
+ "query",
531
+ "liveQuery",
532
+ "command"
533
+ ],
534
+ "rationale": {
535
+ "shared": "insufficient signals to prove shared-safe purity",
536
+ "client": "insufficient signals for client compatibility",
537
+ "server": "server-side context allows IO capabilities",
538
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
539
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
540
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
541
+ "action": "server-side context allows IO capabilities",
542
+ "workflow": "server-side context allows IO capabilities",
543
+ "endpoint": "server-side context allows IO capabilities",
544
+ "edge": "edge-compatible by heuristic",
545
+ "test": "test/build contexts allow broad compatibility",
546
+ "build": "test/build contexts allow broad compatibility"
547
+ }
548
+ },
549
+ {
550
+ "packageName": "tsx",
551
+ "alias": "tsx",
552
+ "compatible": [
553
+ "server",
554
+ "action",
555
+ "workflow",
556
+ "endpoint",
557
+ "edge",
558
+ "test",
559
+ "build"
560
+ ],
561
+ "incompatible": [
562
+ "shared",
563
+ "client",
564
+ "query",
565
+ "liveQuery",
566
+ "command"
567
+ ],
568
+ "rationale": {
569
+ "shared": "insufficient signals to prove shared-safe purity",
570
+ "client": "insufficient signals for client compatibility",
571
+ "server": "server-side context allows IO capabilities",
572
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
573
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
574
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
575
+ "action": "server-side context allows IO capabilities",
576
+ "workflow": "server-side context allows IO capabilities",
577
+ "endpoint": "server-side context allows IO capabilities",
578
+ "edge": "edge-compatible by heuristic",
579
+ "test": "test/build contexts allow broad compatibility",
580
+ "build": "test/build contexts allow broad compatibility"
581
+ }
582
+ },
583
+ {
584
+ "packageName": "typescript",
585
+ "alias": "typescript",
586
+ "compatible": [
587
+ "server",
588
+ "action",
589
+ "workflow",
590
+ "endpoint",
591
+ "edge",
592
+ "test",
593
+ "build"
594
+ ],
595
+ "incompatible": [
596
+ "shared",
597
+ "client",
598
+ "query",
599
+ "liveQuery",
600
+ "command"
601
+ ],
602
+ "rationale": {
603
+ "shared": "insufficient signals to prove shared-safe purity",
604
+ "client": "node builtins/process not allowed in client",
605
+ "server": "server-side context allows IO capabilities",
606
+ "query": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
607
+ "liveQuery": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
608
+ "command": "capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)",
609
+ "action": "server-side context allows IO capabilities",
610
+ "workflow": "server-side context allows IO capabilities",
611
+ "endpoint": "server-side context allows IO capabilities",
612
+ "edge": "edge-compatible by heuristic",
613
+ "test": "test/build contexts allow broad compatibility",
614
+ "build": "test/build contexts allow broad compatibility"
615
+ }
616
+ },
617
+ {
618
+ "packageName": "zod",
619
+ "alias": "zod",
620
+ "compatible": [
621
+ "shared",
622
+ "client",
623
+ "server",
624
+ "query",
625
+ "liveQuery",
626
+ "command",
627
+ "action",
628
+ "workflow",
629
+ "endpoint",
630
+ "edge",
631
+ "test",
632
+ "build"
633
+ ],
634
+ "incompatible": [],
635
+ "rationale": {
636
+ "shared": "allowed by integration recipe",
637
+ "client": "allowed by integration recipe",
638
+ "server": "allowed by integration recipe",
639
+ "query": "allowed by integration recipe",
640
+ "liveQuery": "allowed by integration recipe",
641
+ "command": "allowed by integration recipe",
642
+ "action": "allowed by integration recipe",
643
+ "workflow": "allowed by integration recipe",
644
+ "endpoint": "allowed by integration recipe",
645
+ "edge": "allowed by integration recipe",
646
+ "test": "allowed by integration recipe",
647
+ "build": "allowed by integration recipe"
648
+ }
649
+ }
650
+ ],
651
+ "moduleContexts": []
652
+ } as const;