forgeos 0.1.0-alpha.3 → 0.1.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/AGENTS.md +1 -1
  2. package/CHANGELOG.md +29 -0
  3. package/README.md +20 -6
  4. package/package.json +4 -2
  5. package/src/forge/_generated/actionSubscriptions.json +2 -2
  6. package/src/forge/_generated/actionSubscriptions.ts +3 -3
  7. package/src/forge/_generated/agentAdapterManifest.json +2 -2
  8. package/src/forge/_generated/agentAdapterManifest.ts +3 -3
  9. package/src/forge/_generated/agentContract.json +2 -2
  10. package/src/forge/_generated/agentContract.ts +2 -2
  11. package/src/forge/_generated/agentQuickstart.md +1 -1
  12. package/src/forge/_generated/agentTools.json +2 -2
  13. package/src/forge/_generated/agentTools.md +1 -1
  14. package/src/forge/_generated/agentTools.ts +2 -2
  15. package/src/forge/_generated/aiContext.ts +1 -1
  16. package/src/forge/_generated/aiModels.json +1 -1
  17. package/src/forge/_generated/aiModels.ts +1 -1
  18. package/src/forge/_generated/aiProviders.json +1 -1
  19. package/src/forge/_generated/aiProviders.ts +1 -1
  20. package/src/forge/_generated/aiRegistry.json +2 -2
  21. package/src/forge/_generated/aiRegistry.ts +3 -3
  22. package/src/forge/_generated/api.json +2 -2
  23. package/src/forge/_generated/api.ts +1 -1
  24. package/src/forge/_generated/appGraph.json +2 -2
  25. package/src/forge/_generated/appGraph.ts +227 -83
  26. package/src/forge/_generated/appMap.md +1 -1
  27. package/src/forge/_generated/artifactManifest.json +2 -2
  28. package/src/forge/_generated/artifactManifest.ts +2 -2
  29. package/src/forge/_generated/authClaims.json +1 -1
  30. package/src/forge/_generated/authClaims.ts +1 -1
  31. package/src/forge/_generated/authConfig.json +1 -1
  32. package/src/forge/_generated/authConfig.ts +1 -1
  33. package/src/forge/_generated/authContext.ts +1 -1
  34. package/src/forge/_generated/authRegistry.json +1 -1
  35. package/src/forge/_generated/authRegistry.ts +1 -1
  36. package/src/forge/_generated/buildInfo.json +2 -2
  37. package/src/forge/_generated/buildInfo.ts +4 -4
  38. package/src/forge/_generated/capabilityMap.json +2 -2
  39. package/src/forge/_generated/capabilityMap.md +1 -1
  40. package/src/forge/_generated/capabilityMap.ts +2 -2
  41. package/src/forge/_generated/client.ts +1 -1
  42. package/src/forge/_generated/clientApi.ts +1 -1
  43. package/src/forge/_generated/clientManifest.json +2 -2
  44. package/src/forge/_generated/clientManifest.ts +3 -3
  45. package/src/forge/_generated/clientTypes.ts +1 -1
  46. package/src/forge/_generated/configRegistry.json +1 -1
  47. package/src/forge/_generated/configRegistry.ts +1 -1
  48. package/src/forge/_generated/dataGraph.json +2 -2
  49. package/src/forge/_generated/dataGraph.ts +3 -3
  50. package/src/forge/_generated/db.json +1 -1
  51. package/src/forge/_generated/db.ts +1 -1
  52. package/src/forge/_generated/dbSecurityManifest.json +1 -1
  53. package/src/forge/_generated/dbSecurityManifest.ts +1 -1
  54. package/src/forge/_generated/dbSessionContext.json +1 -1
  55. package/src/forge/_generated/dbSessionContext.ts +1 -1
  56. package/src/forge/_generated/deployManifest.json +2 -2
  57. package/src/forge/_generated/deployManifest.ts +7 -7
  58. package/src/forge/_generated/devManifest.json +2 -2
  59. package/src/forge/_generated/devManifest.ts +3 -3
  60. package/src/forge/_generated/envSchema.json +1 -1
  61. package/src/forge/_generated/envSchema.ts +1 -1
  62. package/src/forge/_generated/frontendGraph.json +1 -1
  63. package/src/forge/_generated/frontendGraph.ts +1 -1
  64. package/src/forge/_generated/importGuards.json +1 -1
  65. package/src/forge/_generated/importGuards.ts +1 -1
  66. package/src/forge/_generated/index.ts +1 -1
  67. package/src/forge/_generated/liveProductionManifest.json +1 -1
  68. package/src/forge/_generated/liveProductionManifest.ts +1 -1
  69. package/src/forge/_generated/liveProtocol.json +1 -1
  70. package/src/forge/_generated/liveProtocol.ts +1 -1
  71. package/src/forge/_generated/liveQueryRegistry.json +2 -2
  72. package/src/forge/_generated/liveQueryRegistry.ts +3 -3
  73. package/src/forge/_generated/liveTransportConfig.json +1 -1
  74. package/src/forge/_generated/liveTransportConfig.ts +1 -1
  75. package/src/forge/_generated/makeRegistry.json +2 -2
  76. package/src/forge/_generated/makeRegistry.ts +2 -2
  77. package/src/forge/_generated/makeTemplates.json +1 -1
  78. package/src/forge/_generated/makeTemplates.ts +1 -1
  79. package/src/forge/_generated/mockMap.json +1 -1
  80. package/src/forge/_generated/mockMap.ts +1 -1
  81. package/src/forge/_generated/operationPlaybooks.md +1 -1
  82. package/src/forge/_generated/packageGraph.json +2 -2
  83. package/src/forge/_generated/packageGraph.ts +2 -2
  84. package/src/forge/_generated/packageUpgradeRegistry.json +2 -2
  85. package/src/forge/_generated/packageUpgradeRegistry.ts +2 -2
  86. package/src/forge/_generated/permissionMatrix.json +2 -2
  87. package/src/forge/_generated/permissionMatrix.ts +3 -3
  88. package/src/forge/_generated/policyRegistry.json +2 -2
  89. package/src/forge/_generated/policyRegistry.ts +3 -3
  90. package/src/forge/_generated/queryRegistry.json +2 -2
  91. package/src/forge/_generated/queryRegistry.ts +3 -3
  92. package/src/forge/_generated/react.d.ts +1 -1
  93. package/src/forge/_generated/react.ts +1 -1
  94. package/src/forge/_generated/reactManifest.json +2 -2
  95. package/src/forge/_generated/reactManifest.ts +3 -3
  96. package/src/forge/_generated/releaseManifest.json +2 -2
  97. package/src/forge/_generated/releaseManifest.ts +3 -3
  98. package/src/forge/_generated/rlsPolicies.json +1 -1
  99. package/src/forge/_generated/rlsPolicies.sql +1 -1
  100. package/src/forge/_generated/rlsPolicies.ts +1 -1
  101. package/src/forge/_generated/runtimeGraph.json +2 -2
  102. package/src/forge/_generated/runtimeGraph.ts +3 -3
  103. package/src/forge/_generated/runtimeMatrix.json +1 -1
  104. package/src/forge/_generated/runtimeMatrix.ts +1 -1
  105. package/src/forge/_generated/runtimeRegistry.ts +1 -1
  106. package/src/forge/_generated/runtimeRules.md +1 -1
  107. package/src/forge/_generated/secretRegistry.json +1 -1
  108. package/src/forge/_generated/secretRegistry.ts +1 -1
  109. package/src/forge/_generated/secretsContext.ts +1 -1
  110. package/src/forge/_generated/serverApi.ts +1 -1
  111. package/src/forge/_generated/sourceMapManifest.json +2 -2
  112. package/src/forge/_generated/sourceMapManifest.ts +2 -2
  113. package/src/forge/_generated/sqlPlan.json +1 -1
  114. package/src/forge/_generated/sqlPlan.ts +1 -1
  115. package/src/forge/_generated/subscriptionManifest.json +2 -2
  116. package/src/forge/_generated/subscriptionManifest.ts +3 -3
  117. package/src/forge/_generated/symbolicationManifest.json +2 -2
  118. package/src/forge/_generated/symbolicationManifest.ts +2 -2
  119. package/src/forge/_generated/telemetryRegistry.json +2 -2
  120. package/src/forge/_generated/telemetryRegistry.ts +3 -3
  121. package/src/forge/_generated/telemetrySinks.json +2 -2
  122. package/src/forge/_generated/telemetrySinks.ts +2 -2
  123. package/src/forge/_generated/tenantScope.json +2 -2
  124. package/src/forge/_generated/tenantScope.ts +3 -3
  125. package/src/forge/_generated/testGraph.json +2 -2
  126. package/src/forge/_generated/testGraph.ts +325 -13
  127. package/src/forge/_generated/testPlanRegistry.json +2 -2
  128. package/src/forge/_generated/testPlanRegistry.ts +2 -2
  129. package/src/forge/_generated/uiRoutes.json +1 -1
  130. package/src/forge/_generated/uiRoutes.ts +1 -1
  131. package/src/forge/_generated/uiScenarios.json +1 -1
  132. package/src/forge/_generated/uiScenarios.ts +1 -1
  133. package/src/forge/_generated/uiTestManifest.json +2 -2
  134. package/src/forge/_generated/uiTestManifest.ts +2 -2
  135. package/src/forge/_generated/workflowRegistry.json +2 -2
  136. package/src/forge/_generated/workflowRegistry.ts +3 -3
  137. package/src/forge/_generated/workflowSubscriptions.json +2 -2
  138. package/src/forge/_generated/workflowSubscriptions.ts +3 -3
  139. package/src/forge/cli/ai.ts +165 -0
  140. package/src/forge/cli/auth.ts +36 -1
  141. package/src/forge/cli/commands.ts +14 -0
  142. package/src/forge/cli/parse.ts +38 -6
  143. package/src/forge/cli/rls.ts +529 -17
  144. package/src/forge/cli/secrets.ts +46 -1
  145. package/src/forge/cli/security.ts +269 -0
  146. package/src/forge/compiler/agent-contract/build.ts +8 -0
  147. package/src/forge/compiler/agent-contract/types.ts +2 -0
  148. package/src/forge/compiler/diagnostics/codes.ts +15 -0
  149. package/src/forge/compiler/diagnostics/create.ts +1 -1
  150. package/src/forge/compiler/package-graph/compiler.ts +13 -3
  151. package/src/forge/runtime/auth/claims.ts +32 -0
  152. package/src/forge/runtime/auth/errors.ts +2 -0
  153. package/src/forge/runtime/db/memory-adapter.ts +2 -2
  154. package/src/forge/runtime/telemetry/scrubber.ts +56 -5
  155. package/src/forge/runtime/webhooks/security.ts +184 -0
  156. package/src/forge/server.ts +11 -0
  157. package/src/forge/version.ts +1 -1
  158. package/templates/b2b-support-web/package.json +1 -0
  159. package/templates/b2b-support-web/tsconfig.json +4 -1
  160. package/templates/minimal-web/package.json +1 -0
  161. package/templates/minimal-web/tsconfig.json +3 -1
@@ -1,8 +1,8 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=a2f769b395849b839716db1d6f1374f9b36bfab4f64f0336ed0e02e6bc21cadf
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=ed39fd20f6da3f1e2c33876df21b354d0b050a6ea5b17ba94eea0975ed80f868
2
2
  export const capabilityMap = {
3
3
  "diagnostics": [],
4
4
  "entries": [],
5
- "generatorVersion": "0.1.0-alpha.3",
5
+ "generatorVersion": "0.1.0-alpha.4",
6
6
  "project": {
7
7
  "name": "forgeos",
8
8
  "type": "forgeos-app"
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=9b27e66a63e6abbf0c65ca5d8c1d64c7992fc7249842a9174b97b4a99c72a4bd
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=9b27e66a63e6abbf0c65ca5d8c1d64c7992fc7249842a9174b97b4a99c72a4bd
2
2
  import { api } from "./api.ts";
3
3
  import type {
4
4
  ForgeAuthProvider,
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=d331e860feeb8e9f3bcdcf45c3ff0ab2ebcd41bb96fbf204bb83dc7fcfda1ab3
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=d331e860feeb8e9f3bcdcf45c3ff0ab2ebcd41bb96fbf204bb83dc7fcfda1ab3
2
2
  import { api } from "./api.ts";
3
3
 
4
4
  /** Client-side typed API surface (queries, commands; no server adapters). */
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=db966126b21363ea10519754e4fedff1e426672b1a5269be5ce52c2a98115667
2
- {"commands":[],"excluded":{"actions":[],"serverAdapters":["ai.anthropic.server.ts","ai.gateway.server.ts","ai.openai.server.ts"],"serverPackages":["@ai-sdk/anthropic","@ai-sdk/openai","ai"],"workflows":[]},"generatorVersion":"0.1.0-alpha.3","inputHash":"a43243969806df252573d991db40ebe573be0c5aaedd1213428ff377b7079956","liveQueries":[],"queries":[],"react":{"entrypoint":"src/forge/_generated/react.ts","hooks":["ForgeProvider","useForgeClient","useAuth","useQuery","useCommand","useLiveQuery"]},"schemaVersion":"1.0.0","transport":{"commands":"POST /commands/:name","liveQueries":"GET /live/:name","queries":"POST /queries/:name"}}
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=695a1a00c21d3485ea9ecf48e0a2bba85226dedec1362ce64b8a163046fffcf2
2
+ {"commands":[],"excluded":{"actions":[],"serverAdapters":["ai.anthropic.server.ts","ai.gateway.server.ts","ai.openai.server.ts"],"serverPackages":["@ai-sdk/anthropic","@ai-sdk/openai","ai"],"workflows":[]},"generatorVersion":"0.1.0-alpha.4","inputHash":"44b68e21de6d9baa73d25b637c7c48d7345398654f6d62a9f9e787c14a300605","liveQueries":[],"queries":[],"react":{"entrypoint":"src/forge/_generated/react.ts","hooks":["ForgeProvider","useForgeClient","useAuth","useQuery","useCommand","useLiveQuery"]},"schemaVersion":"1.0.0","transport":{"commands":"POST /commands/:name","liveQueries":"GET /live/:name","queries":"POST /queries/:name"}}
@@ -1,8 +1,8 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=e18a3aeb842df6a310f5fc46a5a20a96211149c720895d5b6f94e829a55321b4
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=a8291bbed22c7649151ca8170e1414ea9c2aa7bc551f87ef551f6347e6b8088d
2
2
  export const clientManifest = {
3
3
  "schemaVersion": "1.0.0",
4
- "generatorVersion": "0.1.0-alpha.3",
5
- "inputHash": "a43243969806df252573d991db40ebe573be0c5aaedd1213428ff377b7079956",
4
+ "generatorVersion": "0.1.0-alpha.4",
5
+ "inputHash": "44b68e21de6d9baa73d25b637c7c48d7345398654f6d62a9f9e787c14a300605",
6
6
  "queries": [],
7
7
  "commands": [],
8
8
  "liveQueries": [],
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=39ad42ec98ed7aebc56e061aa399738c1175f0a7b4261b5bf2df70eb59afcfe2
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=39ad42ec98ed7aebc56e061aa399738c1175f0a7b4261b5bf2df70eb59afcfe2
2
2
  export type ForgeStaticAuth = {
3
3
  userId?: string;
4
4
  tenantId?: string;
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=48ddd915b14870e3230c517f0d28dfa3bf01e62ce885807bf4b66172c4378ad5
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=48ddd915b14870e3230c517f0d28dfa3bf01e62ce885807bf4b66172c4378ad5
2
2
  {"configs":[]}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=c67952f1bae9aeedf0c0188f162d06dfb747b265c3c6ee7fdb1ef75782e76f3b
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=c67952f1bae9aeedf0c0188f162d06dfb747b265c3c6ee7fdb1ef75782e76f3b
2
2
  export const configRegistry = {
3
3
  "configs": []
4
4
  } as const;
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=265fcd89e7ebe3fba4f19f5f87089b8acc966a9a072935337187fe9112364a2d
2
- {"analyzerVersion":"0.1.0","generatorVersion":"0.1.0-alpha.3","inputHash":"c9475eac5a16004809cb3ec4a8a67a0d6c9a310cb414b8be0200c1f787d021df","schemaVersion":"1.0.0","tables":[]}
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=868fa3ee811b020f190c5e3a5103d8b12e6b152093983e82578d895cc3d197cc
2
+ {"analyzerVersion":"0.1.0","generatorVersion":"0.1.0-alpha.4","inputHash":"c52261a0b76af0f64feadff97d3852e815fa814de2566d0d1fce9e4805d1bfab","schemaVersion":"1.0.0","tables":[]}
@@ -1,8 +1,8 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=a682ccb793cce95224655af7dd49f10aa85722711a409d09f7ec8450c0f51e83
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=fa98c588ae6f3f886529df5735784581d5cf907f9889071b503c770c223d4e82
2
2
  export const dataGraph = {
3
3
  "analyzerVersion": "0.1.0",
4
- "generatorVersion": "0.1.0-alpha.3",
5
- "inputHash": "c9475eac5a16004809cb3ec4a8a67a0d6c9a310cb414b8be0200c1f787d021df",
4
+ "generatorVersion": "0.1.0-alpha.4",
5
+ "inputHash": "c52261a0b76af0f64feadff97d3852e815fa814de2566d0d1fce9e4805d1bfab",
6
6
  "schemaVersion": "1.0.0",
7
7
  "tables": []
8
8
  } as const;
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=15ac2222f939e36b4d437bd5e54aa65ec9c2027a53825883f8a4b9e2710d65d3
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=15ac2222f939e36b4d437bd5e54aa65ec9c2027a53825883f8a4b9e2710d65d3
2
2
  {"tableMap":{}}
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=34af9d0c4498776568d3d0171658539c0a25ebe08af51c34526617eb944fe106
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=34af9d0c4498776568d3d0171658539c0a25ebe08af51c34526617eb944fe106
2
2
  export const tableMap = {} as const;
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=2990ae1c7d12671f2204605202c9e7d982b0156793644525ae0f7df2c0e18f6e
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=2990ae1c7d12671f2204605202c9e7d982b0156793644525ae0f7df2c0e18f6e
2
2
  {"authoritativeAdapters":["postgres"],"diagnostics":[],"nonAuthoritativeAdapters":["pglite","memory"],"provider":"postgres","schemaVersion":"0.1.0","tables":[],"tenantIsolation":"postgres-rls"}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=7c04c09131fcff86b3da6eae92a195c39c0bb2c0be618f597422f7a38dda024c
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=7c04c09131fcff86b3da6eae92a195c39c0bb2c0be618f597422f7a38dda024c
2
2
  export const dbSecurityManifest = {
3
3
  "authoritativeAdapters": [
4
4
  "postgres"
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=ab172af9fb4ae301ead04afe571f772b22425daf1cebd6833bde50a543cbb42c
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=ab172af9fb4ae301ead04afe571f772b22425daf1cebd6833bde50a543cbb42c
2
2
  {"diagnostics":[],"method":"set_config","schemaVersion":"0.1.0","settings":[{"name":"forge.tenant_id","required":true,"source":"ctx.auth","transactionScoped":true},{"name":"forge.user_id","required":false,"source":"ctx.auth","transactionScoped":true},{"name":"forge.role","required":false,"source":"ctx.auth","transactionScoped":true},{"name":"forge.roles","required":false,"source":"ctx.auth","transactionScoped":true},{"name":"forge.permissions","required":false,"source":"ctx.auth","transactionScoped":true}],"transactionScoped":true}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=e54bf648fe6662c29d0d9c42922a496c64c84a75baf369274e75ff48da670d2a
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=e54bf648fe6662c29d0d9c42922a496c64c84a75baf369274e75ff48da670d2a
2
2
  export const dbSessionContext = {
3
3
  "diagnostics": [],
4
4
  "method": "set_config",
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=ee675f46379eb45ac9c807fd3669266b528e63e6d456de57cc5220634564d116
2
- {"attributes":{"deployment.environment":"local","forge.deploy_id":"local-forgeos@0.1.0-alpha.3+unknown","forge.generated_hash":"c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f","forge.release_id":"forgeos@0.1.0-alpha.3+unknown","service.version":"forgeos@0.1.0-alpha.3+unknown"},"deployId":"local-forgeos@0.1.0-alpha.3+unknown","environment":"local","releaseId":"forgeos@0.1.0-alpha.3+unknown","schemaVersion":"0.1.0"}
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=e1d0af30d55453f8691489d333bc18f1649578bdc0342f8939773d20c62058e4
2
+ {"attributes":{"deployment.environment":"local","forge.deploy_id":"local-forgeos@0.1.0-alpha.4+unknown","forge.generated_hash":"4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2","forge.release_id":"forgeos@0.1.0-alpha.4+unknown","service.version":"forgeos@0.1.0-alpha.4+unknown"},"deployId":"local-forgeos@0.1.0-alpha.4+unknown","environment":"local","releaseId":"forgeos@0.1.0-alpha.4+unknown","schemaVersion":"0.1.0"}
@@ -1,14 +1,14 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=b0aa9b0ff080e03419cf96d9eca01bb00601e1b3fa01333b253e134601230d44
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=33d680777c5c765e761513b0d0e96a426a0ec97dbef531f492da1cdfe1140a58
2
2
  export const deployManifest = {
3
3
  "attributes": {
4
4
  "deployment.environment": "local",
5
- "forge.deploy_id": "local-forgeos@0.1.0-alpha.3+unknown",
6
- "forge.generated_hash": "c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f",
7
- "forge.release_id": "forgeos@0.1.0-alpha.3+unknown",
8
- "service.version": "forgeos@0.1.0-alpha.3+unknown"
5
+ "forge.deploy_id": "local-forgeos@0.1.0-alpha.4+unknown",
6
+ "forge.generated_hash": "4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2",
7
+ "forge.release_id": "forgeos@0.1.0-alpha.4+unknown",
8
+ "service.version": "forgeos@0.1.0-alpha.4+unknown"
9
9
  },
10
- "deployId": "local-forgeos@0.1.0-alpha.3+unknown",
10
+ "deployId": "local-forgeos@0.1.0-alpha.4+unknown",
11
11
  "environment": "local",
12
- "releaseId": "forgeos@0.1.0-alpha.3+unknown",
12
+ "releaseId": "forgeos@0.1.0-alpha.4+unknown",
13
13
  "schemaVersion": "0.1.0"
14
14
  } as const;
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=2154840e7b50641d1d1d84e7112fe5091d5fa829e5981b57b0dd6d10ad17b605
2
- {"analyzerVersion":"0.1.0","diagnostics":[],"entries":[],"generatorVersion":"0.1.0-alpha.3","inputHash":"f2bc5b5fa3f29195264fc51140782911cc84c531d5176f4c1632d083843f746f","routes":[{"method":"GET","path":"/","purpose":"home"},{"method":"POST","path":"/ai/agents/chat","purpose":"ai-agent-chat"},{"method":"POST","path":"/ai/agents/run","purpose":"ai-agent-run"},{"method":"GET","path":"/ai/providers","purpose":"ai-providers"},{"method":"GET","path":"/entries","purpose":"entries"},{"method":"GET","path":"/health","purpose":"health"},{"method":"GET","path":"/queries","purpose":"queries"},{"method":"GET","path":"/workflows","purpose":"workflows"},{"method":"POST","path":"/workflows/process","purpose":"workflow-process"},{"method":"GET","path":"/workflows/runs","purpose":"workflow-runs"}],"schemaVersion":"1.0.0","workflows":[]}
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=0bc8fa49d982cd85348861ee947d1ce848b4b6ad4facf7a526be2a8a16c22ff7
2
+ {"analyzerVersion":"0.1.0","diagnostics":[],"entries":[],"generatorVersion":"0.1.0-alpha.4","inputHash":"9cc74023c6ea9b215e1a39495e263626f3ffcf18138ae50c2ebc87c86a8df2fb","routes":[{"method":"GET","path":"/","purpose":"home"},{"method":"POST","path":"/ai/agents/chat","purpose":"ai-agent-chat"},{"method":"POST","path":"/ai/agents/run","purpose":"ai-agent-run"},{"method":"GET","path":"/ai/providers","purpose":"ai-providers"},{"method":"GET","path":"/entries","purpose":"entries"},{"method":"GET","path":"/health","purpose":"health"},{"method":"GET","path":"/queries","purpose":"queries"},{"method":"GET","path":"/workflows","purpose":"workflows"},{"method":"POST","path":"/workflows/process","purpose":"workflow-process"},{"method":"GET","path":"/workflows/runs","purpose":"workflow-runs"}],"schemaVersion":"1.0.0","workflows":[]}
@@ -1,10 +1,10 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=4959b53a69d24d4ac15ba746fcca2768936f373efad1114bfc75029be2d7fe8b
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=9fd0c18c303e16b288bfbbec6e56ff21ffbb454c6ad8ee75d0bad57f0c11e601
2
2
  export const devManifest = {
3
3
  "analyzerVersion": "0.1.0",
4
4
  "diagnostics": [],
5
5
  "entries": [],
6
- "generatorVersion": "0.1.0-alpha.3",
7
- "inputHash": "f2bc5b5fa3f29195264fc51140782911cc84c531d5176f4c1632d083843f746f",
6
+ "generatorVersion": "0.1.0-alpha.4",
7
+ "inputHash": "9cc74023c6ea9b215e1a39495e263626f3ffcf18138ae50c2ebc87c86a8df2fb",
8
8
  "routes": [
9
9
  {
10
10
  "method": "GET",
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=9ce97ae302f03954033b56f247fbdc2189372ad0fdd9297d929793ffc70965d9
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=9ce97ae302f03954033b56f247fbdc2189372ad0fdd9297d929793ffc70965d9
2
2
  {"variables":[{"integration":"ai-gateway","kind":"secret","name":"AI_GATEWAY_API_KEY","public":false,"required":true,"source":"recipe"},{"integration":"ai-provider-anthropic","kind":"secret","name":"ANTHROPIC_API_KEY","public":false,"required":true,"source":"recipe"},{"kind":"config","name":"FORGE_AUTH_ALGORITHMS","required":false,"source":"auth"},{"kind":"config","name":"FORGE_AUTH_AUDIENCE","required":false,"source":"auth"},{"kind":"config","name":"FORGE_AUTH_ISSUER","required":false,"source":"auth"},{"kind":"config","name":"FORGE_AUTH_JWKS_URI","required":false,"source":"auth"},{"kind":"config","name":"FORGE_AUTH_MODE","required":false,"source":"auth"},{"integration":"ai-provider-openai","kind":"secret","name":"OPENAI_API_KEY","public":false,"required":true,"source":"recipe"}]}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=a3d1351f5a64cfe2964d5140049c55de5620e2abfb8187bbb244990852cfbbef
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=a3d1351f5a64cfe2964d5140049c55de5620e2abfb8187bbb244990852cfbbef
2
2
  export const envSchema = {
3
3
  "variables": [
4
4
  {
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=c9761a223a8d510711c5e18e835a8bca78cede975c218a5f437c016a2ffc1a25
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=c9761a223a8d510711c5e18e835a8bca78cede975c218a5f437c016a2ffc1a25
2
2
  {"bridgeFiles":[],"clientBindings":[],"components":[],"diagnostics":[],"framework":"none","present":false,"providers":[],"routes":[],"schemaVersion":"0.1.0","webManifest":{"bridge":{"files":[],"valid":false},"env":{"apiUrl":"NEXT_PUBLIC_FORGE_URL"},"framework":"none","present":false,"scripts":{},"urls":{"api":"http://127.0.0.1:3765"}}}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=8c2052b427d11b806490a59ef256bbb8e8816bc90db57525b0f68a0596e1e7c4
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=8c2052b427d11b806490a59ef256bbb8e8816bc90db57525b0f68a0596e1e7c4
2
2
  export const frontendGraph = {
3
3
  "bridgeFiles": [],
4
4
  "clientBindings": [],
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=e032fc411a614945d1f7e2b314c9de2d08c09559b510caba67341001d4f084de
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=e032fc411a614945d1f7e2b314c9de2d08c09559b510caba67341001d4f084de
2
2
  {"entries":[{"alias":"ai-provider-anthropic","compatible":["server","action","workflow","endpoint","test","build"],"incompatible":["shared","client","query","liveQuery","command","edge"],"packageName":"@ai-sdk/anthropic","rationale":{"action":"allowed by integration recipe","build":"allowed by integration recipe","client":"denied by integration recipe","command":"denied by integration recipe","edge":"denied by integration recipe","endpoint":"allowed by integration recipe","liveQuery":"denied by integration recipe","query":"denied by integration recipe","server":"allowed by integration recipe","shared":"denied by integration recipe","test":"allowed by integration recipe","workflow":"allowed by integration recipe"}},{"alias":"ai-provider-openai","compatible":["server","action","workflow","endpoint","test","build"],"incompatible":["shared","client","query","liveQuery","command","edge"],"packageName":"@ai-sdk/openai","rationale":{"action":"allowed by integration recipe","build":"allowed by integration recipe","client":"denied by integration recipe","command":"denied by integration recipe","edge":"denied by integration recipe","endpoint":"allowed by integration recipe","liveQuery":"denied by integration recipe","query":"denied by integration recipe","server":"allowed by integration recipe","shared":"denied by integration recipe","test":"allowed by integration recipe","workflow":"allowed by integration recipe"}},{"alias":"@changesets/changelog-github","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"@changesets/changelog-github","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"@changesets/cli","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"@changesets/cli","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"@electric-sql/pglite","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"@electric-sql/pglite","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"@types/bun","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"@types/bun","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"@types/node","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"@types/node","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"@types/react","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"@types/react","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"@types/react-test-renderer","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"@types/react-test-renderer","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"ai-gateway","compatible":["server","action","workflow","endpoint","test","build"],"incompatible":["shared","client","query","liveQuery","command","edge"],"packageName":"ai","rationale":{"action":"allowed by integration recipe","build":"allowed by integration recipe","client":"denied by integration recipe","command":"denied by integration recipe","edge":"denied by integration recipe","endpoint":"allowed by integration recipe","liveQuery":"denied by integration recipe","query":"denied by integration recipe","server":"allowed by integration recipe","shared":"denied by integration recipe","test":"allowed by integration recipe","workflow":"allowed by integration recipe"}},{"alias":"fast-check","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"fast-check","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"jose","compatible":["client","server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","query","liveQuery","command"],"packageName":"jose","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"client may perform network egress","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"shared context requires pure code without network/fs/process","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"postgres","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"postgres","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"react","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"react","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"react-test-renderer","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"react-test-renderer","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"tree-sitter","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"tree-sitter","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"tree-sitter-typescript","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"tree-sitter-typescript","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"tsx","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"tsx","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"insufficient signals for client compatibility","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"typescript","compatible":["server","action","workflow","endpoint","edge","test","build"],"incompatible":["shared","client","query","liveQuery","command"],"packageName":"typescript","rationale":{"action":"server-side context allows IO capabilities","build":"test/build contexts allow broad compatibility","client":"node builtins/process not allowed in client","command":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","edge":"edge-compatible by heuristic","endpoint":"server-side context allows IO capabilities","liveQuery":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","query":"capability is `unknown`; cannot prove determinism (static analysis cannot prove absence of network/fs)","server":"server-side context allows IO capabilities","shared":"insufficient signals to prove shared-safe purity","test":"test/build contexts allow broad compatibility","workflow":"server-side context allows IO capabilities"}},{"alias":"zod","compatible":["shared","client","server","query","liveQuery","command","action","workflow","endpoint","edge","test","build"],"incompatible":[],"packageName":"zod","rationale":{"action":"allowed by integration recipe","build":"allowed by integration recipe","client":"allowed by integration recipe","command":"allowed by integration recipe","edge":"allowed by integration recipe","endpoint":"allowed by integration recipe","liveQuery":"allowed by integration recipe","query":"allowed by integration recipe","server":"allowed by integration recipe","shared":"allowed by integration recipe","test":"allowed by integration recipe","workflow":"allowed by integration recipe"}}],"moduleContexts":[],"schemaVersion":"1"}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=e432d0f4305ef18d98e0d14b95def5b007ce3ac3498ac5ce46c10dd6f14b5502
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=e432d0f4305ef18d98e0d14b95def5b007ce3ac3498ac5ce46c10dd6f14b5502
2
2
  export const importGuards = {
3
3
  "schemaVersion": "1",
4
4
  "entries": [
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=4d45425e08814a9831bfec8b0f23c8b878954fc6fd06d3eaba3917e83a96b42a
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=4d45425e08814a9831bfec8b0f23c8b878954fc6fd06d3eaba3917e83a96b42a
2
2
  export * from "./actionSubscriptions";
3
3
  export * from "./agentAdapterManifest";
4
4
  export * from "./agentContract";
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=967f429b3fb0e3fbcef692494eb289adc5e9f1a733f54b93923473b52877be39
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=967f429b3fb0e3fbcef692494eb289adc5e9f1a733f54b93923473b52877be39
2
2
  {"dependencyGranularity":"table-tenant","invalidationSource":"durable-table","limits":{"heartbeatIntervalMs":15000,"maxPendingMessagesPerSubscription":5,"maxSnapshotBytes":1000000,"maxSubscriptionsPerClient":50,"maxSubscriptionsPerTenant":500,"rerunDebounceMs":50},"liveQueries":[],"mode":"production-hardened","schemaVersion":"0.1.0","transports":["sse"],"wakeupAdapters":["postgres-notify","polling"]}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=0439047e248d49da4c0bad6c54d6accfbdd68738a961a52f373ffb440742f841
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=0439047e248d49da4c0bad6c54d6accfbdd68738a961a52f373ffb440742f841
2
2
  export const liveProductionManifest = {
3
3
  "dependencyGranularity": "table-tenant",
4
4
  "invalidationSource": "durable-table",
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=2547500ca2a41f806de71a91fb967c7d242fadc9f669a903f44d48ae6447fb66
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=2547500ca2a41f806de71a91fb967c7d242fadc9f669a903f44d48ae6447fb66
2
2
  {"messages":["hello","snapshot","error","heartbeat","reset"],"protocolVersion":"0.1.0","resume":{"queryParam":"lastRevision","sseLastEventId":true},"schemaVersion":"0.1.0","snapshot":{"fullSnapshotOnly":true,"includesReleaseId":true,"includesRevision":true}}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=9893ba2b2189291fef35ab6ea0abea261f01415a078c25760333a00933c313ed
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=9893ba2b2189291fef35ab6ea0abea261f01415a078c25760333a00933c313ed
2
2
  export const liveProtocol = {
3
3
  "messages": [
4
4
  "hello",
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=4699291e1fe2fa120346c93c165f2345450aedae4d46a2c5ed96398eb5be55fa
2
- {"analyzerVersion":"0.1.0","diagnostics":[],"generatorVersion":"0.1.0-alpha.3","inputHash":"c9475eac5a16004809cb3ec4a8a67a0d6c9a310cb414b8be0200c1f787d021df","liveQueries":[],"schemaVersion":"0.1.0"}
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=fedbfe9e012ae3f3e62d55fd1405671209f6763deb58d51b8d5e01483949fc01
2
+ {"analyzerVersion":"0.1.0","diagnostics":[],"generatorVersion":"0.1.0-alpha.4","inputHash":"c52261a0b76af0f64feadff97d3852e815fa814de2566d0d1fce9e4805d1bfab","liveQueries":[],"schemaVersion":"0.1.0"}
@@ -1,9 +1,9 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=3f25ea453c23d25a96baabff8f73041661366428e2a2afee17069c137d031749
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=8f83fcdd062c71151a18571f4f520f3a0b6b398a5bfe1aca1b32b6928ab856e0
2
2
  export const liveQueryRegistry = {
3
3
  "analyzerVersion": "0.1.0",
4
4
  "diagnostics": [],
5
- "generatorVersion": "0.1.0-alpha.3",
6
- "inputHash": "c9475eac5a16004809cb3ec4a8a67a0d6c9a310cb414b8be0200c1f787d021df",
5
+ "generatorVersion": "0.1.0-alpha.4",
6
+ "inputHash": "c52261a0b76af0f64feadff97d3852e815fa814de2566d0d1fce9e4805d1bfab",
7
7
  "liveQueries": [],
8
8
  "schemaVersion": "0.1.0"
9
9
  } as const;
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=b8074453717d4c465dd2928bfd4ed51ecbf4d9ce9bff5d20e63c8a026f4b1cc8
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=b8074453717d4c465dd2928bfd4ed51ecbf4d9ce9bff5d20e63c8a026f4b1cc8
2
2
  {"defaultTransport":"sse","schemaVersion":"0.1.0","selfHostEnv":{"FORGE_LIVE_HEARTBEAT_MS":"15000","FORGE_LIVE_INVALIDATION":"polling,postgres-notify","FORGE_LIVE_POLL_INTERVAL_MS":"1000","FORGE_LIVE_TRANSPORT":"sse"},"transports":{"sse":{"endpoint":"/live/:name","heartbeat":true,"multiplexEndpoint":"/live/stream","oneConnectionPerClientRecommended":true}}}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=9166cbf6c2ee6161ea374ec2da35d146fc04efd6f2a1ca307eb3518c4f6c2046
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=9166cbf6c2ee6161ea374ec2da35d146fc04efd6f2a1ca307eb3518c4f6c2046
2
2
  export const liveTransportConfig = {
3
3
  "defaultTransport": "sse",
4
4
  "schemaVersion": "0.1.0",
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=2f78b0ec8f2d1893ff0391711f38066c2433b0d390abcaae605c6ff152910b68
2
- {"commands":["forge make list --json","forge make explain <primitive> --json","forge make ui --framework vite --dry-run --json","forge make ai-chat support --dry-run --json","forge make resource <name> --fields title:text,status:enum(open,closed) --dry-run --json","forge make resource <name> --fields title:text --with-ui --yes","forge make apply <planId>","forge make rollback <planId>"],"generatorVersion":"0.1.0-alpha.3","planDirectory":".forge/make-plans","primitives":[{"creates":[],"examples":["forge make table invoices --fields amount:number,status:text"],"modifies":["src/forge/schema.ts"],"name":"table","summary":"Add a schema table declaration."},{"creates":[],"examples":["forge make field invoices.status --type enum --values draft,paid"],"modifies":["src/forge/schema.ts"],"name":"field","summary":"Add a field to an existing table declaration."},{"creates":["src/policies.ts when missing"],"examples":["forge make policy invoices.read --roles owner,admin,member"],"modifies":["src/policies.ts"],"name":"policy","summary":"Add a named policy with allowed roles."},{"creates":["src/commands/<name>.ts"],"examples":["forge make command invoices.create --table invoices --policy invoices.create --emit invoice.created"],"modifies":[],"name":"command","summary":"Add a transactional command with policy and optional event emission."},{"creates":["src/queries/<name>.ts"],"examples":["forge make query invoices.list --table invoices --policy invoices.read"],"modifies":[],"name":"query","summary":"Add a read-only query."},{"creates":["src/queries/live<Name>.ts"],"examples":["forge make livequery invoices.live --table invoices --policy invoices.read"],"modifies":[],"name":"livequery","summary":"Add a read-only liveQuery for reactive clients."},{"creates":["src/actions/<name>.ts"],"examples":["forge make action captureInvoiceCreated --event invoice.created"],"modifies":[],"name":"action","summary":"Add an after-commit action subscribed to an event."},{"creates":["src/workflows/<name>.ts"],"examples":["forge make workflow invoiceWorkflow --table invoices --trigger invoice.created"],"modifies":[],"name":"workflow","summary":"Add a durable workflow triggered by an event."},{"creates":["web/components/<Component>.tsx"],"examples":["forge make component InvoiceList --table invoices"],"modifies":[],"name":"component","summary":"Add a React component that uses generated Forge client hooks."},{"creates":["web/app/<route>/page.tsx"],"examples":["forge make page invoices --table invoices --with-create-form"],"modifies":[],"name":"page","summary":"Add a minimal app page wired to generated components."},{"creates":["web/package.json","web/index.html","web/src/lib/forge.ts","web/src/main.tsx","web/src/App.tsx"],"examples":["forge make ui --framework vite --yes"],"modifies":[],"name":"ui","summary":"Add a Vite React frontend shell with ForgeProvider devAuth and a generated client bridge."},{"creates":["src/ai/<name>Agent.ts","web/components/<Name>AiChat.tsx","web/app/<name>-ai/page.tsx when web/app exists"],"examples":["forge make ai-chat support --yes"],"modifies":[],"name":"ai-chat","summary":"Add a Forge AI agent and React chat component backed by /ai/agents/run."},{"creates":["src/commands/*","src/queries/*","src/actions/*","web/components/*","web/app/*","tests/make-generated/*"],"examples":["forge make resource invoices --fields amount:number,status:enum(draft,paid) --with-ui --yes"],"modifies":["src/forge/schema.ts","src/policies.ts"],"name":"resource","summary":"Add schema, policies, CRUD, queries, liveQuery, optional UI, and tests."}],"schemaVersion":"0.1.0"}
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=777f0159da68f78304c2471e6adcb39fcd3986dc1cf6e48e4bdc555c56dc644c
2
+ {"commands":["forge make list --json","forge make explain <primitive> --json","forge make ui --framework vite --dry-run --json","forge make ai-chat support --dry-run --json","forge make resource <name> --fields title:text,status:enum(open,closed) --dry-run --json","forge make resource <name> --fields title:text --with-ui --yes","forge make apply <planId>","forge make rollback <planId>"],"generatorVersion":"0.1.0-alpha.4","planDirectory":".forge/make-plans","primitives":[{"creates":[],"examples":["forge make table invoices --fields amount:number,status:text"],"modifies":["src/forge/schema.ts"],"name":"table","summary":"Add a schema table declaration."},{"creates":[],"examples":["forge make field invoices.status --type enum --values draft,paid"],"modifies":["src/forge/schema.ts"],"name":"field","summary":"Add a field to an existing table declaration."},{"creates":["src/policies.ts when missing"],"examples":["forge make policy invoices.read --roles owner,admin,member"],"modifies":["src/policies.ts"],"name":"policy","summary":"Add a named policy with allowed roles."},{"creates":["src/commands/<name>.ts"],"examples":["forge make command invoices.create --table invoices --policy invoices.create --emit invoice.created"],"modifies":[],"name":"command","summary":"Add a transactional command with policy and optional event emission."},{"creates":["src/queries/<name>.ts"],"examples":["forge make query invoices.list --table invoices --policy invoices.read"],"modifies":[],"name":"query","summary":"Add a read-only query."},{"creates":["src/queries/live<Name>.ts"],"examples":["forge make livequery invoices.live --table invoices --policy invoices.read"],"modifies":[],"name":"livequery","summary":"Add a read-only liveQuery for reactive clients."},{"creates":["src/actions/<name>.ts"],"examples":["forge make action captureInvoiceCreated --event invoice.created"],"modifies":[],"name":"action","summary":"Add an after-commit action subscribed to an event."},{"creates":["src/workflows/<name>.ts"],"examples":["forge make workflow invoiceWorkflow --table invoices --trigger invoice.created"],"modifies":[],"name":"workflow","summary":"Add a durable workflow triggered by an event."},{"creates":["web/components/<Component>.tsx"],"examples":["forge make component InvoiceList --table invoices"],"modifies":[],"name":"component","summary":"Add a React component that uses generated Forge client hooks."},{"creates":["web/app/<route>/page.tsx"],"examples":["forge make page invoices --table invoices --with-create-form"],"modifies":[],"name":"page","summary":"Add a minimal app page wired to generated components."},{"creates":["web/package.json","web/index.html","web/src/lib/forge.ts","web/src/main.tsx","web/src/App.tsx"],"examples":["forge make ui --framework vite --yes"],"modifies":[],"name":"ui","summary":"Add a Vite React frontend shell with ForgeProvider devAuth and a generated client bridge."},{"creates":["src/ai/<name>Agent.ts","web/components/<Name>AiChat.tsx","web/app/<name>-ai/page.tsx when web/app exists"],"examples":["forge make ai-chat support --yes"],"modifies":[],"name":"ai-chat","summary":"Add a Forge AI agent and React chat component backed by /ai/agents/run."},{"creates":["src/commands/*","src/queries/*","src/actions/*","web/components/*","web/app/*","tests/make-generated/*"],"examples":["forge make resource invoices --fields amount:number,status:enum(draft,paid) --with-ui --yes"],"modifies":["src/forge/schema.ts","src/policies.ts"],"name":"resource","summary":"Add schema, policies, CRUD, queries, liveQuery, optional UI, and tests."}],"schemaVersion":"0.1.0"}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=dde1c607540ce0e2bbe022af128639deef1eb84a01e094935fa3ac7e193f6ea6
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=a4615e698642dd0a6f67edafb3823a0e016abadab49c05d0e0a0cdaea65acd89
2
2
  export const makeRegistry = {
3
3
  "commands": [
4
4
  "forge make list --json",
@@ -10,7 +10,7 @@ export const makeRegistry = {
10
10
  "forge make apply <planId>",
11
11
  "forge make rollback <planId>"
12
12
  ],
13
- "generatorVersion": "0.1.0-alpha.3",
13
+ "generatorVersion": "0.1.0-alpha.4",
14
14
  "planDirectory": ".forge/make-plans",
15
15
  "primitives": [
16
16
  {
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=10dbc136889e8edfea67f3f41e7820590b0c52914b15184dfab1d58579353bd9
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=10dbc136889e8edfea67f3f41e7820590b0c52914b15184dfab1d58579353bd9
2
2
  {"schemaVersion":"0.1.0","templates":[{"name":"schema-table","outputPattern":"src/forge/schema.ts","sourceKind":"schema"},{"name":"policy","outputPattern":"src/policies.ts","sourceKind":"policy"},{"name":"command","outputPattern":"src/commands/<name>.ts","sourceKind":"runtime"},{"name":"query","outputPattern":"src/queries/<name>.ts","sourceKind":"runtime"},{"name":"livequery","outputPattern":"src/queries/live<Name>.ts","sourceKind":"runtime"},{"name":"action","outputPattern":"src/actions/<name>.ts","sourceKind":"runtime"},{"name":"workflow","outputPattern":"src/workflows/<name>.ts","sourceKind":"runtime"},{"name":"component","outputPattern":"web/components/<name>.tsx","sourceKind":"frontend"},{"name":"page","outputPattern":"web/app/<route>/page.tsx","sourceKind":"frontend"},{"name":"ui","outputPattern":"web/src/App.tsx","sourceKind":"frontend"},{"name":"ai-chat","outputPattern":"web/components/<name>AiChat.tsx","sourceKind":"frontend"},{"name":"placeholder-test","outputPattern":"tests/make-generated/<name>.test.ts","sourceKind":"test"}]}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=d77484c9887220010cac51e14aaa010154cd261244eea7bf22a2aaaedca6afb4
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=d77484c9887220010cac51e14aaa010154cd261244eea7bf22a2aaaedca6afb4
2
2
  export const makeTemplates = {
3
3
  "schemaVersion": "0.1.0",
4
4
  "templates": [
@@ -1,2 +1,2 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=ce79e45d4228d202a492670aa76f238986b5500c8bb53774b328c216a1ccc6d8
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=ce79e45d4228d202a492670aa76f238986b5500c8bb53774b328c216a1ccc6d8
2
2
  {"entries":[{"mockFile":"src/forge/_generated/testkits/ai.anthropic.mock.ts","packageName":"@ai-sdk/anthropic"},{"mockFile":"src/forge/_generated/testkits/ai.openai.mock.ts","packageName":"@ai-sdk/openai"},{"mockFile":"src/forge/_generated/testkits/ai.gateway.mock.ts","packageName":"ai"},{"mockFile":"src/forge/_generated/testkits/zod.mock.ts","packageName":"zod"}]}
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=4c569da5df387f6bb7fe7fd94d42b4cc6b05f5218ab0bc129d9637c184625057
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=4c569da5df387f6bb7fe7fd94d42b4cc6b05f5218ab0bc129d9637c184625057
2
2
  export const mockMap = {
3
3
  "@ai-sdk/anthropic": "src/forge/_generated/testkits/ai.anthropic.mock.ts",
4
4
  "@ai-sdk/openai": "src/forge/_generated/testkits/ai.openai.mock.ts",
@@ -1,4 +1,4 @@
1
- // @forge-generated generator=0.1.0-alpha.3 input=c6d07cc92a729a46f2ff02a05c005e7fe0d71a3a5800be6f670a3fca2db04d6f content=58dad7f03d9e378e327fddb0676d079950c8f000752667cffb022f3b7e217265
1
+ // @forge-generated generator=0.1.0-alpha.4 input=4af795b70ec62dc5967f6e9b78865cfbc8afb09275e575845cf80a360b3b85e2 content=58dad7f03d9e378e327fddb0676d079950c8f000752667cffb022f3b7e217265
2
2
  # Operation Playbooks
3
3
 
4
4
  ## Choose the right workflow