@superblocksteam/vite-plugin-file-sync 2.0.119-next.1 → 2.0.120-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 (345) hide show
  1. package/dist/ai-service/agent/middleware.d.ts.map +1 -1
  2. package/dist/ai-service/agent/middleware.js +2 -5
  3. package/dist/ai-service/agent/middleware.js.map +1 -1
  4. package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
  5. package/dist/ai-service/agent/prompts/build-base-system-prompt.js +17 -11
  6. package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
  7. package/dist/ai-service/agent/prompts/build-security-scan-prompt.d.ts +17 -0
  8. package/dist/ai-service/agent/prompts/build-security-scan-prompt.d.ts.map +1 -0
  9. package/dist/ai-service/agent/prompts/build-security-scan-prompt.js +219 -0
  10. package/dist/ai-service/agent/prompts/build-security-scan-prompt.js.map +1 -0
  11. package/dist/ai-service/agent/tool-message-utils.d.ts.map +1 -1
  12. package/dist/ai-service/agent/tool-message-utils.js +64 -6
  13. package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
  14. package/dist/ai-service/agent/tools/apis/api-comparator.d.ts +36 -0
  15. package/dist/ai-service/agent/tools/apis/api-comparator.d.ts.map +1 -0
  16. package/dist/ai-service/agent/tools/apis/api-comparator.js +369 -0
  17. package/dist/ai-service/agent/tools/apis/api-comparator.js.map +1 -0
  18. package/dist/ai-service/agent/tools/apis/api-validation-orchestrator.d.ts +4 -0
  19. package/dist/ai-service/agent/tools/apis/api-validation-orchestrator.d.ts.map +1 -1
  20. package/dist/ai-service/agent/tools/apis/api-validation-orchestrator.js +16 -5
  21. package/dist/ai-service/agent/tools/apis/api-validation-orchestrator.js.map +1 -1
  22. package/dist/ai-service/agent/tools/apis/build-api-artifact.d.ts +1 -0
  23. package/dist/ai-service/agent/tools/apis/build-api-artifact.d.ts.map +1 -1
  24. package/dist/ai-service/agent/tools/apis/build-api-artifact.js +17 -2
  25. package/dist/ai-service/agent/tools/apis/build-api-artifact.js.map +1 -1
  26. package/dist/ai-service/agent/tools/apis/build-api.d.ts.map +1 -1
  27. package/dist/ai-service/agent/tools/apis/build-api.js +17 -15
  28. package/dist/ai-service/agent/tools/apis/build-api.js.map +1 -1
  29. package/dist/ai-service/agent/tools/apis/get-api-docs.d.ts +1 -1
  30. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.d.ts.map +1 -1
  31. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.js +18 -13
  32. package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.js.map +1 -1
  33. package/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
  34. package/dist/ai-service/agent/tools/apis/test-api.js +138 -2
  35. package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
  36. package/dist/ai-service/agent/tools/build-copy-directory.d.ts +12 -0
  37. package/dist/ai-service/agent/tools/build-copy-directory.d.ts.map +1 -0
  38. package/dist/ai-service/agent/tools/build-copy-directory.js +51 -0
  39. package/dist/ai-service/agent/tools/build-copy-directory.js.map +1 -0
  40. package/dist/ai-service/agent/tools/build-copy-file.d.ts +12 -0
  41. package/dist/ai-service/agent/tools/build-copy-file.d.ts.map +1 -0
  42. package/dist/ai-service/agent/tools/build-copy-file.js +52 -0
  43. package/dist/ai-service/agent/tools/build-copy-file.js.map +1 -0
  44. package/dist/ai-service/agent/tools/build-copy-utils.d.ts +57 -0
  45. package/dist/ai-service/agent/tools/build-copy-utils.d.ts.map +1 -0
  46. package/dist/ai-service/agent/tools/build-copy-utils.js +37 -0
  47. package/dist/ai-service/agent/tools/build-copy-utils.js.map +1 -0
  48. package/dist/ai-service/agent/tools/build-debug.d.ts.map +1 -1
  49. package/dist/ai-service/agent/tools/build-debug.js +17 -5
  50. package/dist/ai-service/agent/tools/build-debug.js.map +1 -1
  51. package/dist/ai-service/agent/tools/build-finalize.d.ts.map +1 -1
  52. package/dist/ai-service/agent/tools/build-finalize.js +42 -50
  53. package/dist/ai-service/agent/tools/build-finalize.js.map +1 -1
  54. package/dist/ai-service/agent/tools/build-manage-checklist.d.ts +7 -5
  55. package/dist/ai-service/agent/tools/build-manage-checklist.d.ts.map +1 -1
  56. package/dist/ai-service/agent/tools/build-manage-checklist.js +54 -108
  57. package/dist/ai-service/agent/tools/build-manage-checklist.js.map +1 -1
  58. package/dist/ai-service/agent/tools/databases/dev-database.d.ts +103 -0
  59. package/dist/ai-service/agent/tools/databases/dev-database.d.ts.map +1 -0
  60. package/dist/ai-service/agent/tools/databases/dev-database.js +117 -0
  61. package/dist/ai-service/agent/tools/databases/dev-database.js.map +1 -0
  62. package/dist/ai-service/agent/tools/get-logs.d.ts +1 -1
  63. package/dist/ai-service/agent/tools/index.d.ts +4 -0
  64. package/dist/ai-service/agent/tools/index.d.ts.map +1 -1
  65. package/dist/ai-service/agent/tools/index.js +4 -0
  66. package/dist/ai-service/agent/tools/index.js.map +1 -1
  67. package/dist/ai-service/agent/tools/integrations/delete-integration.d.ts +18 -0
  68. package/dist/ai-service/agent/tools/integrations/delete-integration.d.ts.map +1 -0
  69. package/dist/ai-service/agent/tools/integrations/delete-integration.js +99 -0
  70. package/dist/ai-service/agent/tools/integrations/delete-integration.js.map +1 -0
  71. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +1 -1
  72. package/dist/ai-service/agent/tools/integrations/index.d.ts +1 -0
  73. package/dist/ai-service/agent/tools/integrations/index.d.ts.map +1 -1
  74. package/dist/ai-service/agent/tools/integrations/index.js +1 -0
  75. package/dist/ai-service/agent/tools/integrations/index.js.map +1 -1
  76. package/dist/ai-service/agent/tools/integrations/metadata.d.ts.map +1 -1
  77. package/dist/ai-service/agent/tools/integrations/metadata.js +30 -4
  78. package/dist/ai-service/agent/tools/integrations/metadata.js.map +1 -1
  79. package/dist/ai-service/agent/tools/report-security-findings.d.ts +163 -0
  80. package/dist/ai-service/agent/tools/report-security-findings.d.ts.map +1 -0
  81. package/dist/ai-service/agent/tools/report-security-findings.js +52 -0
  82. package/dist/ai-service/agent/tools/report-security-findings.js.map +1 -0
  83. package/dist/ai-service/agent/tools.d.ts +2 -0
  84. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  85. package/dist/ai-service/agent/tools.js +74 -6
  86. package/dist/ai-service/agent/tools.js.map +1 -1
  87. package/dist/ai-service/agent/tools2/example.js +1 -1
  88. package/dist/ai-service/agent/tools2/example.js.map +1 -1
  89. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts +7 -0
  90. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts.map +1 -1
  91. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js +11 -1
  92. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js.map +1 -1
  93. package/dist/ai-service/agent/tools2/tools/ask-searchable-dropdown.d.ts +7 -0
  94. package/dist/ai-service/agent/tools2/tools/ask-searchable-dropdown.d.ts.map +1 -1
  95. package/dist/ai-service/agent/tools2/tools/ask-searchable-dropdown.js +3 -1
  96. package/dist/ai-service/agent/tools2/tools/ask-searchable-dropdown.js.map +1 -1
  97. package/dist/ai-service/agent/tools2/tools/download-attachments.d.ts.map +1 -1
  98. package/dist/ai-service/agent/tools2/tools/download-attachments.js +4 -3
  99. package/dist/ai-service/agent/tools2/tools/download-attachments.js.map +1 -1
  100. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts +9 -0
  101. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -1
  102. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +15 -1
  103. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
  104. package/dist/ai-service/agent/tools2/tools/list-attachments.d.ts.map +1 -1
  105. package/dist/ai-service/agent/tools2/tools/list-attachments.js +8 -4
  106. package/dist/ai-service/agent/tools2/tools/list-attachments.js.map +1 -1
  107. package/dist/ai-service/agent/tools2/tools/spawn-coding-subagents.d.ts +21 -4
  108. package/dist/ai-service/agent/tools2/tools/spawn-coding-subagents.d.ts.map +1 -1
  109. package/dist/ai-service/agent/tools2/tools/spawn-coding-subagents.js +87 -11
  110. package/dist/ai-service/agent/tools2/tools/spawn-coding-subagents.js.map +1 -1
  111. package/dist/ai-service/agent/tools2/types.d.ts +10 -2
  112. package/dist/ai-service/agent/tools2/types.d.ts.map +1 -1
  113. package/dist/ai-service/agent/tools2/types.js.map +1 -1
  114. package/dist/ai-service/agent/utils.d.ts.map +1 -1
  115. package/dist/ai-service/agent/utils.js +2 -0
  116. package/dist/ai-service/agent/utils.js.map +1 -1
  117. package/dist/ai-service/app-interface/filesystem/draft-manager.d.ts +1 -1
  118. package/dist/ai-service/app-interface/filesystem/draft-manager.d.ts.map +1 -1
  119. package/dist/ai-service/app-interface/filesystem/draft-manager.js.map +1 -1
  120. package/dist/ai-service/app-interface/npm-registry.d.ts +137 -0
  121. package/dist/ai-service/app-interface/npm-registry.d.ts.map +1 -0
  122. package/dist/ai-service/app-interface/npm-registry.js +415 -0
  123. package/dist/ai-service/app-interface/npm-registry.js.map +1 -0
  124. package/dist/ai-service/app-interface/shell.d.ts +38 -0
  125. package/dist/ai-service/app-interface/shell.d.ts.map +1 -1
  126. package/dist/ai-service/app-interface/shell.js +222 -1
  127. package/dist/ai-service/app-interface/shell.js.map +1 -1
  128. package/dist/ai-service/attachments/uploaded-content-part.d.ts +5 -0
  129. package/dist/ai-service/attachments/uploaded-content-part.d.ts.map +1 -1
  130. package/dist/ai-service/attachments/uploaded-content-part.js +31 -21
  131. package/dist/ai-service/attachments/uploaded-content-part.js.map +1 -1
  132. package/dist/ai-service/checklist/persisted-checklist-store.d.ts +105 -0
  133. package/dist/ai-service/checklist/persisted-checklist-store.d.ts.map +1 -0
  134. package/dist/ai-service/checklist/persisted-checklist-store.js +498 -0
  135. package/dist/ai-service/checklist/persisted-checklist-store.js.map +1 -0
  136. package/dist/ai-service/context-download.d.ts +14 -1
  137. package/dist/ai-service/context-download.d.ts.map +1 -1
  138. package/dist/ai-service/context-download.js +80 -0
  139. package/dist/ai-service/context-download.js.map +1 -1
  140. package/dist/ai-service/dev-database-client.d.ts +90 -0
  141. package/dist/ai-service/dev-database-client.d.ts.map +1 -0
  142. package/dist/ai-service/dev-database-client.js +166 -0
  143. package/dist/ai-service/dev-database-client.js.map +1 -0
  144. package/dist/ai-service/features.d.ts +16 -0
  145. package/dist/ai-service/features.d.ts.map +1 -1
  146. package/dist/ai-service/features.js +10 -0
  147. package/dist/ai-service/features.js.map +1 -1
  148. package/dist/ai-service/filter-disabled-tools-for-migration.d.ts +6 -0
  149. package/dist/ai-service/filter-disabled-tools-for-migration.d.ts.map +1 -0
  150. package/dist/ai-service/filter-disabled-tools-for-migration.js +35 -0
  151. package/dist/ai-service/filter-disabled-tools-for-migration.js.map +1 -0
  152. package/dist/ai-service/index.d.ts +11 -1
  153. package/dist/ai-service/index.d.ts.map +1 -1
  154. package/dist/ai-service/index.js +86 -37
  155. package/dist/ai-service/index.js.map +1 -1
  156. package/dist/ai-service/integrations/store.d.ts +5 -0
  157. package/dist/ai-service/integrations/store.d.ts.map +1 -1
  158. package/dist/ai-service/integrations/store.js +19 -2
  159. package/dist/ai-service/integrations/store.js.map +1 -1
  160. package/dist/ai-service/judge/tools/submit-feedback.d.ts +1 -1
  161. package/dist/ai-service/llm/context-v2/context.d.ts.map +1 -1
  162. package/dist/ai-service/llm/context-v2/context.js +6 -2
  163. package/dist/ai-service/llm/context-v2/context.js.map +1 -1
  164. package/dist/ai-service/llm/context-v2/manager.d.ts +8 -1
  165. package/dist/ai-service/llm/context-v2/manager.d.ts.map +1 -1
  166. package/dist/ai-service/llm/context-v2/manager.js +17 -1
  167. package/dist/ai-service/llm/context-v2/manager.js.map +1 -1
  168. package/dist/ai-service/llm/context-v2/prompts/compaction.d.ts +1 -1
  169. package/dist/ai-service/llm/context-v2/prompts/compaction.d.ts.map +1 -1
  170. package/dist/ai-service/llm/context-v2/prompts/compaction.js +3 -3
  171. package/dist/ai-service/llm/context-v2/types.d.ts +7 -0
  172. package/dist/ai-service/llm/context-v2/types.d.ts.map +1 -1
  173. package/dist/ai-service/llm/context-v2/types.js +33 -0
  174. package/dist/ai-service/llm/context-v2/types.js.map +1 -1
  175. package/dist/ai-service/llm/impl/clark.d.ts.map +1 -1
  176. package/dist/ai-service/llm/impl/clark.js +3 -3
  177. package/dist/ai-service/llm/impl/clark.js.map +1 -1
  178. package/dist/ai-service/llm/provider.d.ts.map +1 -1
  179. package/dist/ai-service/llm/provider.js +22 -7
  180. package/dist/ai-service/llm/provider.js.map +1 -1
  181. package/dist/ai-service/llm/types.d.ts +14 -1
  182. package/dist/ai-service/llm/types.d.ts.map +1 -1
  183. package/dist/ai-service/llmobs/context-registry.d.ts +62 -0
  184. package/dist/ai-service/llmobs/context-registry.d.ts.map +1 -0
  185. package/dist/ai-service/llmobs/context-registry.js +115 -0
  186. package/dist/ai-service/llmobs/context-registry.js.map +1 -0
  187. package/dist/ai-service/llmobs/otel-exporter.d.ts +23 -0
  188. package/dist/ai-service/llmobs/otel-exporter.d.ts.map +1 -1
  189. package/dist/ai-service/llmobs/otel-exporter.js +112 -10
  190. package/dist/ai-service/llmobs/otel-exporter.js.map +1 -1
  191. package/dist/ai-service/llmobs/tracer.d.ts +7 -0
  192. package/dist/ai-service/llmobs/tracer.d.ts.map +1 -1
  193. package/dist/ai-service/llmobs/tracer.js +38 -0
  194. package/dist/ai-service/llmobs/tracer.js.map +1 -1
  195. package/dist/ai-service/skills/system/_registry.generated.d.ts.map +1 -1
  196. package/dist/ai-service/skills/system/_registry.generated.js +2 -0
  197. package/dist/ai-service/skills/system/_registry.generated.js.map +1 -1
  198. package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts +1 -1
  199. package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts.map +1 -1
  200. package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js +2 -0
  201. package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js.map +1 -1
  202. package/dist/ai-service/skills/system/superblocks-migration/references/focused-debug.generated.d.ts +1 -1
  203. package/dist/ai-service/skills/system/superblocks-migration/references/focused-debug.generated.d.ts.map +1 -1
  204. package/dist/ai-service/skills/system/superblocks-migration/references/focused-debug.generated.js +3 -1
  205. package/dist/ai-service/skills/system/superblocks-migration/references/focused-debug.generated.js.map +1 -1
  206. package/dist/ai-service/skills/system/superblocks-migration/references/yaml-block-mapping.generated.d.ts +1 -1
  207. package/dist/ai-service/skills/system/superblocks-migration/references/yaml-block-mapping.generated.d.ts.map +1 -1
  208. package/dist/ai-service/skills/system/superblocks-migration/references/yaml-block-mapping.generated.js +29 -0
  209. package/dist/ai-service/skills/system/superblocks-migration/references/yaml-block-mapping.generated.js.map +1 -1
  210. package/dist/ai-service/skills/system/superblocks-migration/skill.generated.d.ts +1 -1
  211. package/dist/ai-service/skills/system/superblocks-migration/skill.generated.d.ts.map +1 -1
  212. package/dist/ai-service/skills/system/superblocks-migration/skill.generated.js +139 -7
  213. package/dist/ai-service/skills/system/superblocks-migration/skill.generated.js.map +1 -1
  214. package/dist/ai-service/skills/system/third-party-migration/claude-design.generated.d.ts +2 -0
  215. package/dist/ai-service/skills/system/third-party-migration/claude-design.generated.d.ts.map +1 -0
  216. package/dist/ai-service/skills/system/third-party-migration/claude-design.generated.js +107 -0
  217. package/dist/ai-service/skills/system/third-party-migration/claude-design.generated.js.map +1 -0
  218. package/dist/ai-service/skills/system/third-party-migration/skill.generated.d.ts +1 -1
  219. package/dist/ai-service/skills/system/third-party-migration/skill.generated.d.ts.map +1 -1
  220. package/dist/ai-service/skills/system/third-party-migration/skill.generated.js +33 -3
  221. package/dist/ai-service/skills/system/third-party-migration/skill.generated.js.map +1 -1
  222. package/dist/ai-service/state-machine/clark-fsm.d.ts +21 -0
  223. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  224. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  225. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
  226. package/dist/ai-service/state-machine/handlers/agent-planning.js +79 -6
  227. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
  228. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts +10 -0
  229. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  230. package/dist/ai-service/state-machine/handlers/llm-generating.js +69 -41
  231. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  232. package/dist/ai-service/state-machine/helpers/peer.d.ts +35 -7
  233. package/dist/ai-service/state-machine/helpers/peer.d.ts.map +1 -1
  234. package/dist/ai-service/state-machine/helpers/peer.js +81 -15
  235. package/dist/ai-service/state-machine/helpers/peer.js.map +1 -1
  236. package/dist/ai-service/template-renderer.d.ts +14 -1
  237. package/dist/ai-service/template-renderer.d.ts.map +1 -1
  238. package/dist/ai-service/template-renderer.js +144 -41
  239. package/dist/ai-service/template-renderer.js.map +1 -1
  240. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js +2 -2
  241. package/dist/ai-service/transform/api-builder/to-sdk-transformer.js.map +1 -1
  242. package/dist/ai-service/transform/api-builder/to-yaml-transformer.js +2 -2
  243. package/dist/ai-service/transform/api-builder/to-yaml-transformer.js.map +1 -1
  244. package/dist/draft-interface.d.ts +1 -1
  245. package/dist/draft-interface.d.ts.map +1 -1
  246. package/dist/file-sync-vite-plugin.d.ts.map +1 -1
  247. package/dist/file-sync-vite-plugin.js +34 -27
  248. package/dist/file-sync-vite-plugin.js.map +1 -1
  249. package/dist/file-system-helpers.d.ts +4 -0
  250. package/dist/file-system-helpers.d.ts.map +1 -1
  251. package/dist/file-system-helpers.js +13 -0
  252. package/dist/file-system-helpers.js.map +1 -1
  253. package/dist/inject-index-vite-plugin.d.ts.map +1 -1
  254. package/dist/inject-index-vite-plugin.js +15 -1
  255. package/dist/inject-index-vite-plugin.js.map +1 -1
  256. package/dist/injected-index.d.ts.map +1 -1
  257. package/dist/injected-index.js +15 -1
  258. package/dist/injected-index.js.map +1 -1
  259. package/dist/lock-service/index.d.ts.map +1 -1
  260. package/dist/lock-service/index.js +8 -10
  261. package/dist/lock-service/index.js.map +1 -1
  262. package/dist/migration/migration-checklist.d.ts +51 -2
  263. package/dist/migration/migration-checklist.d.ts.map +1 -1
  264. package/dist/migration/migration-checklist.js +79 -151
  265. package/dist/migration/migration-checklist.js.map +1 -1
  266. package/dist/migration/migration-routes.d.ts.map +1 -1
  267. package/dist/migration/migration-routes.js +290 -30
  268. package/dist/migration/migration-routes.js.map +1 -1
  269. package/dist/migration/migration-verification.d.ts +206 -0
  270. package/dist/migration/migration-verification.d.ts.map +1 -0
  271. package/dist/migration/migration-verification.js +1006 -0
  272. package/dist/migration/migration-verification.js.map +1 -0
  273. package/dist/migration/recommended-user-deps.d.ts +39 -0
  274. package/dist/migration/recommended-user-deps.d.ts.map +1 -0
  275. package/dist/migration/recommended-user-deps.js +209 -0
  276. package/dist/migration/recommended-user-deps.js.map +1 -0
  277. package/dist/migration/restructure.d.ts +29 -2
  278. package/dist/migration/restructure.d.ts.map +1 -1
  279. package/dist/migration/restructure.js +145 -6
  280. package/dist/migration/restructure.js.map +1 -1
  281. package/dist/migration/scan-imports.d.ts +7 -0
  282. package/dist/migration/scan-imports.d.ts.map +1 -0
  283. package/dist/migration/scan-imports.js +178 -0
  284. package/dist/migration/scan-imports.js.map +1 -0
  285. package/dist/migration/translation-prompt.d.ts.map +1 -1
  286. package/dist/migration/translation-prompt.js +2 -0
  287. package/dist/migration/translation-prompt.js.map +1 -1
  288. package/dist/migration/unsupported-integrations.d.ts.map +1 -1
  289. package/dist/migration/unsupported-integrations.js +9 -0
  290. package/dist/migration/unsupported-integrations.js.map +1 -1
  291. package/dist/migration/yaml-walk.d.ts +18 -0
  292. package/dist/migration/yaml-walk.d.ts.map +1 -0
  293. package/dist/migration/yaml-walk.js +45 -0
  294. package/dist/migration/yaml-walk.js.map +1 -0
  295. package/dist/migration-templates/app-fullstack/client/components/hooks/use-mobile.ts +1 -1
  296. package/dist/migration-templates/app-fullstack/client/components/ui/accordion.tsx +1 -1
  297. package/dist/migration-templates/app-fullstack/client/components/ui/avatar.tsx +1 -1
  298. package/dist/migration-templates/app-fullstack/client/components/ui/breadcrumb.tsx +1 -1
  299. package/dist/migration-templates/app-fullstack/client/components/ui/button.tsx +1 -1
  300. package/dist/migration-templates/app-fullstack/client/components/ui/calendar.tsx +1 -1
  301. package/dist/migration-templates/app-fullstack/client/components/ui/chart.tsx +1 -1
  302. package/dist/migration-templates/app-fullstack/client/components/ui/file-dropzone.tsx +1 -1
  303. package/dist/migration-templates/app-fullstack/client/components/ui/file-input.tsx +1 -1
  304. package/dist/migration-templates/app-fullstack/client/components/ui/hover-card.tsx +1 -1
  305. package/dist/migration-templates/app-fullstack/client/components/ui/image.tsx +1 -1
  306. package/dist/migration-templates/app-fullstack/client/components/ui/input.tsx +1 -1
  307. package/dist/migration-templates/app-fullstack/client/components/ui/label.tsx +1 -1
  308. package/dist/migration-templates/app-fullstack/client/components/ui/navigation-menu.tsx +1 -1
  309. package/dist/migration-templates/app-fullstack/client/components/ui/pagination.tsx +1 -1
  310. package/dist/migration-templates/app-fullstack/client/components/ui/popover.tsx +1 -1
  311. package/dist/migration-templates/app-fullstack/client/components/ui/progress.tsx +1 -1
  312. package/dist/migration-templates/app-fullstack/client/components/ui/select.tsx +1 -1
  313. package/dist/migration-templates/app-fullstack/client/components/ui/sheet.tsx +1 -1
  314. package/dist/migration-templates/app-fullstack/client/components/ui/sidebar.tsx +1 -1
  315. package/dist/migration-templates/app-fullstack/client/components/ui/slider.tsx +1 -1
  316. package/dist/migration-templates/app-fullstack/client/components/ui/switch.tsx +1 -1
  317. package/dist/migration-templates/app-fullstack/client/components/ui/table.tsx +1 -1
  318. package/dist/migration-templates/app-fullstack/client/components/ui/tabs.tsx +1 -1
  319. package/dist/migration-templates/app-fullstack/client/components/ui/toggle-group.tsx +1 -1
  320. package/dist/migration-templates/app-fullstack/client/components/ui/toggle.tsx +1 -1
  321. package/dist/migration-templates/app-fullstack/client/components/ui/tooltip.tsx +1 -1
  322. package/dist/socket-manager.d.ts.map +1 -1
  323. package/dist/socket-manager.js +8 -0
  324. package/dist/socket-manager.js.map +1 -1
  325. package/dist/sync-service/hash-dir-tree.d.ts +1 -1
  326. package/dist/sync-service/hash-dir-tree.d.ts.map +1 -1
  327. package/dist/sync-service/hash-dir-tree.js +3 -3
  328. package/dist/sync-service/hash-dir-tree.js.map +1 -1
  329. package/dist/sync-service/index.d.ts +0 -14
  330. package/dist/sync-service/index.d.ts.map +1 -1
  331. package/dist/sync-service/index.js +1 -44
  332. package/dist/sync-service/index.js.map +1 -1
  333. package/dist/sync-service/list-dir.d.ts +1 -1
  334. package/dist/sync-service/list-dir.d.ts.map +1 -1
  335. package/dist/sync-service/list-dir.js +36 -3
  336. package/dist/sync-service/list-dir.js.map +1 -1
  337. package/dist/sync-service/snapshot/take-snapshot.d.ts +1 -1
  338. package/dist/sync-service/snapshot/take-snapshot.d.ts.map +1 -1
  339. package/dist/sync-service/snapshot/take-snapshot.js +4 -8
  340. package/dist/sync-service/snapshot/take-snapshot.js.map +1 -1
  341. package/dist/util/log-sanitizer.d.ts +6 -5
  342. package/dist/util/log-sanitizer.d.ts.map +1 -1
  343. package/dist/util/log-sanitizer.js +21 -6
  344. package/dist/util/log-sanitizer.js.map +1 -1
  345. package/package.json +9 -8
@@ -3,6 +3,7 @@ import { anthropicImpl } from "./impl/anthropic.js";
3
3
  import { clarkImpl } from "./impl/clark.js";
4
4
  export const createLLMProvider = (settings, getJwt, llmConfig, getAttributes) => {
5
5
  const providerType = llmConfig?.provider || "bedrock";
6
+ const useSuperblocksAuthorizationHeader = settings.useSuperblocksAuthorizationHeader ?? true;
6
7
  const applyAuthAndAttributes = (options) => {
7
8
  const jwt = getJwt?.();
8
9
  const aiAttributes = getAttributes?.();
@@ -18,7 +19,9 @@ export const createLLMProvider = (settings, getJwt, llmConfig, getAttributes) =>
18
19
  headers[key] = value;
19
20
  });
20
21
  if (jwt) {
21
- headers.Authorization = `Bearer ${jwt}`;
22
+ if (useSuperblocksAuthorizationHeader) {
23
+ headers.Authorization = `Bearer ${jwt}`;
24
+ }
22
25
  headers["x-superblocks-authorization"] = `Bearer ${jwt}`;
23
26
  }
24
27
  const mergedAttributes = {
@@ -34,12 +37,24 @@ export const createLLMProvider = (settings, getJwt, llmConfig, getAttributes) =>
34
37
  };
35
38
  const wrapDefaults = (model) => {
36
39
  const wrapped = Object.create(model);
37
- wrapped.doGenerate = (options) => {
38
- return model.doGenerate(applyAuthAndAttributes(options));
39
- };
40
- wrapped.doStream = (options) => {
41
- return model.doStream(applyAuthAndAttributes(options));
42
- };
40
+ // Direct-provider SDK models can expose read-only methods. Define own
41
+ // methods on the wrapper instead of assigning over SDK descriptors.
42
+ Object.defineProperties(wrapped, {
43
+ doGenerate: {
44
+ value: (options) => {
45
+ return model.doGenerate(applyAuthAndAttributes(options));
46
+ },
47
+ configurable: true,
48
+ enumerable: true,
49
+ },
50
+ doStream: {
51
+ value: (options) => {
52
+ return model.doStream(applyAuthAndAttributes(options));
53
+ },
54
+ configurable: true,
55
+ enumerable: true,
56
+ },
57
+ });
43
58
  return wrapped;
44
59
  };
45
60
  getLogger().info(`Creating LLM provider: type=${providerType}`, {
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/ai-service/llm/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/ai-service/llm/provider.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { AnthropicProviderSettings } from "@ai-sdk/anthropic";
2
2
  import type { LanguageModelV3 } from "@ai-sdk/provider";
3
- import type { ClarkProviderSettings } from "@superblocksteam/clark";
3
+ import type { ClarkModelFactory, ClarkProviderSettings } from "@superblocksteam/clark";
4
4
  import type { LLMProviderConfig } from "@superblocksteam/library-shared/types";
5
5
  export type LLMProviderSettings = {
6
6
  /** Allows us to control the paths we can go to, instead of hardcoding them */
@@ -8,6 +8,19 @@ export type LLMProviderSettings = {
8
8
  path?: string;
9
9
  };
10
10
  clark: ClarkProviderSettings;
11
+ /**
12
+ * Optional override for how the clark provider builds its `LanguageModelV3`s.
13
+ * When set, `createClark` uses this factory instead of the default HTTP
14
+ * wire-format factory. Used by evals to back the clark provider with
15
+ * direct-SDK models (bedrock/vertex/snowflake) without routing through the
16
+ * Superblocks server.
17
+ */
18
+ clarkModelFactory?: ClarkModelFactory;
19
+ /**
20
+ * Whether to write the Superblocks JWT to the standard Authorization header.
21
+ * Disable for direct-provider SDK calls that manage their own Authorization.
22
+ */
23
+ useSuperblocksAuthorizationHeader?: boolean;
11
24
  };
12
25
  export type LLMTask = "classifyPrompt" | "summarizeMessages" | "explain" | "generateBroadEdit" | "fast";
13
26
  export type LLMTaskModels = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ai-service/llm/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAE/E,MAAM,MAAM,mBAAmB,GAAG;IAChC,8EAA8E;IAC9E,SAAS,EAAE,yBAAyB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACzD,KAAK,EAAE,qBAAqB,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,OAAO,GACf,gBAAgB,GAChB,mBAAmB,GACnB,SAAS,GACT,mBAAmB,GACnB,MAAM,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG;KACzB,CAAC,IAAI,OAAO,GAAG,eAAe;CAChC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACpC,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,eAAe,CAAC;CACrD,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ai-service/llm/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,KAAK,EACV,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAE/E,MAAM,MAAM,mBAAmB,GAAG;IAChC,8EAA8E;IAC9E,SAAS,EAAE,yBAAyB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACzD,KAAK,EAAE,qBAAqB,CAAC;IAC7B;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;OAGG;IACH,iCAAiC,CAAC,EAAE,OAAO,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,OAAO,GACf,gBAAgB,GAChB,mBAAmB,GACnB,SAAS,GACT,mBAAmB,GACnB,MAAM,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG;KACzB,CAAC,IAAI,OAAO,GAAG,eAAe;CAChC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACpC,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,eAAe,CAAC;CACrD,CAAC"}
@@ -0,0 +1,62 @@
1
+ import type { Context } from "@opentelemetry/api";
2
+ /**
3
+ * Bridges the OTEL context active at LLMObs span-creation time to the
4
+ * async flush callback where OTEL spans are actually emitted.
5
+ *
6
+ * Two maps:
7
+ * - `captured`: OTEL context snapshotted when each LLMObs ROOT span starts.
8
+ * Only root spans are stored here; child spans get their parent context
9
+ * from `crossBatch` or `perFlushCtx` in processBatch. Consumed once.
10
+ * - `crossBatch`: OTEL context of already-emitted gen_ai OTEL spans,
11
+ * so children that flush in a later batch can still find their parent.
12
+ * TTL-evicted after 10 minutes.
13
+ *
14
+ * Memory safety:
15
+ * - Both maps are capped at MAX_CAPTURED / MAX_CROSS_BATCH entries;
16
+ * oldest entry is evicted when the cap is hit.
17
+ * - A background reaper (startReaper) evicts stale entries every 30 s,
18
+ * independently of flush cycles so cleanup runs even if flush stalls.
19
+ */
20
+ export declare class OtelContextRegistry {
21
+ private captured;
22
+ private crossBatch;
23
+ private _reaper;
24
+ /**
25
+ * Start the background reaper that evicts stale entries independently
26
+ * of flush cycles. Safe to call multiple times — subsequent calls are no-ops.
27
+ * The timer is unref'd so it does not prevent Node.js from exiting.
28
+ */
29
+ startReaper(intervalMs?: number): void;
30
+ /** Stop the background reaper. Call in tests to prevent timer leaks. */
31
+ stopReaper(): void;
32
+ /**
33
+ * Store the active OTEL context at the moment a LLMObs ROOT span starts.
34
+ * Must only be called for root spans (no LLMObs parent); child spans are
35
+ * handled via crossBatch / perFlushCtx and do not need an entry here.
36
+ */
37
+ captureAtSpanStart(spanId: string, ctx: Context): void;
38
+ /**
39
+ * Retrieve and remove the captured context for a span.
40
+ * Used for root spans: the context holds the ambient OTEL context at
41
+ * span-start time, which becomes the OTEL trace root.
42
+ */
43
+ consumeCaptured(spanId: string): Context | undefined;
44
+ /**
45
+ * Store the OTEL context of an already-emitted gen_ai span so children
46
+ * flushed in a later batch can find it via getCreated().
47
+ */
48
+ setCreated(spanId: string, ctx: Context): void;
49
+ /** Look up the OTEL context of a previously emitted gen_ai span. */
50
+ getCreated(spanId: string): Context | undefined;
51
+ /**
52
+ * Evict entries older than TTL_MS from both maps.
53
+ * Called by the background reaper and at the start of each flush batch.
54
+ */
55
+ cleanup(): void;
56
+ /** Exposed for testing only. */
57
+ get _capturedSize(): number;
58
+ /** Exposed for testing only. */
59
+ get _crossBatchSize(): number;
60
+ }
61
+ export declare const otelContextRegistry: OtelContextRegistry;
62
+ //# sourceMappingURL=context-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-registry.d.ts","sourceRoot":"","sources":["../../../src/ai-service/llmobs/context-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAYlD;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,OAAO,CAA6C;IAE5D;;;;OAIG;IACH,WAAW,CAAC,UAAU,SAAsB,GAAG,IAAI;IAKnD,wEAAwE;IACxE,UAAU,IAAI,IAAI;IAOlB;;;;OAIG;IACH,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;IAWtD;;;;OAIG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAOpD;;;OAGG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;IAY9C,oEAAoE;IACpE,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAI/C;;;OAGG;IACH,OAAO,IAAI,IAAI;IAUf,gCAAgC;IAChC,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,gCAAgC;IAChC,IAAI,eAAe,IAAI,MAAM,CAE5B;CACF;AAED,eAAO,MAAM,mBAAmB,qBAA4B,CAAC"}
@@ -0,0 +1,115 @@
1
+ const TTL_MS = 10 * 60 * 1000; // 10 minutes
2
+ const CLEANUP_INTERVAL_MS = 30 * 1000; // 30 seconds — independent of flush cadence
3
+ const MAX_CAPTURED = 500; // root spans only; safety net against runaway sessions
4
+ const MAX_CROSS_BATCH = 2000; // one entry per emitted gen_ai span
5
+ /**
6
+ * Bridges the OTEL context active at LLMObs span-creation time to the
7
+ * async flush callback where OTEL spans are actually emitted.
8
+ *
9
+ * Two maps:
10
+ * - `captured`: OTEL context snapshotted when each LLMObs ROOT span starts.
11
+ * Only root spans are stored here; child spans get their parent context
12
+ * from `crossBatch` or `perFlushCtx` in processBatch. Consumed once.
13
+ * - `crossBatch`: OTEL context of already-emitted gen_ai OTEL spans,
14
+ * so children that flush in a later batch can still find their parent.
15
+ * TTL-evicted after 10 minutes.
16
+ *
17
+ * Memory safety:
18
+ * - Both maps are capped at MAX_CAPTURED / MAX_CROSS_BATCH entries;
19
+ * oldest entry is evicted when the cap is hit.
20
+ * - A background reaper (startReaper) evicts stale entries every 30 s,
21
+ * independently of flush cycles so cleanup runs even if flush stalls.
22
+ */
23
+ export class OtelContextRegistry {
24
+ captured = new Map();
25
+ crossBatch = new Map();
26
+ _reaper;
27
+ /**
28
+ * Start the background reaper that evicts stale entries independently
29
+ * of flush cycles. Safe to call multiple times — subsequent calls are no-ops.
30
+ * The timer is unref'd so it does not prevent Node.js from exiting.
31
+ */
32
+ startReaper(intervalMs = CLEANUP_INTERVAL_MS) {
33
+ if (this._reaper !== undefined)
34
+ return;
35
+ this._reaper = setInterval(() => this.cleanup(), intervalMs).unref();
36
+ }
37
+ /** Stop the background reaper. Call in tests to prevent timer leaks. */
38
+ stopReaper() {
39
+ if (this._reaper !== undefined) {
40
+ clearInterval(this._reaper);
41
+ this._reaper = undefined;
42
+ }
43
+ }
44
+ /**
45
+ * Store the active OTEL context at the moment a LLMObs ROOT span starts.
46
+ * Must only be called for root spans (no LLMObs parent); child spans are
47
+ * handled via crossBatch / perFlushCtx and do not need an entry here.
48
+ */
49
+ captureAtSpanStart(spanId, ctx) {
50
+ if (this.captured.size >= MAX_CAPTURED && !this.captured.has(spanId)) {
51
+ // Evict the oldest entry (Maps preserve insertion order in V8).
52
+ // Skip eviction when overwriting an existing key — Map.set() on an
53
+ // existing key does not increase size, so no room needs to be made.
54
+ const oldest = this.captured.keys().next().value;
55
+ if (oldest !== undefined)
56
+ this.captured.delete(oldest);
57
+ }
58
+ this.captured.set(spanId, { ctx, createdAt: Date.now() });
59
+ }
60
+ /**
61
+ * Retrieve and remove the captured context for a span.
62
+ * Used for root spans: the context holds the ambient OTEL context at
63
+ * span-start time, which becomes the OTEL trace root.
64
+ */
65
+ consumeCaptured(spanId) {
66
+ const entry = this.captured.get(spanId);
67
+ if (!entry)
68
+ return undefined;
69
+ this.captured.delete(spanId);
70
+ return entry.ctx;
71
+ }
72
+ /**
73
+ * Store the OTEL context of an already-emitted gen_ai span so children
74
+ * flushed in a later batch can find it via getCreated().
75
+ */
76
+ setCreated(spanId, ctx) {
77
+ if (this.crossBatch.size >= MAX_CROSS_BATCH &&
78
+ !this.crossBatch.has(spanId)) {
79
+ // Same rationale as captureAtSpanStart: skip eviction on overwrite.
80
+ const oldest = this.crossBatch.keys().next().value;
81
+ if (oldest !== undefined)
82
+ this.crossBatch.delete(oldest);
83
+ }
84
+ this.crossBatch.set(spanId, { ctx, createdAt: Date.now() });
85
+ }
86
+ /** Look up the OTEL context of a previously emitted gen_ai span. */
87
+ getCreated(spanId) {
88
+ return this.crossBatch.get(spanId)?.ctx;
89
+ }
90
+ /**
91
+ * Evict entries older than TTL_MS from both maps.
92
+ * Called by the background reaper and at the start of each flush batch.
93
+ */
94
+ cleanup() {
95
+ const cutoff = Date.now() - TTL_MS;
96
+ for (const [id, entry] of this.captured) {
97
+ if (entry.createdAt < cutoff)
98
+ this.captured.delete(id);
99
+ }
100
+ for (const [id, entry] of this.crossBatch) {
101
+ if (entry.createdAt < cutoff)
102
+ this.crossBatch.delete(id);
103
+ }
104
+ }
105
+ /** Exposed for testing only. */
106
+ get _capturedSize() {
107
+ return this.captured.size;
108
+ }
109
+ /** Exposed for testing only. */
110
+ get _crossBatchSize() {
111
+ return this.crossBatch.size;
112
+ }
113
+ }
114
+ export const otelContextRegistry = new OtelContextRegistry();
115
+ //# sourceMappingURL=context-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-registry.js","sourceRoot":"","sources":["../../../src/ai-service/llmobs/context-registry.ts"],"names":[],"mappings":"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"}
@@ -53,6 +53,29 @@ export declare class LLMObsOtelExporter {
53
53
  * Safe to call multiple times - subsequent calls are no-ops.
54
54
  */
55
55
  init(): Promise<void>;
56
+ /**
57
+ * Topologically sort span events so parents always appear before children.
58
+ * Uses Kahn's algorithm — O(N) time and space.
59
+ *
60
+ * Spans whose parent is not in the batch are treated as roots.
61
+ * Cycles (should not occur in normal LLMObs usage) are detected via
62
+ * sorted.length !== events.length after Kahn's completes. Cycle members
63
+ * are appended with their parent_id cleared so processBatch treats them as
64
+ * root spans (consumeCaptured path) rather than silently producing orphaned
65
+ * children that fall back to context.active().
66
+ */
67
+ private topoSort;
68
+ /**
69
+ * Process a flush batch: sort by parent-child order, resolve OTEL parent
70
+ * contexts from the registry, and emit each span with the correct parent.
71
+ *
72
+ * Parent context resolution priority:
73
+ * 1. perFlushCtx[parent_id] — parent is in this same flush batch
74
+ * 2. otelContextRegistry.getCreated(parent_id) — parent flushed in a prior batch
75
+ * 3. otelContextRegistry.consumeCaptured(span_id) — root span: use captured HTTP ctx
76
+ * 4. context.active() — fallback (produces a root span, same as pre-fix behaviour)
77
+ */
78
+ private processBatch;
56
79
  /**
57
80
  * Emit a FULL-FIDELITY OTEL span from an LLMObs event.
58
81
  *
@@ -1 +1 @@
1
- {"version":3,"file":"otel-exporter.d.ts","sourceRoot":"","sources":["../../../src/ai-service/llmobs/otel-exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AA2JH;;;;;;;;;;;GAWG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,aAAa,CAA+C;IAEpE;;;OAGG;IACH,OAAO,KAAK,UAAU,GAErB;IAED;;;OAGG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAyClC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,OAAO,CAAC,oBAAoB;IAmF5B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAgCrB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA+D3B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA8C/B;;OAEG;IACH,OAAO,CAAC,eAAe;IAUvB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAoB5B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA0B5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAwB3B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA2B/B;;OAEG;IACH,OAAO,CAAC,aAAa;IASrB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAYvB;;;OAGG;IACI,OAAO,IAAI,IAAI;CAOvB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,oBAA2B,CAAC"}
1
+ {"version":3,"file":"otel-exporter.d.ts","sourceRoot":"","sources":["../../../src/ai-service/llmobs/otel-exporter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAkKH;;;;;;;;;;;GAWG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,aAAa,CAA+C;IAEpE;;;OAGG;IACH,OAAO,KAAK,UAAU,GAErB;IAED;;;OAGG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAyClC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,QAAQ;IAoDhB;;;;;;;;;OASG;IACH,OAAO,CAAC,YAAY;IA6CpB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,OAAO,CAAC,oBAAoB;IA4F5B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAgCrB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA+D3B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA8C/B;;OAEG;IACH,OAAO,CAAC,eAAe;IAUvB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAoB5B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA0B5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAwB3B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA2B/B;;OAEG;IACH,OAAO,CAAC,aAAa;IASrB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAYvB;;;OAGG;IACI,OAAO,IAAI,IAAI;CAQvB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,oBAA2B,CAAC"}
@@ -29,8 +29,9 @@
29
29
  * Contract: tier2-traces.v0.3.0.json
30
30
  * See also: sdk-tier-policy-hints.md
31
31
  */
32
- import { SpanKind, trace } from "@opentelemetry/api";
32
+ import { context, SpanKind, trace, } from "@opentelemetry/api";
33
33
  import { getLogger } from "../../util/logger.js";
34
+ import { otelContextRegistry } from "./context-registry.js";
34
35
  /**
35
36
  * Tier policy hint attribute key.
36
37
  * Must match TIER_HINT_ATTRIBUTE from @superblocksteam/telemetry.
@@ -145,21 +146,120 @@ export class LLMObsOtelExporter {
145
146
  SpanWriter.prototype.flush = function () {
146
147
  if (this._buffer.length > 0) {
147
148
  getLogger().debug(`LLMObsOtelExporter: Converting ${this._buffer.length} spans to OTEL (gen_ai.*)`);
148
- for (const spanEvent of this._buffer) {
149
- try {
150
- self.emitFullFidelitySpan(spanEvent);
151
- }
152
- catch (err) {
153
- getLogger().error(`LLMObsOtelExporter: Failed to convert span: ${err instanceof Error ? err.message : String(err)}`);
154
- }
149
+ try {
150
+ self.processBatch(this._buffer.slice());
151
+ }
152
+ catch (err) {
153
+ getLogger().error(`LLMObsOtelExporter: processBatch failed, dropping ${this._buffer.length} spans: ${err instanceof Error ? err.message : String(err)}`);
155
154
  }
156
155
  }
157
156
  // Clear buffer - don't send to Datadog
158
157
  this._buffer = [];
159
158
  this._bufferSize = 0;
160
159
  };
160
+ otelContextRegistry.startReaper();
161
161
  getLogger().info("LLMObsOtelExporter: Initialized for CLOUD_PREM mode (Collector handles tier separation)");
162
162
  }
163
+ /**
164
+ * Topologically sort span events so parents always appear before children.
165
+ * Uses Kahn's algorithm — O(N) time and space.
166
+ *
167
+ * Spans whose parent is not in the batch are treated as roots.
168
+ * Cycles (should not occur in normal LLMObs usage) are detected via
169
+ * sorted.length !== events.length after Kahn's completes. Cycle members
170
+ * are appended with their parent_id cleared so processBatch treats them as
171
+ * root spans (consumeCaptured path) rather than silently producing orphaned
172
+ * children that fall back to context.active().
173
+ */
174
+ topoSort(events) {
175
+ const byId = new Map();
176
+ for (const e of events)
177
+ byId.set(e.span_id, e);
178
+ // Build children adjacency map and in-degree in a single O(N) pass.
179
+ const children = new Map();
180
+ const inDegree = new Map();
181
+ for (const e of events) {
182
+ inDegree.set(e.span_id, 0);
183
+ children.set(e.span_id, []);
184
+ }
185
+ for (const e of events) {
186
+ if (e.parent_id && byId.has(e.parent_id)) {
187
+ inDegree.set(e.span_id, (inDegree.get(e.span_id) ?? 0) + 1);
188
+ children.get(e.parent_id).push(e);
189
+ }
190
+ }
191
+ // Kahn's algorithm: iterate children directly — O(N) total.
192
+ const queue = events.filter((e) => (inDegree.get(e.span_id) ?? 0) === 0);
193
+ const sorted = [];
194
+ while (queue.length > 0) {
195
+ const node = queue.shift();
196
+ sorted.push(node);
197
+ for (const child of children.get(node.span_id) ?? []) {
198
+ const deg = (inDegree.get(child.span_id) ?? 1) - 1;
199
+ inDegree.set(child.span_id, deg);
200
+ if (deg === 0)
201
+ queue.push(child);
202
+ }
203
+ }
204
+ // Detect cycle members via O(1) Set membership — O(N) overall.
205
+ if (sorted.length < events.length) {
206
+ const sortedSet = new Set(sorted);
207
+ const cycleMembers = events.filter((e) => !sortedSet.has(e));
208
+ getLogger().warn(`LLMObsOtelExporter: cycle detected in LLMObs span batch — ${cycleMembers.length} spans will be emitted as root spans`, { cycleSpanIds: cycleMembers.map((e) => e.span_id) });
209
+ // Clear parent_id so processBatch takes the root-span path (consumeCaptured)
210
+ // instead of falling back to context.active() with an unresolvable parent.
211
+ for (const e of cycleMembers) {
212
+ sorted.push({ ...e, parent_id: undefined });
213
+ }
214
+ }
215
+ return sorted;
216
+ }
217
+ /**
218
+ * Process a flush batch: sort by parent-child order, resolve OTEL parent
219
+ * contexts from the registry, and emit each span with the correct parent.
220
+ *
221
+ * Parent context resolution priority:
222
+ * 1. perFlushCtx[parent_id] — parent is in this same flush batch
223
+ * 2. otelContextRegistry.getCreated(parent_id) — parent flushed in a prior batch
224
+ * 3. otelContextRegistry.consumeCaptured(span_id) — root span: use captured HTTP ctx
225
+ * 4. context.active() — fallback (produces a root span, same as pre-fix behaviour)
226
+ */
227
+ processBatch(events) {
228
+ otelContextRegistry.cleanup();
229
+ const sorted = this.topoSort(events);
230
+ const perFlushCtx = new Map();
231
+ for (const event of sorted) {
232
+ try {
233
+ let parentCtx;
234
+ if (event.parent_id) {
235
+ // Child span: look for parent in this batch or a prior batch
236
+ parentCtx =
237
+ perFlushCtx.get(event.parent_id) ??
238
+ otelContextRegistry.getCreated(event.parent_id);
239
+ if (!parentCtx) {
240
+ // Orphaned child — parent not in this batch or any prior batch.
241
+ // Emit at WARN so this is visible in filtered production logs;
242
+ // this is the exact symptom the PR was written to fix.
243
+ getLogger().warn(`LLMObsOtelExporter: parent span ${event.parent_id} not found for child ${event.span_id} — emitting as root span`);
244
+ }
245
+ }
246
+ else {
247
+ // Root span: use the HTTP context captured at creation time
248
+ parentCtx = otelContextRegistry.consumeCaptured(event.span_id);
249
+ }
250
+ if (!parentCtx) {
251
+ parentCtx = context.active();
252
+ }
253
+ const otelSpan = this.emitFullFidelitySpan(event, parentCtx);
254
+ const spanCtx = trace.setSpan(parentCtx, otelSpan);
255
+ perFlushCtx.set(event.span_id, spanCtx);
256
+ otelContextRegistry.setCreated(event.span_id, spanCtx);
257
+ }
258
+ catch (err) {
259
+ getLogger().error(`LLMObsOtelExporter: Failed to process span in batch: ${err instanceof Error ? err.message : String(err)}`);
260
+ }
261
+ }
262
+ }
163
263
  /**
164
264
  * Emit a FULL-FIDELITY OTEL span from an LLMObs event.
165
265
  *
@@ -187,7 +287,7 @@ export class LLMObsOtelExporter {
187
287
  * - llmobs.input
188
288
  * - llmobs.output
189
289
  */
190
- emitFullFidelitySpan(event) {
290
+ emitFullFidelitySpan(event, parentCtx) {
191
291
  const spanKind = event.meta["span.kind"] || "unknown";
192
292
  const otelKind = spanKind === "llm" ? SpanKind.CLIENT : SpanKind.INTERNAL;
193
293
  // Convert nanoseconds to milliseconds for OTEL
@@ -240,7 +340,7 @@ export class LLMObsOtelExporter {
240
340
  kind: otelKind,
241
341
  startTime: startTimeMs,
242
342
  attributes: this.filterUndefined(attributes),
243
- });
343
+ }, parentCtx);
244
344
  // Set OTEL status for errors
245
345
  if (event.status === "error") {
246
346
  otelSpan.setStatus({
@@ -250,6 +350,7 @@ export class LLMObsOtelExporter {
250
350
  // End span with correct end time
251
351
  otelSpan.end(endTimeMs);
252
352
  getLogger().debug(`LLMObsOtelExporter: Emitted span ${spanName} (${spanKind})`);
353
+ return otelSpan;
253
354
  }
254
355
  /**
255
356
  * Map LLMObs span name to contract-defined span pattern.
@@ -548,6 +649,7 @@ export class LLMObsOtelExporter {
548
649
  this.originalFlush = null;
549
650
  getLogger().debug("LLMObsOtelExporter: Restored original flush method");
550
651
  }
652
+ otelContextRegistry.stopReaper();
551
653
  }
552
654
  }
553
655
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"otel-exporter.js","sourceRoot":"","sources":["../../../src/ai-service/llmobs/otel-exporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"otel-exporter.js","sourceRoot":"","sources":["../../../src/ai-service/llmobs/otel-exporter.ts"],"names":[],"mappings":"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"}
@@ -75,6 +75,13 @@ export declare class LLMObsTracer {
75
75
  */
76
76
  private _trace;
77
77
  private static createNoopSpan;
78
+ /**
79
+ * Store the captured OTEL context in the registry if applicable.
80
+ * Shared between the auto-finish and manual-finish branches of _trace().
81
+ * Only called for root LLMObs spans (capturedOtelCtx is undefined for children).
82
+ * Noop spans are excluded — they have no real dd-trace span ID to key on.
83
+ */
84
+ private maybeCaptureRootOtelCtx;
78
85
  /** Activate a span as the current parent context for downstream traces. */
79
86
  private activate;
80
87
  private get localState();
@@ -1 +1 @@
1
- {"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../../../src/ai-service/llmobs/tracer.ts"],"names":[],"mappings":"AA0CA,OAAO,KAAK,EACV,kBAAkB,EAElB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,EACzB,gBAAgB,EAChB,UAAU,EAEX,MAAM,YAAY,CAAC;AAmCpB;;;;;GAKG;AAEH,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,YAAY,CAAqD;IACzE,OAAO,CAAC,UAAU,CAA8B;IAChD,OAAO,CAAC,iBAAiB,CAAmB;IAC5C,OAAO,CAAC,MAAM,CAAC,SAAS,CAAoC;IAErD,QAAQ,CAAC,EAAE,UAAU,CAAC;IAE7B,SAAS,aAAa,EACpB,iBAA2B,GAC5B,GAAE;QACD,iBAAiB,CAAC,EAAE,gBAAgB,CAAC;KACjC;IAMN,WAAkB,QAAQ,IAAI,YAAY,CAEzC;IAED;;;;OAIG;IACI,oBAAoB,CAAC,MAAM,EAAE,gBAAgB;IAIpD;;;OAGG;IACI,KAAK,CAAC,CAAC,EACZ,OAAO,EAAE,sBAAsB,EAC/B,EAAE,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,CAAC,GAC1B,CAAC;IAIJ;;;OAGG;IACI,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAC3C,OAAO,EAAE,yBAAyB,EAClC,EAAE,EAAE,CAAC,GACJ,CAAC;IAQG,eAAe,CAAC,OAAO,EAAE,uBAAuB,GAAG,UAAU;IAQpE;;OAEG;IACI,KAAK,IAAI,IAAI;IAQpB;;;OAGG;IACI,UAAU,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,kBAAkB;IAgBxD;;;OAGG;IACI,QAAQ,CAAC,WAAW,EAAE,uBAAuB,GAAG,IAAI;IACpD,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,uBAAuB,GAAG,IAAI;IAoC7E,kEAAkE;IAC3D,gBAAgB,CACrB,WAAW,EAAE,kBAAkB,EAC/B,MAAM,EAAE,uBAAuB,GAC9B,IAAI;IAIP;;;OAGG;IACI,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAC/C,OAAO,EAAE,yBAAyB,GACjC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC;IAMnB,wEAAwE;IACjE,MAAM,IAAI,UAAU,GAAG,SAAS;IAIvC;;;OAGG;IACI,aAAa,CAAC,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE;IAIjD;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAiChB;;;OAGG;IACH,OAAO,CAAC,MAAM;IA4Dd,OAAO,CAAC,MAAM,CAAC,cAAc;IAkB7B,2EAA2E;IAC3E,OAAO,CAAC,QAAQ;IAahB,OAAO,KAAK,UAAU,GAErB;IAED,OAAO,CAAC,MAAM,CAAC,OAAO,CAAsC;IAC5D,OAAO,CAAC,MAAM,CAAC,wBAAwB,CAAS;IAChD,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAwB;IAEzD,OAAO,KAAK,MAAM,GA+BjB;IAED;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IA2B1B,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,MAAM;IAQd;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAkCpC,gEAAgE;IAChE,OAAO,CAAC,MAAM,CAAC,YAAY;IAI3B,kFAAkF;IAClF,OAAO,CAAC,MAAM,CAAC,0BAA0B;CAsC1C;AAsCD,eAAO,MAAM,MAAM,cAAwB,CAAC;AAC5C,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../../../src/ai-service/llmobs/tracer.ts"],"names":[],"mappings":"AAgDA,OAAO,KAAK,EACV,kBAAkB,EAElB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,EACzB,gBAAgB,EAChB,UAAU,EAEX,MAAM,YAAY,CAAC;AAmCpB;;;;;GAKG;AAEH,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,YAAY,CAAqD;IACzE,OAAO,CAAC,UAAU,CAA8B;IAChD,OAAO,CAAC,iBAAiB,CAAmB;IAC5C,OAAO,CAAC,MAAM,CAAC,SAAS,CAAoC;IAErD,QAAQ,CAAC,EAAE,UAAU,CAAC;IAE7B,SAAS,aAAa,EACpB,iBAA2B,GAC5B,GAAE;QACD,iBAAiB,CAAC,EAAE,gBAAgB,CAAC;KACjC;IAMN,WAAkB,QAAQ,IAAI,YAAY,CAEzC;IAED;;;;OAIG;IACI,oBAAoB,CAAC,MAAM,EAAE,gBAAgB;IAIpD;;;OAGG;IACI,KAAK,CAAC,CAAC,EACZ,OAAO,EAAE,sBAAsB,EAC/B,EAAE,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,CAAC,GAC1B,CAAC;IAIJ;;;OAGG;IACI,IAAI,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAC3C,OAAO,EAAE,yBAAyB,EAClC,EAAE,EAAE,CAAC,GACJ,CAAC;IAQG,eAAe,CAAC,OAAO,EAAE,uBAAuB,GAAG,UAAU;IAQpE;;OAEG;IACI,KAAK,IAAI,IAAI;IAQpB;;;OAGG;IACI,UAAU,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,kBAAkB;IAgBxD;;;OAGG;IACI,QAAQ,CAAC,WAAW,EAAE,uBAAuB,GAAG,IAAI;IACpD,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,uBAAuB,GAAG,IAAI;IAoC7E,kEAAkE;IAC3D,gBAAgB,CACrB,WAAW,EAAE,kBAAkB,EAC/B,MAAM,EAAE,uBAAuB,GAC9B,IAAI;IAIP;;;OAGG;IACI,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAC/C,OAAO,EAAE,yBAAyB,GACjC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC;IAMnB,wEAAwE;IACjE,MAAM,IAAI,UAAU,GAAG,SAAS;IAIvC;;;OAGG;IACI,aAAa,CAAC,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE;IAIjD;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAiChB;;;OAGG;IACH,OAAO,CAAC,MAAM;IAsFd,OAAO,CAAC,MAAM,CAAC,cAAc;IAkB7B;;;;;OAKG;IACH,OAAO,CAAC,uBAAuB;IAY/B,2EAA2E;IAC3E,OAAO,CAAC,QAAQ;IAahB,OAAO,KAAK,UAAU,GAErB;IAED,OAAO,CAAC,MAAM,CAAC,OAAO,CAAsC;IAC5D,OAAO,CAAC,MAAM,CAAC,wBAAwB,CAAS;IAChD,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAwB;IAEzD,OAAO,KAAK,MAAM,GA+BjB;IAED;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IA2B1B,OAAO,CAAC,QAAQ;IAShB,OAAO,CAAC,MAAM;IAQd;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAkCpC,gEAAgE;IAChE,OAAO,CAAC,MAAM,CAAC,YAAY;IAI3B,kFAAkF;IAClF,OAAO,CAAC,MAAM,CAAC,0BAA0B;CAsC1C;AAsCD,eAAO,MAAM,MAAM,cAAwB,CAAC;AAC5C,eAAe,MAAM,CAAC"}