@superblocksteam/vite-plugin-file-sync 2.0.165-next.0 → 2.0.166-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 (218) hide show
  1. package/dist/ai-service/agent/prompts/api-prompts.d.ts.map +1 -1
  2. package/dist/ai-service/agent/prompts/api-prompts.js +3 -1
  3. package/dist/ai-service/agent/prompts/api-prompts.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 +43 -7
  6. package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
  7. package/dist/ai-service/agent/tool-result-metrics.d.ts +12 -0
  8. package/dist/ai-service/agent/tool-result-metrics.d.ts.map +1 -1
  9. package/dist/ai-service/agent/tool-result-metrics.js +29 -0
  10. package/dist/ai-service/agent/tool-result-metrics.js.map +1 -1
  11. package/dist/ai-service/agent/tools/apis/attachment-file-inputs.d.ts +17 -0
  12. package/dist/ai-service/agent/tools/apis/attachment-file-inputs.d.ts.map +1 -0
  13. package/dist/ai-service/agent/tools/apis/attachment-file-inputs.js +208 -0
  14. package/dist/ai-service/agent/tools/apis/attachment-file-inputs.js.map +1 -0
  15. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.d.ts +6 -1
  16. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.d.ts.map +1 -1
  17. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.js +53 -19
  18. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.js.map +1 -1
  19. package/dist/ai-service/agent/tools/apis/sdk-root-documentation.d.ts +20 -0
  20. package/dist/ai-service/agent/tools/apis/sdk-root-documentation.d.ts.map +1 -0
  21. package/dist/ai-service/agent/tools/apis/sdk-root-documentation.js +284 -0
  22. package/dist/ai-service/agent/tools/apis/sdk-root-documentation.js.map +1 -0
  23. package/dist/ai-service/agent/tools/apis/spreadsheet-csv.d.ts +77 -0
  24. package/dist/ai-service/agent/tools/apis/spreadsheet-csv.d.ts.map +1 -0
  25. package/dist/ai-service/agent/tools/apis/spreadsheet-csv.js +627 -0
  26. package/dist/ai-service/agent/tools/apis/spreadsheet-csv.js.map +1 -0
  27. package/dist/ai-service/agent/tools/apis/test-api.d.ts +1 -0
  28. package/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
  29. package/dist/ai-service/agent/tools/apis/test-api.js +51 -9
  30. package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
  31. package/dist/ai-service/agent/tools/app-environment/update-app-environment.d.ts +1 -1
  32. package/dist/ai-service/agent/tools/build-manage-checklist.d.ts +1 -1
  33. package/dist/ai-service/agent/tools/build-read-file.d.ts +50 -6
  34. package/dist/ai-service/agent/tools/build-read-file.d.ts.map +1 -1
  35. package/dist/ai-service/agent/tools/build-read-file.js +153 -40
  36. package/dist/ai-service/agent/tools/build-read-file.js.map +1 -1
  37. package/dist/ai-service/agent/tools/get-logs.d.ts +2 -2
  38. package/dist/ai-service/agent/tools/index.d.ts +3 -2
  39. package/dist/ai-service/agent/tools/index.d.ts.map +1 -1
  40. package/dist/ai-service/agent/tools/index.js +3 -2
  41. package/dist/ai-service/agent/tools/index.js.map +1 -1
  42. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +15 -15
  43. package/dist/ai-service/agent/tools/read-state-trackers.d.ts +33 -0
  44. package/dist/ai-service/agent/tools/read-state-trackers.d.ts.map +1 -0
  45. package/dist/ai-service/agent/tools/read-state-trackers.js +67 -0
  46. package/dist/ai-service/agent/tools/read-state-trackers.js.map +1 -0
  47. package/dist/ai-service/agent/tools/report-security-findings.d.ts +6 -6
  48. package/dist/ai-service/agent/tools/report-security-findings.d.ts.map +1 -1
  49. package/dist/ai-service/agent/tools/report-security-findings.js +4 -2
  50. package/dist/ai-service/agent/tools/report-security-findings.js.map +1 -1
  51. package/dist/ai-service/agent/tools/subagent-isolation.d.ts +4 -15
  52. package/dist/ai-service/agent/tools/subagent-isolation.d.ts.map +1 -1
  53. package/dist/ai-service/agent/tools/subagent-isolation.js +4 -44
  54. package/dist/ai-service/agent/tools/subagent-isolation.js.map +1 -1
  55. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  56. package/dist/ai-service/agent/tools.js +17 -64
  57. package/dist/ai-service/agent/tools.js.map +1 -1
  58. package/dist/ai-service/agent/tools2/registry.d.ts +1 -0
  59. package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -1
  60. package/dist/ai-service/agent/tools2/registry.js +23 -5
  61. package/dist/ai-service/agent/tools2/registry.js.map +1 -1
  62. package/dist/ai-service/agent/tools2/tools/attachment-lease-resolver.d.ts +9 -0
  63. package/dist/ai-service/agent/tools2/tools/attachment-lease-resolver.d.ts.map +1 -0
  64. package/dist/ai-service/agent/tools2/tools/attachment-lease-resolver.js +52 -0
  65. package/dist/ai-service/agent/tools2/tools/attachment-lease-resolver.js.map +1 -0
  66. package/dist/ai-service/agent/tools2/tools/bash.d.ts +2 -2
  67. package/dist/ai-service/agent/tools2/tools/download-attachments.d.ts +1 -1
  68. package/dist/ai-service/agent/tools2/tools/download-attachments.d.ts.map +1 -1
  69. package/dist/ai-service/agent/tools2/tools/download-attachments.js +57 -49
  70. package/dist/ai-service/agent/tools2/tools/download-attachments.js.map +1 -1
  71. package/dist/ai-service/agent/tools2/tools/end-test-run.d.ts +3 -3
  72. package/dist/ai-service/agent/tools2/tools/git.d.ts +6 -6
  73. package/dist/ai-service/agent/tools2/tools/grep-metadata.d.ts +1 -1
  74. package/dist/ai-service/agent/tools2/tools/grep.d.ts +1 -1
  75. package/dist/ai-service/agent/tools2/tools/grep.js +1 -1
  76. package/dist/ai-service/agent/tools2/tools/list-attachments.d.ts +1 -1
  77. package/dist/ai-service/agent/tools2/tools/update-test-case-status.d.ts +1 -1
  78. package/dist/ai-service/agent/tools2/tools/web-fetch.d.ts +1 -1
  79. package/dist/ai-service/app-skills/helpers.d.ts +8 -2
  80. package/dist/ai-service/app-skills/helpers.d.ts.map +1 -1
  81. package/dist/ai-service/app-skills/helpers.js +184 -4
  82. package/dist/ai-service/app-skills/helpers.js.map +1 -1
  83. package/dist/ai-service/attachments/text-upload-artifacts.d.ts.map +1 -1
  84. package/dist/ai-service/attachments/text-upload-artifacts.js +1 -1
  85. package/dist/ai-service/attachments/text-upload-artifacts.js.map +1 -1
  86. package/dist/ai-service/attachments/upload-artifact-paths.d.ts +5 -0
  87. package/dist/ai-service/attachments/upload-artifact-paths.d.ts.map +1 -0
  88. package/dist/ai-service/attachments/upload-artifact-paths.js +18 -0
  89. package/dist/ai-service/attachments/upload-artifact-paths.js.map +1 -0
  90. package/dist/ai-service/chat/chat-session-store-metrics.d.ts +6 -0
  91. package/dist/ai-service/chat/chat-session-store-metrics.d.ts.map +1 -1
  92. package/dist/ai-service/chat/chat-session-store-metrics.js +23 -1
  93. package/dist/ai-service/chat/chat-session-store-metrics.js.map +1 -1
  94. package/dist/ai-service/chat/chat-session-store.d.ts +25 -1
  95. package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
  96. package/dist/ai-service/chat/chat-session-store.js +70 -4
  97. package/dist/ai-service/chat/chat-session-store.js.map +1 -1
  98. package/dist/ai-service/edit-after-clark.d.ts +58 -0
  99. package/dist/ai-service/edit-after-clark.d.ts.map +1 -0
  100. package/dist/ai-service/edit-after-clark.js +143 -0
  101. package/dist/ai-service/edit-after-clark.js.map +1 -0
  102. package/dist/ai-service/features.d.ts +5 -0
  103. package/dist/ai-service/features.d.ts.map +1 -1
  104. package/dist/ai-service/features.js +5 -0
  105. package/dist/ai-service/features.js.map +1 -1
  106. package/dist/ai-service/index.d.ts +25 -3
  107. package/dist/ai-service/index.d.ts.map +1 -1
  108. package/dist/ai-service/index.js +123 -18
  109. package/dist/ai-service/index.js.map +1 -1
  110. package/dist/ai-service/judge/tools/playwright-action.d.ts +5 -5
  111. package/dist/ai-service/llm/context-v2/context.d.ts +23 -6
  112. package/dist/ai-service/llm/context-v2/context.d.ts.map +1 -1
  113. package/dist/ai-service/llm/context-v2/context.js +48 -13
  114. package/dist/ai-service/llm/context-v2/context.js.map +1 -1
  115. package/dist/ai-service/llm/context-v2/token-tracker.d.ts.map +1 -1
  116. package/dist/ai-service/llm/context-v2/token-tracker.js.map +1 -1
  117. package/dist/ai-service/llm/stream/abort-reason.d.ts +31 -0
  118. package/dist/ai-service/llm/stream/abort-reason.d.ts.map +1 -0
  119. package/dist/ai-service/llm/stream/abort-reason.js +36 -0
  120. package/dist/ai-service/llm/stream/abort-reason.js.map +1 -0
  121. package/dist/ai-service/llm/stream/orchestrator.d.ts +15 -0
  122. package/dist/ai-service/llm/stream/orchestrator.d.ts.map +1 -1
  123. package/dist/ai-service/llm/stream/orchestrator.js +88 -12
  124. package/dist/ai-service/llm/stream/orchestrator.js.map +1 -1
  125. package/dist/ai-service/migration-prompt-gating.d.ts +1 -0
  126. package/dist/ai-service/migration-prompt-gating.d.ts.map +1 -1
  127. package/dist/ai-service/migration-prompt-gating.js +6 -0
  128. package/dist/ai-service/migration-prompt-gating.js.map +1 -1
  129. package/dist/ai-service/skills/system/_registry.generated.d.ts.map +1 -1
  130. package/dist/ai-service/skills/system/_registry.generated.js +8 -0
  131. package/dist/ai-service/skills/system/_registry.generated.js.map +1 -1
  132. package/dist/ai-service/skills/system/resolve.d.ts.map +1 -1
  133. package/dist/ai-service/skills/system/resolve.js +29 -4
  134. package/dist/ai-service/skills/system/resolve.js.map +1 -1
  135. package/dist/ai-service/skills/system/spreadsheet-import/skill.generated.d.ts +2 -0
  136. package/dist/ai-service/skills/system/spreadsheet-import/skill.generated.d.ts.map +1 -0
  137. package/dist/ai-service/skills/system/spreadsheet-import/skill.generated.js +66 -0
  138. package/dist/ai-service/skills/system/spreadsheet-import/skill.generated.js.map +1 -0
  139. package/dist/ai-service/skills/system/superblocks-frontend/_variants/api-names-legacy.generated.d.ts +2 -0
  140. package/dist/ai-service/skills/system/superblocks-frontend/_variants/api-names-legacy.generated.d.ts.map +1 -0
  141. package/dist/ai-service/skills/system/superblocks-frontend/_variants/api-names-legacy.generated.js +5 -0
  142. package/dist/ai-service/skills/system/superblocks-frontend/_variants/api-names-legacy.generated.js.map +1 -0
  143. package/dist/ai-service/skills/system/superblocks-frontend/_variants/api-names-sdk.generated.d.ts +2 -0
  144. package/dist/ai-service/skills/system/superblocks-frontend/_variants/api-names-sdk.generated.d.ts.map +1 -0
  145. package/dist/ai-service/skills/system/superblocks-frontend/_variants/api-names-sdk.generated.js +5 -0
  146. package/dist/ai-service/skills/system/superblocks-frontend/_variants/api-names-sdk.generated.js.map +1 -0
  147. package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts +1 -1
  148. package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts.map +1 -1
  149. package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js +2 -1
  150. package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js.map +1 -1
  151. package/dist/ai-service/skills/system/superblocks-migration/skill.generated.d.ts +1 -1
  152. package/dist/ai-service/skills/system/superblocks-migration/skill.generated.d.ts.map +1 -1
  153. package/dist/ai-service/skills/system/superblocks-migration/skill.generated.js +6 -6
  154. package/dist/ai-service/skills/system/superblocks-sdk-api/skill.generated.d.ts +2 -0
  155. package/dist/ai-service/skills/system/superblocks-sdk-api/skill.generated.d.ts.map +1 -0
  156. package/dist/ai-service/skills/system/superblocks-sdk-api/skill.generated.js +29 -0
  157. package/dist/ai-service/skills/system/superblocks-sdk-api/skill.generated.js.map +1 -0
  158. package/dist/ai-service/skills/system/third-party-migration/skill.generated.d.ts +1 -1
  159. package/dist/ai-service/skills/system/third-party-migration/skill.generated.d.ts.map +1 -1
  160. package/dist/ai-service/skills/system/third-party-migration/skill.generated.js +2 -2
  161. package/dist/ai-service/state-machine/clark-fsm.d.ts +14 -1
  162. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  163. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  164. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  165. package/dist/ai-service/state-machine/handlers/llm-generating.js +1 -0
  166. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  167. package/dist/ai-service/state-machine/helpers/abandon-turn-metrics.d.ts +18 -0
  168. package/dist/ai-service/state-machine/helpers/abandon-turn-metrics.d.ts.map +1 -0
  169. package/dist/ai-service/state-machine/helpers/abandon-turn-metrics.js +66 -0
  170. package/dist/ai-service/state-machine/helpers/abandon-turn-metrics.js.map +1 -0
  171. package/dist/ai-service/state-machine/helpers/transition.d.ts.map +1 -1
  172. package/dist/ai-service/state-machine/helpers/transition.js.map +1 -1
  173. package/dist/ai-service/state-machine/traced-fsm.d.ts +12 -3
  174. package/dist/ai-service/state-machine/traced-fsm.d.ts.map +1 -1
  175. package/dist/ai-service/state-machine/traced-fsm.js +17 -5
  176. package/dist/ai-service/state-machine/traced-fsm.js.map +1 -1
  177. package/dist/ai-service/template-renderer.js +43 -7
  178. package/dist/ai-service/template-renderer.js.map +1 -1
  179. package/dist/ai-service/types.d.ts +2 -0
  180. package/dist/ai-service/types.d.ts.map +1 -1
  181. package/dist/ai-service/types.js.map +1 -1
  182. package/dist/file-sync-vite-plugin.d.ts +12 -3
  183. package/dist/file-sync-vite-plugin.d.ts.map +1 -1
  184. package/dist/file-sync-vite-plugin.js +57 -17
  185. package/dist/file-sync-vite-plugin.js.map +1 -1
  186. package/dist/migration/migration-routes.d.ts.map +1 -1
  187. package/dist/migration/migration-routes.js +42 -23
  188. package/dist/migration/migration-routes.js.map +1 -1
  189. package/dist/npm/normalize-workspace-protocol-for-npm.d.ts.map +1 -1
  190. package/dist/npm/normalize-workspace-protocol-for-npm.js +5 -5
  191. package/dist/npm/normalize-workspace-protocol-for-npm.js.map +1 -1
  192. package/dist/npm/rewrite-platform-workspace-deps.d.ts +2 -0
  193. package/dist/npm/rewrite-platform-workspace-deps.d.ts.map +1 -1
  194. package/dist/npm/rewrite-platform-workspace-deps.js +2 -2
  195. package/dist/npm/rewrite-platform-workspace-deps.js.map +1 -1
  196. package/dist/policy-gate-runner.d.ts.map +1 -1
  197. package/dist/policy-gate-runner.js +3 -0
  198. package/dist/policy-gate-runner.js.map +1 -1
  199. package/dist/socket-manager.d.ts +1 -1
  200. package/dist/socket-manager.d.ts.map +1 -1
  201. package/dist/socket-manager.js +64 -22
  202. package/dist/socket-manager.js.map +1 -1
  203. package/dist/sync-service/index.d.ts +14 -1
  204. package/dist/sync-service/index.d.ts.map +1 -1
  205. package/dist/sync-service/index.js +27 -1
  206. package/dist/sync-service/index.js.map +1 -1
  207. package/dist/sync-service/list-dir.d.ts.map +1 -1
  208. package/dist/sync-service/list-dir.js +15 -1
  209. package/dist/sync-service/list-dir.js.map +1 -1
  210. package/dist/sync-service/snapshot/take-snapshot.d.ts +6 -0
  211. package/dist/sync-service/snapshot/take-snapshot.d.ts.map +1 -1
  212. package/dist/sync-service/snapshot/take-snapshot.js +21 -0
  213. package/dist/sync-service/snapshot/take-snapshot.js.map +1 -1
  214. package/dist/vite-plugin-yaml-types.d.ts +6 -0
  215. package/dist/vite-plugin-yaml-types.d.ts.map +1 -1
  216. package/dist/vite-plugin-yaml-types.js +52 -61
  217. package/dist/vite-plugin-yaml-types.js.map +1 -1
  218. package/package.json +14 -11
@@ -4,8 +4,9 @@ import { measureThrownToolResultChars, measureToolResultChars, recordToolExecuti
4
4
  import { degradationKeyLogAttribute, notePromptDegradationForKey, } from "../../state-machine/helpers/prompt-degradation-metrics.js";
5
5
  import { buildThinkingProviderOptions } from "../../util/llm-config-utils.js";
6
6
  import { LLMProviderError } from "../error.js";
7
+ import { abortReasonFrom, createAbortReason, } from "./abort-reason.js";
7
8
  import { getServerCompactionTextBlockUpdate } from "./compaction-text-block.js";
8
- import { AbortedError, RetriesExhaustedError, ToolExecutionTimeoutError, } from "./errors.js";
9
+ import { AbortedError, RetriesExhaustedError, StallTimeoutError, ToolExecutionTimeoutError, } from "./errors.js";
9
10
  import { IdleMonitor } from "./idle-monitor.js";
10
11
  import { createManagedStream } from "./managed-stream.js";
11
12
  import { RetryEngine } from "./retry-engine.js";
@@ -272,11 +273,13 @@ class AttemptCoordinator {
272
273
  // the session signal for the whole execute() lifetime.
273
274
  this.detachParentListener();
274
275
  const controller = new AbortController();
276
+ // Forward the parent's structured abort reason so the attempt's rejection
277
+ // says why the whole session went away, not just that a parent aborted.
275
278
  if (this.parent.aborted) {
276
- controller.abort();
279
+ controller.abort(this.parent.reason);
277
280
  }
278
281
  else {
279
- const onParentAbort = () => controller.abort();
282
+ const onParentAbort = () => controller.abort(this.parent.reason);
280
283
  this.parentListener = onParentAbort;
281
284
  this.parent.addEventListener("abort", onParentAbort, { once: true });
282
285
  }
@@ -289,9 +292,10 @@ class AttemptCoordinator {
289
292
  /**
290
293
  * Abort the in-flight attempt. Called at the retry decision, before backoff,
291
294
  * to close the window where a stale attempt could wake up and execute tools.
295
+ * The reason rides on the signal so the attempt's rejection is classifiable
292
296
  */
293
- abortCurrent() {
294
- this.current?.abort();
297
+ abortCurrent(reason) {
298
+ this.current?.abort(createAbortReason(reason));
295
299
  }
296
300
  detachParentListener() {
297
301
  if (this.parentListener) {
@@ -372,9 +376,19 @@ export class StreamOrchestrator {
372
376
  const internalAbortController = new AbortController();
373
377
  const attempts = new AttemptCoordinator(internalAbortController.signal);
374
378
  if (options.abortSignal) {
375
- options.abortSignal.addEventListener("abort", () => {
376
- internalAbortController.abort();
377
- });
379
+ const externalSignal = options.abortSignal;
380
+ const onExternalAbort = () => {
381
+ // Forward the caller's structured reason (user-cancel,
382
+ // displaced-prompt, …) so it survives into every descendant signal
383
+ // and rejection.
384
+ internalAbortController.abort(externalSignal.reason);
385
+ this.logStreamAbort(session, abortReasonFrom(externalSignal.reason), "caller");
386
+ };
387
+ const detachExternalAbort = () => externalSignal.removeEventListener("abort", onExternalAbort);
388
+ externalSignal.addEventListener("abort", onExternalAbort, { once: true });
389
+ session.events.on("session:complete", detachExternalAbort);
390
+ session.events.on("session:error", detachExternalAbort);
391
+ session.events.on("session:abort", detachExternalAbort);
378
392
  }
379
393
  const optionsWithAbort = {
380
394
  ...options,
@@ -413,6 +427,7 @@ export class StreamOrchestrator {
413
427
  this.logger.debug("[orchestrator] session:abort suppressed — session already finalized", { session_id: session.id, outcome: session.outcome });
414
428
  return;
415
429
  }
430
+ this.terminalSummaryErrors.set(session, internalAbortController.signal.reason);
416
431
  void session.events.emit("session:abort", session);
417
432
  });
418
433
  // Idle monitoring: aborts hung streams that stop sending chunks. Budgets
@@ -884,6 +899,12 @@ export class StreamOrchestrator {
884
899
  if (terminalError instanceof Error) {
885
900
  attributes.error_name = terminalError.name;
886
901
  }
902
+ // Present when the terminal error descends from a stamped abort — turns
903
+ // "outcome: aborted" into "aborted because user-cancel/displaced-prompt".
904
+ const terminalAbortReason = abortReasonFrom(terminalError);
905
+ if (terminalAbortReason) {
906
+ attributes.abort_reason = terminalAbortReason;
907
+ }
887
908
  const message = "[orchestrator] Stream terminal summary";
888
909
  if (this.logger.warnStructured) {
889
910
  this.logger.warnStructured(message, attributes);
@@ -945,7 +966,7 @@ export class StreamOrchestrator {
945
966
  if (!retryResult.shouldRetry) {
946
967
  // abort the internal signal so any in-flight stream processing stops.
947
968
  // without this, tools keep getting called in the background since the stream is not closed.
948
- abortController.abort();
969
+ abortController.abort(createAbortReason("give-up"));
949
970
  throw retryResult.error;
950
971
  }
951
972
  session.pendingTextBlockIds.clear();
@@ -1025,7 +1046,7 @@ export class StreamOrchestrator {
1025
1046
  }
1026
1047
  // Supersede the failed attempt now, before the backoff delay, so its
1027
1048
  // abandoned stream can't keep executing tools while we wait to retry.
1028
- attempts.abortCurrent();
1049
+ this.abortSupersededAttempt(attempts, session, decision, error);
1029
1050
  await session.events.emit("retry", error, session.attempt, decision.delayMs, session);
1030
1051
  if (decision.newProvider) {
1031
1052
  await this.switchProvider(session, decision.newProvider, decision.fastFallback === true, error);
@@ -1057,7 +1078,7 @@ export class StreamOrchestrator {
1057
1078
  throw finalError;
1058
1079
  }
1059
1080
  // Supersede the failed attempt before backoff.
1060
- attempts.abortCurrent();
1081
+ this.abortSupersededAttempt(attempts, session, decision, error);
1061
1082
  await session.events.emit("retry", error, session.attempt, decision.delayMs, session);
1062
1083
  if (decision.newProvider) {
1063
1084
  await this.switchProvider(session, decision.newProvider, decision.fastFallback === true, error);
@@ -1068,9 +1089,64 @@ export class StreamOrchestrator {
1068
1089
  }
1069
1090
  }
1070
1091
  }
1092
+ /**
1093
+ * Why a retry decision is abandoning the in-flight attempt: a provider
1094
+ * switch, a stall, or a plain retryable error. Feeds both the abort signal
1095
+ * and the stream_abort log so the two can never disagree.
1096
+ */
1097
+ supersededAbortReason(decision, error) {
1098
+ if (decision.newProvider) {
1099
+ return "fallback-switch";
1100
+ }
1101
+ return error instanceof StallTimeoutError ? "stall-retry" : "error-retry";
1102
+ }
1103
+ abortSupersededAttempt(attempts, session, decision, error) {
1104
+ const reason = this.supersededAbortReason(decision, error);
1105
+ attempts.abortCurrent(reason);
1106
+ this.logStreamAbort(session, reason, "retry-decision");
1107
+ }
1108
+ /**
1109
+ * One structured log per client-initiated abort, keyed by the same stream
1110
+ * identity as stream_stall / stream_terminal_summary so a proxy
1111
+ * client_disconnect_mid_stream event is explainable via the shared stream
1112
+ * id. "unspecified" means the abort came from a caller that did not stamp a
1113
+ * reason.
1114
+ */
1115
+ logStreamAbort(session, reason, source) {
1116
+ const messageBySource = {
1117
+ "retry-decision": "[orchestrator] Stream abort: aborting superseded attempt before retry",
1118
+ caller: "[orchestrator] Stream abort: caller aborted the generation",
1119
+ };
1120
+ const attributes = {
1121
+ event: "stream_abort",
1122
+ session_id: session.id,
1123
+ ...streamIdentityAttributes(session.id),
1124
+ provider: session.provider.name,
1125
+ model: session.provider.model,
1126
+ attempt: session.attempt,
1127
+ abort_reason: reason ?? "unspecified",
1128
+ abort_source: source,
1129
+ };
1130
+ if (session.organizationId) {
1131
+ attributes.organization_id = session.organizationId;
1132
+ }
1133
+ if (session.applicationId) {
1134
+ attributes.application_id = session.applicationId;
1135
+ }
1136
+ const message = messageBySource[source];
1137
+ if (this.logger.warnStructured) {
1138
+ this.logger.warnStructured(message, attributes);
1139
+ }
1140
+ else {
1141
+ this.logger.warn(message, attributes);
1142
+ }
1143
+ }
1071
1144
  wrapFinalError(error, reason, session) {
1072
1145
  if (reason === "aborted") {
1073
- return new AbortedError();
1146
+ const abortReason = abortReasonFrom(error);
1147
+ return abortReason
1148
+ ? Object.assign(new AbortedError(), { abortReason })
1149
+ : new AbortedError();
1074
1150
  }
1075
1151
  if (reason === "max-attempts" ||
1076
1152
  reason === "max-time" ||
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/stream/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/stream/orchestrator.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ interface MigrationPromptGating {
14
14
  export declare function resolveMigrationPromptGating(input: MigrationPromptGatingInput): MigrationPromptGating;
15
15
  export declare function buildSystemSkillExclusions(args: {
16
16
  sdkApiEnabled: boolean;
17
+ spreadsheetImportEnabled: boolean;
17
18
  thirdPartyImportEnabled: boolean;
18
19
  v2ToV3MigrationInProgress: boolean;
19
20
  }): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"migration-prompt-gating.d.ts","sourceRoot":"","sources":["../../src/ai-service/migration-prompt-gating.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,UAAU,0BAA0B;IAClC,uBAAuB,EAAE,OAAO,CAAC;IACjC,yBAAyB,EAAE,OAAO,CAAC;CACpC;AAED,UAAU,qBAAqB;IAC7B,gCAAgC,EAAE,OAAO,CAAC;IAC1C,4BAA4B,EAAE,OAAO,CAAC;IACtC,4CAA4C,EAAE,OAAO,CAAC;CACvD;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,0BAA0B,GAChC,qBAAqB,CASvB;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE;IAC/C,aAAa,EAAE,OAAO,CAAC;IACvB,uBAAuB,EAAE,OAAO,CAAC;IACjC,yBAAyB,EAAE,OAAO,CAAC;CACpC,GAAG,MAAM,EAAE,CAaX"}
1
+ {"version":3,"file":"migration-prompt-gating.d.ts","sourceRoot":"","sources":["../../src/ai-service/migration-prompt-gating.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,UAAU,0BAA0B;IAClC,uBAAuB,EAAE,OAAO,CAAC;IACjC,yBAAyB,EAAE,OAAO,CAAC;CACpC;AAED,UAAU,qBAAqB;IAC7B,gCAAgC,EAAE,OAAO,CAAC;IAC1C,4BAA4B,EAAE,OAAO,CAAC;IACtC,4CAA4C,EAAE,OAAO,CAAC;CACvD;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,0BAA0B,GAChC,qBAAqB,CASvB;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE;IAC/C,aAAa,EAAE,OAAO,CAAC;IACvB,wBAAwB,EAAE,OAAO,CAAC;IAClC,uBAAuB,EAAE,OAAO,CAAC;IACjC,yBAAyB,EAAE,OAAO,CAAC;CACpC,GAAG,MAAM,EAAE,CAkBX"}
@@ -15,6 +15,12 @@ export function buildSystemSkillExclusions(args) {
15
15
  if (args.sdkApiEnabled) {
16
16
  excludeSkills.push("superblocks-api");
17
17
  }
18
+ else {
19
+ excludeSkills.push("superblocks-sdk-api");
20
+ }
21
+ if (!args.spreadsheetImportEnabled) {
22
+ excludeSkills.push("spreadsheet-import");
23
+ }
18
24
  if (!args.thirdPartyImportEnabled) {
19
25
  excludeSkills.push("third-party-migration");
20
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"migration-prompt-gating.js","sourceRoot":"","sources":["../../src/ai-service/migration-prompt-gating.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,MAAM,UAAU,4BAA4B,CAC1C,KAAiC;IAEjC,MAAM,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,GAAG,KAAK,CAAC;IAErE,OAAO;QACL,gCAAgC,EAAE,yBAAyB;QAC3D,4BAA4B,EAC1B,yBAAyB,IAAI,uBAAuB;QACtD,4CAA4C,EAAE,yBAAyB;KACxE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,IAI1C;IACC,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClC,aAAa,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACpC,aAAa,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QACjD,aAAa,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"migration-prompt-gating.js","sourceRoot":"","sources":["../../src/ai-service/migration-prompt-gating.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,MAAM,UAAU,4BAA4B,CAC1C,KAAiC;IAEjC,MAAM,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,GAAG,KAAK,CAAC;IAErE,OAAO;QACL,gCAAgC,EAAE,yBAAyB;QAC3D,4BAA4B,EAC1B,yBAAyB,IAAI,uBAAuB;QACtD,4CAA4C,EAAE,yBAAyB;KACxE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,IAK1C;IACC,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,aAAa,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACnC,aAAa,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClC,aAAa,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACpC,aAAa,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QACjD,aAAa,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"_registry.generated.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/skills/system/_registry.generated.ts"],"names":[],"mappings":"AAuBA;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAoBhD,CAAC"}
1
+ {"version":3,"file":"_registry.generated.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/skills/system/_registry.generated.ts"],"names":[],"mappings":"AA2BA;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAwBhD,CAAC"}
@@ -2,6 +2,7 @@
2
2
  // Do not edit directly - run npm run generate-skills
3
3
  import { content as common_import_issues_skill } from "./common-import-issues/skill.generated.js";
4
4
  import { content as migration_api_verification_skill } from "./migration-api-verification/skill.generated.js";
5
+ import { content as spreadsheet_import_skill } from "./spreadsheet-import/skill.generated.js";
5
6
  import { content as superblocks_api_references_code_blocks } from "./superblocks-api/references/code-blocks.generated.js";
6
7
  import { content as superblocks_api_references_graphql } from "./superblocks-api/references/graphql.generated.js";
7
8
  import { content as superblocks_api_references_rest_apis } from "./superblocks-api/references/rest-apis.generated.js";
@@ -9,11 +10,14 @@ import { content as superblocks_api_references_sql_databases } from "./superbloc
9
10
  import { content as superblocks_api_skill } from "./superblocks-api/skill.generated.js";
10
11
  import { content as superblocks_frontend__variants_api_imports_legacy } from "./superblocks-frontend/_variants/api-imports-legacy.generated.js";
11
12
  import { content as superblocks_frontend__variants_api_imports_sdk } from "./superblocks-frontend/_variants/api-imports-sdk.generated.js";
13
+ import { content as superblocks_frontend__variants_api_names_legacy } from "./superblocks-frontend/_variants/api-names-legacy.generated.js";
14
+ import { content as superblocks_frontend__variants_api_names_sdk } from "./superblocks-frontend/_variants/api-names-sdk.generated.js";
12
15
  import { content as superblocks_frontend_references_embedding } from "./superblocks-frontend/references/embedding.generated.js";
13
16
  import { content as superblocks_frontend_skill } from "./superblocks-frontend/skill.generated.js";
14
17
  import { content as superblocks_migration_references_focused_debug } from "./superblocks-migration/references/focused-debug.generated.js";
15
18
  import { content as superblocks_migration_references_yaml_block_mapping } from "./superblocks-migration/references/yaml-block-mapping.generated.js";
16
19
  import { content as superblocks_migration_skill } from "./superblocks-migration/skill.generated.js";
20
+ import { content as superblocks_sdk_api_skill } from "./superblocks-sdk-api/skill.generated.js";
17
21
  import { content as third_party_migration_claude_design } from "./third-party-migration/claude-design.generated.js";
18
22
  import { content as third_party_migration_lovable } from "./third-party-migration/lovable.generated.js";
19
23
  import { content as third_party_migration_replit } from "./third-party-migration/replit.generated.js";
@@ -26,6 +30,7 @@ import { content as third_party_migration_v0 } from "./third-party-migration/v0.
26
30
  export const SYSTEM_SKILLS = {
27
31
  "common-import-issues/SKILL.md": common_import_issues_skill,
28
32
  "migration-api-verification/SKILL.md": migration_api_verification_skill,
33
+ "spreadsheet-import/SKILL.md": spreadsheet_import_skill,
29
34
  "superblocks-api/SKILL.md": superblocks_api_skill,
30
35
  "superblocks-api/references/code-blocks.md": superblocks_api_references_code_blocks,
31
36
  "superblocks-api/references/graphql.md": superblocks_api_references_graphql,
@@ -34,10 +39,13 @@ export const SYSTEM_SKILLS = {
34
39
  "superblocks-frontend/SKILL.md": superblocks_frontend_skill,
35
40
  "superblocks-frontend/_variants/api-imports-legacy.md": superblocks_frontend__variants_api_imports_legacy,
36
41
  "superblocks-frontend/_variants/api-imports-sdk.md": superblocks_frontend__variants_api_imports_sdk,
42
+ "superblocks-frontend/_variants/api-names-legacy.md": superblocks_frontend__variants_api_names_legacy,
43
+ "superblocks-frontend/_variants/api-names-sdk.md": superblocks_frontend__variants_api_names_sdk,
37
44
  "superblocks-frontend/references/embedding.md": superblocks_frontend_references_embedding,
38
45
  "superblocks-migration/SKILL.md": superblocks_migration_skill,
39
46
  "superblocks-migration/references/focused-debug.md": superblocks_migration_references_focused_debug,
40
47
  "superblocks-migration/references/yaml-block-mapping.md": superblocks_migration_references_yaml_block_mapping,
48
+ "superblocks-sdk-api/SKILL.md": superblocks_sdk_api_skill,
41
49
  "third-party-migration/SKILL.md": third_party_migration_skill,
42
50
  "third-party-migration/claude-design.md": third_party_migration_claude_design,
43
51
  "third-party-migration/lovable.md": third_party_migration_lovable,
@@ -1 +1 @@
1
- {"version":3,"file":"_registry.generated.js","sourceRoot":"","sources":["../../../../src/ai-service/skills/system/_registry.generated.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,qDAAqD;AAErD,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AAClG,OAAO,EAAE,OAAO,IAAI,gCAAgC,EAAE,MAAM,iDAAiD,CAAC;AAC9G,OAAO,EAAE,OAAO,IAAI,sCAAsC,EAAE,MAAM,uDAAuD,CAAC;AAC1H,OAAO,EAAE,OAAO,IAAI,kCAAkC,EAAE,MAAM,mDAAmD,CAAC;AAClH,OAAO,EAAE,OAAO,IAAI,oCAAoC,EAAE,MAAM,qDAAqD,CAAC;AACtH,OAAO,EAAE,OAAO,IAAI,wCAAwC,EAAE,MAAM,yDAAyD,CAAC;AAC9H,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AACxF,OAAO,EAAE,OAAO,IAAI,iDAAiD,EAAE,MAAM,kEAAkE,CAAC;AAChJ,OAAO,EAAE,OAAO,IAAI,8CAA8C,EAAE,MAAM,+DAA+D,CAAC;AAC1I,OAAO,EAAE,OAAO,IAAI,yCAAyC,EAAE,MAAM,0DAA0D,CAAC;AAChI,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AAClG,OAAO,EAAE,OAAO,IAAI,8CAA8C,EAAE,MAAM,+DAA+D,CAAC;AAC1I,OAAO,EAAE,OAAO,IAAI,mDAAmD,EAAE,MAAM,oEAAoE,CAAC;AACpJ,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACpG,OAAO,EAAE,OAAO,IAAI,mCAAmC,EAAE,MAAM,oDAAoD,CAAC;AACpH,OAAO,EAAE,OAAO,IAAI,6BAA6B,EAAE,MAAM,8CAA8C,CAAC;AACxG,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AACtG,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACpG,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AAE9F;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAA2B;IACnD,+BAA+B,EAAE,0BAA0B;IAC3D,qCAAqC,EAAE,gCAAgC;IACvE,0BAA0B,EAAE,qBAAqB;IACjD,2CAA2C,EAAE,sCAAsC;IACnF,uCAAuC,EAAE,kCAAkC;IAC3E,yCAAyC,EAAE,oCAAoC;IAC/E,6CAA6C,EAAE,wCAAwC;IACvF,+BAA+B,EAAE,0BAA0B;IAC3D,sDAAsD,EAAE,iDAAiD;IACzG,mDAAmD,EAAE,8CAA8C;IACnG,8CAA8C,EAAE,yCAAyC;IACzF,gCAAgC,EAAE,2BAA2B;IAC7D,mDAAmD,EAAE,8CAA8C;IACnG,wDAAwD,EAAE,mDAAmD;IAC7G,gCAAgC,EAAE,2BAA2B;IAC7D,wCAAwC,EAAE,mCAAmC;IAC7E,kCAAkC,EAAE,6BAA6B;IACjE,iCAAiC,EAAE,4BAA4B;IAC/D,6BAA6B,EAAE,wBAAwB;CACxD,CAAC"}
1
+ {"version":3,"file":"_registry.generated.js","sourceRoot":"","sources":["../../../../src/ai-service/skills/system/_registry.generated.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,qDAAqD;AAErD,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AAClG,OAAO,EAAE,OAAO,IAAI,gCAAgC,EAAE,MAAM,iDAAiD,CAAC;AAC9G,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AAC9F,OAAO,EAAE,OAAO,IAAI,sCAAsC,EAAE,MAAM,uDAAuD,CAAC;AAC1H,OAAO,EAAE,OAAO,IAAI,kCAAkC,EAAE,MAAM,mDAAmD,CAAC;AAClH,OAAO,EAAE,OAAO,IAAI,oCAAoC,EAAE,MAAM,qDAAqD,CAAC;AACtH,OAAO,EAAE,OAAO,IAAI,wCAAwC,EAAE,MAAM,yDAAyD,CAAC;AAC9H,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AACxF,OAAO,EAAE,OAAO,IAAI,iDAAiD,EAAE,MAAM,kEAAkE,CAAC;AAChJ,OAAO,EAAE,OAAO,IAAI,8CAA8C,EAAE,MAAM,+DAA+D,CAAC;AAC1I,OAAO,EAAE,OAAO,IAAI,+CAA+C,EAAE,MAAM,gEAAgE,CAAC;AAC5I,OAAO,EAAE,OAAO,IAAI,4CAA4C,EAAE,MAAM,6DAA6D,CAAC;AACtI,OAAO,EAAE,OAAO,IAAI,yCAAyC,EAAE,MAAM,0DAA0D,CAAC;AAChI,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AAClG,OAAO,EAAE,OAAO,IAAI,8CAA8C,EAAE,MAAM,+DAA+D,CAAC;AAC1I,OAAO,EAAE,OAAO,IAAI,mDAAmD,EAAE,MAAM,oEAAoE,CAAC;AACpJ,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACpG,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAChG,OAAO,EAAE,OAAO,IAAI,mCAAmC,EAAE,MAAM,oDAAoD,CAAC;AACpH,OAAO,EAAE,OAAO,IAAI,6BAA6B,EAAE,MAAM,8CAA8C,CAAC;AACxG,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AACtG,OAAO,EAAE,OAAO,IAAI,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACpG,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AAE9F;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAA2B;IACnD,+BAA+B,EAAE,0BAA0B;IAC3D,qCAAqC,EAAE,gCAAgC;IACvE,6BAA6B,EAAE,wBAAwB;IACvD,0BAA0B,EAAE,qBAAqB;IACjD,2CAA2C,EAAE,sCAAsC;IACnF,uCAAuC,EAAE,kCAAkC;IAC3E,yCAAyC,EAAE,oCAAoC;IAC/E,6CAA6C,EAAE,wCAAwC;IACvF,+BAA+B,EAAE,0BAA0B;IAC3D,sDAAsD,EAAE,iDAAiD;IACzG,mDAAmD,EAAE,8CAA8C;IACnG,oDAAoD,EAAE,+CAA+C;IACrG,iDAAiD,EAAE,4CAA4C;IAC/F,8CAA8C,EAAE,yCAAyC;IACzF,gCAAgC,EAAE,2BAA2B;IAC7D,mDAAmD,EAAE,8CAA8C;IACnG,wDAAwD,EAAE,mDAAmD;IAC7G,8BAA8B,EAAE,yBAAyB;IACzD,gCAAgC,EAAE,2BAA2B;IAC7D,wCAAwC,EAAE,mCAAmC;IAC7E,kCAAkC,EAAE,6BAA6B;IACjE,iCAAiC,EAAE,4BAA4B;IAC/D,6BAA6B,EAAE,wBAAwB;CACxD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/skills/system/resolve.ts"],"names":[],"mappings":"AAUA,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,OAAO,EACtB,MAAM,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAiB,GACvD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAwCxB"}
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/skills/system/resolve.ts"],"names":[],"mappings":"AAgBA,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,OAAO,EACtB,MAAM,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAiB,GACvD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAoExB"}
@@ -1,32 +1,57 @@
1
1
  import { SYSTEM_SKILLS } from "./_registry.generated.js";
2
2
  const FRONTEND_SKILL_PATH = "superblocks-frontend/SKILL.md";
3
3
  const FRONTEND_IMPORT_GUIDANCE_MARKER = "<!-- API_PRIMITIVE_IMPORT_GUIDANCE -->";
4
+ const FRONTEND_API_NAME_GUIDANCE_MARKER = "<!-- API_NAME_GUIDANCE -->";
4
5
  const LEGACY_FRONTEND_IMPORTS_PATH = "superblocks-frontend/_variants/api-imports-legacy.md";
5
6
  const SDK_FRONTEND_IMPORTS_PATH = "superblocks-frontend/_variants/api-imports-sdk.md";
7
+ const LEGACY_FRONTEND_API_NAMES_PATH = "superblocks-frontend/_variants/api-names-legacy.md";
8
+ const SDK_FRONTEND_API_NAMES_PATH = "superblocks-frontend/_variants/api-names-sdk.md";
9
+ const SDK_API_SKILL_PATH = "superblocks-sdk-api/SKILL.md";
6
10
  export function resolveSystemSkills(sdkApiEnabled, skills = SYSTEM_SKILLS) {
7
11
  const frontendSkill = skills[FRONTEND_SKILL_PATH];
8
12
  const legacyImports = skills[LEGACY_FRONTEND_IMPORTS_PATH];
9
13
  const sdkImports = skills[SDK_FRONTEND_IMPORTS_PATH];
14
+ const legacyApiNames = skills[LEGACY_FRONTEND_API_NAMES_PATH];
15
+ const sdkApiNames = skills[SDK_FRONTEND_API_NAMES_PATH];
10
16
  if (frontendSkill === undefined &&
11
17
  legacyImports === undefined &&
12
- sdkImports === undefined) {
13
- return { ...skills };
18
+ sdkImports === undefined &&
19
+ legacyApiNames === undefined &&
20
+ sdkApiNames === undefined) {
21
+ const resolvedSkills = { ...skills };
22
+ if (!sdkApiEnabled) {
23
+ delete resolvedSkills[SDK_API_SKILL_PATH];
24
+ }
25
+ return resolvedSkills;
14
26
  }
15
27
  if (frontendSkill === undefined ||
16
28
  legacyImports === undefined ||
17
- sdkImports === undefined) {
29
+ sdkImports === undefined ||
30
+ legacyApiNames === undefined ||
31
+ sdkApiNames === undefined) {
18
32
  throw new Error("Frontend system skill variants are incomplete");
19
33
  }
20
34
  const markerCount = frontendSkill.split(FRONTEND_IMPORT_GUIDANCE_MARKER).length - 1;
21
35
  if (markerCount !== 1) {
22
36
  throw new Error(`Expected one frontend API import guidance marker, found ${markerCount}`);
23
37
  }
38
+ const apiNameMarkerCount = frontendSkill.split(FRONTEND_API_NAME_GUIDANCE_MARKER).length - 1;
39
+ if (apiNameMarkerCount !== 1) {
40
+ throw new Error(`Expected one frontend API name guidance marker, found ${apiNameMarkerCount}`);
41
+ }
24
42
  const resolvedSkills = {
25
43
  ...skills,
26
- [FRONTEND_SKILL_PATH]: frontendSkill.replace(FRONTEND_IMPORT_GUIDANCE_MARKER, sdkApiEnabled ? sdkImports : legacyImports),
44
+ [FRONTEND_SKILL_PATH]: frontendSkill
45
+ .replace(FRONTEND_IMPORT_GUIDANCE_MARKER, sdkApiEnabled ? sdkImports : legacyImports)
46
+ .replace(FRONTEND_API_NAME_GUIDANCE_MARKER, sdkApiEnabled ? sdkApiNames : legacyApiNames),
27
47
  };
28
48
  delete resolvedSkills[LEGACY_FRONTEND_IMPORTS_PATH];
29
49
  delete resolvedSkills[SDK_FRONTEND_IMPORTS_PATH];
50
+ delete resolvedSkills[LEGACY_FRONTEND_API_NAMES_PATH];
51
+ delete resolvedSkills[SDK_FRONTEND_API_NAMES_PATH];
52
+ if (!sdkApiEnabled) {
53
+ delete resolvedSkills[SDK_API_SKILL_PATH];
54
+ }
30
55
  return resolvedSkills;
31
56
  }
32
57
  //# sourceMappingURL=resolve.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../../src/ai-service/skills/system/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,MAAM,mBAAmB,GAAG,+BAA+B,CAAC;AAC5D,MAAM,+BAA+B,GACnC,wCAAwC,CAAC;AAC3C,MAAM,4BAA4B,GAChC,sDAAsD,CAAC;AACzD,MAAM,yBAAyB,GAC7B,mDAAmD,CAAC;AAEtD,MAAM,UAAU,mBAAmB,CACjC,aAAsB,EACtB,SAA2C,aAAa;IAExD,MAAM,aAAa,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,MAAM,CAAC,yBAAyB,CAAC,CAAC;IAErD,IACE,aAAa,KAAK,SAAS;QAC3B,aAAa,KAAK,SAAS;QAC3B,UAAU,KAAK,SAAS,EACxB,CAAC;QACD,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC;IACvB,CAAC;IAED,IACE,aAAa,KAAK,SAAS;QAC3B,aAAa,KAAK,SAAS;QAC3B,UAAU,KAAK,SAAS,EACxB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,WAAW,GACf,aAAa,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAClE,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACb,2DAA2D,WAAW,EAAE,CACzE,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAA2B;QAC7C,GAAG,MAAM;QACT,CAAC,mBAAmB,CAAC,EAAE,aAAa,CAAC,OAAO,CAC1C,+BAA+B,EAC/B,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAC3C;KACF,CAAC;IACF,OAAO,cAAc,CAAC,4BAA4B,CAAC,CAAC;IACpD,OAAO,cAAc,CAAC,yBAAyB,CAAC,CAAC;IAEjD,OAAO,cAAc,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../../src/ai-service/skills/system/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,MAAM,mBAAmB,GAAG,+BAA+B,CAAC;AAC5D,MAAM,+BAA+B,GACnC,wCAAwC,CAAC;AAC3C,MAAM,iCAAiC,GAAG,4BAA4B,CAAC;AACvE,MAAM,4BAA4B,GAChC,sDAAsD,CAAC;AACzD,MAAM,yBAAyB,GAC7B,mDAAmD,CAAC;AACtD,MAAM,8BAA8B,GAClC,oDAAoD,CAAC;AACvD,MAAM,2BAA2B,GAC/B,iDAAiD,CAAC;AACpD,MAAM,kBAAkB,GAAG,8BAA8B,CAAC;AAE1D,MAAM,UAAU,mBAAmB,CACjC,aAAsB,EACtB,SAA2C,aAAa;IAExD,MAAM,aAAa,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,MAAM,CAAC,yBAAyB,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,MAAM,CAAC,8BAA8B,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC;IAExD,IACE,aAAa,KAAK,SAAS;QAC3B,aAAa,KAAK,SAAS;QAC3B,UAAU,KAAK,SAAS;QACxB,cAAc,KAAK,SAAS;QAC5B,WAAW,KAAK,SAAS,EACzB,CAAC;QACD,MAAM,cAAc,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;QACrC,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,IACE,aAAa,KAAK,SAAS;QAC3B,aAAa,KAAK,SAAS;QAC3B,UAAU,KAAK,SAAS;QACxB,cAAc,KAAK,SAAS;QAC5B,WAAW,KAAK,SAAS,EACzB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,WAAW,GACf,aAAa,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAClE,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACb,2DAA2D,WAAW,EAAE,CACzE,CAAC;IACJ,CAAC;IAED,MAAM,kBAAkB,GACtB,aAAa,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IACpE,IAAI,kBAAkB,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CACb,yDAAyD,kBAAkB,EAAE,CAC9E,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAA2B;QAC7C,GAAG,MAAM;QACT,CAAC,mBAAmB,CAAC,EAAE,aAAa;aACjC,OAAO,CACN,+BAA+B,EAC/B,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAC3C;aACA,OAAO,CACN,iCAAiC,EACjC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAC7C;KACJ,CAAC;IACF,OAAO,cAAc,CAAC,4BAA4B,CAAC,CAAC;IACpD,OAAO,cAAc,CAAC,yBAAyB,CAAC,CAAC;IACjD,OAAO,cAAc,CAAC,8BAA8B,CAAC,CAAC;IACtD,OAAO,cAAc,CAAC,2BAA2B,CAAC,CAAC;IACnD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const content = "---\nname: spreadsheet-import\ndescription: |\n Build an app from an attached Excel workbook, or import one into the App Database.\n Load whenever an `.xlsx` attachment is part of the request \u2014 before designing a schema, before writing a migration, and before importing any rows.\n Explains the structure digest the converter writes beside the CSVs, and how to decide which workbook columns become stored database columns and which become derived app behavior.\nreadOnly: true\nmetadata:\n author: superblocks\n version: \"1.0\"\n---\n\n# Building an app from an Excel workbook\n\nAn `.xlsx` attachment never reaches you as a spreadsheet. Before `downloadAttachments` or `testApi` hands it over, the converter turns it into:\n\n- one CSV per sheet that holds data, already trimmed to the table, and\n- a `*-structure.json` digest describing every sheet in a few hundred tokens.\n\nGenerated SDK code must still parse CSV only. Never parse spreadsheet binary formats in sandbox code.\n\n## Design from the digest, not from the rows\n\nRead the digest first. It is the thing to design from; the CSVs beside it are rows to load, not reading material. It is design evidence, not executable code.\n\nAttaching a workbook is not by itself a request to load its rows. If the request was to inspect the file, design a schema, or build screens, do that and ask before importing. If the request was to build an app from the workbook, the data is part of it.\n\n## What the digest tells you\n\n**`role`** \u2014 a `data table` has a `csvFile` to import. Most sheets are data tables, including ones with several calculated columns beside their typed-in values. A `derived report` is the narrower case where the sheet stores nothing of its own: every column beside its labels is worked out from other cells. It has no CSV, so build it as a page or view over the imported tables, never as another table.\n\n**`headerRowNumber`, `banner`, `notes`, `footerAggregates`** \u2014 the CSVs are already trimmed to the table. A banner title, the rows above the header, a sentence written under the table, and a footer total are described here and excluded from the CSV, so load every CSV row as data and put the banner, the notes, and the totals in the UI instead.\n\n**`computed` and `coverage`** \u2014 a column with `computed` states one rule for the whole column, and `coverage` says how many of its cells follow that rule (`5000/5000` is a per-row rule). Treat those as derived behavior, not stored columns. A column with only an `example` computes something different per row, so read it as report logic rather than a rule to repeat.\n\n**`readsFrom`** \u2014 the sheets this sheet's formulas reference. Use it plus validated matching keys as relationship evidence. Do not invent foreign keys from column names alone.\n\n**`hidden`** \u2014 a sheet or column the workbook hid from its own readers, so usually working data rather than part of the app. Ask before surfacing it instead of importing it as an ordinary table or field.\n\n**`type` and `format`** \u2014 the workbook's own column types and number formats (`yyyy-mm-dd`, currency, `0%`). Use them for column types and UI display formats. A percentage is stored as a fraction, so `0.15` with format `0%` means 15 percent.\n\n**`errorCellCount`** \u2014 cells whose formulas evaluate to an Excel error (`#DIV/0!`, `#N/A`) are blank in the CSV and counted here. Import them as empty and tell the user which columns were affected. Never substitute a guessed value.\n\nA sheet whose only content is a column of sentences is a note to the reader, not a table. Say so and leave it out of the schema rather than importing the sentences as rows.\n\nThe workbook's colors, fonts, borders, and column widths are not reported and are not part of the app. Use the Superblocks design system.\n\n## Stored versus derived\n\nStore constant and input columns in the App Database. Treat columns whose body cells are consistently formulas as derived behavior implemented in SQL queries, SDK APIs, or UI code instead of stored database columns.\n\nA column that mixes formulas and constants stays stored unless the workbook clearly establishes one rule. Do not guess a formula for exceptional or manually overridden values.\n\nNever evaluate workbook formulas, either yourself or in generated SDK code. Use cached formula results only to understand examples and to verify that the app's derived behavior matches the workbook.\n\nIf a formula cannot be represented safely in SQL, an SDK API, or UI code, import its cached result as a snapshot, keep it non-editable by default, and explain that it will not recalculate.\n\n## Order of work\n\nWhen a workbook is attached to a sparse request, treat it as the app specification unless the user says otherwise, and infer useful tables and screens from sheet names, headers, values, and formulas.\n\nAfter deciding stored versus derived fields: provision and migrate the schema, import only the stored fields, then build functional screens and APIs over the imported tables. Verify representative derived values against the cached workbook results before reporting completion.\n";
2
+ //# sourceMappingURL=skill.generated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.generated.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/skills/system/spreadsheet-import/skill.generated.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO,wiKA8DnB,CAAC"}