@superblocksteam/vite-plugin-file-sync 2.0.151 → 2.0.152-next.1

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 (224) hide show
  1. package/dist/ai-service/agent/middleware.d.ts.map +1 -1
  2. package/dist/ai-service/agent/middleware.js +10 -1
  3. package/dist/ai-service/agent/middleware.js.map +1 -1
  4. package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
  5. package/dist/ai-service/agent/prompts/build-base-system-prompt.js +25 -6
  6. package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
  7. package/dist/ai-service/agent/prompts/build-security-scan-prompt.d.ts.map +1 -1
  8. package/dist/ai-service/agent/prompts/build-security-scan-prompt.js +7 -2
  9. package/dist/ai-service/agent/prompts/build-security-scan-prompt.js.map +1 -1
  10. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.d.ts +47 -1
  11. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.d.ts.map +1 -1
  12. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.js +129 -15
  13. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.js.map +1 -1
  14. package/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
  15. package/dist/ai-service/agent/tools/apis/test-api.js +1 -24
  16. package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
  17. package/dist/ai-service/agent/tools/databases/dev-database-tasks.d.ts +53 -9
  18. package/dist/ai-service/agent/tools/databases/dev-database-tasks.d.ts.map +1 -1
  19. package/dist/ai-service/agent/tools/databases/dev-database-tasks.js +304 -67
  20. package/dist/ai-service/agent/tools/databases/dev-database-tasks.js.map +1 -1
  21. package/dist/ai-service/agent/tools/databases/dev-database-tools.d.ts +47 -1
  22. package/dist/ai-service/agent/tools/databases/dev-database-tools.d.ts.map +1 -1
  23. package/dist/ai-service/agent/tools/databases/dev-database-tools.js +38 -1
  24. package/dist/ai-service/agent/tools/databases/dev-database-tools.js.map +1 -1
  25. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +391 -0
  26. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts.map +1 -1
  27. package/dist/ai-service/agent/tools/integrations/execute-request.js +257 -44
  28. package/dist/ai-service/agent/tools/integrations/execute-request.js.map +1 -1
  29. package/dist/ai-service/agent/tools/integrations/index.d.ts +1 -1
  30. package/dist/ai-service/agent/tools/integrations/index.d.ts.map +1 -1
  31. package/dist/ai-service/agent/tools/integrations/index.js +1 -1
  32. package/dist/ai-service/agent/tools/integrations/index.js.map +1 -1
  33. package/dist/ai-service/agent/tools/integrations/managed-app-database.d.ts +16 -0
  34. package/dist/ai-service/agent/tools/integrations/managed-app-database.d.ts.map +1 -0
  35. package/dist/ai-service/agent/tools/integrations/managed-app-database.js +31 -0
  36. package/dist/ai-service/agent/tools/integrations/managed-app-database.js.map +1 -0
  37. package/dist/ai-service/agent/tools/integrations/sql-classification.d.ts +44 -0
  38. package/dist/ai-service/agent/tools/integrations/sql-classification.d.ts.map +1 -0
  39. package/dist/ai-service/agent/tools/integrations/sql-classification.js +352 -0
  40. package/dist/ai-service/agent/tools/integrations/sql-classification.js.map +1 -0
  41. package/dist/ai-service/agent/tools/report-security-findings.d.ts +5 -5
  42. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  43. package/dist/ai-service/agent/tools.js +5 -1
  44. package/dist/ai-service/agent/tools.js.map +1 -1
  45. package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -1
  46. package/dist/ai-service/agent/tools2/registry.js +2 -0
  47. package/dist/ai-service/agent/tools2/registry.js.map +1 -1
  48. package/dist/ai-service/agent/tools2/tools/check-task.d.ts.map +1 -1
  49. package/dist/ai-service/agent/tools2/tools/check-task.js +4 -1
  50. package/dist/ai-service/agent/tools2/tools/check-task.js.map +1 -1
  51. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -1
  52. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +12 -1
  53. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
  54. package/dist/ai-service/agent/tools2/tools/wait-for-task.d.ts.map +1 -1
  55. package/dist/ai-service/agent/tools2/tools/wait-for-task.js +5 -1
  56. package/dist/ai-service/agent/tools2/tools/wait-for-task.js.map +1 -1
  57. package/dist/ai-service/chat/chat-session-store.d.ts +10 -1
  58. package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
  59. package/dist/ai-service/chat/chat-session-store.js +65 -15
  60. package/dist/ai-service/chat/chat-session-store.js.map +1 -1
  61. package/dist/ai-service/context-archive-paths.d.ts +7 -0
  62. package/dist/ai-service/context-archive-paths.d.ts.map +1 -1
  63. package/dist/ai-service/context-archive-paths.js +7 -0
  64. package/dist/ai-service/context-archive-paths.js.map +1 -1
  65. package/dist/ai-service/context-download.d.ts.map +1 -1
  66. package/dist/ai-service/context-download.js +8 -10
  67. package/dist/ai-service/context-download.js.map +1 -1
  68. package/dist/ai-service/context-flush.d.ts +36 -0
  69. package/dist/ai-service/context-flush.d.ts.map +1 -0
  70. package/dist/ai-service/context-flush.js +90 -0
  71. package/dist/ai-service/context-flush.js.map +1 -0
  72. package/dist/ai-service/context-restore.d.ts +64 -0
  73. package/dist/ai-service/context-restore.d.ts.map +1 -0
  74. package/dist/ai-service/context-restore.js +136 -0
  75. package/dist/ai-service/context-restore.js.map +1 -0
  76. package/dist/ai-service/context-upload.d.ts +13 -4
  77. package/dist/ai-service/context-upload.d.ts.map +1 -1
  78. package/dist/ai-service/context-upload.js +28 -18
  79. package/dist/ai-service/context-upload.js.map +1 -1
  80. package/dist/ai-service/dev-database-client.d.ts +51 -0
  81. package/dist/ai-service/dev-database-client.d.ts.map +1 -1
  82. package/dist/ai-service/dev-database-client.js +3 -0
  83. package/dist/ai-service/dev-database-client.js.map +1 -1
  84. package/dist/ai-service/index.d.ts +19 -0
  85. package/dist/ai-service/index.d.ts.map +1 -1
  86. package/dist/ai-service/index.js +449 -182
  87. package/dist/ai-service/index.js.map +1 -1
  88. package/dist/ai-service/llm/context-v2/adapter.d.ts.map +1 -1
  89. package/dist/ai-service/llm/context-v2/adapter.js +1 -0
  90. package/dist/ai-service/llm/context-v2/adapter.js.map +1 -1
  91. package/dist/ai-service/llm/context-v2/compaction/client-side.d.ts +30 -0
  92. package/dist/ai-service/llm/context-v2/compaction/client-side.d.ts.map +1 -1
  93. package/dist/ai-service/llm/context-v2/compaction/client-side.js +77 -4
  94. package/dist/ai-service/llm/context-v2/compaction/client-side.js.map +1 -1
  95. package/dist/ai-service/llm/context-v2/compaction/compaction-strategy.d.ts +5 -0
  96. package/dist/ai-service/llm/context-v2/compaction/compaction-strategy.d.ts.map +1 -1
  97. package/dist/ai-service/llm/context-v2/compaction/server-side.d.ts +1 -0
  98. package/dist/ai-service/llm/context-v2/compaction/server-side.d.ts.map +1 -1
  99. package/dist/ai-service/llm/context-v2/compaction/server-side.js +3 -0
  100. package/dist/ai-service/llm/context-v2/compaction/server-side.js.map +1 -1
  101. package/dist/ai-service/llm/context-v2/compactor.d.ts.map +1 -1
  102. package/dist/ai-service/llm/context-v2/compactor.js +57 -6
  103. package/dist/ai-service/llm/context-v2/compactor.js.map +1 -1
  104. package/dist/ai-service/llm/context-v2/config.d.ts +13 -1
  105. package/dist/ai-service/llm/context-v2/config.d.ts.map +1 -1
  106. package/dist/ai-service/llm/context-v2/config.js +39 -2
  107. package/dist/ai-service/llm/context-v2/config.js.map +1 -1
  108. package/dist/ai-service/llm/context-v2/context-metrics.d.ts +23 -0
  109. package/dist/ai-service/llm/context-v2/context-metrics.d.ts.map +1 -1
  110. package/dist/ai-service/llm/context-v2/context-metrics.js +52 -1
  111. package/dist/ai-service/llm/context-v2/context-metrics.js.map +1 -1
  112. package/dist/ai-service/llm/context-v2/context.d.ts +27 -3
  113. package/dist/ai-service/llm/context-v2/context.d.ts.map +1 -1
  114. package/dist/ai-service/llm/context-v2/context.js +107 -10
  115. package/dist/ai-service/llm/context-v2/context.js.map +1 -1
  116. package/dist/ai-service/llm/context-v2/manager.d.ts +66 -0
  117. package/dist/ai-service/llm/context-v2/manager.d.ts.map +1 -1
  118. package/dist/ai-service/llm/context-v2/manager.js +194 -2
  119. package/dist/ai-service/llm/context-v2/manager.js.map +1 -1
  120. package/dist/ai-service/llm/context-v2/storage/event-store.d.ts +31 -5
  121. package/dist/ai-service/llm/context-v2/storage/event-store.d.ts.map +1 -1
  122. package/dist/ai-service/llm/context-v2/storage/jsonl-event-store.d.ts +30 -9
  123. package/dist/ai-service/llm/context-v2/storage/jsonl-event-store.d.ts.map +1 -1
  124. package/dist/ai-service/llm/context-v2/storage/jsonl-event-store.js +96 -13
  125. package/dist/ai-service/llm/context-v2/storage/jsonl-event-store.js.map +1 -1
  126. package/dist/ai-service/llm/context-v2/storage/legacy-context-adoption.d.ts +46 -0
  127. package/dist/ai-service/llm/context-v2/storage/legacy-context-adoption.d.ts.map +1 -0
  128. package/dist/ai-service/llm/context-v2/storage/legacy-context-adoption.js +240 -0
  129. package/dist/ai-service/llm/context-v2/storage/legacy-context-adoption.js.map +1 -0
  130. package/dist/ai-service/llm/context-v2/storage/local.d.ts +1 -1
  131. package/dist/ai-service/llm/context-v2/storage/local.d.ts.map +1 -1
  132. package/dist/ai-service/llm/context-v2/storage/local.js +3 -2
  133. package/dist/ai-service/llm/context-v2/storage/local.js.map +1 -1
  134. package/dist/ai-service/llm/context-v2/types.d.ts +5 -1
  135. package/dist/ai-service/llm/context-v2/types.d.ts.map +1 -1
  136. package/dist/ai-service/llm/context-v2/types.js.map +1 -1
  137. package/dist/ai-service/llm/stream/config.d.ts +4 -3
  138. package/dist/ai-service/llm/stream/config.d.ts.map +1 -1
  139. package/dist/ai-service/llm/stream/config.js.map +1 -1
  140. package/dist/ai-service/llm/stream/idle-monitor.d.ts +37 -4
  141. package/dist/ai-service/llm/stream/idle-monitor.d.ts.map +1 -1
  142. package/dist/ai-service/llm/stream/idle-monitor.js +38 -3
  143. package/dist/ai-service/llm/stream/idle-monitor.js.map +1 -1
  144. package/dist/ai-service/policy-agent-metrics.d.ts +18 -0
  145. package/dist/ai-service/policy-agent-metrics.d.ts.map +1 -0
  146. package/dist/ai-service/policy-agent-metrics.js +99 -0
  147. package/dist/ai-service/policy-agent-metrics.js.map +1 -0
  148. package/dist/ai-service/state-machine/clark-fsm.d.ts +9 -0
  149. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  150. package/dist/ai-service/state-machine/helpers/prompt-request-metrics.d.ts +9 -0
  151. package/dist/ai-service/state-machine/helpers/prompt-request-metrics.d.ts.map +1 -1
  152. package/dist/ai-service/state-machine/helpers/prompt-request-metrics.js +27 -0
  153. package/dist/ai-service/state-machine/helpers/prompt-request-metrics.js.map +1 -1
  154. package/dist/ai-service/tasks/factory.d.ts +7 -0
  155. package/dist/ai-service/tasks/factory.d.ts.map +1 -1
  156. package/dist/ai-service/tasks/factory.js +5 -0
  157. package/dist/ai-service/tasks/factory.js.map +1 -1
  158. package/dist/ai-service/tasks/task-store.d.ts +11 -1
  159. package/dist/ai-service/tasks/task-store.d.ts.map +1 -1
  160. package/dist/ai-service/tasks/task-store.js +104 -29
  161. package/dist/ai-service/tasks/task-store.js.map +1 -1
  162. package/dist/ai-service/tasks/types.d.ts +9 -1
  163. package/dist/ai-service/tasks/types.d.ts.map +1 -1
  164. package/dist/extract-api-integrations.d.ts +76 -0
  165. package/dist/extract-api-integrations.d.ts.map +1 -1
  166. package/dist/extract-api-integrations.js +428 -109
  167. package/dist/extract-api-integrations.js.map +1 -1
  168. package/dist/file-sync-vite-plugin.d.ts +1 -1
  169. package/dist/file-sync-vite-plugin.d.ts.map +1 -1
  170. package/dist/file-sync-vite-plugin.js +42 -79
  171. package/dist/file-sync-vite-plugin.js.map +1 -1
  172. package/dist/file-system-helpers.d.ts +1 -1
  173. package/dist/file-system-helpers.d.ts.map +1 -1
  174. package/dist/file-system-helpers.js +1 -0
  175. package/dist/file-system-helpers.js.map +1 -1
  176. package/dist/git-auth-state.d.ts +4 -0
  177. package/dist/git-auth-state.d.ts.map +1 -0
  178. package/dist/git-auth-state.js +25 -0
  179. package/dist/git-auth-state.js.map +1 -0
  180. package/dist/git-service/checkpoint-commit-metrics.d.ts +2 -0
  181. package/dist/git-service/checkpoint-commit-metrics.d.ts.map +1 -0
  182. package/dist/git-service/checkpoint-commit-metrics.js +15 -0
  183. package/dist/git-service/checkpoint-commit-metrics.js.map +1 -0
  184. package/dist/git-service/checkpoint-committer.d.ts +22 -0
  185. package/dist/git-service/checkpoint-committer.d.ts.map +1 -0
  186. package/dist/git-service/checkpoint-committer.js +91 -0
  187. package/dist/git-service/checkpoint-committer.js.map +1 -0
  188. package/dist/git-service/commit-live-branch.d.ts +17 -0
  189. package/dist/git-service/commit-live-branch.d.ts.map +1 -0
  190. package/dist/git-service/commit-live-branch.js +28 -0
  191. package/dist/git-service/commit-live-branch.js.map +1 -0
  192. package/dist/git-service/provider-workflow-files.d.ts +12 -0
  193. package/dist/git-service/provider-workflow-files.d.ts.map +1 -0
  194. package/dist/git-service/provider-workflow-files.js +36 -0
  195. package/dist/git-service/provider-workflow-files.js.map +1 -0
  196. package/dist/plugin-options.d.ts +8 -0
  197. package/dist/plugin-options.d.ts.map +1 -1
  198. package/dist/plugin-options.js.map +1 -1
  199. package/dist/policy-gate-runner.d.ts.map +1 -1
  200. package/dist/policy-gate-runner.js +7 -9
  201. package/dist/policy-gate-runner.js.map +1 -1
  202. package/dist/server-rpc/client.d.ts.map +1 -1
  203. package/dist/server-rpc/client.js +2 -0
  204. package/dist/server-rpc/client.js.map +1 -1
  205. package/dist/server-rpc/index.d.ts +43 -1
  206. package/dist/server-rpc/index.d.ts.map +1 -1
  207. package/dist/server-rpc/index.js +143 -5
  208. package/dist/server-rpc/index.js.map +1 -1
  209. package/dist/server-rpc/request-abort-context.d.ts +3 -0
  210. package/dist/server-rpc/request-abort-context.d.ts.map +1 -0
  211. package/dist/server-rpc/request-abort-context.js +23 -0
  212. package/dist/server-rpc/request-abort-context.js.map +1 -0
  213. package/dist/server-rpc/rpc-invalidate-metrics.d.ts +20 -0
  214. package/dist/server-rpc/rpc-invalidate-metrics.d.ts.map +1 -0
  215. package/dist/server-rpc/rpc-invalidate-metrics.js +86 -0
  216. package/dist/server-rpc/rpc-invalidate-metrics.js.map +1 -0
  217. package/dist/socket-manager.d.ts.map +1 -1
  218. package/dist/socket-manager.js +21 -60
  219. package/dist/socket-manager.js.map +1 -1
  220. package/dist/sync-service/index.d.ts +26 -2
  221. package/dist/sync-service/index.d.ts.map +1 -1
  222. package/dist/sync-service/index.js +74 -37
  223. package/dist/sync-service/index.js.map +1 -1
  224. package/package.json +9 -8
@@ -1,10 +1,12 @@
1
1
  import z from "zod";
2
- import { AiEntityType, AiPermissionType, } from "@superblocksteam/library-shared/types";
3
- import { ActionResponseType, CosmosDbPlugin, DatabricksPlugin, DynamoDBPlugin, EditorLanguage, ExtendedIntegrationPluginId, GCSPlugin, GraphQLIntegrationPluginMergedFieldNames, MongoDBPlugin, RestApiBodyDataType, RestApiFields, S3ActionType, S3Plugin, SalesforcePlugin, } from "@superblocksteam/shared";
2
+ import { AiEntityType, AiMode, AiPermissionType, } from "@superblocksteam/library-shared/types";
3
+ import { ActionResponseType, CockroachDBPlugin, CosmosDbPlugin, DATABASE_LIFECYCLE_MANAGED_BY, DatabricksPlugin, DynamoDBPlugin, EditorLanguage, ExtendedIntegrationPluginId, GCSPlugin, GraphQLIntegrationPluginMergedFieldNames, LakebasePlugin, MongoDBPlugin, PostgresPlugin, RestApiBodyDataType, RestApiFields, S3ActionType, S3Plugin, SalesforcePlugin, SnowflakePostgresPlugin, } from "@superblocksteam/shared";
4
4
  import { getLogger } from "../../../../util/logger.js";
5
5
  import { createToolFactory, ToolCategory, PermissionLevel, ToolExecutionError, } from "../../tools2/types.js";
6
6
  import { codeBlock } from "../../tools2/utils.js";
7
7
  import { executeRequest, MAX_QUERY_RESPONSE_TOKENS } from "./internal.js";
8
+ import { isManagedAppDatabaseIntegration } from "./managed-app-database.js";
9
+ import { classifySqlStatement, peekSqlClassification, } from "./sql-classification.js";
8
10
  // Maximum number of rows that can be returned from a query
9
11
  const MAX_QUERY_LIMIT = 10;
10
12
  const S3_READ_ACTIONS = [
@@ -267,9 +269,17 @@ export const executeRequestToIntegrationToolFactory = createToolFactory("execute
267
269
 
268
270
  Both read-only and write operations are supported. Write operations (creating, updating, or deleting data) will require user approval before execution.
269
271
 
270
- IMPORTANT: SQL queries must include a row limit clause with a maximum of ${MAX_QUERY_LIMIT} rows.
272
+ SQL write rules:
273
+ - INSERT, UPDATE, DELETE and MERGE run only on integrations backed by PostgreSQL itself (${PostgresPlugin.id}, ${LakebasePlugin.id}, ${SnowflakePostgresPlugin.id}). On every other SQL integration — including ${CockroachDBPlugin.id}, whose dialect this tool cannot verify — and on Salesforce, only reads are supported; do not attempt writes there.
274
+ - Writes require Build mode. In Plan mode this tool is read-only, so plan the write and perform it after switching to Build mode.
275
+ - Writes need the user's approval, except against a managed app database, where they run immediately.
276
+ - Schema and session statements (CREATE, ALTER, DROP, TRUNCATE, GRANT, REVOKE, SET) are always rejected. Change a managed app database's schema with startApplyDevDatabaseMigrations instead.
277
+ - A query must be a single valid statement. Anything unparseable is rejected.
278
+ - Direct INSERT, UPDATE, or DELETE ... RETURNING statements are rejected because PostgreSQL cannot apply LIMIT to them. Use WITH result AS (... RETURNING ...) SELECT * FROM result LIMIT ${MAX_QUERY_LIMIT}, or omit RETURNING when only the row count is needed.
279
+
280
+ IMPORTANT: SQL queries that return rows must include a row limit clause with a maximum of ${MAX_QUERY_LIMIT} rows.
271
281
  Supported syntax: LIMIT N (MySQL/PostgreSQL), SELECT TOP N (SQL Server), or FETCH NEXT N ROWS ONLY (ANSI SQL).
272
- Note: Metadata commands (SHOW, DESCRIBE, EXPLAIN) don't require a row limit.
282
+ Note: Metadata commands (SHOW, DESCRIBE, EXPLAIN) and writes that return no rows don't require a row limit.
273
283
 
274
284
  IMPORTANT: Limit requests to a maximum of ${MAX_QUERY_LIMIT} entities.
275
285
 
@@ -291,6 +301,16 @@ export const executeRequestToIntegrationToolFactory = createToolFactory("execute
291
301
  Response data is returned as a JSON object.
292
302
  `,
293
303
  inputSchema,
304
+ onCall: async (args) => {
305
+ assertSqlParamsTypeMatchesIntegration(services, args);
306
+ if (args.params.type !== "sql") {
307
+ return;
308
+ }
309
+ const classification = await classifySqlStatement(args.params.query, sqlPluginIdFor(services, args.integrationId));
310
+ if (classification.kind === "unknown") {
311
+ throw createSqlPolicyError(describeRejection(classification.kind), args);
312
+ }
313
+ },
294
314
  toModelOutput: ({ output }) => {
295
315
  if (output.isPartial) {
296
316
  return {
@@ -308,6 +328,7 @@ export const executeRequestToIntegrationToolFactory = createToolFactory("execute
308
328
  },
309
329
  execute: async (args) => {
310
330
  const { params, integrationId } = args;
331
+ assertSqlParamsTypeMatchesIntegration(services, args);
311
332
  const integrationHeader = services.integrationStore.getHeader(integrationId);
312
333
  const integrationHint = integrationHeader?.name && integrationHeader.plugin.id
313
334
  ? {
@@ -323,32 +344,30 @@ export const executeRequestToIntegrationToolFactory = createToolFactory("execute
323
344
  case "salesforce":
324
345
  case "sql": {
325
346
  const { query } = params;
326
- // Validate query is read-only
327
347
  const normalizedQuery = query.trim().toUpperCase();
328
- const dmlKeywords = [
329
- "INSERT",
330
- "UPDATE",
331
- "DELETE",
332
- "DROP",
333
- "TRUNCATE",
334
- "ALTER",
335
- "CREATE",
336
- "REPLACE",
337
- "MERGE",
338
- "RENAME",
339
- "GRANT",
340
- "REVOKE",
341
- "USE",
342
- "SET",
343
- "UNSET",
344
- "VACUUM",
345
- "COPY",
346
- ];
347
- const hasDML = dmlKeywords.some((keyword) =>
348
- // Match keyword at start or after whitespace/semicolon
349
- new RegExp(`(^|\\s|;)${keyword}\\s`, "i").test(normalizedQuery));
350
- if (hasDML) {
351
- throw new ToolExecutionError("Only read-only SQL queries are allowed. DML operations (INSERT, UPDATE, DELETE, etc.) are blocked.", {
348
+ // Whether this query may run at all. Approval for mutations is
349
+ // settled before execute() by checkExecuteRequestPermissions and
350
+ // the registry's WRITE escalation.
351
+ const classification = await classifySqlStatement(query, services.integrationStore.getHeader(integrationId)?.plugin.id);
352
+ const rejection = describeRejection(classification.kind);
353
+ if (rejection !== undefined) {
354
+ throw new ToolExecutionError(rejection, {
355
+ toolName: "executeRequestToIntegration",
356
+ input: args,
357
+ context: {},
358
+ severity: "info",
359
+ });
360
+ }
361
+ // A mutation that returns rows but cannot carry a LIMIT is the one
362
+ // shape with no bound at all: `DELETE FROM events RETURNING *`
363
+ // commits the delete and then materializes every deleted row, and
364
+ // truncation only runs once that whole result has crossed the wire.
365
+ // Wrapping it in a CTE keeps the RETURNING and makes the outer
366
+ // SELECT limitable, so the rewrite is always available.
367
+ if (isUnboundedReturningMutation(classification)) {
368
+ throw new ToolExecutionError("A RETURNING clause on a direct INSERT, UPDATE, or DELETE has no row limit, so the result set is unbounded. Wrap it so the rows come back through a query that can be limited: " +
369
+ `WITH result AS (DELETE FROM events WHERE ... RETURNING *) SELECT * FROM result LIMIT ${MAX_QUERY_LIMIT}. ` +
370
+ "Drop RETURNING entirely if you only need the row count.", {
352
371
  toolName: "executeRequestToIntegration",
353
372
  input: args,
354
373
  context: {},
@@ -386,7 +405,12 @@ export const executeRequestToIntegrationToolFactory = createToolFactory("execute
386
405
  .replace(/\bAS\s+\w+/gi, "")
387
406
  .replace(/[,\s]+/g, "");
388
407
  const isAggregateOnlyQuery = hasAggregateFunction && !hasGroupBy && remainingColumns === "";
389
- if (!isMetadataCommand && !isAggregateOnlyQuery) {
408
+ // A statement that cannot carry a LIMIT clause has nothing to
409
+ // check. That covers bare mutations and `... RETURNING`, where
410
+ // `LIMIT` is a syntax error.
411
+ if (classification.supportsRowLimit &&
412
+ !isMetadataCommand &&
413
+ !isAggregateOnlyQuery) {
390
414
  // Check for various SQL dialect row limiting syntaxes:
391
415
  // - MySQL/PostgreSQL/SQLite: LIMIT N
392
416
  // - SQL Server: TOP N (after SELECT)
@@ -428,6 +452,10 @@ export const executeRequestToIntegrationToolFactory = createToolFactory("execute
428
452
  const queryFieldPath = getQueryFieldPath(integrationId, services.integrationStore);
429
453
  request = buildSqlRequest(query, queryFieldPath);
430
454
  }
455
+ if (classification.kind === "data_mutation" &&
456
+ isManagedAppDatabaseWrite(services, integrationId)) {
457
+ logManagedWriteAutoAllow(services, integrationId);
458
+ }
431
459
  return await executeIntegrationRequest(request);
432
460
  }
433
461
  case "graphql": {
@@ -485,13 +513,15 @@ export const executeRequestToIntegrationToolFactory = createToolFactory("execute
485
513
  }
486
514
  }
487
515
  },
488
- getRequiredPermissions: (args) => {
489
- const permissionType = classifyPermissionType(args);
516
+ getRequiredPermissions: async (args) => {
517
+ const classification = args.params.type === "sql"
518
+ ? await classifySqlStatement(args.params.query, sqlPluginIdFor(services, args.integrationId))
519
+ : undefined;
490
520
  return [
491
521
  {
492
522
  entityType: AiEntityType.INTEGRATION,
493
523
  entityId: args.integrationId,
494
- permissionType,
524
+ permissionType: classifyPermissionType(args, sqlMutationNeedsApproval(services, args, classification)),
495
525
  },
496
526
  ];
497
527
  },
@@ -501,7 +531,22 @@ export const executeRequestToIntegrationToolFactory = createToolFactory("execute
501
531
  // operation-neutral verb in the approval dialog so users aren't
502
532
  // told they're "Querying" an integration right before an update
503
533
  // or delete is executed.
504
- if (input && classifyPermissionType(input) === AiPermissionType.WRITE) {
534
+ // Cosmetic only, so a cache miss on the SQL classification just means
535
+ // the neutral "Query" label rather than a wrong decision.
536
+ const sqlClassification = input?.params.type === "sql"
537
+ ? peekSqlClassification(input.params.query, sqlPluginIdFor(services, input.integrationId))
538
+ : undefined;
539
+ // Whether the statement mutates, which is not the same question as
540
+ // whether it needed approval. Managed app databases write without a
541
+ // prompt, and reporting that as "Querying" describes the opposite of
542
+ // what just happened.
543
+ const sqlMutates = sqlClassification?.kind === "data_mutation";
544
+ const sqlNeedsApproval = input !== undefined &&
545
+ sqlMutationNeedsApproval(services, input, sqlClassification);
546
+ if (input &&
547
+ (sqlMutates ||
548
+ classifyPermissionType(input, sqlNeedsApproval) ===
549
+ AiPermissionType.WRITE)) {
505
550
  return {
506
551
  future: "Execute",
507
552
  present: "Executing",
@@ -624,7 +669,10 @@ export const executeRequestToIntegrationToolFactory = createToolFactory("execute
624
669
  }
625
670
  }
626
671
  },
627
- readOnly: true,
672
+ // SQL data mutations can run through this tool. Reads still reach Plan
673
+ // mode via the ToolCategory.DATA allowance in access-control.ts, and
674
+ // checkExecuteRequestPermissions blocks mutations there.
675
+ readOnly: false,
628
676
  // This tool handles its own response truncation (via truncateToTokens in internal.ts),
629
677
  // so skip the generic outputLimiter middleware to avoid double-truncation and preserve
630
678
  // the structured { data, isPartial } output format.
@@ -884,24 +932,189 @@ function classifyGraphQLOperation(query) {
884
932
  return AiPermissionType.WRITE;
885
933
  }
886
934
  }
935
+ /**
936
+ * Explains why a classified query may not run, or undefined when it may.
937
+ *
938
+ * Data mutations are absent on purpose: whether one is allowed is decided by
939
+ * `checkExecuteRequestPermissions` and the registry's WRITE escalation before
940
+ * execute() is reached.
941
+ */
942
+ function describeRejection(kind) {
943
+ switch (kind) {
944
+ case "data_mutation":
945
+ case "read":
946
+ return undefined;
947
+ case "schema_or_session":
948
+ return ("Only reads and row-level writes are allowed here. This query changes schema " +
949
+ "or session state (CREATE, ALTER, DROP, TRUNCATE, GRANT, SET). Apply schema " +
950
+ "changes to a managed app database with startApplyDevDatabaseMigrations.");
951
+ case "unsupported_dialect":
952
+ return ("Writes are not yet supported for this integration type, so only read-only " +
953
+ "queries can run against it.");
954
+ case "unknown":
955
+ return ("This query could not be parsed, so it cannot be checked for writes. " +
956
+ "Rewrite it as a single valid statement.");
957
+ }
958
+ }
959
+ function createSqlPolicyError(message, input) {
960
+ return new ToolExecutionError(message, {
961
+ toolName: "executeRequestToIntegration",
962
+ input,
963
+ context: {},
964
+ severity: "info",
965
+ });
966
+ }
967
+ /**
968
+ * A direct mutation with RETURNING produces an unbounded result set and cannot
969
+ * accept a LIMIT clause. Keep this predicate shared by permission prompting and
970
+ * execution so Clark is never asked to approve a query that cannot run.
971
+ */
972
+ function isUnboundedReturningMutation(classification) {
973
+ return (classification.kind === "data_mutation" &&
974
+ classification.returnsRows &&
975
+ !classification.supportsRowLimit);
976
+ }
977
+ /**
978
+ * Whether this SQL mutation targets a managed app database that Clark may
979
+ * write to without asking. Managed app databases hold Clark-owned sandbox
980
+ * data, so writes there need no confirmation.
981
+ *
982
+ * Gated on the `managedNativeDbEnabled` kill switch, matching `testApi`.
983
+ */
984
+ function isManagedAppDatabaseWrite(services, integrationId) {
985
+ if (services.features?.managedNativeDbEnabled !== true) {
986
+ return false;
987
+ }
988
+ const header = services.integrationStore?.getHeader(integrationId);
989
+ return header != null && isManagedAppDatabaseIntegration(header);
990
+ }
991
+ function logManagedWriteAutoAllow(services, integrationId) {
992
+ const header = services.integrationStore?.getHeader(integrationId);
993
+ const logger = getLogger();
994
+ const message = "[executeRequestToIntegration] Auto-allowing SQL write against a managed app database";
995
+ const attributes = {
996
+ "clark.execute_request.permission_decision": "allow_managed_app_database",
997
+ // Bounded, low-cardinality: which signal identified the integration.
998
+ "clark.execute_request.allow_signal": header?.managedBy === DATABASE_LIFECYCLE_MANAGED_BY
999
+ ? "managed_by"
1000
+ : "lifecycle_state",
1001
+ // This log records the unprompted dispatch decision. Without the target,
1002
+ // an investigator looking at an org with several managed databases cannot
1003
+ // tell which one Clark attempted to write to.
1004
+ "integration.id": integrationId,
1005
+ };
1006
+ if (logger.infoStructured) {
1007
+ logger.infoStructured(message, attributes);
1008
+ }
1009
+ else {
1010
+ logger.info(message, attributes);
1011
+ }
1012
+ }
1013
+ function sqlPluginIdFor(services, integrationId) {
1014
+ return services.integrationStore?.getHeader(integrationId)?.plugin.id;
1015
+ }
1016
+ function resolveIntegrationParamsType(services, integrationId) {
1017
+ const pluginId = sqlPluginIdFor(services, integrationId);
1018
+ if (pluginId === undefined) {
1019
+ return { resolved: false };
1020
+ }
1021
+ if (pluginId === SalesforcePlugin.id) {
1022
+ return { resolved: true, expected: "salesforce" };
1023
+ }
1024
+ if (pluginId === CosmosDbPlugin.id) {
1025
+ return { resolved: true, expected: "cosmosdb" };
1026
+ }
1027
+ if (pluginId === DatabricksPlugin.id) {
1028
+ return { resolved: true, expected: "sql" };
1029
+ }
1030
+ const plugin = services.integrationStore?.getPlugin(pluginId);
1031
+ if (plugin === undefined) {
1032
+ return { resolved: false };
1033
+ }
1034
+ if (extractSqlQueryFieldPathFromTemplate(plugin.actionTemplate) !== undefined) {
1035
+ return { resolved: true, expected: "sql" };
1036
+ }
1037
+ return { resolved: true };
1038
+ }
1039
+ /**
1040
+ * The params discriminator is model-authored and cannot be trusted to identify
1041
+ * the integration protocol. A mismatched discriminator can bypass the
1042
+ * protocol-specific policy or build a payload for the wrong plugin.
1043
+ */
1044
+ function assertSqlParamsTypeMatchesIntegration(services, input) {
1045
+ const resolution = resolveIntegrationParamsType(services, input.integrationId);
1046
+ if (!resolution.resolved) {
1047
+ if (input.params.type === "other") {
1048
+ throw createSqlPolicyError('Cannot verify the integration type, so params.type "other" is not safe to dispatch. Wait for integration metadata and retry with the dedicated params.type.', input);
1049
+ }
1050
+ return;
1051
+ }
1052
+ if (resolution.expected !== undefined &&
1053
+ input.params.type !== resolution.expected) {
1054
+ throw createSqlPolicyError(`This integration requires params.type "${resolution.expected}" so its request policy and payload shape can be enforced.`, input);
1055
+ }
1056
+ }
1057
+ /**
1058
+ * Whether a SQL query must be approved by the user before it runs: it mutates
1059
+ * rows, and it is not headed for a managed app database that Clark may write
1060
+ * to on its own.
1061
+ */
1062
+ function sqlMutationNeedsApproval(services, args, classification) {
1063
+ return (args.params.type === "sql" &&
1064
+ classification?.kind === "data_mutation" &&
1065
+ !isUnboundedReturningMutation(classification) &&
1066
+ !isManagedAppDatabaseWrite(services, args.integrationId));
1067
+ }
1068
+ /**
1069
+ * Per-input access rule for `executeRequestToIntegration`.
1070
+ *
1071
+ * Returns BLOCK for a data mutation in Plan mode, which the DATA-category
1072
+ * allowance in access-control.ts would otherwise let through. Everything else
1073
+ * returns ALLOW, which the registry treats as "no objection" — it never
1074
+ * downgrades a PROMPT another rule asked for, and the registry still escalates
1075
+ * to a prompt whenever `getRequiredPermissions` reports a WRITE. That is what
1076
+ * separates a managed auto-allow (reported as READ, so it runs) from an
1077
+ * ordinary write (reported as WRITE, so it prompts).
1078
+ */
1079
+ export async function checkExecuteRequestPermissions(services, context, input) {
1080
+ if (input === undefined || input.params.type !== "sql") {
1081
+ return PermissionLevel.ALLOW;
1082
+ }
1083
+ const classification = await classifySqlStatement(input.params.query, sqlPluginIdFor(services, input.integrationId));
1084
+ // Unknown results are deliberately not cached so a transient parser outage
1085
+ // can recover. Stop this attempt here: allowing it to continue would let a
1086
+ // later reclassification change READ to WRITE after the access decision.
1087
+ if (classification.kind === "unknown") {
1088
+ return PermissionLevel.BLOCK;
1089
+ }
1090
+ if (classification.kind !== "data_mutation") {
1091
+ return PermissionLevel.ALLOW;
1092
+ }
1093
+ // Plan mode stays read-only even when the plan itself is approved.
1094
+ if (context.mode === AiMode.PLAN) {
1095
+ return PermissionLevel.BLOCK;
1096
+ }
1097
+ return PermissionLevel.ALLOW;
1098
+ }
887
1099
  /**
888
1100
  * Classifies permission type using a hybrid approach:
889
1101
  * 1. Deterministic floor (free): GET→READ, DELETE/PUT/PATCH→WRITE,
890
- * SQL/Salesforce→READ, GraphQL structural check,
1102
+ * SQL data mutations→WRITE, Salesforce→READ, GraphQL structural check,
891
1103
  * S3/DynamoDB/GCS/CosmosDB/MongoDB→READ.
892
1104
  * 2. Clark's declared `operation` for the remaining ambiguous cases:
893
1105
  * REST POST, and the "other" plugin type.
894
1106
  *
895
- * Note on SQL/Salesforce: classification relies on the DML keyword check in
896
- * `execute()` (search for `dmlKeywords`) to actually block writes. If that
897
- * enforcement is ever relaxed to allow SQL writes, this function must be
898
- * updated in lockstep — otherwise writes will silently bypass user approval.
1107
+ * SQL is classified from the parsed statement, and must stay in lockstep with
1108
+ * what `execute()` will actually let run a mutation reported as READ here
1109
+ * would execute with no approval at all.
899
1110
  */
900
- function classifyPermissionType(args) {
1111
+ function classifyPermissionType(args, sqlNeedsApproval = false) {
901
1112
  const { params, operation } = args;
902
- // Deterministic floor: SQL/Salesforce always READ (DML keyword check in
903
- // execute() see comment above — blocks writes at request time).
904
- if (params.type === "sql" || params.type === "salesforce") {
1113
+ if (params.type === "sql") {
1114
+ return sqlNeedsApproval ? AiPermissionType.WRITE : AiPermissionType.READ;
1115
+ }
1116
+ // Salesforce SOQL mutations are rejected outright, so nothing to approve.
1117
+ if (params.type === "salesforce") {
905
1118
  return AiPermissionType.READ;
906
1119
  }
907
1120
  if (params.type === "graphql") {
@@ -1 +1 @@
1
- {"version":3,"file":"execute-request.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/execute-request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute-request.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/execute-request.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export { deleteIntegrationToolFactory } from "./delete-integration.js";
2
- export { executeRequestToIntegrationToolFactory } from "./execute-request.js";
2
+ export { checkExecuteRequestPermissions, executeRequestToIntegrationToolFactory, } from "./execute-request.js";
3
3
  export { openIntegrationSetupToolFactory, openExistingIntegrationToolFactory, updateIntegrationFieldsToolFactory, testIntegrationConnectionToolFactory, saveIntegrationToolFactory, closeIntegrationSetupToolFactory, getIntegrationFormSchemaToolFactory, listAvailableIntegrationTypesToolFactory, } from "./integration-setup.js";
4
4
  export { searchIntegrationsToolFactory } from "./metadata.js";
5
5
  export { runCodeToolFactory } from "./run-code.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,sCAAsC,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EACL,+BAA+B,EAC/B,kCAAkC,EAClC,kCAAkC,EAClC,oCAAoC,EACpC,0BAA0B,EAC1B,gCAAgC,EAChC,mCAAmC,EACnC,wCAAwC,GACzC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EACL,8BAA8B,EAC9B,sCAAsC,GACvC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,+BAA+B,EAC/B,kCAAkC,EAClC,kCAAkC,EAClC,oCAAoC,EACpC,0BAA0B,EAC1B,gCAAgC,EAChC,mCAAmC,EACnC,wCAAwC,GACzC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
@@ -1,5 +1,5 @@
1
1
  export { deleteIntegrationToolFactory } from "./delete-integration.js";
2
- export { executeRequestToIntegrationToolFactory } from "./execute-request.js";
2
+ export { checkExecuteRequestPermissions, executeRequestToIntegrationToolFactory, } from "./execute-request.js";
3
3
  export { openIntegrationSetupToolFactory, openExistingIntegrationToolFactory, updateIntegrationFieldsToolFactory, testIntegrationConnectionToolFactory, saveIntegrationToolFactory, closeIntegrationSetupToolFactory, getIntegrationFormSchemaToolFactory, listAvailableIntegrationTypesToolFactory, } from "./integration-setup.js";
4
4
  export { searchIntegrationsToolFactory } from "./metadata.js";
5
5
  export { runCodeToolFactory } from "./run-code.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,sCAAsC,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EACL,+BAA+B,EAC/B,kCAAkC,EAClC,kCAAkC,EAClC,oCAAoC,EACpC,0BAA0B,EAC1B,gCAAgC,EAChC,mCAAmC,EACnC,wCAAwC,GACzC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EACL,8BAA8B,EAC9B,sCAAsC,GACvC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,+BAA+B,EAC/B,kCAAkC,EAClC,kCAAkC,EAClC,oCAAoC,EACpC,0BAA0B,EAC1B,gCAAgC,EAChC,mCAAmC,EACnC,wCAAwC,GACzC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,16 @@
1
+ /** Typed as strings so callers can test a raw `lifecycleState` against it. */
2
+ export declare const MANAGED_APP_DB_LIFECYCLE_STATES: ReadonlySet<string>;
3
+ /**
4
+ * App-scoped managed Native DB integrations are identified by
5
+ * `managedBy === database_lifecycle`. During provisioning the store may only
6
+ * have a known lifecycleState yet (primed before the browser refetch lands
7
+ * managedBy) — trust that allowlisted prime-path signal too.
8
+ *
9
+ * Shared by `testApi` and `executeRequestToIntegration` so their write
10
+ * auto-allow paths cannot drift apart.
11
+ */
12
+ export declare function isManagedAppDatabaseIntegration(header: {
13
+ managedBy?: string | null;
14
+ lifecycleState?: string;
15
+ }): boolean;
16
+ //# sourceMappingURL=managed-app-database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managed-app-database.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/managed-app-database.ts"],"names":[],"mappings":"AAiBA,8EAA8E;AAC9E,eAAO,MAAM,+BAA+B,EAAE,WAAW,CAAC,MAAM,CAE/D,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAAC,MAAM,EAAE;IACtD,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,OAAO,CAQV"}
@@ -0,0 +1,31 @@
1
+ import { DATABASE_LIFECYCLE_MANAGED_BY, } from "@superblocksteam/shared";
2
+ /**
3
+ * Lifecycle states that the Native DB prime path sets on IntegrationStore
4
+ * before `managedBy` is refetched. `failed` / `cancelled` are intentionally
5
+ * excluded — those are not a sandbox DB we should auto-allow writes against.
6
+ */
7
+ const MANAGED_APP_DB_LIFECYCLE_STATE_LIST = [
8
+ "migrating",
9
+ "pending",
10
+ "provisioning",
11
+ "ready",
12
+ ];
13
+ /** Typed as strings so callers can test a raw `lifecycleState` against it. */
14
+ export const MANAGED_APP_DB_LIFECYCLE_STATES = new Set(MANAGED_APP_DB_LIFECYCLE_STATE_LIST);
15
+ /**
16
+ * App-scoped managed Native DB integrations are identified by
17
+ * `managedBy === database_lifecycle`. During provisioning the store may only
18
+ * have a known lifecycleState yet (primed before the browser refetch lands
19
+ * managedBy) — trust that allowlisted prime-path signal too.
20
+ *
21
+ * Shared by `testApi` and `executeRequestToIntegration` so their write
22
+ * auto-allow paths cannot drift apart.
23
+ */
24
+ export function isManagedAppDatabaseIntegration(header) {
25
+ if (header.managedBy === DATABASE_LIFECYCLE_MANAGED_BY) {
26
+ return true;
27
+ }
28
+ return (header.lifecycleState !== undefined &&
29
+ MANAGED_APP_DB_LIFECYCLE_STATES.has(header.lifecycleState));
30
+ }
31
+ //# sourceMappingURL=managed-app-database.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managed-app-database.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/managed-app-database.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,GAE9B,MAAM,yBAAyB,CAAC;AAEjC;;;;GAIG;AACH,MAAM,mCAAmC,GAA8B;IACrE,WAAW;IACX,SAAS;IACT,cAAc;IACd,OAAO;CACR,CAAC;AAEF,8EAA8E;AAC9E,MAAM,CAAC,MAAM,+BAA+B,GAAwB,IAAI,GAAG,CACzE,mCAAmC,CACpC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,UAAU,+BAA+B,CAAC,MAG/C;IACC,IAAI,MAAM,CAAC,SAAS,KAAK,6BAA6B,EAAE,CAAC;QACvD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CACL,MAAM,CAAC,cAAc,KAAK,SAAS;QACnC,+BAA+B,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,CAC3D,CAAC;AACJ,CAAC"}