@superblocksteam/vite-plugin-file-sync 2.0.149 → 2.0.150-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/dist/ai-service/agent/prompts/api-prompts.js +1 -1
  2. package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
  3. package/dist/ai-service/agent/prompts/build-base-system-prompt.js +38 -10
  4. package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
  5. package/dist/ai-service/agent/prompts/build-security-scan-prompt.d.ts.map +1 -1
  6. package/dist/ai-service/agent/prompts/build-security-scan-prompt.js +20 -4
  7. package/dist/ai-service/agent/prompts/build-security-scan-prompt.js.map +1 -1
  8. package/dist/ai-service/agent/subagents/testing/prompt-builder.js +1 -1
  9. package/dist/ai-service/agent/tools/apis/analysis.d.ts +6 -0
  10. package/dist/ai-service/agent/tools/apis/analysis.d.ts.map +1 -1
  11. package/dist/ai-service/agent/tools/apis/analysis.js +130 -26
  12. package/dist/ai-service/agent/tools/apis/analysis.js.map +1 -1
  13. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.js +2 -2
  14. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.js.map +1 -1
  15. package/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
  16. package/dist/ai-service/agent/tools/apis/test-api.js +131 -31
  17. package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
  18. package/dist/ai-service/agent/tools/build-delete-file.d.ts +2 -2
  19. package/dist/ai-service/agent/tools/build-delete-file.js +3 -3
  20. package/dist/ai-service/agent/tools/build-delete-file.js.map +1 -1
  21. package/dist/ai-service/agent/tools/build-install-packages.d.ts +41 -21
  22. package/dist/ai-service/agent/tools/build-install-packages.d.ts.map +1 -1
  23. package/dist/ai-service/agent/tools/build-install-packages.js +299 -20
  24. package/dist/ai-service/agent/tools/build-install-packages.js.map +1 -1
  25. package/dist/ai-service/agent/tools/build-manage-checklist.d.ts.map +1 -1
  26. package/dist/ai-service/agent/tools/build-manage-checklist.js +2 -1
  27. package/dist/ai-service/agent/tools/build-manage-checklist.js.map +1 -1
  28. package/dist/ai-service/agent/tools/databases/dev-database-tasks.d.ts +161 -24
  29. package/dist/ai-service/agent/tools/databases/dev-database-tasks.d.ts.map +1 -1
  30. package/dist/ai-service/agent/tools/databases/dev-database-tasks.js +312 -55
  31. package/dist/ai-service/agent/tools/databases/dev-database-tasks.js.map +1 -1
  32. package/dist/ai-service/agent/tools/get-logs.d.ts +2 -2
  33. package/dist/ai-service/agent/tools/report-security-findings.d.ts +3 -3
  34. package/dist/ai-service/agent/tools.d.ts +10 -11
  35. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  36. package/dist/ai-service/agent/tools.js +38 -19
  37. package/dist/ai-service/agent/tools.js.map +1 -1
  38. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -1
  39. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +9 -8
  40. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
  41. package/dist/ai-service/agent/tools2/tools/grep.js +1 -1
  42. package/dist/ai-service/agent/tools2/tools/index.d.ts.map +1 -1
  43. package/dist/ai-service/agent/tools2/tools/index.js +2 -3
  44. package/dist/ai-service/agent/tools2/tools/index.js.map +1 -1
  45. package/dist/ai-service/app-interface/npm-package-lookup.d.ts +22 -0
  46. package/dist/ai-service/app-interface/npm-package-lookup.d.ts.map +1 -1
  47. package/dist/ai-service/app-interface/npm-package-lookup.js +111 -0
  48. package/dist/ai-service/app-interface/npm-package-lookup.js.map +1 -1
  49. package/dist/ai-service/app-interface/shell.d.ts +71 -3
  50. package/dist/ai-service/app-interface/shell.d.ts.map +1 -1
  51. package/dist/ai-service/app-interface/shell.js +575 -23
  52. package/dist/ai-service/app-interface/shell.js.map +1 -1
  53. package/dist/ai-service/app-interface/vulnerability-gate.d.ts +83 -0
  54. package/dist/ai-service/app-interface/vulnerability-gate.d.ts.map +1 -0
  55. package/dist/ai-service/app-interface/vulnerability-gate.js +543 -0
  56. package/dist/ai-service/app-interface/vulnerability-gate.js.map +1 -0
  57. package/dist/ai-service/dev-database-client.d.ts +14 -4
  58. package/dist/ai-service/dev-database-client.d.ts.map +1 -1
  59. package/dist/ai-service/dev-database-client.js +1 -24
  60. package/dist/ai-service/dev-database-client.js.map +1 -1
  61. package/dist/ai-service/features.d.ts +5 -0
  62. package/dist/ai-service/features.d.ts.map +1 -1
  63. package/dist/ai-service/features.js +5 -0
  64. package/dist/ai-service/features.js.map +1 -1
  65. package/dist/ai-service/index.d.ts +2 -0
  66. package/dist/ai-service/index.d.ts.map +1 -1
  67. package/dist/ai-service/index.js +30 -7
  68. package/dist/ai-service/index.js.map +1 -1
  69. package/dist/ai-service/integrations/store.d.ts +3 -0
  70. package/dist/ai-service/integrations/store.d.ts.map +1 -1
  71. package/dist/ai-service/integrations/store.js +2 -0
  72. package/dist/ai-service/integrations/store.js.map +1 -1
  73. package/dist/ai-service/managed-native-db-availability.d.ts +62 -0
  74. package/dist/ai-service/managed-native-db-availability.d.ts.map +1 -0
  75. package/dist/ai-service/managed-native-db-availability.js +37 -0
  76. package/dist/ai-service/managed-native-db-availability.js.map +1 -0
  77. package/dist/ai-service/security/vulnerability-triage.d.ts +90 -0
  78. package/dist/ai-service/security/vulnerability-triage.d.ts.map +1 -0
  79. package/dist/ai-service/security/vulnerability-triage.js +113 -0
  80. package/dist/ai-service/security/vulnerability-triage.js.map +1 -0
  81. package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts +1 -1
  82. package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts.map +1 -1
  83. package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js +13 -0
  84. package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js.map +1 -1
  85. package/dist/ai-service/state-machine/clark-fsm.d.ts +9 -0
  86. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  87. package/dist/ai-service/state-machine/clark-fsm.js +4 -0
  88. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  89. package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts.map +1 -1
  90. package/dist/ai-service/state-machine/handlers/awaiting-user.js +2 -1
  91. package/dist/ai-service/state-machine/handlers/awaiting-user.js.map +1 -1
  92. package/dist/ai-service/state-machine/helpers/prompt-request-metrics.d.ts +11 -0
  93. package/dist/ai-service/state-machine/helpers/prompt-request-metrics.d.ts.map +1 -1
  94. package/dist/ai-service/state-machine/helpers/prompt-request-metrics.js +51 -4
  95. package/dist/ai-service/state-machine/helpers/prompt-request-metrics.js.map +1 -1
  96. package/dist/ai-service/tasks/factory.d.ts +2 -0
  97. package/dist/ai-service/tasks/factory.d.ts.map +1 -1
  98. package/dist/ai-service/tasks/factory.js +7 -0
  99. package/dist/ai-service/tasks/factory.js.map +1 -1
  100. package/dist/ai-service/types.d.ts +57 -3
  101. package/dist/ai-service/types.d.ts.map +1 -1
  102. package/dist/ai-service/types.js +20 -0
  103. package/dist/ai-service/types.js.map +1 -1
  104. package/dist/migration/restructure.js +1 -1
  105. package/dist/migration-templates/app-fullstack/client/pages/{Page1 → Home}/index.tsx +1 -1
  106. package/dist/migration-templates/app-fullstack/client/router.tsx +1 -1
  107. package/dist/migration-templates/app-fullstack/package.json +2 -2
  108. package/dist/npm/apply-package-json-substitutions.d.ts +19 -0
  109. package/dist/npm/apply-package-json-substitutions.d.ts.map +1 -0
  110. package/dist/npm/apply-package-json-substitutions.js +108 -0
  111. package/dist/npm/apply-package-json-substitutions.js.map +1 -0
  112. package/dist/policy-gate-callback-mapper.d.ts +1 -1
  113. package/dist/policy-gate-callback-mapper.d.ts.map +1 -1
  114. package/dist/policy-gate-callback-mapper.js.map +1 -1
  115. package/package.json +8 -8
@@ -1,8 +1,10 @@
1
1
  import { z } from "zod";
2
+ import { DATABASE_LIFECYCLE_MANAGED_BY } from "@superblocksteam/shared";
2
3
  import { getLogger } from "../../../../util/logger.js";
3
4
  import { DevDatabaseClientError } from "../../../dev-database-client.js";
4
5
  import { scrubSecrets, stripUnsafeChars } from "../../../types.js";
5
6
  import { PermissionLevel, ToolCategory } from "../../tools2/types.js";
7
+ export {};
6
8
  // Master parity: the only user-controlled requirement fields are
7
9
  // `logicalName` and (optionally) `migrationDirectory`. Engine, extensions,
8
10
  // sizing, replicaCount, version, and the dev environment name are
@@ -28,23 +30,55 @@ const provisionHandleSchema = z.object({
28
30
  integrationId: z.string().optional(),
29
31
  lifecycleState: z.string().optional(),
30
32
  logicalName: z.string().optional(),
33
+ // Datatag (Profile.key) this task is tracking. Set when ensure fans out.
34
+ profile: z.string().min(1).optional(),
31
35
  // Correlates to the server-side lifecycle_request row for oncall/debug
32
36
  // (mirrors ApplyMigrationsHandle). Persisted on the task handle so
33
37
  // classified failures still carry a durable request id even when the
34
38
  // user-facing error string omits it.
35
39
  requestId: z.string().min(1).optional(),
36
40
  requirement: databaseRequirementSchema,
41
+ // Watch tasks this fan-out started for the other datatags. Clark waits on
42
+ // the primary task only, so the primary reports success only once these are
43
+ // done — the migrate step that follows skips datatags that are not ready.
44
+ siblingTaskIds: z.array(z.string().min(1)).optional(),
45
+ // Total editor datatags this ensure covered (including this task). Used
46
+ // by the kickoff tool title to show "N tags".
47
+ tagCount: z.number().int().positive().optional(),
48
+ // Sibling watches set this so poll uses migrationState (not lifecycleState)
49
+ // after ensure already left the binding ready.
50
+ watchKind: z.enum(["provision", "migration"]).optional(),
37
51
  });
38
- const applyMigrationsInputSchema = z.object({
39
- bindingKey: z
40
- .string()
41
- .min(1)
42
- .optional()
43
- .describe("The bindingKey returned by provisionDatabase/checkTask. Required when an environment has more than one ready dev database."),
52
+ /** Poll-only sibling for a fanned-out ensure/migrate target (no second kickoff). */
53
+ const watchProvisionInputSchema = z.object({
54
+ bindingKey: z.string().min(1),
55
+ logicalName: z.string().min(1),
56
+ profile: z.string().min(1),
57
+ requestId: z.string().min(1).optional(),
58
+ initialFailed: z.boolean().optional(),
59
+ initialError: z.string().optional(),
60
+ // provision: complete when lifecycleState is terminal.
61
+ // migration: complete when migrationState is migrated/failed (binding may
62
+ // already be ready from ensure).
63
+ watchKind: z.enum(["provision", "migration"]).optional(),
44
64
  });
65
+ export const watchDevDatabaseProvisionTaskMetadata = {
66
+ category: ToolCategory.DATA,
67
+ defaultPermission: PermissionLevel.ALLOW,
68
+ description: "Internal: poll lifecycle progress for one fanned-out datatag binding. Not for direct LLM use.",
69
+ externalHandleSchema: provisionHandleSchema,
70
+ inputSchema: watchProvisionInputSchema,
71
+ name: "watchDevDatabaseProvision",
72
+ pollSchedule: { factor: 1.5, initialMs: 2_000, maxMs: 30_000 },
73
+ };
74
+ // Empty LLM input: Clark must not pin migrate to a provision-primary
75
+ // bindingKey. The server fans out migrate_schema across every eligible
76
+ // editor Environments datatag (ENG-3469).
77
+ const applyMigrationsInputSchema = z.object({});
45
78
  const applyMigrationsHandleSchema = z.object({
46
79
  bindingKey: z.string().min(1).optional(),
47
80
  requestId: z.string().min(1),
81
+ siblingTaskIds: z.array(z.string().min(1)).optional(),
48
82
  });
49
83
  /**
50
84
  * Module-scoped metadata for the provision-dev-database background task.
@@ -67,9 +101,9 @@ export const provisionDevDatabaseTaskMetadata = {
67
101
  // dev environment name are platform-controlled, so they're not in the
68
102
  // input. BG wrapping (taskId, don't waitForTask, check first) is the
69
103
  // only behavioral delta from master.
70
- description: "Create or reuse a lifecycle-managed dev database binding for this application on Amazon RDS as a BACKGROUND TASK. Clark provisions the database and returns lifecycle progress. Returns a taskId IMMEDIATELY while RDS provisioning runs in the background; the user already sees live progress in the chat's background-tasks indicator. " +
104
+ description: "Create or reuse a dev App Database binding for this application on Amazon RDS as a BACKGROUND TASK. Clark provisions the database and returns lifecycle progress. Returns a taskId IMMEDIATELY while RDS provisioning runs in the background; the user already sees live progress in the chat's background-tasks indicator. " +
71
105
  "DO NOT call waitForTask right after this — that defeats the whole point of a background task and blocks your turn for minutes while RDS spins up. Instead: keep working on whatever does NOT depend on the database (scaffold the UI, draft API code that will use the binding, write SQL migration files, plan next steps). When you reach a step that genuinely cannot proceed without the connection details, FIRST call checkTask({ taskId }) — it returns instantly. Only fall back to waitForTask if checkTask still reports state='running' AND you literally have no other useful work to do. " +
72
- 'On completion the result includes bindingKey, integrationId, lifecycleState, connectionMetadata, and credentialRefs. Use integrationId only for tool inputs or generated source code such as postgres(...); do not repeat internal UUIDs in user-facing chat. When declaring the integration in an SDK API, derive a valid lowercase snake_case integrations map key from requirement.logicalName (normalize non-alphanumeric to _, prefix db_ if needed, disambiguate collisions; e.g. pokemon_tracker → pokemon_tracker: postgres(POKEMON_TRACKER), Orders DB → orders_db) so code and TraceView match the database name — never a generic key like db. This task ONLY creates the database server + an integration; it does NOT apply SQL migrations — query attempts will fail with `relation "X" does not exist` until you call startApplyDevDatabaseMigrations. Cancellation only stops local polling; the underlying RDS provisioning continues on the server.',
106
+ 'On completion the result includes bindingKey, integrationId, lifecycleState, and connectionMetadata. App Database bindings use IAM authentication. Use integrationId only for tool inputs or generated source code such as postgres(...); do not repeat internal UUIDs in user-facing chat. When declaring the integration in an SDK API, derive a valid lowercase snake_case integrations map key from requirement.logicalName (normalize non-alphanumeric to _, prefix db_ if needed, disambiguate collisions; e.g. pokemon_tracker → pokemon_tracker: postgres(POKEMON_TRACKER), Orders DB → orders_db) so code and TraceView match the database name — never a generic key like db. This task ONLY creates the database server + an integration; it does NOT apply SQL migrations — query attempts will fail with `relation "X" does not exist` until you call startApplyDevDatabaseMigrations. Cancellation only stops local polling; the underlying RDS provisioning continues on the server.',
73
107
  externalHandleSchema: provisionHandleSchema,
74
108
  inputSchema: provisionInputSchema,
75
109
  name: "provisionDatabase",
@@ -92,9 +126,9 @@ export const applyDevDatabaseMigrationsTaskMetadata = {
92
126
  // automatically, which is a lie when provisionDatabase didn't set
93
127
  // one). BG wrapping (taskId, don't waitForTask, check first) is the
94
128
  // only behavioral delta from master.
95
- description: "Run the application's working-state SQL migrations against an existing Amazon RDS dev database binding as a BACKGROUND TASK. Returns a taskId IMMEDIATELY; the user already sees live progress in the chat's background-tasks indicator. " +
129
+ description: "Run the application's working-state SQL migrations against every eligible editor datatag binding for this application's Amazon RDS databases as a BACKGROUND TASK. Returns a taskId IMMEDIATELY; the user already sees live progress in the chat's background-tasks indicator. " +
96
130
  "DO NOT call waitForTask right after this — that defeats the whole point of a background task and blocks your turn while migrations run. Instead: keep working on anything that does not need migrations to have landed yet (UI scaffolding, additional API code, the next migration file). When you reach a step that genuinely needs migrationState='migrated' (for example, executing a SELECT against the new tables), FIRST call checkTask({ taskId }) — it returns instantly. Only fall back to waitForTask if checkTask still reports state='running' AND there is nothing else useful to do. " +
97
- "REQUIRED after provisionDatabase if any application tables need to exist — provisioning only creates an empty RDS database. Reads SQL files from the binding's migrationDirectory set on provisionDatabase and applies any not yet recorded in the in-DB migration ledger; if provisionDatabase did not set a migrationDirectory, no SQL files are loaded. Seed/INSERT rows belong in migrations only when deployed apps will always need that data; for edit-only test/demo data insert at runtime against the integration instead of a .sql seed file. Re-firing is safe; already-applied versions are skipped. The terminal result includes migrationState='migrated' on success.",
131
+ "REQUIRED after provisionDatabase if any application tables need to exist — provisioning only creates an empty RDS database. Reads SQL files from each binding's migrationDirectory set on provisionDatabase and applies any not yet recorded in the in-DB migration ledger; if provisionDatabase did not set a migrationDirectory, no SQL files are loaded. Seed/INSERT rows belong in migrations only when deployed apps will always need that data; for edit-only test/demo data insert at runtime against the integration instead of a .sql seed file. Re-firing is safe; already-applied versions are skipped. The terminal result includes migrationState='migrated' on success.",
98
132
  externalHandleSchema: applyMigrationsHandleSchema,
99
133
  inputSchema: applyMigrationsInputSchema,
100
134
  name: "startApplyDevDatabaseMigrations",
@@ -221,10 +255,31 @@ fallbackRequestId) {
221
255
  userDefault;
222
256
  return { error, detail };
223
257
  }
258
+ /** A completed task hands its whole result to the LLM, so per-datatag error text
259
+ * needs the same scrubbing a top-level failure gets. Partial success is the
260
+ * common case here: the task completes while some datatags carry provider
261
+ * errors. */
262
+ function withSanitizedTargets(response) {
263
+ if (!response.targets || response.targets.length === 0) {
264
+ return response;
265
+ }
266
+ return {
267
+ ...response,
268
+ targets: response.targets.map((target) => ({
269
+ ...target,
270
+ ...(target.errorCode
271
+ ? { errorCode: sanitizeLifecycleFailureField(target.errorCode) }
272
+ : {}),
273
+ ...(target.errorMessage
274
+ ? { errorMessage: sanitizeLifecycleFailureField(target.errorMessage) }
275
+ : {}),
276
+ })),
277
+ };
278
+ }
224
279
  function lifecycleStatusFor(response, fallbackRequestId) {
225
280
  switch (response.lifecycleState) {
226
281
  case "ready":
227
- return { state: "completed", result: response };
282
+ return { state: "completed", result: withSanitizedTargets(response) };
228
283
  case "failed": {
229
284
  const { error, detail } = formatLifecycleTaskFailure("dev database provisioning", response, fallbackRequestId);
230
285
  return { state: "failed", error, detail };
@@ -239,7 +294,7 @@ function lifecycleStatusFor(response, fallbackRequestId) {
239
294
  function migrationStatusFor(response, fallbackRequestId) {
240
295
  switch (response.migrationState) {
241
296
  case "migrated":
242
- return { state: "completed", result: response };
297
+ return { state: "completed", result: withSanitizedTargets(response) };
243
298
  case "failed": {
244
299
  const { error, detail } = formatLifecycleTaskFailure("applying migrations", response, fallbackRequestId);
245
300
  return { state: "failed", error, detail };
@@ -252,6 +307,30 @@ function migrationStatusFor(response, fallbackRequestId) {
252
307
  function isPreconditionFailure(response) {
253
308
  return ("ok" in response && response.ok === false && !("bindingKey" in response));
254
309
  }
310
+ const DEFAULT_MIGRATION_TASK_LABEL = "the database schema update";
311
+ const MAX_MIGRATION_FILENAMES_IN_TASK_LABEL = 3;
312
+ function migrationTaskLabel(response) {
313
+ if (response.migrationState === "failed") {
314
+ return DEFAULT_MIGRATION_TASK_LABEL;
315
+ }
316
+ const migrations = response.dispatchPayload?.migrations;
317
+ if (migrations === undefined) {
318
+ return response.migrationState === "migrated"
319
+ ? "Database migrations already up to date"
320
+ : DEFAULT_MIGRATION_TASK_LABEL;
321
+ }
322
+ if (migrations.length === 0) {
323
+ return "No database migration files to apply";
324
+ }
325
+ const filenames = migrations
326
+ .slice(0, MAX_MIGRATION_FILENAMES_IN_TASK_LABEL)
327
+ .map(({ filename }) => sanitizeLifecycleFailureField(filename));
328
+ if (filenames.some((filename) => filename.length === 0)) {
329
+ return DEFAULT_MIGRATION_TASK_LABEL;
330
+ }
331
+ const remaining = Math.max(0, migrations.length - MAX_MIGRATION_FILENAMES_IN_TASK_LABEL);
332
+ return `Database migrations: ${filenames.join(", ")}${remaining > 0 ? ` (+${remaining} more)` : ""}`;
333
+ }
255
334
  function updateProvisionHandleFromResponse(handle, response) {
256
335
  handle.engine = response.engine;
257
336
  handle.integrationId = response.integrationId;
@@ -268,17 +347,163 @@ function updateProvisionHandleFromResponse(handle, response) {
268
347
  *
269
348
  * Called once per AiService when the TaskStore is constructed.
270
349
  */
350
+ function provisionLabel(logicalName, profile) {
351
+ return profile
352
+ ? `a new database (${logicalName} · ${profile})`
353
+ : `a new database (${logicalName})`;
354
+ }
355
+ function fanOutTargetsFromResponse(response) {
356
+ if (response.targets && response.targets.length > 0) {
357
+ return response.targets;
358
+ }
359
+ return [
360
+ {
361
+ bindingKey: response.bindingKey,
362
+ lifecycleState: response.lifecycleState,
363
+ migrationState: response.migrationState,
364
+ ok: response.lifecycleState !== "failed" && !response.errorCode,
365
+ profile: "default",
366
+ requestId: response.requestId,
367
+ },
368
+ ];
369
+ }
370
+ async function spawnSiblingWatchTasks(deps, { logicalName, primaryBindingKey, targets, toolOpts, watchKind = "provision", }) {
371
+ const taskStore = deps.getTaskStore?.();
372
+ if (!taskStore) {
373
+ return [];
374
+ }
375
+ const startedTaskIds = [];
376
+ const ownerUserId = deps.getCurrentOwnerId?.();
377
+ const siblings = targets.filter((target) => target.bindingKey !== primaryBindingKey);
378
+ for (const target of siblings) {
379
+ try {
380
+ const rawInitialError = !target.ok
381
+ ? (target.errorMessage ??
382
+ target.errorCode ??
383
+ (watchKind === "migration"
384
+ ? "datatag migration failed"
385
+ : "datatag provision failed"))
386
+ : undefined;
387
+ const started = await taskStore.start(watchDevDatabaseProvisionTaskMetadata.name, {
388
+ bindingKey: target.bindingKey,
389
+ logicalName,
390
+ profile: target.profile,
391
+ watchKind,
392
+ ...(target.requestId ? { requestId: target.requestId } : {}),
393
+ ...(rawInitialError
394
+ ? {
395
+ initialFailed: true,
396
+ initialError: sanitizeLifecycleFailureField(rawInitialError),
397
+ }
398
+ : {}),
399
+ }, toolOpts, ownerUserId !== undefined ? { ownerUserId } : undefined);
400
+ startedTaskIds.push(started.taskId);
401
+ }
402
+ catch (error) {
403
+ getLogger().warn({ err: error, profile: target.profile }, "[devDatabase] failed to start sibling watch task for fanned-out datatag");
404
+ // Do not let the primary task report completion without this datatag in
405
+ // siblingTaskIds. That would make Clark proceed to migrations while the
406
+ // unobserved binding may still be provisioning.
407
+ throw error;
408
+ }
409
+ }
410
+ return startedTaskIds;
411
+ }
412
+ function stillWorkingSiblingCount(deps, siblingTaskIds) {
413
+ if (!siblingTaskIds || siblingTaskIds.length === 0) {
414
+ return 0;
415
+ }
416
+ const taskStore = deps.getTaskStore?.();
417
+ if (!taskStore) {
418
+ return 0;
419
+ }
420
+ return siblingTaskIds.filter((taskId) => taskStore.get(taskId)?.state === "running").length;
421
+ }
422
+ /** Clark waits on the kickoff task only. Reporting success there while another
423
+ * datatag is still working lets the migrate step that follows run against a
424
+ * datatag that is not ready yet, which silently skips it. */
425
+ function heldForSiblings(deps, status, siblingTaskIds) {
426
+ if (status.state !== "completed") {
427
+ return status;
428
+ }
429
+ const working = stillWorkingSiblingCount(deps, siblingTaskIds);
430
+ if (working === 0) {
431
+ return status;
432
+ }
433
+ return {
434
+ state: "running",
435
+ message: `waiting for ${working} more ${working === 1 ? "datatag" : "datatags"}`,
436
+ };
437
+ }
271
438
  export function createDevDatabaseTaskTypes(deps) {
439
+ const watchDevDatabaseProvisionTaskType = {
440
+ ...watchDevDatabaseProvisionTaskMetadata,
441
+ start: async (input) => {
442
+ const watchKind = input.watchKind ?? "provision";
443
+ const label = watchKind === "migration"
444
+ ? `the database schema update (${input.logicalName} · ${input.profile})`
445
+ : provisionLabel(input.logicalName, input.profile);
446
+ const handle = {
447
+ bindingKey: input.bindingKey,
448
+ logicalName: input.logicalName,
449
+ profile: input.profile,
450
+ requirement: { logicalName: input.logicalName },
451
+ watchKind,
452
+ ...(input.requestId ? { requestId: input.requestId } : {}),
453
+ };
454
+ if (input.initialFailed) {
455
+ return {
456
+ externalHandle: handle,
457
+ initialStatus: {
458
+ state: "failed",
459
+ error: input.initialError ??
460
+ (watchKind === "migration"
461
+ ? "datatag migration failed"
462
+ : "datatag provision failed"),
463
+ },
464
+ label,
465
+ };
466
+ }
467
+ return {
468
+ externalHandle: handle,
469
+ initialStatus: { state: "running", message: "pending" },
470
+ label,
471
+ };
472
+ },
473
+ poll: async (handle) => {
474
+ let response;
475
+ try {
476
+ // Progress query accepts exactly one locator — requestId XOR
477
+ // bindingKey. Sibling watches keep both on the handle for labeling /
478
+ // cancel, so prefer the request when present.
479
+ response = await deps
480
+ .getClient()
481
+ .pollProgress(handle.requestId
482
+ ? { requestId: handle.requestId }
483
+ : { bindingKey: handle.bindingKey });
484
+ }
485
+ catch (error) {
486
+ throw toToolError(error);
487
+ }
488
+ updateProvisionHandleFromResponse(handle, response);
489
+ if (handle.watchKind === "migration") {
490
+ if (TERMINAL_LIFECYCLE_STATES.has(response.lifecycleState) &&
491
+ response.lifecycleState !== "ready") {
492
+ return lifecycleStatusFor(response, handle.requestId);
493
+ }
494
+ return migrationStatusFor(response, handle.requestId);
495
+ }
496
+ return lifecycleStatusFor(response, handle.requestId);
497
+ },
498
+ };
272
499
  const provisionDevDatabaseTaskType = {
273
500
  ...provisionDevDatabaseTaskMetadata,
274
- start: async (input) => {
501
+ start: async (input, toolOpts) => {
275
502
  let response;
276
503
  try {
277
- // Master parity: only applicationId + requirement. The client
278
- // never sends a profile the server resolves the org's
279
- // editor-mode reserved profile (`dev` for V2 orgs, `staging` for
280
- // V1 orgs) from the lifecycle policy. Hardcoding `dev` here broke
281
- // V1 orgs, which have no `dev` profile.
504
+ // Client never sends a profile the server resolves editor
505
+ // Environments targets and fans out ensure across every eligible
506
+ // datatag (ENG-3469).
282
507
  response = await deps.getClient().createDevDb({
283
508
  applicationId: deps.applicationId,
284
509
  requirement: input.requirement,
@@ -287,15 +512,6 @@ export function createDevDatabaseTaskTypes(deps) {
287
512
  catch (error) {
288
513
  throw toToolError(error);
289
514
  }
290
- // Non-technical noun phrase that completes phrases like
291
- // "Waiting for `<label>`" / "Cancelling `<label>`" naturally for
292
- // the user. Matches the kickoff phrasing in tool-helpers.ts
293
- // ("Provisioning a new database (`<name>`)") so the chat reads
294
- // consistently across the kickoff render and the follow-up
295
- // check/wait/cancel tool calls. We drop the technical engine
296
- // suffix to match the input — engine is platform-controlled and
297
- // not in the LLM-facing schema.
298
- const label = `a new database (${input.requirement.logicalName})`;
299
515
  // The application already has a database (typically under a
300
516
  // different name — only one dev database per application is
301
517
  // supported), or another precondition blocks provisioning. Surface
@@ -311,30 +527,55 @@ export function createDevDatabaseTaskTypes(deps) {
311
527
  },
312
528
  initialStatus: {
313
529
  state: "failed",
314
- error: response.errorMessage ??
530
+ error: sanitizeLifecycleFailureField(response.errorMessage ??
315
531
  response.errorCode ??
316
- "createDevDb precondition failed",
532
+ "createDevDb precondition failed"),
317
533
  },
318
- label,
534
+ label: provisionLabel(input.requirement.logicalName),
319
535
  };
320
536
  }
537
+ const targets = fanOutTargetsFromResponse(response);
538
+ const primaryProfile = targets.find((target) => target.bindingKey === response.bindingKey)
539
+ ?.profile ?? targets[0]?.profile;
540
+ const tagCount = targets.length;
541
+ const label = provisionLabel(input.requirement.logicalName, tagCount > 1 ? primaryProfile : undefined);
321
542
  const handle = {
322
543
  bindingKey: response.bindingKey,
323
544
  requirement: input.requirement,
545
+ ...(primaryProfile && primaryProfile !== "default"
546
+ ? { profile: primaryProfile }
547
+ : {}),
548
+ ...(tagCount > 1 ? { tagCount } : {}),
324
549
  };
325
550
  updateProvisionHandleFromResponse(handle, response);
551
+ if (tagCount > 1) {
552
+ const siblingTaskIds = await spawnSiblingWatchTasks(deps, {
553
+ logicalName: input.requirement.logicalName,
554
+ primaryBindingKey: response.bindingKey,
555
+ targets,
556
+ toolOpts,
557
+ });
558
+ if (siblingTaskIds.length > 0) {
559
+ handle.siblingTaskIds = siblingTaskIds;
560
+ }
561
+ }
326
562
  // Synchronous terminal short-circuit. The poll loop is skipped by
327
563
  // TaskStore when initialStatus is non-running.
328
564
  if (TERMINAL_LIFECYCLE_STATES.has(response.lifecycleState)) {
329
565
  return {
330
566
  externalHandle: handle,
331
- initialStatus: lifecycleStatusFor(response),
567
+ initialStatus: heldForSiblings(deps, lifecycleStatusFor(response), handle.siblingTaskIds),
332
568
  label,
333
569
  };
334
570
  }
335
571
  return {
336
572
  externalHandle: handle,
337
- initialStatus: { state: "running", message: response.lifecycleState },
573
+ initialStatus: {
574
+ state: "running",
575
+ message: tagCount > 1
576
+ ? `${response.lifecycleState}; ${tagCount} tags`
577
+ : response.lifecycleState,
578
+ },
338
579
  label,
339
580
  };
340
581
  },
@@ -349,12 +590,12 @@ export function createDevDatabaseTaskTypes(deps) {
349
590
  throw toToolError(error);
350
591
  }
351
592
  updateProvisionHandleFromResponse(handle, response);
352
- return lifecycleStatusFor(response, handle.requestId);
593
+ return heldForSiblings(deps, lifecycleStatusFor(response, handle.requestId), handle.siblingTaskIds);
353
594
  },
354
595
  };
355
596
  const applyDevDatabaseMigrationsTaskType = {
356
597
  ...applyDevDatabaseMigrationsTaskMetadata,
357
- start: async (input) => {
598
+ start: async (_input, toolOpts) => {
358
599
  try {
359
600
  await deps.ensureFilesSynced?.();
360
601
  }
@@ -363,26 +604,17 @@ export function createDevDatabaseTaskTypes(deps) {
363
604
  }
364
605
  let response;
365
606
  try {
366
- // Master parity: applicationId + optional bindingKey. The dev
367
- // environment name is resolved server-side. Only thread
368
- // bindingKey through when the LLM supplied one, matching
369
- // master's `...(input.bindingKey ? { bindingKey } : {})` shape.
607
+ // Never pass bindingKey server fans out migrate_schema across
608
+ // every eligible editor Environments datatag. Passing the
609
+ // provision-primary key left siblings provisioned but without
610
+ // projected integration configs (migrations never ran there).
370
611
  response = await deps.getClient().applyMigrations({
371
612
  applicationId: deps.applicationId,
372
- ...(input.bindingKey ? { bindingKey: input.bindingKey } : {}),
373
613
  });
374
614
  }
375
615
  catch (error) {
376
616
  throw toToolError(error);
377
617
  }
378
- // Non-technical noun phrase that completes phrases like
379
- // "Waiting for `<label>`" / "Cancelling `<label>`" naturally for
380
- // the user. Matches the kickoff phrasing in tool-helpers.ts
381
- // ("Updating the database schema") instead of the technical
382
- // humanize-from-taskType fallback ("Apply dev database
383
- // migrations") so the chat reads consistently across the
384
- // kickoff render and the follow-up check/wait/cancel tool calls.
385
- const label = "the database schema update";
386
618
  if (isPreconditionFailure(response)) {
387
619
  return {
388
620
  externalHandle: {
@@ -390,22 +622,37 @@ export function createDevDatabaseTaskTypes(deps) {
390
622
  },
391
623
  initialStatus: {
392
624
  state: "failed",
393
- error: response.errorMessage ??
625
+ error: sanitizeLifecycleFailureField(response.errorMessage ??
394
626
  response.errorCode ??
395
- "applyMigrations precondition failed",
627
+ "applyMigrations precondition failed"),
396
628
  },
397
- label,
629
+ label: DEFAULT_MIGRATION_TASK_LABEL,
398
630
  };
399
631
  }
632
+ const label = migrationTaskLabel(response);
400
633
  const handle = {
401
634
  bindingKey: response.bindingKey,
402
635
  requestId: response.requestId,
403
636
  };
637
+ const targets = fanOutTargetsFromResponse(response);
638
+ const tagCount = targets.length;
639
+ if (tagCount > 1) {
640
+ const siblingTaskIds = await spawnSiblingWatchTasks(deps, {
641
+ logicalName: response.logicalName ?? "database",
642
+ primaryBindingKey: response.bindingKey,
643
+ targets,
644
+ toolOpts,
645
+ watchKind: "migration",
646
+ });
647
+ if (siblingTaskIds.length > 0) {
648
+ handle.siblingTaskIds = siblingTaskIds;
649
+ }
650
+ }
404
651
  // Migrations sometimes finish synchronously (no SQL to apply).
405
652
  if (response.migrationState === "migrated") {
406
653
  return {
407
654
  externalHandle: handle,
408
- initialStatus: { state: "completed", result: response },
655
+ initialStatus: heldForSiblings(deps, { state: "completed", result: withSanitizedTargets(response) }, handle.siblingTaskIds),
409
656
  label,
410
657
  };
411
658
  }
@@ -418,7 +665,12 @@ export function createDevDatabaseTaskTypes(deps) {
418
665
  }
419
666
  return {
420
667
  externalHandle: handle,
421
- initialStatus: { state: "running", message: response.migrationState },
668
+ initialStatus: {
669
+ state: "running",
670
+ message: tagCount > 1
671
+ ? `${response.migrationState}; ${tagCount} tags`
672
+ : response.migrationState,
673
+ },
422
674
  label,
423
675
  };
424
676
  },
@@ -439,12 +691,13 @@ export function createDevDatabaseTaskTypes(deps) {
439
691
  response.lifecycleState !== "ready") {
440
692
  return lifecycleStatusFor(response, handle.requestId);
441
693
  }
442
- return migrationStatusFor(response, handle.requestId);
694
+ return heldForSiblings(deps, migrationStatusFor(response, handle.requestId), handle.siblingTaskIds);
443
695
  },
444
696
  };
445
697
  return {
446
698
  applyDevDatabaseMigrationsTaskType,
447
699
  provisionDevDatabaseTaskType,
700
+ watchDevDatabaseProvisionTaskType,
448
701
  };
449
702
  }
450
703
  /**
@@ -478,6 +731,7 @@ export function primeIntegrationStoreFromResponse(integrationStore, response, co
478
731
  displayName: name,
479
732
  id: response.integrationId,
480
733
  lifecycleState: response.lifecycleState,
734
+ managedBy: DATABASE_LIFECYCLE_MANAGED_BY,
481
735
  name,
482
736
  type,
483
737
  });
@@ -503,12 +757,15 @@ export function primeIntegrationStoreFromResponse(integrationStore, response, co
503
757
  export function wireDevDatabaseIntegrationPriming(taskStore, integrationStore) {
504
758
  return taskStore.onStatus((_taskId, status, task) => {
505
759
  if (task.taskType !== provisionDevDatabaseTaskMetadata.name &&
506
- task.taskType !== applyDevDatabaseMigrationsTaskMetadata.name) {
760
+ task.taskType !== applyDevDatabaseMigrationsTaskMetadata.name &&
761
+ task.taskType !== watchDevDatabaseProvisionTaskMetadata.name) {
507
762
  return;
508
763
  }
764
+ const isProvisionLike = task.taskType === provisionDevDatabaseTaskMetadata.name ||
765
+ task.taskType === watchDevDatabaseProvisionTaskMetadata.name;
509
766
  const result = status.state === "completed"
510
767
  ? status.result
511
- : task.taskType === provisionDevDatabaseTaskMetadata.name
768
+ : isProvisionLike
512
769
  ? task.externalHandle
513
770
  : undefined;
514
771
  if (!result || typeof result !== "object")
@@ -1 +1 @@
1
- {"version":3,"file":"dev-database-tasks.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/databases/dev-database-tasks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev-database-tasks.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/databases/dev-database-tasks.ts"],"names":[],"mappings":"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"}