@multiplayer-app/sandbox 0.0.37 → 2.0.0-wip-yjs-state-changes.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 (736) hide show
  1. package/README.md +121 -0
  2. package/dist/cli.d.ts +3 -0
  3. package/dist/cli.d.ts.map +1 -0
  4. package/dist/cli.js +105 -0
  5. package/dist/cli.js.map +1 -0
  6. package/dist/config.d.ts +87 -2
  7. package/dist/config.d.ts.map +1 -1
  8. package/dist/config.js +141 -3
  9. package/dist/config.js.map +1 -1
  10. package/dist/console-relays.d.ts +10 -0
  11. package/dist/console-relays.d.ts.map +1 -0
  12. package/dist/console-relays.js +46 -0
  13. package/dist/console-relays.js.map +1 -0
  14. package/dist/executor/detect.d.ts +15 -0
  15. package/dist/executor/detect.d.ts.map +1 -0
  16. package/dist/executor/detect.js +184 -0
  17. package/dist/executor/detect.js.map +1 -0
  18. package/dist/executor/docker-executor.d.ts +49 -0
  19. package/dist/executor/docker-executor.d.ts.map +1 -0
  20. package/dist/executor/docker-executor.js +331 -0
  21. package/dist/executor/docker-executor.js.map +1 -0
  22. package/dist/executor/docker-sandbox-executor.d.ts +67 -0
  23. package/dist/executor/docker-sandbox-executor.d.ts.map +1 -0
  24. package/dist/executor/docker-sandbox-executor.js +343 -0
  25. package/dist/executor/docker-sandbox-executor.js.map +1 -0
  26. package/dist/executor/fargate-executor.d.ts +62 -0
  27. package/dist/executor/fargate-executor.d.ts.map +1 -0
  28. package/dist/executor/fargate-executor.js +293 -0
  29. package/dist/executor/fargate-executor.js.map +1 -0
  30. package/dist/executor/firecracker-executor.d.ts +45 -0
  31. package/dist/executor/firecracker-executor.d.ts.map +1 -0
  32. package/dist/executor/firecracker-executor.js +352 -0
  33. package/dist/executor/firecracker-executor.js.map +1 -0
  34. package/dist/executor/index.d.ts +50 -0
  35. package/dist/executor/index.d.ts.map +1 -0
  36. package/dist/executor/index.js +166 -0
  37. package/dist/executor/index.js.map +1 -0
  38. package/dist/executor/lambda-microvm-executor.d.ts +52 -0
  39. package/dist/executor/lambda-microvm-executor.d.ts.map +1 -0
  40. package/dist/executor/lambda-microvm-executor.js +211 -0
  41. package/dist/executor/lambda-microvm-executor.js.map +1 -0
  42. package/dist/executor/mock-executor.d.ts +19 -0
  43. package/dist/executor/mock-executor.d.ts.map +1 -0
  44. package/dist/executor/mock-executor.js +198 -0
  45. package/dist/executor/mock-executor.js.map +1 -0
  46. package/dist/executor/mock-executor.test.d.ts +2 -0
  47. package/dist/executor/mock-executor.test.d.ts.map +1 -0
  48. package/dist/executor/mock-executor.test.js +81 -0
  49. package/dist/executor/mock-executor.test.js.map +1 -0
  50. package/dist/executor/qemu-executor.d.ts +60 -0
  51. package/dist/executor/qemu-executor.d.ts.map +1 -0
  52. package/dist/executor/qemu-executor.js +383 -0
  53. package/dist/executor/qemu-executor.js.map +1 -0
  54. package/dist/executor/reattach-utils.d.ts +3 -0
  55. package/dist/executor/reattach-utils.d.ts.map +1 -0
  56. package/dist/executor/reattach-utils.js +11 -0
  57. package/dist/executor/reattach-utils.js.map +1 -0
  58. package/dist/executor/remote-executor.d.ts +30 -0
  59. package/dist/executor/remote-executor.d.ts.map +1 -0
  60. package/dist/executor/remote-executor.js +125 -0
  61. package/dist/executor/remote-executor.js.map +1 -0
  62. package/dist/executor/types.d.ts +71 -0
  63. package/dist/executor/types.d.ts.map +1 -0
  64. package/dist/{agents/skills → executor}/types.js.map +1 -1
  65. package/dist/images.d.ts +28 -0
  66. package/dist/images.d.ts.map +1 -0
  67. package/dist/images.js +163 -0
  68. package/dist/images.js.map +1 -0
  69. package/dist/index.d.ts +12 -26
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +27 -59
  72. package/dist/index.js.map +1 -1
  73. package/dist/services/serial-relay.d.ts +16 -0
  74. package/dist/services/serial-relay.d.ts.map +1 -0
  75. package/dist/services/serial-relay.js +74 -0
  76. package/dist/services/serial-relay.js.map +1 -0
  77. package/dist/services/vnc-relay.d.ts +16 -0
  78. package/dist/services/vnc-relay.d.ts.map +1 -0
  79. package/dist/services/vnc-relay.js +101 -0
  80. package/dist/services/vnc-relay.js.map +1 -0
  81. package/dist/socket-client.d.ts +5 -0
  82. package/dist/socket-client.d.ts.map +1 -0
  83. package/dist/socket-client.js +119 -0
  84. package/dist/socket-client.js.map +1 -0
  85. package/package.json +26 -17
  86. package/dist/agents/blocknote.agent.d.ts +0 -6
  87. package/dist/agents/blocknote.agent.d.ts.map +0 -1
  88. package/dist/agents/blocknote.agent.js +0 -18
  89. package/dist/agents/blocknote.agent.js.map +0 -1
  90. package/dist/agents/content-generator.agent.d.ts +0 -12
  91. package/dist/agents/content-generator.agent.d.ts.map +0 -1
  92. package/dist/agents/content-generator.agent.js +0 -96
  93. package/dist/agents/content-generator.agent.js.map +0 -1
  94. package/dist/agents/filingramp-fetch.agent.d.ts +0 -4
  95. package/dist/agents/filingramp-fetch.agent.d.ts.map +0 -1
  96. package/dist/agents/filingramp-fetch.agent.js +0 -195
  97. package/dist/agents/filingramp-fetch.agent.js.map +0 -1
  98. package/dist/agents/html-generator.agent.d.ts +0 -4
  99. package/dist/agents/html-generator.agent.d.ts.map +0 -1
  100. package/dist/agents/html-generator.agent.js +0 -93
  101. package/dist/agents/html-generator.agent.js.map +0 -1
  102. package/dist/agents/knowledge/filingramp-endpoints.d.ts +0 -23
  103. package/dist/agents/knowledge/filingramp-endpoints.d.ts.map +0 -1
  104. package/dist/agents/knowledge/filingramp-endpoints.js +0 -116
  105. package/dist/agents/knowledge/filingramp-endpoints.js.map +0 -1
  106. package/dist/agents/markdown-generator.agent.d.ts +0 -4
  107. package/dist/agents/markdown-generator.agent.d.ts.map +0 -1
  108. package/dist/agents/markdown-generator.agent.js +0 -101
  109. package/dist/agents/markdown-generator.agent.js.map +0 -1
  110. package/dist/agents/notebook.agent.d.ts +0 -4
  111. package/dist/agents/notebook.agent.d.ts.map +0 -1
  112. package/dist/agents/notebook.agent.js +0 -49
  113. package/dist/agents/notebook.agent.js.map +0 -1
  114. package/dist/agents/shared/agent-context.d.ts +0 -3
  115. package/dist/agents/shared/agent-context.d.ts.map +0 -1
  116. package/dist/agents/shared/agent-context.js +0 -17
  117. package/dist/agents/shared/agent-context.js.map +0 -1
  118. package/dist/agents/shared/app-vm.tools.d.ts +0 -4
  119. package/dist/agents/shared/app-vm.tools.d.ts.map +0 -1
  120. package/dist/agents/shared/app-vm.tools.js +0 -105
  121. package/dist/agents/shared/app-vm.tools.js.map +0 -1
  122. package/dist/agents/shared/blocknote-system-prompt.d.ts +0 -2
  123. package/dist/agents/shared/blocknote-system-prompt.d.ts.map +0 -1
  124. package/dist/agents/shared/blocknote-system-prompt.js +0 -40
  125. package/dist/agents/shared/blocknote-system-prompt.js.map +0 -1
  126. package/dist/agents/shared/build-plan.tools.d.ts +0 -5
  127. package/dist/agents/shared/build-plan.tools.d.ts.map +0 -1
  128. package/dist/agents/shared/build-plan.tools.js +0 -176
  129. package/dist/agents/shared/build-plan.tools.js.map +0 -1
  130. package/dist/agents/shared/content-generator-system-prompt.d.ts +0 -4
  131. package/dist/agents/shared/content-generator-system-prompt.d.ts.map +0 -1
  132. package/dist/agents/shared/content-generator-system-prompt.js +0 -51
  133. package/dist/agents/shared/content-generator-system-prompt.js.map +0 -1
  134. package/dist/agents/shared/get-latest-session-artifact.tool.d.ts +0 -7
  135. package/dist/agents/shared/get-latest-session-artifact.tool.d.ts.map +0 -1
  136. package/dist/agents/shared/get-latest-session-artifact.tool.js +0 -43
  137. package/dist/agents/shared/get-latest-session-artifact.tool.js.map +0 -1
  138. package/dist/agents/shared/get-session-artifact-content.tool.d.ts +0 -7
  139. package/dist/agents/shared/get-session-artifact-content.tool.d.ts.map +0 -1
  140. package/dist/agents/shared/get-session-artifact-content.tool.js +0 -44
  141. package/dist/agents/shared/get-session-artifact-content.tool.js.map +0 -1
  142. package/dist/agents/shared/list-session-artifact-paths.tool.d.ts +0 -5
  143. package/dist/agents/shared/list-session-artifact-paths.tool.d.ts.map +0 -1
  144. package/dist/agents/shared/list-session-artifact-paths.tool.js +0 -37
  145. package/dist/agents/shared/list-session-artifact-paths.tool.js.map +0 -1
  146. package/dist/agents/shared/notebook-agent-system-prompt.d.ts +0 -2
  147. package/dist/agents/shared/notebook-agent-system-prompt.d.ts.map +0 -1
  148. package/dist/agents/shared/notebook-agent-system-prompt.js +0 -68
  149. package/dist/agents/shared/notebook-agent-system-prompt.js.map +0 -1
  150. package/dist/agents/shared/notebook-tools.d.ts +0 -24
  151. package/dist/agents/shared/notebook-tools.d.ts.map +0 -1
  152. package/dist/agents/shared/notebook-tools.js +0 -410
  153. package/dist/agents/shared/notebook-tools.js.map +0 -1
  154. package/dist/agents/shared/publish-session-artifacts.tool.d.ts +0 -19
  155. package/dist/agents/shared/publish-session-artifacts.tool.d.ts.map +0 -1
  156. package/dist/agents/shared/publish-session-artifacts.tool.js +0 -276
  157. package/dist/agents/shared/publish-session-artifacts.tool.js.map +0 -1
  158. package/dist/agents/shared/session-quality-report.tool.d.ts +0 -7
  159. package/dist/agents/shared/session-quality-report.tool.d.ts.map +0 -1
  160. package/dist/agents/shared/session-quality-report.tool.js +0 -97
  161. package/dist/agents/shared/session-quality-report.tool.js.map +0 -1
  162. package/dist/agents/shared/session-vm-bridge.d.ts +0 -49
  163. package/dist/agents/shared/session-vm-bridge.d.ts.map +0 -1
  164. package/dist/agents/shared/session-vm-bridge.js +0 -9
  165. package/dist/agents/shared/session-vm-bridge.js.map +0 -1
  166. package/dist/agents/shared/update-session-artifacts.tool.d.ts +0 -23
  167. package/dist/agents/shared/update-session-artifacts.tool.d.ts.map +0 -1
  168. package/dist/agents/shared/update-session-artifacts.tool.js +0 -269
  169. package/dist/agents/shared/update-session-artifacts.tool.js.map +0 -1
  170. package/dist/agents/shared/validate-artifact-content.tools.d.ts +0 -16
  171. package/dist/agents/shared/validate-artifact-content.tools.d.ts.map +0 -1
  172. package/dist/agents/shared/validate-artifact-content.tools.js +0 -154
  173. package/dist/agents/shared/validate-artifact-content.tools.js.map +0 -1
  174. package/dist/agents/skills/a11y.skill.d.ts +0 -3
  175. package/dist/agents/skills/a11y.skill.d.ts.map +0 -1
  176. package/dist/agents/skills/a11y.skill.js +0 -23
  177. package/dist/agents/skills/a11y.skill.js.map +0 -1
  178. package/dist/agents/skills/account-skill-loader.d.ts +0 -13
  179. package/dist/agents/skills/account-skill-loader.d.ts.map +0 -1
  180. package/dist/agents/skills/account-skill-loader.js +0 -42
  181. package/dist/agents/skills/account-skill-loader.js.map +0 -1
  182. package/dist/agents/skills/app-scaffold.skill.d.ts +0 -3
  183. package/dist/agents/skills/app-scaffold.skill.d.ts.map +0 -1
  184. package/dist/agents/skills/app-scaffold.skill.js +0 -30
  185. package/dist/agents/skills/app-scaffold.skill.js.map +0 -1
  186. package/dist/agents/skills/copywriting.skill.d.ts +0 -3
  187. package/dist/agents/skills/copywriting.skill.d.ts.map +0 -1
  188. package/dist/agents/skills/copywriting.skill.js +0 -35
  189. package/dist/agents/skills/copywriting.skill.js.map +0 -1
  190. package/dist/agents/skills/custom-skill-repository.d.ts +0 -40
  191. package/dist/agents/skills/custom-skill-repository.d.ts.map +0 -1
  192. package/dist/agents/skills/custom-skill-repository.js +0 -3
  193. package/dist/agents/skills/custom-skill-repository.js.map +0 -1
  194. package/dist/agents/skills/data-viz.skill.d.ts +0 -3
  195. package/dist/agents/skills/data-viz.skill.d.ts.map +0 -1
  196. package/dist/agents/skills/data-viz.skill.js +0 -42
  197. package/dist/agents/skills/data-viz.skill.js.map +0 -1
  198. package/dist/agents/skills/designer.skill.d.ts +0 -3
  199. package/dist/agents/skills/designer.skill.d.ts.map +0 -1
  200. package/dist/agents/skills/designer.skill.js +0 -101
  201. package/dist/agents/skills/designer.skill.js.map +0 -1
  202. package/dist/agents/skills/forms.skill.d.ts +0 -3
  203. package/dist/agents/skills/forms.skill.d.ts.map +0 -1
  204. package/dist/agents/skills/forms.skill.js +0 -37
  205. package/dist/agents/skills/forms.skill.js.map +0 -1
  206. package/dist/agents/skills/index.d.ts +0 -6
  207. package/dist/agents/skills/index.d.ts.map +0 -1
  208. package/dist/agents/skills/index.js +0 -18
  209. package/dist/agents/skills/index.js.map +0 -1
  210. package/dist/agents/skills/interactions.skill.d.ts +0 -3
  211. package/dist/agents/skills/interactions.skill.d.ts.map +0 -1
  212. package/dist/agents/skills/interactions.skill.js +0 -31
  213. package/dist/agents/skills/interactions.skill.js.map +0 -1
  214. package/dist/agents/skills/registry.d.ts +0 -23
  215. package/dist/agents/skills/registry.d.ts.map +0 -1
  216. package/dist/agents/skills/registry.js +0 -75
  217. package/dist/agents/skills/registry.js.map +0 -1
  218. package/dist/agents/skills/skill-injection.d.ts +0 -52
  219. package/dist/agents/skills/skill-injection.d.ts.map +0 -1
  220. package/dist/agents/skills/skill-injection.js +0 -216
  221. package/dist/agents/skills/skill-injection.js.map +0 -1
  222. package/dist/agents/skills/types.d.ts +0 -12
  223. package/dist/agents/skills/types.d.ts.map +0 -1
  224. package/dist/agents.d.ts +0 -5
  225. package/dist/agents.d.ts.map +0 -1
  226. package/dist/agents.js +0 -18
  227. package/dist/agents.js.map +0 -1
  228. package/dist/ai-agent.service.d.ts +0 -10
  229. package/dist/ai-agent.service.d.ts.map +0 -1
  230. package/dist/ai-agent.service.js +0 -27
  231. package/dist/ai-agent.service.js.map +0 -1
  232. package/dist/builder-api-config.d.ts +0 -41
  233. package/dist/builder-api-config.d.ts.map +0 -1
  234. package/dist/builder-api-config.js +0 -12
  235. package/dist/builder-api-config.js.map +0 -1
  236. package/dist/context.d.ts +0 -36
  237. package/dist/context.d.ts.map +0 -1
  238. package/dist/context.js +0 -42
  239. package/dist/context.js.map +0 -1
  240. package/dist/create-builder-api.d.ts +0 -47
  241. package/dist/create-builder-api.d.ts.map +0 -1
  242. package/dist/create-builder-api.js +0 -79
  243. package/dist/create-builder-api.js.map +0 -1
  244. package/dist/lib/account-dbs/account-db-repository.d.ts +0 -13
  245. package/dist/lib/account-dbs/account-db-repository.d.ts.map +0 -1
  246. package/dist/lib/account-dbs/account-db-repository.js +0 -3
  247. package/dist/lib/account-dbs/account-db-repository.js.map +0 -1
  248. package/dist/lib/account-dbs/account-db.d.ts +0 -59
  249. package/dist/lib/account-dbs/account-db.d.ts.map +0 -1
  250. package/dist/lib/account-dbs/account-db.js +0 -7
  251. package/dist/lib/account-dbs/account-db.js.map +0 -1
  252. package/dist/lib/ai/agent-ai-service.d.ts +0 -3
  253. package/dist/lib/ai/agent-ai-service.d.ts.map +0 -1
  254. package/dist/lib/ai/agent-ai-service.js +0 -15
  255. package/dist/lib/ai/agent-ai-service.js.map +0 -1
  256. package/dist/lib/ai/ai-error-details.d.ts +0 -13
  257. package/dist/lib/ai/ai-error-details.d.ts.map +0 -1
  258. package/dist/lib/ai/ai-error-details.js +0 -84
  259. package/dist/lib/ai/ai-error-details.js.map +0 -1
  260. package/dist/lib/ai/generate-ai-text.d.ts +0 -12
  261. package/dist/lib/ai/generate-ai-text.d.ts.map +0 -1
  262. package/dist/lib/ai/generate-ai-text.js +0 -105
  263. package/dist/lib/ai/generate-ai-text.js.map +0 -1
  264. package/dist/lib/ai/run-explicit-agent.d.ts +0 -15
  265. package/dist/lib/ai/run-explicit-agent.d.ts.map +0 -1
  266. package/dist/lib/ai/run-explicit-agent.js +0 -30
  267. package/dist/lib/ai/run-explicit-agent.js.map +0 -1
  268. package/dist/lib/chat-access.d.ts +0 -19
  269. package/dist/lib/chat-access.d.ts.map +0 -1
  270. package/dist/lib/chat-access.js +0 -75
  271. package/dist/lib/chat-access.js.map +0 -1
  272. package/dist/lib/library/list-library-items.d.ts +0 -21
  273. package/dist/lib/library/list-library-items.d.ts.map +0 -1
  274. package/dist/lib/library/list-library-items.js +0 -94
  275. package/dist/lib/library/list-library-items.js.map +0 -1
  276. package/dist/lib/list-user-chats.d.ts +0 -22
  277. package/dist/lib/list-user-chats.d.ts.map +0 -1
  278. package/dist/lib/list-user-chats.js +0 -48
  279. package/dist/lib/list-user-chats.js.map +0 -1
  280. package/dist/lib/notebooks/notebook-assistant-prompts.d.ts +0 -6
  281. package/dist/lib/notebooks/notebook-assistant-prompts.d.ts.map +0 -1
  282. package/dist/lib/notebooks/notebook-assistant-prompts.js +0 -60
  283. package/dist/lib/notebooks/notebook-assistant-prompts.js.map +0 -1
  284. package/dist/lib/notebooks/notebook-assistant.d.ts +0 -56
  285. package/dist/lib/notebooks/notebook-assistant.d.ts.map +0 -1
  286. package/dist/lib/notebooks/notebook-assistant.js +0 -245
  287. package/dist/lib/notebooks/notebook-assistant.js.map +0 -1
  288. package/dist/lib/notebooks/notebook-content.d.ts +0 -16
  289. package/dist/lib/notebooks/notebook-content.d.ts.map +0 -1
  290. package/dist/lib/notebooks/notebook-content.js +0 -104
  291. package/dist/lib/notebooks/notebook-content.js.map +0 -1
  292. package/dist/lib/notebooks/notebook-merged-state.d.ts +0 -3
  293. package/dist/lib/notebooks/notebook-merged-state.d.ts.map +0 -1
  294. package/dist/lib/notebooks/notebook-merged-state.js +0 -19
  295. package/dist/lib/notebooks/notebook-merged-state.js.map +0 -1
  296. package/dist/lib/notebooks/notebook-repository.d.ts +0 -47
  297. package/dist/lib/notebooks/notebook-repository.d.ts.map +0 -1
  298. package/dist/lib/notebooks/notebook-repository.js +0 -3
  299. package/dist/lib/notebooks/notebook-repository.js.map +0 -1
  300. package/dist/lib/notebooks/notebook-sql-client.d.ts +0 -5
  301. package/dist/lib/notebooks/notebook-sql-client.d.ts.map +0 -1
  302. package/dist/lib/notebooks/notebook-sql-client.js +0 -37
  303. package/dist/lib/notebooks/notebook-sql-client.js.map +0 -1
  304. package/dist/lib/notebooks/notebook-sql-schema.d.ts +0 -16
  305. package/dist/lib/notebooks/notebook-sql-schema.d.ts.map +0 -1
  306. package/dist/lib/notebooks/notebook-sql-schema.js +0 -117
  307. package/dist/lib/notebooks/notebook-sql-schema.js.map +0 -1
  308. package/dist/lib/notebooks/notebook-sql.d.ts +0 -9
  309. package/dist/lib/notebooks/notebook-sql.d.ts.map +0 -1
  310. package/dist/lib/notebooks/notebook-sql.js +0 -36
  311. package/dist/lib/notebooks/notebook-sql.js.map +0 -1
  312. package/dist/lib/notebooks/notebook-storage-paths.d.ts +0 -8
  313. package/dist/lib/notebooks/notebook-storage-paths.d.ts.map +0 -1
  314. package/dist/lib/notebooks/notebook-storage-paths.js +0 -22
  315. package/dist/lib/notebooks/notebook-storage-paths.js.map +0 -1
  316. package/dist/lib/notebooks/notebook-yjs-blocks.d.ts +0 -46
  317. package/dist/lib/notebooks/notebook-yjs-blocks.d.ts.map +0 -1
  318. package/dist/lib/notebooks/notebook-yjs-blocks.js +0 -223
  319. package/dist/lib/notebooks/notebook-yjs-blocks.js.map +0 -1
  320. package/dist/lib/notebooks/notebook-yjs-content.d.ts +0 -6
  321. package/dist/lib/notebooks/notebook-yjs-content.d.ts.map +0 -1
  322. package/dist/lib/notebooks/notebook-yjs-content.js +0 -42
  323. package/dist/lib/notebooks/notebook-yjs-content.js.map +0 -1
  324. package/dist/lib/notebooks/sql-block-attrs.d.ts +0 -5
  325. package/dist/lib/notebooks/sql-block-attrs.d.ts.map +0 -1
  326. package/dist/lib/notebooks/sql-block-attrs.js +0 -68
  327. package/dist/lib/notebooks/sql-block-attrs.js.map +0 -1
  328. package/dist/lib/object-storage/index.d.ts +0 -3
  329. package/dist/lib/object-storage/index.d.ts.map +0 -1
  330. package/dist/lib/object-storage/index.js +0 -19
  331. package/dist/lib/object-storage/index.js.map +0 -1
  332. package/dist/lib/object-storage/keys.d.ts +0 -11
  333. package/dist/lib/object-storage/keys.d.ts.map +0 -1
  334. package/dist/lib/object-storage/keys.js +0 -56
  335. package/dist/lib/object-storage/keys.js.map +0 -1
  336. package/dist/lib/object-storage/named-snapshot-paths.d.ts +0 -9
  337. package/dist/lib/object-storage/named-snapshot-paths.d.ts.map +0 -1
  338. package/dist/lib/object-storage/named-snapshot-paths.js +0 -39
  339. package/dist/lib/object-storage/named-snapshot-paths.js.map +0 -1
  340. package/dist/lib/object-storage/s3-object-store.d.ts +0 -14
  341. package/dist/lib/object-storage/s3-object-store.d.ts.map +0 -1
  342. package/dist/lib/object-storage/s3-object-store.js +0 -64
  343. package/dist/lib/object-storage/s3-object-store.js.map +0 -1
  344. package/dist/lib/session-artifacts/apply-hashline-edits.d.ts +0 -3
  345. package/dist/lib/session-artifacts/apply-hashline-edits.d.ts.map +0 -1
  346. package/dist/lib/session-artifacts/apply-hashline-edits.js +0 -25
  347. package/dist/lib/session-artifacts/apply-hashline-edits.js.map +0 -1
  348. package/dist/lib/session-artifacts/artifact-text-edit.d.ts +0 -8
  349. package/dist/lib/session-artifacts/artifact-text-edit.d.ts.map +0 -1
  350. package/dist/lib/session-artifacts/artifact-text-edit.js +0 -23
  351. package/dist/lib/session-artifacts/artifact-text-edit.js.map +0 -1
  352. package/dist/lib/session-artifacts/hashline-diff-guide.d.ts +0 -3
  353. package/dist/lib/session-artifacts/hashline-diff-guide.d.ts.map +0 -1
  354. package/dist/lib/session-artifacts/hashline-diff-guide.js +0 -23
  355. package/dist/lib/session-artifacts/hashline-diff-guide.js.map +0 -1
  356. package/dist/lib/session-artifacts/hashline-tag.d.ts +0 -33
  357. package/dist/lib/session-artifacts/hashline-tag.d.ts.map +0 -1
  358. package/dist/lib/session-artifacts/hashline-tag.js +0 -80
  359. package/dist/lib/session-artifacts/hashline-tag.js.map +0 -1
  360. package/dist/lib/session-artifacts/hashline-tags.d.ts +0 -17
  361. package/dist/lib/session-artifacts/hashline-tags.d.ts.map +0 -1
  362. package/dist/lib/session-artifacts/hashline-tags.js +0 -69
  363. package/dist/lib/session-artifacts/hashline-tags.js.map +0 -1
  364. package/dist/lib/session-artifacts/parse-hashline-diff.d.ts +0 -24
  365. package/dist/lib/session-artifacts/parse-hashline-diff.d.ts.map +0 -1
  366. package/dist/lib/session-artifacts/parse-hashline-diff.js +0 -126
  367. package/dist/lib/session-artifacts/parse-hashline-diff.js.map +0 -1
  368. package/dist/lib/session-pages/artifact-quality-audit.d.ts +0 -16
  369. package/dist/lib/session-pages/artifact-quality-audit.d.ts.map +0 -1
  370. package/dist/lib/session-pages/artifact-quality-audit.js +0 -298
  371. package/dist/lib/session-pages/artifact-quality-audit.js.map +0 -1
  372. package/dist/lib/session-pages/artifact-storage-paths.d.ts +0 -14
  373. package/dist/lib/session-pages/artifact-storage-paths.d.ts.map +0 -1
  374. package/dist/lib/session-pages/artifact-storage-paths.js +0 -50
  375. package/dist/lib/session-pages/artifact-storage-paths.js.map +0 -1
  376. package/dist/lib/session-pages/artifact-storage.d.ts +0 -11
  377. package/dist/lib/session-pages/artifact-storage.d.ts.map +0 -1
  378. package/dist/lib/session-pages/artifact-storage.js +0 -132
  379. package/dist/lib/session-pages/artifact-storage.js.map +0 -1
  380. package/dist/lib/session-pages/audit-session-html.d.ts +0 -23
  381. package/dist/lib/session-pages/audit-session-html.d.ts.map +0 -1
  382. package/dist/lib/session-pages/audit-session-html.js +0 -82
  383. package/dist/lib/session-pages/audit-session-html.js.map +0 -1
  384. package/dist/lib/session-pages/contrast-check.d.ts +0 -25
  385. package/dist/lib/session-pages/contrast-check.d.ts.map +0 -1
  386. package/dist/lib/session-pages/contrast-check.js +0 -290
  387. package/dist/lib/session-pages/contrast-check.js.map +0 -1
  388. package/dist/lib/session-pages/default-session-styles.d.ts +0 -6
  389. package/dist/lib/session-pages/default-session-styles.d.ts.map +0 -1
  390. package/dist/lib/session-pages/default-session-styles.js +0 -503
  391. package/dist/lib/session-pages/default-session-styles.js.map +0 -1
  392. package/dist/lib/session-pages/deferred-quality-rules.d.ts +0 -7
  393. package/dist/lib/session-pages/deferred-quality-rules.d.ts.map +0 -1
  394. package/dist/lib/session-pages/deferred-quality-rules.js +0 -25
  395. package/dist/lib/session-pages/deferred-quality-rules.js.map +0 -1
  396. package/dist/lib/session-pages/delete-session-artifact.d.ts +0 -5
  397. package/dist/lib/session-pages/delete-session-artifact.d.ts.map +0 -1
  398. package/dist/lib/session-pages/delete-session-artifact.js +0 -25
  399. package/dist/lib/session-pages/delete-session-artifact.js.map +0 -1
  400. package/dist/lib/session-pages/delete-session-artifacts.d.ts +0 -5
  401. package/dist/lib/session-pages/delete-session-artifacts.d.ts.map +0 -1
  402. package/dist/lib/session-pages/delete-session-artifacts.js +0 -66
  403. package/dist/lib/session-pages/delete-session-artifacts.js.map +0 -1
  404. package/dist/lib/session-pages/html-artifact-template.d.ts +0 -28
  405. package/dist/lib/session-pages/html-artifact-template.d.ts.map +0 -1
  406. package/dist/lib/session-pages/html-artifact-template.js +0 -202
  407. package/dist/lib/session-pages/html-artifact-template.js.map +0 -1
  408. package/dist/lib/session-pages/index.d.ts +0 -12
  409. package/dist/lib/session-pages/index.d.ts.map +0 -1
  410. package/dist/lib/session-pages/index.js +0 -32
  411. package/dist/lib/session-pages/index.js.map +0 -1
  412. package/dist/lib/session-pages/inject-preview-error-reporter.d.ts +0 -3
  413. package/dist/lib/session-pages/inject-preview-error-reporter.d.ts.map +0 -1
  414. package/dist/lib/session-pages/inject-preview-error-reporter.js +0 -30
  415. package/dist/lib/session-pages/inject-preview-error-reporter.js.map +0 -1
  416. package/dist/lib/session-pages/list-session-artifacts.d.ts +0 -6
  417. package/dist/lib/session-pages/list-session-artifacts.d.ts.map +0 -1
  418. package/dist/lib/session-pages/list-session-artifacts.js +0 -56
  419. package/dist/lib/session-pages/list-session-artifacts.js.map +0 -1
  420. package/dist/lib/session-pages/paths.d.ts +0 -6
  421. package/dist/lib/session-pages/paths.d.ts.map +0 -1
  422. package/dist/lib/session-pages/paths.js +0 -41
  423. package/dist/lib/session-pages/paths.js.map +0 -1
  424. package/dist/lib/session-pages/read-session-artifact.d.ts +0 -7
  425. package/dist/lib/session-pages/read-session-artifact.d.ts.map +0 -1
  426. package/dist/lib/session-pages/read-session-artifact.js +0 -60
  427. package/dist/lib/session-pages/read-session-artifact.js.map +0 -1
  428. package/dist/lib/session-pages/read-session-artifacts.d.ts +0 -9
  429. package/dist/lib/session-pages/read-session-artifacts.d.ts.map +0 -1
  430. package/dist/lib/session-pages/read-session-artifacts.js +0 -34
  431. package/dist/lib/session-pages/read-session-artifacts.js.map +0 -1
  432. package/dist/lib/session-pages/resolve-artifact-notify-user-ids.d.ts +0 -3
  433. package/dist/lib/session-pages/resolve-artifact-notify-user-ids.d.ts.map +0 -1
  434. package/dist/lib/session-pages/resolve-artifact-notify-user-ids.js +0 -28
  435. package/dist/lib/session-pages/resolve-artifact-notify-user-ids.js.map +0 -1
  436. package/dist/lib/session-pages/resolve-chat-id.d.ts +0 -21
  437. package/dist/lib/session-pages/resolve-chat-id.d.ts.map +0 -1
  438. package/dist/lib/session-pages/resolve-chat-id.js +0 -64
  439. package/dist/lib/session-pages/resolve-chat-id.js.map +0 -1
  440. package/dist/lib/session-pages/resolve-session-account-id.d.ts +0 -3
  441. package/dist/lib/session-pages/resolve-session-account-id.d.ts.map +0 -1
  442. package/dist/lib/session-pages/resolve-session-account-id.js +0 -31
  443. package/dist/lib/session-pages/resolve-session-account-id.js.map +0 -1
  444. package/dist/lib/session-pages/session-pico-css.d.ts +0 -5
  445. package/dist/lib/session-pages/session-pico-css.d.ts.map +0 -1
  446. package/dist/lib/session-pages/session-pico-css.js +0 -11
  447. package/dist/lib/session-pages/session-pico-css.js.map +0 -1
  448. package/dist/lib/session-pages/write-session-artifacts.d.ts +0 -20
  449. package/dist/lib/session-pages/write-session-artifacts.d.ts.map +0 -1
  450. package/dist/lib/session-pages/write-session-artifacts.js +0 -42
  451. package/dist/lib/session-pages/write-session-artifacts.js.map +0 -1
  452. package/dist/lib/session-plans/build-plan.d.ts +0 -74
  453. package/dist/lib/session-plans/build-plan.d.ts.map +0 -1
  454. package/dist/lib/session-plans/build-plan.js +0 -165
  455. package/dist/lib/session-plans/build-plan.js.map +0 -1
  456. package/dist/lib/socket/artifact-events.d.ts +0 -14
  457. package/dist/lib/socket/artifact-events.d.ts.map +0 -1
  458. package/dist/lib/socket/artifact-events.js +0 -38
  459. package/dist/lib/socket/artifact-events.js.map +0 -1
  460. package/dist/lib/socketIdFromRequest.d.ts +0 -4
  461. package/dist/lib/socketIdFromRequest.d.ts.map +0 -1
  462. package/dist/lib/socketIdFromRequest.js +0 -13
  463. package/dist/lib/socketIdFromRequest.js.map +0 -1
  464. package/dist/lib/sql-schema.d.ts +0 -31
  465. package/dist/lib/sql-schema.d.ts.map +0 -1
  466. package/dist/lib/sql-schema.js +0 -3
  467. package/dist/lib/sql-schema.js.map +0 -1
  468. package/dist/lib/yjs-pending/flush-lock.d.ts +0 -6
  469. package/dist/lib/yjs-pending/flush-lock.d.ts.map +0 -1
  470. package/dist/lib/yjs-pending/flush-lock.js +0 -43
  471. package/dist/lib/yjs-pending/flush-lock.js.map +0 -1
  472. package/dist/lib/yjs-pending/flush-worker.d.ts +0 -5
  473. package/dist/lib/yjs-pending/flush-worker.d.ts.map +0 -1
  474. package/dist/lib/yjs-pending/flush-worker.js +0 -45
  475. package/dist/lib/yjs-pending/flush-worker.js.map +0 -1
  476. package/dist/lib/yjs-pending/snapshot-retention.d.ts +0 -6
  477. package/dist/lib/yjs-pending/snapshot-retention.d.ts.map +0 -1
  478. package/dist/lib/yjs-pending/snapshot-retention.js +0 -33
  479. package/dist/lib/yjs-pending/snapshot-retention.js.map +0 -1
  480. package/dist/lib/yjs-pending/yjs-pending-updates-repository.d.ts +0 -22
  481. package/dist/lib/yjs-pending/yjs-pending-updates-repository.d.ts.map +0 -1
  482. package/dist/lib/yjs-pending/yjs-pending-updates-repository.js +0 -3
  483. package/dist/lib/yjs-pending/yjs-pending-updates-repository.js.map +0 -1
  484. package/dist/lib/yjs-pending/yjs-persistence.d.ts +0 -24
  485. package/dist/lib/yjs-pending/yjs-persistence.d.ts.map +0 -1
  486. package/dist/lib/yjs-pending/yjs-persistence.js +0 -258
  487. package/dist/lib/yjs-pending/yjs-persistence.js.map +0 -1
  488. package/dist/logger.d.ts +0 -7
  489. package/dist/logger.d.ts.map +0 -1
  490. package/dist/logger.js +0 -16
  491. package/dist/logger.js.map +0 -1
  492. package/dist/middleware/attachDemoUser.d.ts +0 -11
  493. package/dist/middleware/attachDemoUser.d.ts.map +0 -1
  494. package/dist/middleware/attachDemoUser.js +0 -23
  495. package/dist/middleware/attachDemoUser.js.map +0 -1
  496. package/dist/middleware/index.d.ts +0 -2
  497. package/dist/middleware/index.d.ts.map +0 -1
  498. package/dist/middleware/index.js +0 -38
  499. package/dist/middleware/index.js.map +0 -1
  500. package/dist/middleware/validation/activity.validation.d.ts +0 -5
  501. package/dist/middleware/validation/activity.validation.d.ts.map +0 -1
  502. package/dist/middleware/validation/activity.validation.js +0 -19
  503. package/dist/middleware/validation/activity.validation.js.map +0 -1
  504. package/dist/middleware/validation/agent.validation.d.ts +0 -4
  505. package/dist/middleware/validation/agent.validation.d.ts.map +0 -1
  506. package/dist/middleware/validation/agent.validation.js +0 -25
  507. package/dist/middleware/validation/agent.validation.js.map +0 -1
  508. package/dist/middleware/validation/chat.validation.d.ts +0 -12
  509. package/dist/middleware/validation/chat.validation.d.ts.map +0 -1
  510. package/dist/middleware/validation/chat.validation.js +0 -94
  511. package/dist/middleware/validation/chat.validation.js.map +0 -1
  512. package/dist/middleware/validation/index.d.ts +0 -4
  513. package/dist/middleware/validation/index.d.ts.map +0 -1
  514. package/dist/middleware/validation/index.js +0 -40
  515. package/dist/middleware/validation/index.js.map +0 -1
  516. package/dist/middleware/validation/zod-validate.d.ts +0 -5
  517. package/dist/middleware/validation/zod-validate.d.ts.map +0 -1
  518. package/dist/middleware/validation/zod-validate.js +0 -25
  519. package/dist/middleware/validation/zod-validate.js.map +0 -1
  520. package/dist/realtime/init-realtime.d.ts +0 -11
  521. package/dist/realtime/init-realtime.d.ts.map +0 -1
  522. package/dist/realtime/init-realtime.js +0 -69
  523. package/dist/realtime/init-realtime.js.map +0 -1
  524. package/dist/realtime/notebook-document-id.d.ts +0 -6
  525. package/dist/realtime/notebook-document-id.d.ts.map +0 -1
  526. package/dist/realtime/notebook-document-id.js +0 -30
  527. package/dist/realtime/notebook-document-id.js.map +0 -1
  528. package/dist/realtime/realtime-auth.d.ts +0 -12
  529. package/dist/realtime/realtime-auth.d.ts.map +0 -1
  530. package/dist/realtime/realtime-auth.js +0 -25
  531. package/dist/realtime/realtime-auth.js.map +0 -1
  532. package/dist/realtime/reset-session-artifact-y-docs.d.ts +0 -2
  533. package/dist/realtime/reset-session-artifact-y-docs.d.ts.map +0 -1
  534. package/dist/realtime/reset-session-artifact-y-docs.js +0 -9
  535. package/dist/realtime/reset-session-artifact-y-docs.js.map +0 -1
  536. package/dist/realtime/session-artifact-document-id.d.ts +0 -6
  537. package/dist/realtime/session-artifact-document-id.d.ts.map +0 -1
  538. package/dist/realtime/session-artifact-document-id.js +0 -32
  539. package/dist/realtime/session-artifact-document-id.js.map +0 -1
  540. package/dist/realtime/session-artifact-y-socket-io.d.ts +0 -7
  541. package/dist/realtime/session-artifact-y-socket-io.d.ts.map +0 -1
  542. package/dist/realtime/session-artifact-y-socket-io.js +0 -48
  543. package/dist/realtime/session-artifact-y-socket-io.js.map +0 -1
  544. package/dist/realtime/session-artifact-yjs-store.d.ts +0 -54
  545. package/dist/realtime/session-artifact-yjs-store.d.ts.map +0 -1
  546. package/dist/realtime/session-artifact-yjs-store.js +0 -337
  547. package/dist/realtime/session-artifact-yjs-store.js.map +0 -1
  548. package/dist/realtime/yjs-account-namespace.d.ts +0 -5
  549. package/dist/realtime/yjs-account-namespace.d.ts.map +0 -1
  550. package/dist/realtime/yjs-account-namespace.js +0 -21
  551. package/dist/realtime/yjs-account-namespace.js.map +0 -1
  552. package/dist/routes/account-dbs/errors.d.ts +0 -3
  553. package/dist/routes/account-dbs/errors.d.ts.map +0 -1
  554. package/dist/routes/account-dbs/errors.js +0 -24
  555. package/dist/routes/account-dbs/errors.js.map +0 -1
  556. package/dist/routes/account-dbs.d.ts +0 -2
  557. package/dist/routes/account-dbs.d.ts.map +0 -1
  558. package/dist/routes/account-dbs.js +0 -138
  559. package/dist/routes/account-dbs.js.map +0 -1
  560. package/dist/routes/activities/get.d.ts +0 -3
  561. package/dist/routes/activities/get.d.ts.map +0 -1
  562. package/dist/routes/activities/get.js +0 -28
  563. package/dist/routes/activities/get.js.map +0 -1
  564. package/dist/routes/activities/index.d.ts +0 -2
  565. package/dist/routes/activities/index.d.ts.map +0 -1
  566. package/dist/routes/activities/index.js +0 -16
  567. package/dist/routes/activities/index.js.map +0 -1
  568. package/dist/routes/activities/list.d.ts +0 -3
  569. package/dist/routes/activities/list.d.ts.map +0 -1
  570. package/dist/routes/activities/list.js +0 -41
  571. package/dist/routes/activities/list.js.map +0 -1
  572. package/dist/routes/activities/source-types.d.ts +0 -3
  573. package/dist/routes/activities/source-types.d.ts.map +0 -1
  574. package/dist/routes/activities/source-types.js +0 -33
  575. package/dist/routes/activities/source-types.js.map +0 -1
  576. package/dist/routes/activities/summary.d.ts +0 -3
  577. package/dist/routes/activities/summary.d.ts.map +0 -1
  578. package/dist/routes/activities/summary.js +0 -38
  579. package/dist/routes/activities/summary.js.map +0 -1
  580. package/dist/routes/agents/getConfig.d.ts +0 -3
  581. package/dist/routes/agents/getConfig.d.ts.map +0 -1
  582. package/dist/routes/agents/getConfig.js +0 -16
  583. package/dist/routes/agents/getConfig.js.map +0 -1
  584. package/dist/routes/agents/index.d.ts +0 -2
  585. package/dist/routes/agents/index.d.ts.map +0 -1
  586. package/dist/routes/agents/index.js +0 -13
  587. package/dist/routes/agents/index.js.map +0 -1
  588. package/dist/routes/agents/upsertPreferences.d.ts +0 -4
  589. package/dist/routes/agents/upsertPreferences.d.ts.map +0 -1
  590. package/dist/routes/agents/upsertPreferences.js +0 -42
  591. package/dist/routes/agents/upsertPreferences.js.map +0 -1
  592. package/dist/routes/chats/abort.d.ts +0 -3
  593. package/dist/routes/chats/abort.d.ts.map +0 -1
  594. package/dist/routes/chats/abort.js +0 -23
  595. package/dist/routes/chats/abort.js.map +0 -1
  596. package/dist/routes/chats/actions.d.ts +0 -3
  597. package/dist/routes/chats/actions.d.ts.map +0 -1
  598. package/dist/routes/chats/actions.js +0 -36
  599. package/dist/routes/chats/actions.js.map +0 -1
  600. package/dist/routes/chats/artifacts.d.ts +0 -3
  601. package/dist/routes/chats/artifacts.d.ts.map +0 -1
  602. package/dist/routes/chats/artifacts.js +0 -23
  603. package/dist/routes/chats/artifacts.js.map +0 -1
  604. package/dist/routes/chats/chat-route-errors.d.ts +0 -3
  605. package/dist/routes/chats/chat-route-errors.d.ts.map +0 -1
  606. package/dist/routes/chats/chat-route-errors.js +0 -23
  607. package/dist/routes/chats/chat-route-errors.js.map +0 -1
  608. package/dist/routes/chats/delete.d.ts +0 -3
  609. package/dist/routes/chats/delete.d.ts.map +0 -1
  610. package/dist/routes/chats/delete.js +0 -35
  611. package/dist/routes/chats/delete.js.map +0 -1
  612. package/dist/routes/chats/get.d.ts +0 -3
  613. package/dist/routes/chats/get.d.ts.map +0 -1
  614. package/dist/routes/chats/get.js +0 -21
  615. package/dist/routes/chats/get.js.map +0 -1
  616. package/dist/routes/chats/getStream.d.ts +0 -3
  617. package/dist/routes/chats/getStream.d.ts.map +0 -1
  618. package/dist/routes/chats/getStream.js +0 -65
  619. package/dist/routes/chats/getStream.js.map +0 -1
  620. package/dist/routes/chats/index.d.ts +0 -2
  621. package/dist/routes/chats/index.d.ts.map +0 -1
  622. package/dist/routes/chats/index.js +0 -37
  623. package/dist/routes/chats/index.js.map +0 -1
  624. package/dist/routes/chats/invite-participants.d.ts +0 -3
  625. package/dist/routes/chats/invite-participants.d.ts.map +0 -1
  626. package/dist/routes/chats/invite-participants.js +0 -56
  627. package/dist/routes/chats/invite-participants.js.map +0 -1
  628. package/dist/routes/chats/list.d.ts +0 -3
  629. package/dist/routes/chats/list.d.ts.map +0 -1
  630. package/dist/routes/chats/list.js +0 -37
  631. package/dist/routes/chats/list.js.map +0 -1
  632. package/dist/routes/chats/messages.d.ts +0 -3
  633. package/dist/routes/chats/messages.d.ts.map +0 -1
  634. package/dist/routes/chats/messages.js +0 -34
  635. package/dist/routes/chats/messages.js.map +0 -1
  636. package/dist/routes/chats/multiUserMessages.d.ts +0 -3
  637. package/dist/routes/chats/multiUserMessages.d.ts.map +0 -1
  638. package/dist/routes/chats/multiUserMessages.js +0 -46
  639. package/dist/routes/chats/multiUserMessages.js.map +0 -1
  640. package/dist/routes/chats/remove-participants.d.ts +0 -3
  641. package/dist/routes/chats/remove-participants.d.ts.map +0 -1
  642. package/dist/routes/chats/remove-participants.js +0 -46
  643. package/dist/routes/chats/remove-participants.js.map +0 -1
  644. package/dist/routes/chats/stream.d.ts +0 -3
  645. package/dist/routes/chats/stream.d.ts.map +0 -1
  646. package/dist/routes/chats/stream.js +0 -98
  647. package/dist/routes/chats/stream.js.map +0 -1
  648. package/dist/routes/chats/title.d.ts +0 -3
  649. package/dist/routes/chats/title.d.ts.map +0 -1
  650. package/dist/routes/chats/title.js +0 -28
  651. package/dist/routes/chats/title.js.map +0 -1
  652. package/dist/routes/chats/updateToolCall.d.ts +0 -3
  653. package/dist/routes/chats/updateToolCall.d.ts.map +0 -1
  654. package/dist/routes/chats/updateToolCall.js +0 -45
  655. package/dist/routes/chats/updateToolCall.js.map +0 -1
  656. package/dist/routes/files/download.d.ts +0 -8
  657. package/dist/routes/files/download.d.ts.map +0 -1
  658. package/dist/routes/files/download.js +0 -44
  659. package/dist/routes/files/download.js.map +0 -1
  660. package/dist/routes/files/index.d.ts +0 -2
  661. package/dist/routes/files/index.d.ts.map +0 -1
  662. package/dist/routes/files/index.js +0 -10
  663. package/dist/routes/files/index.js.map +0 -1
  664. package/dist/routes/files/upload.d.ts +0 -3
  665. package/dist/routes/files/upload.d.ts.map +0 -1
  666. package/dist/routes/files/upload.js +0 -69
  667. package/dist/routes/files/upload.js.map +0 -1
  668. package/dist/routes/health/get.d.ts +0 -3
  669. package/dist/routes/health/get.d.ts.map +0 -1
  670. package/dist/routes/health/get.js +0 -13
  671. package/dist/routes/health/get.js.map +0 -1
  672. package/dist/routes/health/index.d.ts +0 -2
  673. package/dist/routes/health/index.d.ts.map +0 -1
  674. package/dist/routes/health/index.js +0 -8
  675. package/dist/routes/health/index.js.map +0 -1
  676. package/dist/routes/library.d.ts +0 -2
  677. package/dist/routes/library.d.ts.map +0 -1
  678. package/dist/routes/library.js +0 -34
  679. package/dist/routes/library.js.map +0 -1
  680. package/dist/routes/models/get.d.ts +0 -3
  681. package/dist/routes/models/get.d.ts.map +0 -1
  682. package/dist/routes/models/get.js +0 -11
  683. package/dist/routes/models/get.js.map +0 -1
  684. package/dist/routes/models/index.d.ts +0 -2
  685. package/dist/routes/models/index.d.ts.map +0 -1
  686. package/dist/routes/models/index.js +0 -8
  687. package/dist/routes/models/index.js.map +0 -1
  688. package/dist/routes/notebooks/assistant-generate.d.ts +0 -3
  689. package/dist/routes/notebooks/assistant-generate.d.ts.map +0 -1
  690. package/dist/routes/notebooks/assistant-generate.js +0 -71
  691. package/dist/routes/notebooks/assistant-generate.js.map +0 -1
  692. package/dist/routes/notebooks/errors.d.ts +0 -3
  693. package/dist/routes/notebooks/errors.d.ts.map +0 -1
  694. package/dist/routes/notebooks/errors.js +0 -28
  695. package/dist/routes/notebooks/errors.js.map +0 -1
  696. package/dist/routes/notebooks/sql-execute.d.ts +0 -3
  697. package/dist/routes/notebooks/sql-execute.d.ts.map +0 -1
  698. package/dist/routes/notebooks/sql-execute.js +0 -45
  699. package/dist/routes/notebooks/sql-execute.js.map +0 -1
  700. package/dist/routes/notebooks.d.ts +0 -2
  701. package/dist/routes/notebooks.d.ts.map +0 -1
  702. package/dist/routes/notebooks.js +0 -136
  703. package/dist/routes/notebooks.js.map +0 -1
  704. package/dist/routes/route-errors.d.ts +0 -3
  705. package/dist/routes/route-errors.d.ts.map +0 -1
  706. package/dist/routes/route-errors.js +0 -13
  707. package/dist/routes/route-errors.js.map +0 -1
  708. package/dist/routes/schemas.d.ts +0 -805
  709. package/dist/routes/schemas.d.ts.map +0 -1
  710. package/dist/routes/schemas.js +0 -186
  711. package/dist/routes/schemas.js.map +0 -1
  712. package/dist/routes/sessions.d.ts +0 -2
  713. package/dist/routes/sessions.d.ts.map +0 -1
  714. package/dist/routes/sessions.js +0 -128
  715. package/dist/routes/sessions.js.map +0 -1
  716. package/dist/routes/skills.d.ts +0 -2
  717. package/dist/routes/skills.d.ts.map +0 -1
  718. package/dist/routes/skills.js +0 -140
  719. package/dist/routes/skills.js.map +0 -1
  720. package/dist/routes/sql.d.ts +0 -2
  721. package/dist/routes/sql.d.ts.map +0 -1
  722. package/dist/routes/sql.js +0 -50
  723. package/dist/routes/sql.js.map +0 -1
  724. package/dist/routes/tenants/credentials.d.ts +0 -5
  725. package/dist/routes/tenants/credentials.d.ts.map +0 -1
  726. package/dist/routes/tenants/credentials.js +0 -50
  727. package/dist/routes/tenants/credentials.js.map +0 -1
  728. package/dist/routes/tenants/index.d.ts +0 -2
  729. package/dist/routes/tenants/index.d.ts.map +0 -1
  730. package/dist/routes/tenants/index.js +0 -10
  731. package/dist/routes/tenants/index.js.map +0 -1
  732. package/dist/server.d.ts +0 -3
  733. package/dist/server.d.ts.map +0 -1
  734. package/dist/server.js +0 -34
  735. package/dist/server.js.map +0 -1
  736. /package/dist/{agents/skills → executor}/types.js +0 -0
@@ -1,298 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.auditHtmlArtifact = auditHtmlArtifact;
4
- const contrast_check_1 = require("./contrast-check");
5
- function extractStyles(html) {
6
- var _a, _b;
7
- const closed = [...html.matchAll(/<style[^>]*>([\s\S]*?)<\/style>/gi)].map((m) => m[1]);
8
- if (closed.length > 0)
9
- return closed.join('\n');
10
- // Unclosed <style> swallows the rest of the document — still treat that
11
- // trailing text as the stylesheet so the other rules stay meaningful.
12
- return (_b = (_a = html.match(/<style[^>]*>([\s\S]*)$/i)) === null || _a === void 0 ? void 0 : _a[1]) !== null && _b !== void 0 ? _b : '';
13
- }
14
- function extractScripts(html) {
15
- return [...html.matchAll(/<script[^>]*>([\s\S]*?)<\/script>/gi)].map((m) => m[1]).join('\n');
16
- }
17
- /** Legacy Pico-era classes usable without a page-level definition (kept for
18
- * auditing older documents that still link Pico). */
19
- const FRAMEWORK_CLASSES = new Set([
20
- 'container',
21
- 'container-fluid',
22
- 'grid',
23
- 'secondary',
24
- 'contrast',
25
- 'outline',
26
- ]);
27
- /** Pages on the Tailwind shell style themselves via utility classes, so the
28
- * undefined-class and thin-CSS heuristics do not apply. */
29
- function usesTailwind(html) {
30
- return /cdn\.tailwindcss\.com|tailwindcss/i.test(html);
31
- }
32
- /**
33
- * Static quality audit for generated HTML pages. Deterministic counterpart to
34
- * the generation skill guides: flags the failure modes they warn about so
35
- * subagents can fix them before publishing.
36
- */
37
- function auditHtmlArtifact(html) {
38
- var _a, _b, _c, _d, _e, _f;
39
- const findings = [];
40
- const styles = extractStyles(html);
41
- const scripts = extractScripts(html);
42
- const openStyleTags = ((_a = html.match(/<style[^>]*>/gi)) !== null && _a !== void 0 ? _a : []).length;
43
- const closeStyleTags = ((_b = html.match(/<\/style>/gi)) !== null && _b !== void 0 ? _b : []).length;
44
- const hasUnclosedStyle = openStyleTags > closeStyleTags;
45
- if (hasUnclosedStyle) {
46
- findings.push({
47
- rule: 'unclosed-style',
48
- severity: 'error',
49
- message: '<style> tag is never closed — everything after it is swallowed as CSS. Add the missing </style> first; other style checks are skipped until it is fixed.',
50
- });
51
- }
52
- const openScriptTags = ((_c = html.match(/<script[^>]*>/gi)) !== null && _c !== void 0 ? _c : []).length;
53
- const closeScriptTags = ((_d = html.match(/<\/script>/gi)) !== null && _d !== void 0 ? _d : []).length;
54
- if (openScriptTags > closeScriptTags) {
55
- findings.push({
56
- rule: 'unclosed-script',
57
- severity: 'error',
58
- message: '<script> tag is never closed — everything after it is swallowed as JavaScript. Add the missing </script>.',
59
- });
60
- }
61
- // Legacy Pico-based pages: Pico is (nearly) classless — it styles bare
62
- // elements and ships no utility classes, so any class the markup references
63
- // does nothing unless the page's own <style> defines it. Tailwind pages are
64
- // exempt (utilities ARE the styling). Also skipped while a <style> tag is
65
- // unclosed — that breakage makes class detection unreliable.
66
- const tailwind = usesTailwind(html);
67
- if (!hasUnclosedStyle && !tailwind) {
68
- const referencedClasses = new Set();
69
- for (const match of html.matchAll(/class=["']([^"']+)["']/gi)) {
70
- for (const token of match[1].split(/\s+/)) {
71
- if (token)
72
- referencedClasses.add(token);
73
- }
74
- }
75
- const undefinedClasses = [...referencedClasses].filter((token) => !FRAMEWORK_CLASSES.has(token) && !styles.includes(`.${token}`) && !scripts.includes(token));
76
- if (undefinedClasses.length > 0) {
77
- findings.push({
78
- rule: 'undefined-classes',
79
- severity: 'error',
80
- message: `These classes have no CSS — the base stylesheet (Pico) has no utility classes, so a class does nothing until your <style> defines it. Add a rule for each of: ${undefinedClasses
81
- .slice(0, 12)
82
- .join(', ')}${undefinedClasses.length > 12 ? ` +${undefinedClasses.length - 12} more` : ''} — or delete the class attribute.`,
83
- });
84
- }
85
- }
86
- // Advisory: native form submits are legitimate scriptless buttons, so this
87
- // cannot be a hard invariant — but a page full of dead toggles usually is.
88
- // Checks INLINE script content: src-only tags (e.g. the Tailwind CDN loader)
89
- // don't count as page behavior.
90
- if (/<button[\s>]/i.test(html) && scripts.trim().length === 0) {
91
- findings.push({
92
- rule: 'static-controls',
93
- severity: 'warning',
94
- message: '<button> elements present but the page has no <script> — interactive controls (toggles, filters, tabs) must actually work.',
95
- });
96
- }
97
- // Advisory only: fragment titles are auto-derived from the first <h1> at
98
- // wrap time, so this now fires only for pages with neither.
99
- const titleMatch = html.match(/<title[^>]*>([^<]*)<\/title>/i);
100
- if (titleMatch && /^(page|document|untitled)?$/i.test(titleMatch[1].trim())) {
101
- findings.push({
102
- rule: 'generic-title',
103
- severity: 'warning',
104
- message: 'Document title is missing or generic — pass a meaningful `title` (or add an <h1>, which the server uses to derive one).',
105
- });
106
- }
107
- const markupOnly = html
108
- .replace(/<style[\s\S]*?<\/style>/gi, '')
109
- .replace(/<script[\s\S]*?<\/script>/gi, '');
110
- // Class-strategy dark mode: dark: variants do nothing unless the page opts
111
- // in with a .dark ancestor. Half-implemented dark mode (dark text variants
112
- // on light backgrounds) was a severe real-world contrast failure.
113
- if (tailwind && /class=["'][^"']*\bdark:/.test(html) && !/class=["'][^"']*\bdark\b(?!:)/.test(html)) {
114
- findings.push({
115
- rule: 'inert-dark-variants',
116
- severity: 'warning',
117
- message: 'dark: utility variants found but the page never enables the dark class — they have no effect. Style your color scheme explicitly (per the design brief) and remove the dark: variants.',
118
- });
119
- }
120
- // CSS variables referenced but never defined render as transparent/initial —
121
- // invisible buttons, black text on dark heroes. Always an authoring error.
122
- const referencedVars = new Set([...html.matchAll(/var\((--[a-zA-Z0-9_-]+)/g)].map((match) => match[1]));
123
- const undefinedVars = [...referencedVars].filter((name) => !new RegExp(`${name}\\s*:`).test(html));
124
- if (undefinedVars.length > 0) {
125
- findings.push({
126
- rule: 'undefined-css-variable',
127
- severity: 'error',
128
- message: `CSS variables referenced but never defined: ${undefinedVars.join(', ')} — elements using them render transparent or inherit the wrong color. Define them in a :root block in your <style> (e.g. :root { ${undefinedVars[0]}: #0ea5e9 }).`,
129
- });
130
- }
131
- // WCAG contrast: static analysis over Tailwind color utilities. This is a
132
- // heuristic: it cannot reliably resolve every CSS cascade, overlay,
133
- // pseudo-element, or runtime class. Findings are therefore always advisory.
134
- // Treating an inferred contrast pair as a transactional publish error caused
135
- // valid dark/gradient pages to regenerate the complete document repeatedly.
136
- // Accessibility still matters, but it belongs in the targeted consistency
137
- // pass (or a browser-backed check), not in the atomic file-write gate.
138
- if (!hasUnclosedStyle && tailwind) {
139
- try {
140
- for (const issue of (0, contrast_check_1.checkContrast)(html).slice(0, 5)) {
141
- findings.push({
142
- rule: issue.severity === 'error' ? 'unreadable-contrast' : 'low-contrast',
143
- severity: 'warning',
144
- message: `WCAG contrast ${issue.ratio}:1 — "${issue.textToken}" on "${issue.bgToken}" (e.g. "${issue.snippet}"). ${issue.severity === 'error' ? 'This text is effectively invisible.' : 'Below the 4.5:1 AA minimum.'} Static analysis only; verify the rendered state and pick a text color readable on that background.`,
145
- });
146
- }
147
- }
148
- catch (_g) {
149
- // Contrast analysis is best-effort — never break the audit on it.
150
- }
151
- }
152
- // Distinctive web fonts: the shell auto-injects a Google Fonts <link> when
153
- // missing (see ensureWebFontHeadExtras). Leftover gaps are advisory only —
154
- // blocking publish on fonts caused endless "revising once" loops.
155
- const hasFontLink = /fonts\.googleapis\.com|fonts\.gstatic\.com|fonts\.bunny\.net/i.test(html) ||
156
- /<link[^>]+(?:fonts\.(?:googleapis|gstatic|bunny)\.com|css2\?family=)/i.test(html);
157
- const hasFontFamily = /font-family\s*:/i.test(styles) || /font-family\s*:/i.test(html);
158
- if (!hasFontLink || !hasFontFamily) {
159
- findings.push({
160
- rule: 'missing-web-font',
161
- severity: 'warning',
162
- message: 'Web font incomplete — prefer a design-brief Google Fonts <link> plus font-family on body. The server usually injects a fallback pairing automatically.',
163
- });
164
- }
165
- // Emoji are stripped in prepareHtmlArtifactContent before publish/update.
166
- // Leftover glyphs (raw audit without prepare) are advisory — never block.
167
- const emojiMatches = ((_e = markupOnly.match(/\p{Extended_Pictographic}/gu)) !== null && _e !== void 0 ? _e : []).filter((char) => !'©®™°†‡§¶'.includes(char));
168
- if (emojiMatches.length > 0) {
169
- findings.push({
170
- rule: 'emoji-icons',
171
- severity: 'warning',
172
- message: `${emojiMatches.length} emoji character(s) in the markup (${[...new Set(emojiMatches)]
173
- .slice(0, 6)
174
- .join(' ')}) — prefer inline SVG icons; the server strips emoji on publish/update.`,
175
- });
176
- }
177
- const markupLength = markupOnly.length;
178
- if (!tailwind && markupLength > 1500 && styles.length < 1200) {
179
- findings.push({
180
- rule: 'thin-styling',
181
- severity: 'warning',
182
- message: `Only ${styles.length} chars of CSS for ${markupLength} chars of markup — this reads as an unstyled page. Build the full design system: layout container, cards, spacing scale, hover/focus states.`,
183
- });
184
- }
185
- // Web-font hosts are the one sanctioned external dependency (the designer
186
- // guide mandates a Google Fonts pairing) — everything else remote is a 404
187
- // waiting to happen.
188
- const externalStyleUrl = /url\(\s*["']?https?:\/\/(?!fonts\.googleapis\.com|fonts\.gstatic\.com)/i;
189
- if (/<img[^>]+src=["']https?:/i.test(html) || externalStyleUrl.test(styles)) {
190
- findings.push({
191
- rule: 'external-image',
192
- severity: 'error',
193
- message: 'External image/asset URLs can 404 — replace with inline SVG, CSS gradients, or data: URIs (Google Fonts imports are allowed).',
194
- });
195
- }
196
- if (/lorem\s+ipsum/i.test(html)) {
197
- findings.push({
198
- rule: 'placeholder-copy',
199
- severity: 'error',
200
- message: 'Lorem ipsum found — write realistic, domain-appropriate content instead.',
201
- });
202
- }
203
- if (/\b(?:Item|Feature|Card|Product)\s+[0-9]\b/.test(html)) {
204
- findings.push({
205
- rule: 'generic-sample-data',
206
- severity: 'error',
207
- message: 'Generic sample data ("Item 1"…) found — use realistic, internally consistent examples.',
208
- });
209
- }
210
- // Generic marketing filler — server strips common phrases in prepareHtmlArtifactContent.
211
- // Leftovers are advisory only so they cannot restart publish/revise loops.
212
- if (/\bwelcome\s+to\s+(?:our|the)\b/i.test(markupOnly)) {
213
- findings.push({
214
- rule: 'template-copy',
215
- severity: 'warning',
216
- message: 'Template copy ("Welcome to our/the…") found — prefer leading with the product outcome. The server usually strips this phrase automatically.',
217
- });
218
- }
219
- if (/\b(?:revolutionary|seamless|cutting-edge|unleash(?:ing)?|empower(?:ing)?)\b/i.test(markupOnly)) {
220
- findings.push({
221
- rule: 'template-copy',
222
- severity: 'warning',
223
- message: 'Banned template adjectives found (revolutionary/seamless/cutting-edge/unleash/empower) — prefer concrete, domain-specific language. The server usually rewrites these automatically.',
224
- });
225
- }
226
- // Inter is the default AI-page tell — designer skill and design brief forbid it.
227
- if (/family=Inter\b|font-family:\s*['"]?Inter\b/i.test(html)) {
228
- findings.push({
229
- rule: 'generic-font',
230
- severity: 'error',
231
- message: 'Inter font detected — replace with the design-brief pairing (Manrope/Sora/Fraunces/Outfit/…).',
232
- });
233
- }
234
- // Indigo/violet gradient walls are the strongest "AI SaaS template" signal.
235
- if (/(?:from|via|to)-(?:indigo|violet|purple)-\d{2,3}|(?:bg|text|border)-(?:indigo|violet)-[56]00/i.test(markupOnly)) {
236
- findings.push({
237
- rule: 'ai-palette-cliche',
238
- severity: 'warning',
239
- message: 'Indigo/violet palette utilities detected — unless the design brief explicitly chose indigo, switch to the brief accent hex for a topic-fit look.',
240
- });
241
- }
242
- if (/\son(?:click|change|input|submit|mouseover|keydown|load)\s*=/i.test(html)) {
243
- findings.push({
244
- rule: 'inline-handler',
245
- severity: 'warning',
246
- message: 'Inline event handler attributes found — wire behavior with addEventListener instead.',
247
- });
248
- }
249
- if (/(?:animation|transition)\s*:/i.test(styles) && !/prefers-reduced-motion/i.test(html)) {
250
- findings.push({
251
- rule: 'missing-reduced-motion',
252
- severity: 'warning',
253
- message: 'Animations/transitions without a prefers-reduced-motion guard.',
254
- });
255
- }
256
- if (/(?:background(?:-color)?|(?<![a-z-])color)\s*:\s*(?:#(?:fff(?:fff)?|000(?:000)?)\b|white\b|black\b)/i.test(styles)) {
257
- findings.push({
258
- rule: 'hard-coded-scheme-color',
259
- severity: 'warning',
260
- message: 'Hard-coded black/white colors break light/dark schemes — use your design-token CSS variables (with color-mix) or dark-mode variants instead.',
261
- });
262
- }
263
- const h1Count = ((_f = html.match(/<h1[\s>]/gi)) !== null && _f !== void 0 ? _f : []).length;
264
- if (h1Count === 0) {
265
- findings.push({
266
- rule: 'missing-h1',
267
- severity: 'error',
268
- message: 'Page has no <h1> — add one clear page headline.',
269
- });
270
- }
271
- else if (h1Count > 1) {
272
- findings.push({
273
- rule: 'multiple-h1',
274
- severity: 'warning',
275
- message: `Page has ${h1Count} <h1> elements — keep one and demote the rest.`,
276
- });
277
- }
278
- if (/href=["']#["']/.test(html)) {
279
- findings.push({
280
- rule: 'dead-link',
281
- severity: 'warning',
282
- message: 'href="#" links found — prefer real section ids, index.html, or <button> for actions.',
283
- });
284
- }
285
- const hasVisibleInputs = /<(?:input(?![^>]*type=["']hidden)|select|textarea)[\s>]/i.test(html);
286
- if (hasVisibleInputs && !/<label[\s>]/i.test(html) && !/aria-label(?:ledby)?=/i.test(html)) {
287
- findings.push({
288
- rule: 'unlabeled-inputs',
289
- severity: 'error',
290
- message: 'Form controls without any <label> or aria-label — every control needs an accessible name.',
291
- });
292
- }
293
- return {
294
- clean: findings.length === 0,
295
- findings,
296
- };
297
- }
298
- //# sourceMappingURL=artifact-quality-audit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"artifact-quality-audit.js","sourceRoot":"","sources":["../../../src/lib/session-pages/artifact-quality-audit.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- export declare const ARTIFACT_LATEST_STATE_SUFFIX = ".latest.state";
2
- /** Relative path for the persisted Yjs update blob. */
3
- export declare function artifactLatestStatePath(artifactPath: string): string;
4
- /** Relative path for a point-in-time content snapshot. */
5
- export declare function artifactSnapshotPath(artifactPath: string, at: Date): string;
6
- export declare function isArtifactLatestStatePath(relativePath: string): boolean;
7
- /** Any session artifact sidecar snapshot, including nested paths like `src/App.tsx.snapshot-*`. */
8
- export declare function isArtifactSnapshotPath(relativePath: string): boolean;
9
- /** Sidecar files managed by the artifact storage layer (not user-facing artifacts). */
10
- export declare function isArtifactStorageSidecar(relativePath: string): boolean;
11
- export declare function artifactPathFromLatestStatePath(statePath: string): string | null;
12
- /** Whether `relativePath` is a dated snapshot for `artifactPath`. */
13
- export declare function isSnapshotForArtifact(relativePath: string, artifactPath: string): boolean;
14
- //# sourceMappingURL=artifact-storage-paths.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"artifact-storage-paths.d.ts","sourceRoot":"","sources":["../../../src/lib/session-pages/artifact-storage-paths.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,4BAA4B,kBAAkB,CAAA;AAE3D,uDAAuD;AACvD,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAGpE;AAED,0DAA0D;AAC1D,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,GAAG,MAAM,CAG3E;AAED,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAEvE;AAED,mGAAmG;AACnG,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAMpE;AAED,uFAAuF;AACvF,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAEtE;AAED,wBAAgB,+BAA+B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKhF;AAED,qEAAqE;AACrE,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAGzF"}
@@ -1,50 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ARTIFACT_LATEST_STATE_SUFFIX = void 0;
4
- exports.artifactLatestStatePath = artifactLatestStatePath;
5
- exports.artifactSnapshotPath = artifactSnapshotPath;
6
- exports.isArtifactLatestStatePath = isArtifactLatestStatePath;
7
- exports.isArtifactSnapshotPath = isArtifactSnapshotPath;
8
- exports.isArtifactStorageSidecar = isArtifactStorageSidecar;
9
- exports.artifactPathFromLatestStatePath = artifactPathFromLatestStatePath;
10
- exports.isSnapshotForArtifact = isSnapshotForArtifact;
11
- const paths_1 = require("./paths");
12
- const named_snapshot_paths_1 = require("../object-storage/named-snapshot-paths");
13
- exports.ARTIFACT_LATEST_STATE_SUFFIX = '.latest.state';
14
- /** Relative path for the persisted Yjs update blob. */
15
- function artifactLatestStatePath(artifactPath) {
16
- const base = (0, paths_1.normalizeArtifactPath)(artifactPath);
17
- return `${base}${exports.ARTIFACT_LATEST_STATE_SUFFIX}`;
18
- }
19
- /** Relative path for a point-in-time content snapshot. */
20
- function artifactSnapshotPath(artifactPath, at) {
21
- const base = (0, paths_1.normalizeArtifactPath)(artifactPath);
22
- return `${base}${(0, named_snapshot_paths_1.namedSnapshotSuffix)(at)}`;
23
- }
24
- function isArtifactLatestStatePath(relativePath) {
25
- return relativePath.endsWith(exports.ARTIFACT_LATEST_STATE_SUFFIX);
26
- }
27
- /** Any session artifact sidecar snapshot, including nested paths like `src/App.tsx.snapshot-*`. */
28
- function isArtifactSnapshotPath(relativePath) {
29
- if (!(0, named_snapshot_paths_1.hasNamedSnapshotTimestamp)(relativePath)) {
30
- return false;
31
- }
32
- const idx = relativePath.lastIndexOf(named_snapshot_paths_1.NAMED_SNAPSHOT_SEGMENT);
33
- return idx > 0;
34
- }
35
- /** Sidecar files managed by the artifact storage layer (not user-facing artifacts). */
36
- function isArtifactStorageSidecar(relativePath) {
37
- return isArtifactLatestStatePath(relativePath) || isArtifactSnapshotPath(relativePath);
38
- }
39
- function artifactPathFromLatestStatePath(statePath) {
40
- if (!isArtifactLatestStatePath(statePath)) {
41
- return null;
42
- }
43
- return statePath.slice(0, -exports.ARTIFACT_LATEST_STATE_SUFFIX.length);
44
- }
45
- /** Whether `relativePath` is a dated snapshot for `artifactPath`. */
46
- function isSnapshotForArtifact(relativePath, artifactPath) {
47
- const base = (0, paths_1.normalizeArtifactPath)(artifactPath);
48
- return (0, named_snapshot_paths_1.isDatedSnapshotForBase)(relativePath, base);
49
- }
50
- //# sourceMappingURL=artifact-storage-paths.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"artifact-storage-paths.js","sourceRoot":"","sources":["../../../src/lib/session-pages/artifact-storage-paths.ts"],"names":[],"mappings":";;;AAWA,0DAGC;AAGD,oDAGC;AAED,8DAEC;AAGD,wDAMC;AAGD,4DAEC;AAED,0EAKC;AAGD,sDAGC;AAnDD,mCAA+C;AAC/C,iFAK+C;AAElC,QAAA,4BAA4B,GAAG,eAAe,CAAA;AAE3D,uDAAuD;AACvD,SAAgB,uBAAuB,CAAC,YAAoB;IAC1D,MAAM,IAAI,GAAG,IAAA,6BAAqB,EAAC,YAAY,CAAC,CAAA;IAChD,OAAO,GAAG,IAAI,GAAG,oCAA4B,EAAE,CAAA;AACjD,CAAC;AAED,0DAA0D;AAC1D,SAAgB,oBAAoB,CAAC,YAAoB,EAAE,EAAQ;IACjE,MAAM,IAAI,GAAG,IAAA,6BAAqB,EAAC,YAAY,CAAC,CAAA;IAChD,OAAO,GAAG,IAAI,GAAG,IAAA,0CAAmB,EAAC,EAAE,CAAC,EAAE,CAAA;AAC5C,CAAC;AAED,SAAgB,yBAAyB,CAAC,YAAoB;IAC5D,OAAO,YAAY,CAAC,QAAQ,CAAC,oCAA4B,CAAC,CAAA;AAC5D,CAAC;AAED,mGAAmG;AACnG,SAAgB,sBAAsB,CAAC,YAAoB;IACzD,IAAI,CAAC,IAAA,gDAAyB,EAAC,YAAY,CAAC,EAAE,CAAC;QAC7C,OAAO,KAAK,CAAA;IACd,CAAC;IACD,MAAM,GAAG,GAAG,YAAY,CAAC,WAAW,CAAC,6CAAsB,CAAC,CAAA;IAC5D,OAAO,GAAG,GAAG,CAAC,CAAA;AAChB,CAAC;AAED,uFAAuF;AACvF,SAAgB,wBAAwB,CAAC,YAAoB;IAC3D,OAAO,yBAAyB,CAAC,YAAY,CAAC,IAAI,sBAAsB,CAAC,YAAY,CAAC,CAAA;AACxF,CAAC;AAED,SAAgB,+BAA+B,CAAC,SAAiB;IAC/D,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,oCAA4B,CAAC,MAAM,CAAC,CAAA;AACjE,CAAC;AAED,qEAAqE;AACrE,SAAgB,qBAAqB,CAAC,YAAoB,EAAE,YAAoB;IAC9E,MAAM,IAAI,GAAG,IAAA,6BAAqB,EAAC,YAAY,CAAC,CAAA;IAChD,OAAO,IAAA,6CAAsB,EAAC,YAAY,EAAE,IAAI,CAAC,CAAA;AACnD,CAAC"}
@@ -1,11 +0,0 @@
1
- import { sessionArtifactsPrefix, isSessionArtifactUserFacingKey, relativeSessionArtifactPath } from '../object-storage/keys';
2
- export declare function writeArtifactLatestState(sessionId: string, artifactPath: string, state: Uint8Array): Promise<void>;
3
- export declare function readArtifactLatestState(sessionId: string, artifactPath: string): Promise<Uint8Array | null>;
4
- export declare function readArtifactContentSnapshot(sessionId: string, artifactPath: string): Promise<string | null>;
5
- export declare function writeArtifactContentSnapshot(sessionId: string, artifactPath: string, content: string): Promise<void>;
6
- export declare function writeArtifactNamedSnapshot(sessionId: string, artifactPath: string, content: string, at?: Date): Promise<string>;
7
- export declare function listArtifactSnapshotPaths(sessionId: string, artifactPath: string): Promise<string[]>;
8
- export declare function deleteArtifactStorageFiles(sessionId: string, artifactPath: string): Promise<void>;
9
- export declare function sessionArtifactExistsOnStorage(sessionId: string, artifactPath: string): Promise<boolean>;
10
- export { isSessionArtifactUserFacingKey, relativeSessionArtifactPath, sessionArtifactsPrefix };
11
- //# sourceMappingURL=artifact-storage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"artifact-storage.d.ts","sourceRoot":"","sources":["../../../src/lib/session-pages/artifact-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,sBAAsB,EACtB,8BAA8B,EAC9B,2BAA2B,EAC5B,MAAM,wBAAwB,CAAA;AAc/B,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAG5B;AAED,wBAAsB,2BAA2B,CAC/C,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAWxB;AAED,wBAAsB,4BAA4B,CAChD,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,wBAAsB,0BAA0B,CAC9C,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,EAAE,GAAE,IAAiB,GACpB,OAAO,CAAC,MAAM,CAAC,CAKjB;AAED,wBAAsB,yBAAyB,CAC7C,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,EAAE,CAAC,CAQnB;AAED,wBAAsB,0BAA0B,CAC9C,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CA6Bf;AAED,wBAAsB,8BAA8B,CAClD,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,OAAO,CAAC,CAUlB;AAED,OAAO,EAAE,8BAA8B,EAAE,2BAA2B,EAAE,sBAAsB,EAAE,CAAA"}
@@ -1,132 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.sessionArtifactsPrefix = exports.relativeSessionArtifactPath = exports.isSessionArtifactUserFacingKey = void 0;
37
- exports.writeArtifactLatestState = writeArtifactLatestState;
38
- exports.readArtifactLatestState = readArtifactLatestState;
39
- exports.readArtifactContentSnapshot = readArtifactContentSnapshot;
40
- exports.writeArtifactContentSnapshot = writeArtifactContentSnapshot;
41
- exports.writeArtifactNamedSnapshot = writeArtifactNamedSnapshot;
42
- exports.listArtifactSnapshotPaths = listArtifactSnapshotPaths;
43
- exports.deleteArtifactStorageFiles = deleteArtifactStorageFiles;
44
- exports.sessionArtifactExistsOnStorage = sessionArtifactExistsOnStorage;
45
- const keys_1 = require("../object-storage/keys");
46
- Object.defineProperty(exports, "sessionArtifactsPrefix", { enumerable: true, get: function () { return keys_1.sessionArtifactsPrefix; } });
47
- Object.defineProperty(exports, "isSessionArtifactUserFacingKey", { enumerable: true, get: function () { return keys_1.isSessionArtifactUserFacingKey; } });
48
- Object.defineProperty(exports, "relativeSessionArtifactPath", { enumerable: true, get: function () { return keys_1.relativeSessionArtifactPath; } });
49
- const s3 = __importStar(require("../object-storage/s3-object-store"));
50
- const context_1 = require("../../context");
51
- const session_artifact_document_id_1 = require("../../realtime/session-artifact-document-id");
52
- const yjs_persistence_1 = require("../yjs-pending/yjs-persistence");
53
- const flush_lock_1 = require("../yjs-pending/flush-lock");
54
- const artifact_storage_paths_1 = require("./artifact-storage-paths");
55
- const paths_1 = require("./paths");
56
- const resolve_session_account_id_1 = require("./resolve-session-account-id");
57
- async function writeArtifactLatestState(sessionId, artifactPath, state) {
58
- const accountId = await (0, resolve_session_account_id_1.resolveSessionAccountId)(sessionId);
59
- await s3.putBytes((0, keys_1.sessionArtifactLatestStateKey)(accountId, sessionId, artifactPath), state);
60
- }
61
- async function readArtifactLatestState(sessionId, artifactPath) {
62
- const documentId = (0, session_artifact_document_id_1.buildSessionArtifactDocumentId)(sessionId, (0, paths_1.normalizeArtifactPath)(artifactPath));
63
- return (0, yjs_persistence_1.loadMergedState)(documentId);
64
- }
65
- async function readArtifactContentSnapshot(sessionId, artifactPath) {
66
- const documentId = (0, session_artifact_document_id_1.buildSessionArtifactDocumentId)(sessionId, (0, paths_1.normalizeArtifactPath)(artifactPath));
67
- const doc = await (0, yjs_persistence_1.hydrateEphemeralDoc)(documentId);
68
- if (!doc) {
69
- return null;
70
- }
71
- try {
72
- return (0, yjs_persistence_1.docTextContent)(doc);
73
- }
74
- finally {
75
- doc.destroy();
76
- }
77
- }
78
- async function writeArtifactContentSnapshot(sessionId, artifactPath, content) {
79
- const accountId = await (0, resolve_session_account_id_1.resolveSessionAccountId)(sessionId);
80
- await s3.putString((0, keys_1.sessionArtifactContentKey)(accountId, sessionId, artifactPath), content);
81
- }
82
- async function writeArtifactNamedSnapshot(sessionId, artifactPath, content, at = new Date()) {
83
- const accountId = await (0, resolve_session_account_id_1.resolveSessionAccountId)(sessionId);
84
- const key = (0, keys_1.sessionArtifactNamedSnapshotKey)(accountId, sessionId, artifactPath, at);
85
- await s3.putString(key, content);
86
- return key;
87
- }
88
- async function listArtifactSnapshotPaths(sessionId, artifactPath) {
89
- const accountId = await (0, resolve_session_account_id_1.resolveSessionAccountId)(sessionId);
90
- const prefix = (0, keys_1.sessionArtifactsPrefix)(accountId, sessionId);
91
- const normalized = (0, paths_1.normalizeArtifactPath)(artifactPath);
92
- return (await s3.listKeysByPrefix(prefix))
93
- .map((o) => (0, keys_1.relativeSessionArtifactPath)(prefix, o.key))
94
- .filter((relative) => (0, artifact_storage_paths_1.isSnapshotForArtifact)(relative, normalized))
95
- .sort();
96
- }
97
- async function deleteArtifactStorageFiles(sessionId, artifactPath) {
98
- const accountId = await (0, resolve_session_account_id_1.resolveSessionAccountId)(sessionId);
99
- const normalized = (0, paths_1.normalizeArtifactPath)(artifactPath);
100
- const documentId = (0, session_artifact_document_id_1.buildSessionArtifactDocumentId)(sessionId, normalized);
101
- const prefix = (0, keys_1.sessionArtifactsPrefix)(accountId, sessionId);
102
- const objects = await s3.listKeysByPrefix(prefix);
103
- const run = async () => {
104
- await (0, context_1.getYjsPendingUpdatesRepository)().deleteByDocumentId(documentId);
105
- await Promise.all(objects
106
- .filter((o) => {
107
- const relative = (0, keys_1.relativeSessionArtifactPath)(prefix, o.key);
108
- return (relative === normalized ||
109
- relative === `${normalized}.latest.state` ||
110
- (0, artifact_storage_paths_1.isSnapshotForArtifact)(relative, normalized));
111
- })
112
- .map((o) => s3.deleteObject(o.key)));
113
- };
114
- const redis = (0, context_1.getSharedRedisClient)();
115
- if (redis) {
116
- await (0, flush_lock_1.withFlushLock)(redis, documentId, run);
117
- return;
118
- }
119
- await run();
120
- }
121
- async function sessionArtifactExistsOnStorage(sessionId, artifactPath) {
122
- const accountId = await (0, resolve_session_account_id_1.resolveSessionAccountId)(sessionId);
123
- const normalized = (0, paths_1.normalizeArtifactPath)(artifactPath);
124
- const documentId = (0, session_artifact_document_id_1.buildSessionArtifactDocumentId)(sessionId, normalized);
125
- const [content, latest, pendingCount] = await Promise.all([
126
- s3.objectExists((0, keys_1.sessionArtifactContentKey)(accountId, sessionId, normalized)),
127
- s3.objectExists((0, keys_1.sessionArtifactLatestStateKey)(accountId, sessionId, normalized)),
128
- (0, context_1.getYjsPendingUpdatesRepository)().countByDocumentId(documentId),
129
- ]);
130
- return content || latest || pendingCount > 0;
131
- }
132
- //# sourceMappingURL=artifact-storage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"artifact-storage.js","sourceRoot":"","sources":["../../../src/lib/session-pages/artifact-storage.ts"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- import { type QualityFinding } from './artifact-quality-audit';
2
- export interface SessionQualityIssue {
3
- path: string;
4
- findings: QualityFinding[];
5
- }
6
- export interface SessionQualityReport {
7
- issues: SessionQualityIssue[];
8
- /** Actionable findings only (excludes deferred heuristics like contrast). */
9
- actionableIssues: SessionQualityIssue[];
10
- /** Flat lines suitable for plan.openAdvisories / tool output (actionable only). */
11
- advisoryLines: string[];
12
- errorCount: number;
13
- warningCount: number;
14
- deferredWarningCount: number;
15
- }
16
- /**
17
- * Re-audit every HTML artifact in the session. Used by the consistency pass
18
- * to prove polish work actually cleared quality findings.
19
- */
20
- export declare function auditSessionHtmlArtifacts(sessionId: string): Promise<SessionQualityReport>;
21
- /** Compact path → finding lines for openAdvisories storage (actionable only). */
22
- export declare function sessionQualityToAdvisoryLines(report: SessionQualityReport): string[];
23
- //# sourceMappingURL=audit-session-html.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"audit-session-html.d.ts","sourceRoot":"","sources":["../../../src/lib/session-pages/audit-session-html.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAKjF,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,cAAc,EAAE,CAAA;CAC3B;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,mBAAmB,EAAE,CAAA;IAC7B,6EAA6E;IAC7E,gBAAgB,EAAE,mBAAmB,EAAE,CAAA;IACvC,mFAAmF;IACnF,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,oBAAoB,EAAE,MAAM,CAAA;CAC7B;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAuEhG;AAED,iFAAiF;AACjF,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,EAAE,CAIpF"}