@superblocksteam/vite-plugin-file-sync 2.0.137 → 2.0.138-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 (229) hide show
  1. package/dist/ai-service/agent/middleware.d.ts.map +1 -1
  2. package/dist/ai-service/agent/middleware.js +2 -22
  3. package/dist/ai-service/agent/middleware.js.map +1 -1
  4. package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts +1 -0
  5. package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts.map +1 -1
  6. package/dist/ai-service/agent/tools/build-capture-screenshot.js +150 -7
  7. package/dist/ai-service/agent/tools/build-capture-screenshot.js.map +1 -1
  8. package/dist/ai-service/agent/tools/build-read-file.d.ts +10 -0
  9. package/dist/ai-service/agent/tools/build-read-file.d.ts.map +1 -1
  10. package/dist/ai-service/agent/tools/build-read-file.js +14 -1
  11. package/dist/ai-service/agent/tools/build-read-file.js.map +1 -1
  12. package/dist/ai-service/agent/tools/index.d.ts +1 -1
  13. package/dist/ai-service/agent/tools/index.d.ts.map +1 -1
  14. package/dist/ai-service/agent/tools/index.js +1 -1
  15. package/dist/ai-service/agent/tools/index.js.map +1 -1
  16. package/dist/ai-service/agent/tools.d.ts +1 -1
  17. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  18. package/dist/ai-service/agent/tools.js +15 -1
  19. package/dist/ai-service/agent/tools.js.map +1 -1
  20. package/dist/ai-service/agent/tools2/tools/grep.d.ts.map +1 -1
  21. package/dist/ai-service/agent/tools2/tools/grep.js +2 -1
  22. package/dist/ai-service/agent/tools2/tools/grep.js.map +1 -1
  23. package/dist/ai-service/agent/tools2/tools/remember-knowledge.d.ts.map +1 -1
  24. package/dist/ai-service/agent/tools2/tools/remember-knowledge.js +8 -0
  25. package/dist/ai-service/agent/tools2/tools/remember-knowledge.js.map +1 -1
  26. package/dist/ai-service/agent/tools2/tools/start-test-run.d.ts.map +1 -1
  27. package/dist/ai-service/agent/tools2/tools/start-test-run.js +14 -6
  28. package/dist/ai-service/agent/tools2/tools/start-test-run.js.map +1 -1
  29. package/dist/ai-service/agent/tools2/tools/web-fetch.d.ts +2 -0
  30. package/dist/ai-service/agent/tools2/tools/web-fetch.d.ts.map +1 -1
  31. package/dist/ai-service/agent/tools2/tools/web-fetch.js +10 -5
  32. package/dist/ai-service/agent/tools2/tools/web-fetch.js.map +1 -1
  33. package/dist/ai-service/agent/utils.d.ts.map +1 -1
  34. package/dist/ai-service/agent/utils.js +25 -7
  35. package/dist/ai-service/agent/utils.js.map +1 -1
  36. package/dist/ai-service/app-interface/linter.d.ts.map +1 -1
  37. package/dist/ai-service/app-interface/linter.js +14 -3
  38. package/dist/ai-service/app-interface/linter.js.map +1 -1
  39. package/dist/ai-service/app-interface/npm-package-lookup.d.ts +19 -14
  40. package/dist/ai-service/app-interface/npm-package-lookup.d.ts.map +1 -1
  41. package/dist/ai-service/app-interface/npm-package-lookup.js +56 -23
  42. package/dist/ai-service/app-interface/npm-package-lookup.js.map +1 -1
  43. package/dist/ai-service/app-interface/npm-registry.d.ts +96 -48
  44. package/dist/ai-service/app-interface/npm-registry.d.ts.map +1 -1
  45. package/dist/ai-service/app-interface/npm-registry.js +247 -220
  46. package/dist/ai-service/app-interface/npm-registry.js.map +1 -1
  47. package/dist/ai-service/app-interface/shell.d.ts +36 -0
  48. package/dist/ai-service/app-interface/shell.d.ts.map +1 -1
  49. package/dist/ai-service/app-interface/shell.js +183 -8
  50. package/dist/ai-service/app-interface/shell.js.map +1 -1
  51. package/dist/ai-service/app-skills/helpers.d.ts.map +1 -1
  52. package/dist/ai-service/app-skills/helpers.js +48 -8
  53. package/dist/ai-service/app-skills/helpers.js.map +1 -1
  54. package/dist/ai-service/app-skills/manager.d.ts +5 -0
  55. package/dist/ai-service/app-skills/manager.d.ts.map +1 -1
  56. package/dist/ai-service/app-skills/manager.js +13 -4
  57. package/dist/ai-service/app-skills/manager.js.map +1 -1
  58. package/dist/ai-service/attachments/uploaded-content-part.d.ts.map +1 -1
  59. package/dist/ai-service/attachments/uploaded-content-part.js +12 -5
  60. package/dist/ai-service/attachments/uploaded-content-part.js.map +1 -1
  61. package/dist/ai-service/index.d.ts +1 -2
  62. package/dist/ai-service/index.d.ts.map +1 -1
  63. package/dist/ai-service/index.js +16 -175
  64. package/dist/ai-service/index.js.map +1 -1
  65. package/dist/ai-service/judge/judge-eval-service-runner.js +0 -4
  66. package/dist/ai-service/judge/judge-eval-service-runner.js.map +1 -1
  67. package/dist/ai-service/judge/judge-service.js +1 -1
  68. package/dist/ai-service/judge/judge-service.js.map +1 -1
  69. package/dist/ai-service/knowledge/knowledge-metrics-emitters.d.ts +20 -0
  70. package/dist/ai-service/knowledge/knowledge-metrics-emitters.d.ts.map +1 -0
  71. package/dist/ai-service/knowledge/knowledge-metrics-emitters.js +77 -0
  72. package/dist/ai-service/knowledge/knowledge-metrics-emitters.js.map +1 -0
  73. package/dist/ai-service/knowledge/knowledge-metrics.d.ts +43 -0
  74. package/dist/ai-service/knowledge/knowledge-metrics.d.ts.map +1 -0
  75. package/dist/ai-service/knowledge/knowledge-metrics.js +217 -0
  76. package/dist/ai-service/knowledge/knowledge-metrics.js.map +1 -0
  77. package/dist/ai-service/llm/client.d.ts +144 -18
  78. package/dist/ai-service/llm/client.d.ts.map +1 -1
  79. package/dist/ai-service/llm/client.js +303 -48
  80. package/dist/ai-service/llm/client.js.map +1 -1
  81. package/dist/ai-service/llm/context-v2/context-metrics.d.ts +1 -0
  82. package/dist/ai-service/llm/context-v2/context-metrics.d.ts.map +1 -1
  83. package/dist/ai-service/llm/context-v2/context-metrics.js +14 -1
  84. package/dist/ai-service/llm/context-v2/context-metrics.js.map +1 -1
  85. package/dist/ai-service/llm/context-v2/context.d.ts +3 -0
  86. package/dist/ai-service/llm/context-v2/context.d.ts.map +1 -1
  87. package/dist/ai-service/llm/context-v2/context.js +34 -1
  88. package/dist/ai-service/llm/context-v2/context.js.map +1 -1
  89. package/dist/ai-service/llm/context-v2/manager.d.ts.map +1 -1
  90. package/dist/ai-service/llm/context-v2/manager.js +4 -1
  91. package/dist/ai-service/llm/context-v2/manager.js.map +1 -1
  92. package/dist/ai-service/llm/interaction/adapters/vercel.d.ts +1 -1
  93. package/dist/ai-service/llm/interaction/adapters/vercel.d.ts.map +1 -1
  94. package/dist/ai-service/llm/interaction/adapters/vercel.js +19 -4
  95. package/dist/ai-service/llm/interaction/adapters/vercel.js.map +1 -1
  96. package/dist/ai-service/llm/interaction/provider.d.ts +17 -3
  97. package/dist/ai-service/llm/interaction/provider.d.ts.map +1 -1
  98. package/dist/ai-service/llm/provider.d.ts.map +1 -1
  99. package/dist/ai-service/llm/provider.js +19 -15
  100. package/dist/ai-service/llm/provider.js.map +1 -1
  101. package/dist/ai-service/llm/stream/managed-stream.d.ts.map +1 -1
  102. package/dist/ai-service/llm/stream/managed-stream.js +25 -2
  103. package/dist/ai-service/llm/stream/managed-stream.js.map +1 -1
  104. package/dist/ai-service/llm/stream/observers/llmobs.d.ts +9 -0
  105. package/dist/ai-service/llm/stream/observers/llmobs.d.ts.map +1 -1
  106. package/dist/ai-service/llm/stream/observers/llmobs.js +22 -5
  107. package/dist/ai-service/llm/stream/observers/llmobs.js.map +1 -1
  108. package/dist/ai-service/llm/stream/observers/logging.d.ts.map +1 -1
  109. package/dist/ai-service/llm/stream/observers/logging.js +17 -12
  110. package/dist/ai-service/llm/stream/observers/logging.js.map +1 -1
  111. package/dist/ai-service/llm/stream/orchestrator.d.ts +1 -0
  112. package/dist/ai-service/llm/stream/orchestrator.d.ts.map +1 -1
  113. package/dist/ai-service/llm/stream/orchestrator.js +131 -0
  114. package/dist/ai-service/llm/stream/orchestrator.js.map +1 -1
  115. package/dist/ai-service/llm/types.d.ts +17 -6
  116. package/dist/ai-service/llm/types.d.ts.map +1 -1
  117. package/dist/ai-service/prompt-builder-service/classifiers/prompt-interpret-task.d.ts +3 -1
  118. package/dist/ai-service/prompt-builder-service/classifiers/prompt-interpret-task.d.ts.map +1 -1
  119. package/dist/ai-service/prompt-builder-service/classifiers/prompt-interpret-task.js +13 -5
  120. package/dist/ai-service/prompt-builder-service/classifiers/prompt-interpret-task.js.map +1 -1
  121. package/dist/ai-service/security/safety-classifier.d.ts +14 -1
  122. package/dist/ai-service/security/safety-classifier.d.ts.map +1 -1
  123. package/dist/ai-service/security/safety-classifier.js +26 -12
  124. package/dist/ai-service/security/safety-classifier.js.map +1 -1
  125. package/dist/ai-service/skills/system/third-party-migration/claude-design.generated.d.ts +1 -1
  126. package/dist/ai-service/skills/system/third-party-migration/claude-design.generated.d.ts.map +1 -1
  127. package/dist/ai-service/skills/system/third-party-migration/claude-design.generated.js +35 -18
  128. package/dist/ai-service/skills/system/third-party-migration/claude-design.generated.js.map +1 -1
  129. package/dist/ai-service/skills/system/third-party-migration/skill.generated.d.ts +1 -1
  130. package/dist/ai-service/skills/system/third-party-migration/skill.generated.d.ts.map +1 -1
  131. package/dist/ai-service/skills/system/third-party-migration/skill.generated.js +7 -5
  132. package/dist/ai-service/skills/system/third-party-migration/skill.generated.js.map +1 -1
  133. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  134. package/dist/ai-service/state-machine/clark-fsm.js +3 -2
  135. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  136. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
  137. package/dist/ai-service/state-machine/handlers/agent-planning.js +14 -7
  138. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
  139. package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts +1 -1
  140. package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts.map +1 -1
  141. package/dist/ai-service/state-machine/handlers/awaiting-user.js +40 -27
  142. package/dist/ai-service/state-machine/handlers/awaiting-user.js.map +1 -1
  143. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts +14 -0
  144. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  145. package/dist/ai-service/state-machine/handlers/llm-generating.js +72 -16
  146. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  147. package/dist/ai-service/state-machine/handlers/next-steps.d.ts +8 -1
  148. package/dist/ai-service/state-machine/handlers/next-steps.d.ts.map +1 -1
  149. package/dist/ai-service/state-machine/handlers/next-steps.js +13 -11
  150. package/dist/ai-service/state-machine/handlers/next-steps.js.map +1 -1
  151. package/dist/ai-service/state-machine/helpers/peer.d.ts.map +1 -1
  152. package/dist/ai-service/state-machine/helpers/peer.js +3 -2
  153. package/dist/ai-service/state-machine/helpers/peer.js.map +1 -1
  154. package/dist/ai-service/state-machine/helpers/stable-peer.d.ts +5 -0
  155. package/dist/ai-service/state-machine/helpers/stable-peer.d.ts.map +1 -1
  156. package/dist/ai-service/state-machine/helpers/stable-peer.js +37 -0
  157. package/dist/ai-service/state-machine/helpers/stable-peer.js.map +1 -1
  158. package/dist/ai-service/template-renderer.d.ts.map +1 -1
  159. package/dist/ai-service/template-renderer.js +2 -2
  160. package/dist/ai-service/template-renderer.js.map +1 -1
  161. package/dist/ai-service/types.d.ts +2 -2
  162. package/dist/ai-service/types.d.ts.map +1 -1
  163. package/dist/dev-server-ws-smoke-client.d.ts +41 -0
  164. package/dist/dev-server-ws-smoke-client.d.ts.map +1 -0
  165. package/dist/dev-server-ws-smoke-client.js +314 -0
  166. package/dist/dev-server-ws-smoke-client.js.map +1 -0
  167. package/dist/early-error-relay.d.ts +31 -0
  168. package/dist/early-error-relay.d.ts.map +1 -0
  169. package/dist/early-error-relay.js +88 -0
  170. package/dist/early-error-relay.js.map +1 -0
  171. package/dist/file-sync-vite-plugin.d.ts +26 -1
  172. package/dist/file-sync-vite-plugin.d.ts.map +1 -1
  173. package/dist/file-sync-vite-plugin.js +82 -43
  174. package/dist/file-sync-vite-plugin.js.map +1 -1
  175. package/dist/file-system-helpers.d.ts +13 -0
  176. package/dist/file-system-helpers.d.ts.map +1 -1
  177. package/dist/file-system-helpers.js +18 -1
  178. package/dist/file-system-helpers.js.map +1 -1
  179. package/dist/file-system-manager.d.ts +0 -1
  180. package/dist/file-system-manager.d.ts.map +1 -1
  181. package/dist/file-system-manager.js +0 -53
  182. package/dist/file-system-manager.js.map +1 -1
  183. package/dist/injected-index.d.ts +6 -0
  184. package/dist/injected-index.d.ts.map +1 -1
  185. package/dist/injected-index.js +59 -14
  186. package/dist/injected-index.js.map +1 -1
  187. package/dist/migration/migration-routes.d.ts +3 -0
  188. package/dist/migration/migration-routes.d.ts.map +1 -1
  189. package/dist/migration/migration-routes.js +93 -108
  190. package/dist/migration/migration-routes.js.map +1 -1
  191. package/dist/migration/restructure.d.ts +15 -0
  192. package/dist/migration/restructure.d.ts.map +1 -1
  193. package/dist/migration/restructure.js +50 -1
  194. package/dist/migration/restructure.js.map +1 -1
  195. package/dist/migration-templates/app-fullstack/eslint.config.js +6 -1
  196. package/dist/migration-templates/app-fullstack/package.json +2 -1
  197. package/dist/plugin-options.d.ts +7 -0
  198. package/dist/plugin-options.d.ts.map +1 -1
  199. package/dist/plugin-options.js.map +1 -1
  200. package/dist/socket-manager.d.ts.map +1 -1
  201. package/dist/socket-manager.js +0 -5
  202. package/dist/socket-manager.js.map +1 -1
  203. package/dist/sync-service/list-dir.d.ts +1 -1
  204. package/dist/sync-service/list-dir.js +3 -3
  205. package/dist/sync-service/list-dir.js.map +1 -1
  206. package/dist/util/log-sanitizer.d.ts.map +1 -1
  207. package/dist/util/log-sanitizer.js +13 -6
  208. package/dist/util/log-sanitizer.js.map +1 -1
  209. package/dist/util/summarize-for-logging.d.ts +14 -0
  210. package/dist/util/summarize-for-logging.d.ts.map +1 -0
  211. package/dist/util/summarize-for-logging.js +94 -0
  212. package/dist/util/summarize-for-logging.js.map +1 -0
  213. package/package.json +8 -8
  214. package/dist/ai-service/agent/tools2/tools/explain-code-finalize.d.ts +0 -4
  215. package/dist/ai-service/agent/tools2/tools/explain-code-finalize.d.ts.map +0 -1
  216. package/dist/ai-service/agent/tools2/tools/explain-code-finalize.js +0 -19
  217. package/dist/ai-service/agent/tools2/tools/explain-code-finalize.js.map +0 -1
  218. package/dist/ai-service/llm/impl/anthropic.d.ts +0 -3
  219. package/dist/ai-service/llm/impl/anthropic.d.ts.map +0 -1
  220. package/dist/ai-service/llm/impl/anthropic.js +0 -15
  221. package/dist/ai-service/llm/impl/anthropic.js.map +0 -1
  222. package/dist/ai-service/prompts/explain-code.d.ts +0 -7
  223. package/dist/ai-service/prompts/explain-code.d.ts.map +0 -1
  224. package/dist/ai-service/prompts/explain-code.js +0 -23
  225. package/dist/ai-service/prompts/explain-code.js.map +0 -1
  226. package/dist/ai-service/util/json-stream-parser.d.ts +0 -20
  227. package/dist/ai-service/util/json-stream-parser.d.ts.map +0 -1
  228. package/dist/ai-service/util/json-stream-parser.js +0 -139
  229. package/dist/ai-service/util/json-stream-parser.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"file-system-manager.js","sourceRoot":"","sources":["../src/file-system-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-system-manager.js","sourceRoot":"","sources":["../src/file-system-manager.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,12 @@
1
1
  import type http from "node:http";
2
2
  import type { Connect } from "vite";
3
3
  import type { ViteDevServer } from "vite";
4
+ /**
5
+ * Resolves the client entry script for injected index.html in dev.
6
+ * Mirrors build-time resolution in inject-index-vite-plugin.ts, including
7
+ * `.sb_template` on disk and stale entry-point fallbacks after migration abort.
8
+ */
9
+ export declare function resolveDevEntryPoint(projectRoot: string): string;
4
10
  /**
5
11
  * This middleware is used so we can serve a custom index.html without
6
12
  * having the user specify their own file inside of their code-mode apps.
@@ -1 +1 @@
1
- {"version":3,"file":"injected-index.d.ts","sourceRoot":"","sources":["../src/injected-index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAGlC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAqF1C;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,aAAa,EACrB,QAAQ,CAAC,EAAE;IAAE,sBAAsB,CAAC,EAAE,OAAO,CAAA;CAAE,IAG7C,KAAK,OAAO,CAAC,eAAe,EAC5B,KAAK,IAAI,CAAC,cAAc,EACxB,MAAM,OAAO,CAAC,YAAY,mBAuD7B"}
1
+ {"version":3,"file":"injected-index.d.ts","sourceRoot":"","sources":["../src/injected-index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAGlC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AA8F1C;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAuBhE;AA+BD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,aAAa,EACrB,QAAQ,CAAC,EAAE;IAAE,sBAAsB,CAAC,EAAE,OAAO,CAAA;CAAE,IAG7C,KAAK,OAAO,CAAC,eAAe,EAC5B,KAAK,IAAI,CAAC,cAAc,EACxB,MAAM,OAAO,CAAC,YAAY,mBAiC7B"}
@@ -1,6 +1,7 @@
1
1
  import fs from "node:fs";
2
2
  import path from "node:path";
3
3
  import { getErrorOverlayScript } from "./client-error-overlay.js";
4
+ import { getEarlyErrorRelayScript } from "./early-error-relay.js";
4
5
  const isLocalServer = process.env.SUPERBLOCKS_IS_CSB !== "true";
5
6
  /**
6
7
  * Maps template names to their client entry point paths.
@@ -41,6 +42,54 @@ function resolveStaleConfiguredEntryPoint(projectRoot, configuredEntryPoint) {
41
42
  const legacyEntryExists = fs.existsSync(path.join(projectRoot, "root.tsx"));
42
43
  return legacyEntryExists ? "root.tsx" : configuredEntryPoint;
43
44
  }
45
+ function getTemplateNameFromDisk(projectRoot) {
46
+ try {
47
+ const value = fs
48
+ .readFileSync(path.join(projectRoot, ".sb_template"), "utf-8")
49
+ .trim();
50
+ return value || undefined;
51
+ }
52
+ catch {
53
+ return undefined;
54
+ }
55
+ }
56
+ function entryPointExists(projectRoot, entryPoint) {
57
+ return fs.existsSync(path.join(projectRoot, entryPoint));
58
+ }
59
+ function pickExistingEntryPoint(projectRoot, entryPoint) {
60
+ if (entryPointExists(projectRoot, entryPoint)) {
61
+ return entryPoint;
62
+ }
63
+ if (entryPoint === "root.tsx" &&
64
+ entryPointExists(projectRoot, "client/root.tsx")) {
65
+ return "client/root.tsx";
66
+ }
67
+ if (entryPoint === "client/root.tsx" &&
68
+ entryPointExists(projectRoot, "root.tsx")) {
69
+ return "root.tsx";
70
+ }
71
+ return entryPoint;
72
+ }
73
+ /**
74
+ * Resolves the client entry script for injected index.html in dev.
75
+ * Mirrors build-time resolution in inject-index-vite-plugin.ts, including
76
+ * `.sb_template` on disk and stale entry-point fallbacks after migration abort.
77
+ */
78
+ export function resolveDevEntryPoint(projectRoot) {
79
+ const configuredEntryPoint = resolveStaleConfiguredEntryPoint(projectRoot, process.env.SUPERBLOCKS_APP_ENTRY_POINT);
80
+ const templateName = process.env.SUPERBLOCKS_APP_TEMPLATE_NAME ??
81
+ getTemplateNameFromDisk(projectRoot);
82
+ let entryPoint = configuredEntryPoint;
83
+ const localLayoutEntryPoint = detectLocalLayoutEntryPoint(projectRoot);
84
+ if (localLayoutEntryPoint === "client/root.tsx" &&
85
+ (!configuredEntryPoint || configuredEntryPoint === "root.tsx")) {
86
+ entryPoint = localLayoutEntryPoint;
87
+ }
88
+ if (!entryPoint) {
89
+ entryPoint = getTemplateEntryPoint(templateName);
90
+ }
91
+ return pickExistingEntryPoint(projectRoot, entryPoint);
92
+ }
44
93
  const isHostSameAsOrigin = (host, origin) => {
45
94
  try {
46
95
  const originUrl = new URL(origin);
@@ -77,20 +126,7 @@ export function indexHtmlMiddleware(server, features) {
77
126
  .getModuleByUrl(url.pathname)
78
127
  .catch(() => null);
79
128
  if (!module && isPageUrl(req)) {
80
- const configuredEntryPoint = resolveStaleConfiguredEntryPoint(server.config.root, process.env.SUPERBLOCKS_APP_ENTRY_POINT);
81
- const templateName = process.env.SUPERBLOCKS_APP_TEMPLATE_NAME;
82
- let entryPoint = configuredEntryPoint;
83
- // In local dev, allow fullstack layout detection to override stale root.tsx defaults.
84
- if (isLocalServer) {
85
- const localLayoutEntryPoint = detectLocalLayoutEntryPoint(server.config.root);
86
- if (localLayoutEntryPoint === "client/root.tsx" &&
87
- (!configuredEntryPoint || configuredEntryPoint === "root.tsx")) {
88
- entryPoint = localLayoutEntryPoint;
89
- }
90
- }
91
- if (!entryPoint) {
92
- entryPoint = getTemplateEntryPoint(templateName);
93
- }
129
+ const entryPoint = resolveDevEntryPoint(server.config.root);
94
130
  const viewMode = url.searchParams.get("app_mode") === "PUBLISHED" ||
95
131
  url.searchParams.get("app_mode") === "PREVIEW"
96
132
  ? "deployed"
@@ -119,6 +155,15 @@ function getIndexHtml(features, entryPoint, viewMode = "dev") {
119
155
  window._SB_VIEW_MODE = "${viewMode}";
120
156
  ${features?.enableSessionRecording ? `window._SB_ENABLE_SESSION_RECORDING = true;` : ""}
121
157
  </script>
158
+ <!--
159
+ Classic (non-module) script so it runs during parse, before the deferred
160
+ module scripts below. This guarantees its global error listeners are armed
161
+ before root.tsx evaluates, so a module-graph failure (e.g. a bad named
162
+ import) is still relayed to the editor.
163
+ -->
164
+ <script>
165
+ ${getEarlyErrorRelayScript()}
166
+ </script>
122
167
  <!-- Error overlay must load before root.tsx to catch its errors -->
123
168
  <script type="module">
124
169
  ${getErrorOverlayScript()}
@@ -1 +1 @@
1
- {"version":3,"file":"injected-index.js","sourceRoot":"","sources":["../src/injected-index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"injected-index.js","sourceRoot":"","sources":["../src/injected-index.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,9 @@ export interface MigrationRoutesOptions {
31
31
  */
32
32
  inPlaceTemplateRestartEnabled?: boolean;
33
33
  getAiService?: () => AiService | undefined;
34
+ prepareInPlaceRestart?: (options?: {
35
+ flipRestart?: true;
36
+ }) => Promise<void>;
34
37
  }
35
38
  export { RESTART_EXIT_CODE };
36
39
  export declare function registerMigrationRoutes(server: ViteDevServer, options: MigrationRoutesOptions): void;
@@ -1 +1 @@
1
- {"version":3,"file":"migration-routes.d.ts","sourceRoot":"","sources":["../../src/migration/migration-routes.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAG1C,OAAO,EACL,iBAAiB,EAGlB,MAAM,kDAAkD,CAAC;AAuB1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAwB9D,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,OAAO,CAAC;IAChC,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;;;;OAQG;IACH,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,YAAY,CAAC,EAAE,MAAM,SAAS,GAAG,SAAS,CAAC;CAC5C;AAoBD,OAAO,EAAE,iBAAiB,EAAE,CAAC;AA2hB7B,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,sBAAsB,GAC9B,IAAI,CAuiCN"}
1
+ {"version":3,"file":"migration-routes.d.ts","sourceRoot":"","sources":["../../src/migration/migration-routes.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAG1C,OAAO,EACL,iBAAiB,EAElB,MAAM,kDAAkD,CAAC;AAuB1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAwB9D,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,OAAO,CAAC;IAChC,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;;;;OAQG;IACH,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,YAAY,CAAC,EAAE,MAAM,SAAS,GAAG,SAAS,CAAC;IAC3C,qBAAqB,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,IAAI,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7E;AAoBD,OAAO,EAAE,iBAAiB,EAAE,CAAC;AA8d7B,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,sBAAsB,GAC9B,IAAI,CAglCN"}
@@ -2,7 +2,7 @@ import { access, mkdir, readFile, readdir, rm, writeFile, } from "node:fs/promis
2
2
  import { dirname, join } from "node:path";
3
3
  import bodyParser from "body-parser";
4
4
  import { parse as parseYaml } from "yaml";
5
- import { RESTART_EXIT_CODE, RESTART_REASON_FLIP_RESTART, RESTART_SUPERVISED_ENV, } from "@superblocksteam/library-shared/restart-contract";
5
+ import { RESTART_EXIT_CODE, RESTART_SUPERVISED_ENV, } from "@superblocksteam/library-shared/restart-contract";
6
6
  import { LanguagePluginID } from "@superblocksteam/shared";
7
7
  import { getTelemetryInstance, isTelemetryInitialized, } from "@superblocksteam/telemetry";
8
8
  import { extractIntegrationIdsFromSource } from "../ai-service/agent/tools/apis/analysis.js";
@@ -12,7 +12,7 @@ import { getFullstackTemplateDir } from "./get-fullstack-template-dir.js";
12
12
  import { classifyIntegrationMutations } from "./migration-classifier.js";
13
13
  import { reconcileMigrationSessionOnBoot, rehydrateMigrationScratchOnBoot, } from "./migration-session-reconcile.js";
14
14
  import { analyzeV2BackupMutations, clearVerificationHistory, } from "./migration-verification.js";
15
- import { migrateToFullstack } from "./restructure.js";
15
+ import { migrateToFullstack, restoreFromV2Backup } from "./restructure.js";
16
16
  import { detectUnsupportedIntegrations } from "./unsupported-integrations.js";
17
17
  import { forEachYamlStep } from "./yaml-walk.js";
18
18
  async function pathExists(path) {
@@ -44,10 +44,6 @@ const SCRATCH_DIR_NAME = "scratch";
44
44
  /** Upper bound on the pre-exit telemetry drain so a wedged collector can never
45
45
  * hang the restart: we would rather lose a few spans than leave the pod stuck. */
46
46
  const RESTART_TELEMETRY_FLUSH_TIMEOUT_MS = 2000;
47
- /** Upper bound on the pre-exit IPC handshake to the parent supervisor. Bounded
48
- * for the same reason as the telemetry flush: a wedged channel must never hang
49
- * the restart. If it lapses the respawn simply surfaces as `cold_start`. */
50
- const RESTART_REASON_IPC_TIMEOUT_MS = 1000;
51
47
  /**
52
48
  * Drain the OTel pipeline before the self-restart `process.exit`.
53
49
  *
@@ -85,77 +81,26 @@ async function flushTelemetryBeforeExit(logger) {
85
81
  }
86
82
  }
87
83
  /**
88
- * Tell the CLI parent supervisor that the imminent `RESTART_EXIT_CODE` exit is a
89
- * template flip not the editor-driven `/_sb_disconnect` restart, which shares
90
- * the same exit code. Only on this explicit signal does the parent label the
91
- * respawn `flip_restart` and emit the in-place-restart-completed metric; a bare
92
- * exit 98 surfaces as `cold_start`. This is the authoritative seam: it is the
93
- * one code path that knows for certain the exit was caused by a flip.
94
- *
95
- * `process.send` exists only under the lightweight parent supervisor (IPC
96
- * channel present); warm single-process and shell-supervised pods have no IPC
97
- * parent and skip this. Best-effort and bounded: the callback confirms the
98
- * message was handed to the channel before we exit (so the parent sees it before
99
- * the `exit` event), and the timeout guarantees a wedged channel can never hang
100
- * the restart.
101
- */
102
- async function announceFlipRestartToParent(logger) {
103
- const send = process.send;
104
- if (!send) {
105
- return;
106
- }
107
- await new Promise((resolve) => {
108
- let settled = false;
109
- const finish = () => {
110
- if (settled) {
111
- return;
112
- }
113
- settled = true;
114
- resolve();
115
- };
116
- const timer = setTimeout(finish, RESTART_REASON_IPC_TIMEOUT_MS);
117
- timer.unref?.();
118
- const done = () => {
119
- clearTimeout(timer);
120
- finish();
121
- };
122
- try {
123
- send.call(process, { type: "restartReason", reason: RESTART_REASON_FLIP_RESTART }, (error) => {
124
- if (error) {
125
- logger.warn("[migrate-route] Failed to notify parent of flip restart reason; restart will surface as cold_start", { error: error.message });
126
- }
127
- done();
128
- });
129
- }
130
- catch (error) {
131
- logger.warn("[migrate-route] Failed to notify parent of flip restart reason; restart will surface as cold_start", { error: error instanceof Error ? error.message : String(error) });
132
- done();
133
- }
134
- });
135
- }
136
- /**
137
- * Single exit seam for the in-place dev-server restart. Logs intent, announces
138
- * the flip restart reason to the CLI parent (so the respawn is labeled
139
- * `flip_restart` rather than a cold start), drains telemetry, then exits with
140
- * RESTART_EXIT_CODE so the parent supervisor respawns the child with the flipped
141
- * template (the editor reconnects to the same pod/port).
84
+ * Single exit seam for the in-place dev-server restart. Runs shared teardown
85
+ * (same as `/_sb_disconnect` with `isRestart: true`), drains telemetry, then
86
+ * exits with RESTART_EXIT_CODE so the parent supervisor respawns the child
87
+ * with the flipped template (the editor reconnects to the same pod/port).
142
88
  *
143
89
  * The *server-facing* half of the handshake -- the "will self-restart" signal
144
90
  * that tells the server to skip pod termination -- is sent earlier, on the flip
145
- * RPC (`flipTemplate({ selfRestart: true })`), not here. By the time we reach
146
- * this seam the flip has already committed, so all that remains is the
147
- * parent-facing reason announcement, a telemetry flush, and the local exit.
148
- * Extracted so the call site stays a one-liner and the exit is exercised in one
149
- * place under test.
91
+ * RPC (`flipTemplate({ selfRestart: true })`), not here.
150
92
  */
151
- async function requestSelfRestart(logger) {
93
+ async function requestSelfRestart(logger, prepareInPlaceRestart) {
152
94
  logger.info("[migrate-route] Self-restarting dev server process after template flip (in-place restart)");
153
- // Tell the parent THIS exit 98 is a flip (vs. an editor /_sb_disconnect
154
- // restart, which reuses the code) so it labels the respawn flip_restart.
155
- await announceFlipRestartToParent(logger);
156
- // Flush before exiting; otherwise the log above and the flip/boot metrics are
157
- // dropped with the event loop and the restart leaves no trace in Datadog.
158
- await flushTelemetryBeforeExit(logger);
95
+ try {
96
+ if (prepareInPlaceRestart) {
97
+ await prepareInPlaceRestart({ flipRestart: true });
98
+ }
99
+ await flushTelemetryBeforeExit(logger);
100
+ }
101
+ catch (error) {
102
+ logger.error("[migrate-route] teardown before self-restart failed; exiting anyway", getErrorMeta(error));
103
+ }
159
104
  process.exit(RESTART_EXIT_CODE);
160
105
  }
161
106
  let inMemoryStatus = { state: "idle" };
@@ -450,7 +395,7 @@ function setupCorsAndValidateMethod({ req, res, allowedMethod, allowHeaders, })
450
395
  return true;
451
396
  }
452
397
  export function registerMigrationRoutes(server, options) {
453
- const { appRootDir, getIsInitialized, syncService, logger, inPlaceTemplateRestartEnabled = false, getAiService, } = options;
398
+ const { appRootDir, getIsInitialized, syncService, logger, inPlaceTemplateRestartEnabled = false, getAiService, prepareInPlaceRestart, } = options;
454
399
  // --- GET /sb-migration-status: checklist + verification artifacts only --
455
400
  // Lifecycle authority is the server migration session; GET always derives
456
401
  // state from disk (ignoreInMemory) so backup/restructure/flip never leak.
@@ -536,9 +481,9 @@ export function registerMigrationRoutes(server, options) {
536
481
  });
537
482
  });
538
483
  // --- POST /sb-migration-reset-state -------------------------------------
539
- // Clears migration-status artifacts from disk without mutating app files.
540
- // Abort reset uses this to prevent the next dev-server boot from
541
- // re-triggering internal migration turns off stale `scratch/*` state.
484
+ // Clears migration scratch/checklist state and, when `scratch/v2-backup`
485
+ // exists, restores the pre-migration v2 file tree onto the app root before
486
+ // the server abort saga resets DBFS and recycles the pod.
542
487
  server.middlewares.use("/sb-migration-reset-state", bodyParser.json({ strict: true }));
543
488
  server.middlewares.use("/sb-migration-reset-state", (req, res, next) => {
544
489
  void (async () => {
@@ -555,16 +500,51 @@ export function registerMigrationRoutes(server, options) {
555
500
  }
556
501
  const scratchDirPath = join(appRootDir, SCRATCH_DIR_NAME);
557
502
  const stateFilePath = join(scratchDirPath, MIGRATION_STATE_FILE);
558
- // Also clear the per-API verification directory so stale `.diff.json`
559
- // and `.history.json` files from the prior run don't poison the next
560
- // attempt — without this, a re-run would inherit the previous attempt
561
- // count and could trip the verification exhaustion cap immediately.
503
+ const backupDirPath = join(scratchDirPath, "v2-backup");
562
504
  const verificationDirPath = join(scratchDirPath, "migration-verification");
563
- await Promise.all([
564
- rm(stateFilePath, { force: true }),
565
- clearChecklist({ appRootDirPath: appRootDir }),
566
- rm(verificationDirPath, { recursive: true, force: true }),
567
- ]);
505
+ let autoSyncPaused = false;
506
+ let shouldResumeAutoSync = true;
507
+ let diskRestored = false;
508
+ try {
509
+ if (syncService) {
510
+ syncService.pauseAutoSync();
511
+ autoSyncPaused = true;
512
+ }
513
+ const hadV2Backup = await pathExists(backupDirPath);
514
+ if (hadV2Backup) {
515
+ // Abort will terminate this pod; do not resume autosync if restore
516
+ // fails mid-way either — re-uploading a partial v3 tree is worse than
517
+ // staying paused until the pod is recycled.
518
+ shouldResumeAutoSync = false;
519
+ const restoreResult = await restoreFromV2Backup({
520
+ appRootDirPath: appRootDir,
521
+ logger,
522
+ });
523
+ diskRestored = restoreResult.restored;
524
+ await clearChecklist({ appRootDirPath: appRootDir });
525
+ }
526
+ else {
527
+ // Also clear the per-API verification directory so stale `.diff.json`
528
+ // and `.history.json` files from the prior run don't poison the next
529
+ // attempt — without this, a re-run would inherit the previous attempt
530
+ // count and could trip the verification exhaustion cap immediately.
531
+ await Promise.all([
532
+ rm(stateFilePath, { force: true }),
533
+ clearChecklist({ appRootDirPath: appRootDir }),
534
+ rm(verificationDirPath, { recursive: true, force: true }),
535
+ ]);
536
+ }
537
+ }
538
+ finally {
539
+ if (autoSyncPaused && shouldResumeAutoSync) {
540
+ try {
541
+ syncService?.resumeAutoSync();
542
+ }
543
+ catch (error) {
544
+ logger.warn("[migrate-route] Failed to resume autosync after migration state reset", getErrorMeta(error));
545
+ }
546
+ }
547
+ }
568
548
  const aiService = getAiService?.();
569
549
  if (aiService) {
570
550
  try {
@@ -577,6 +557,7 @@ export function registerMigrationRoutes(server, options) {
577
557
  inMemoryStatus = { state: "idle" };
578
558
  const status = await resolveStatus(appRootDir, { ignoreInMemory: true });
579
559
  logger.info("[migrate-route] migration state reset requested", {
560
+ diskRestored,
580
561
  state: status.state,
581
562
  hasV2Backup: status.hasV2Backup,
582
563
  });
@@ -584,6 +565,7 @@ export function registerMigrationRoutes(server, options) {
584
565
  res.setHeader("Content-Type", "application/json");
585
566
  res.end(JSON.stringify({
586
567
  ok: true,
568
+ diskRestored,
587
569
  status,
588
570
  }));
589
571
  })().catch((error) => {
@@ -787,34 +769,37 @@ export function registerMigrationRoutes(server, options) {
787
769
  };
788
770
  }
789
771
  finally {
790
- if (autoSyncPaused) {
791
- try {
792
- syncService.resumeAutoSync();
793
- }
794
- catch (error) {
795
- logger.warn("[migrate-route] Failed to resume autosync after migration attempt", {
796
- error: error instanceof Error ? error.message : String(error),
797
- });
772
+ if (!shouldSelfRestart) {
773
+ if (autoSyncPaused) {
774
+ try {
775
+ syncService.resumeAutoSync();
776
+ }
777
+ catch (error) {
778
+ logger.warn("[migrate-route] Failed to resume autosync after migration attempt", {
779
+ error: error instanceof Error ? error.message : String(error),
780
+ });
781
+ }
798
782
  }
799
- }
800
- if (watcherPaused) {
801
- try {
802
- server.watcher.add(appRootDir);
803
- }
804
- catch (error) {
805
- logger.warn("[migrate-route] Failed to rewatch app root after migration attempt", {
806
- error: error instanceof Error ? error.message : String(error),
807
- });
783
+ if (watcherPaused) {
784
+ try {
785
+ server.watcher.add(appRootDir);
786
+ }
787
+ catch (error) {
788
+ logger.warn("[migrate-route] Failed to rewatch app root after migration attempt", {
789
+ error: error instanceof Error ? error.message : String(error),
790
+ });
791
+ }
808
792
  }
809
793
  }
810
794
  }
811
- // Trigger the in-place restart after cleanup (autosync resumed, watcher
812
- // re-added) so we exit from a consistent state. The 202 response was
813
- // already sent and all migration-state writes were awaited, so exiting
814
- // here loses no data. The CLI parent supervisor respawns the child with
815
- // the flipped template; the editor reconnects to the same pod/port.
795
+ // Trigger the in-place restart after the try/finally. When self-restarting,
796
+ // autosync and the watcher stay paused so we do not enqueue work during exit.
797
+ // The 202 response was already sent and all migration-state writes were
798
+ // awaited, so exiting here loses no data. The CLI parent supervisor respawns
799
+ // the child with the flipped template; the editor reconnects to the same
800
+ // pod/port.
816
801
  if (shouldSelfRestart) {
817
- await requestSelfRestart(logger);
802
+ await requestSelfRestart(logger, prepareInPlaceRestart);
818
803
  }
819
804
  })();
820
805
  });