studiograph 1.3.48-next.28 → 1.3.48-next.281

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 (1677) hide show
  1. package/README.md +27 -17
  2. package/dist/agent/agent-pool.d.ts +120 -4
  3. package/dist/agent/agent-pool.js +358 -18
  4. package/dist/agent/agent-pool.js.map +1 -1
  5. package/dist/agent/context-window.d.ts +113 -0
  6. package/dist/agent/context-window.js +459 -0
  7. package/dist/agent/context-window.js.map +1 -0
  8. package/dist/agent/followups.d.ts +34 -0
  9. package/dist/agent/followups.js +52 -0
  10. package/dist/agent/followups.js.map +1 -0
  11. package/dist/agent/orchestrator.d.ts +110 -11
  12. package/dist/agent/orchestrator.js +555 -75
  13. package/dist/agent/orchestrator.js.map +1 -1
  14. package/dist/agent/prompts/entity-types-section.d.ts +18 -9
  15. package/dist/agent/prompts/entity-types-section.js +42 -18
  16. package/dist/agent/prompts/entity-types-section.js.map +1 -1
  17. package/dist/agent/prompts/system.md +109 -19
  18. package/dist/agent/skill-loader.js +3 -9
  19. package/dist/agent/skill-loader.js.map +1 -1
  20. package/dist/agent/skills/artifact-canvas/skill.md +267 -0
  21. package/dist/agent/skills/create-skill.md +39 -0
  22. package/dist/agent/skills/entity-schema.md +67 -150
  23. package/dist/agent/skills/interview/skill.md +44 -29
  24. package/dist/agent/skills/paged-documents/skill.md +149 -0
  25. package/dist/agent/skills/schema-rules.md +28 -28
  26. package/dist/agent/tools/artifact-tools.d.ts +237 -0
  27. package/dist/agent/tools/artifact-tools.js +408 -0
  28. package/dist/agent/tools/artifact-tools.js.map +1 -0
  29. package/dist/agent/tools/capture-tools.d.ts +31 -0
  30. package/dist/agent/tools/capture-tools.js +40 -0
  31. package/dist/agent/tools/capture-tools.js.map +1 -0
  32. package/dist/agent/tools/folder-tools.d.ts +50 -0
  33. package/dist/agent/tools/folder-tools.js +340 -0
  34. package/dist/agent/tools/folder-tools.js.map +1 -0
  35. package/dist/agent/tools/fs-tools.d.ts +6 -5
  36. package/dist/agent/tools/fs-tools.js +1 -1
  37. package/dist/agent/tools/fs-tools.js.map +1 -1
  38. package/dist/agent/tools/graph-tools.d.ts +45 -73
  39. package/dist/agent/tools/graph-tools.js +765 -239
  40. package/dist/agent/tools/graph-tools.js.map +1 -1
  41. package/dist/agent/tools/history-tools.d.ts +95 -0
  42. package/dist/agent/tools/history-tools.js +465 -0
  43. package/dist/agent/tools/history-tools.js.map +1 -0
  44. package/dist/agent/tools/load-skill.d.ts +4 -3
  45. package/dist/agent/tools/load-skill.js +1 -1
  46. package/dist/agent/tools/load-skill.js.map +1 -1
  47. package/dist/agent/tools/ops-tools.d.ts +2 -1
  48. package/dist/agent/tools/ops-tools.js +125 -25
  49. package/dist/agent/tools/ops-tools.js.map +1 -1
  50. package/dist/agent/tools/pdf-tools.d.ts +65 -0
  51. package/dist/agent/tools/pdf-tools.js +119 -0
  52. package/dist/agent/tools/pdf-tools.js.map +1 -0
  53. package/dist/agent/tools/permission-tools.d.ts +69 -21
  54. package/dist/agent/tools/permission-tools.js +183 -18
  55. package/dist/agent/tools/permission-tools.js.map +1 -1
  56. package/dist/agent/tools/tool-loader.js +5 -4
  57. package/dist/agent/tools/tool-loader.js.map +1 -1
  58. package/dist/agent/tools/web-tools.js +58 -9
  59. package/dist/agent/tools/web-tools.js.map +1 -1
  60. package/dist/cli/commands/about.d.ts +1 -0
  61. package/dist/cli/commands/about.js +55 -3
  62. package/dist/cli/commands/about.js.map +1 -1
  63. package/dist/cli/commands/admin/audit-workspace.d.ts +23 -0
  64. package/dist/cli/commands/admin/audit-workspace.js +133 -0
  65. package/dist/cli/commands/admin/audit-workspace.js.map +1 -0
  66. package/dist/cli/commands/admin/audit.d.ts +21 -0
  67. package/dist/cli/commands/admin/audit.js +174 -0
  68. package/dist/cli/commands/admin/audit.js.map +1 -0
  69. package/dist/cli/commands/admin/backup.d.ts +54 -0
  70. package/dist/cli/commands/admin/backup.js +207 -0
  71. package/dist/cli/commands/admin/backup.js.map +1 -0
  72. package/dist/cli/commands/admin/folder.d.ts +11 -0
  73. package/dist/cli/commands/admin/folder.js +187 -0
  74. package/dist/cli/commands/admin/folder.js.map +1 -0
  75. package/dist/cli/commands/admin/index.d.ts +16 -0
  76. package/dist/cli/commands/admin/index.js +48 -0
  77. package/dist/cli/commands/admin/index.js.map +1 -0
  78. package/dist/cli/commands/admin/migrate-asset-owners.d.ts +56 -0
  79. package/dist/cli/commands/admin/migrate-asset-owners.js +86 -0
  80. package/dist/cli/commands/admin/migrate-asset-owners.js.map +1 -0
  81. package/dist/cli/commands/admin/migrate-assets.d.ts +62 -0
  82. package/dist/cli/commands/admin/migrate-assets.js +237 -0
  83. package/dist/cli/commands/admin/migrate-assets.js.map +1 -0
  84. package/dist/cli/commands/admin/migrate.d.ts +56 -0
  85. package/dist/cli/commands/admin/migrate.js +263 -0
  86. package/dist/cli/commands/admin/migrate.js.map +1 -0
  87. package/dist/cli/commands/admin/restore.d.ts +24 -0
  88. package/dist/cli/commands/admin/restore.js +228 -0
  89. package/dist/cli/commands/admin/restore.js.map +1 -0
  90. package/dist/cli/commands/admin/secrets.d.ts +23 -0
  91. package/dist/cli/commands/admin/secrets.js +256 -0
  92. package/dist/cli/commands/admin/secrets.js.map +1 -0
  93. package/dist/cli/commands/admin/settings.d.ts +28 -0
  94. package/dist/cli/commands/admin/settings.js +284 -0
  95. package/dist/cli/commands/admin/settings.js.map +1 -0
  96. package/dist/cli/commands/admin/token.d.ts +42 -0
  97. package/dist/cli/commands/admin/token.js +126 -0
  98. package/dist/cli/commands/admin/token.js.map +1 -0
  99. package/dist/cli/commands/admin/transfer-ownership.d.ts +15 -0
  100. package/dist/cli/commands/admin/transfer-ownership.js +106 -0
  101. package/dist/cli/commands/admin/transfer-ownership.js.map +1 -0
  102. package/dist/cli/commands/admin/user.d.ts +11 -0
  103. package/dist/cli/commands/admin/user.js +187 -0
  104. package/dist/cli/commands/admin/user.js.map +1 -0
  105. package/dist/cli/commands/clone.d.ts +23 -3
  106. package/dist/cli/commands/clone.js +140 -36
  107. package/dist/cli/commands/clone.js.map +1 -1
  108. package/dist/cli/commands/config.d.ts +23 -107
  109. package/dist/cli/commands/config.js +52 -260
  110. package/dist/cli/commands/config.js.map +1 -1
  111. package/dist/cli/commands/connector.d.ts +10 -13
  112. package/dist/cli/commands/connector.js +16 -58
  113. package/dist/cli/commands/connector.js.map +1 -1
  114. package/dist/cli/commands/deploy.js +218 -71
  115. package/dist/cli/commands/deploy.js.map +1 -1
  116. package/dist/cli/commands/index.js +7 -4
  117. package/dist/cli/commands/index.js.map +1 -1
  118. package/dist/cli/commands/init.js +10 -30
  119. package/dist/cli/commands/init.js.map +1 -1
  120. package/dist/cli/commands/mcp.js +54 -6
  121. package/dist/cli/commands/mcp.js.map +1 -1
  122. package/dist/cli/commands/r2.d.ts +3 -0
  123. package/dist/cli/commands/r2.js +223 -204
  124. package/dist/cli/commands/r2.js.map +1 -1
  125. package/dist/cli/commands/redeploy.js +65 -12
  126. package/dist/cli/commands/redeploy.js.map +1 -1
  127. package/dist/cli/commands/reset.d.ts +22 -6
  128. package/dist/cli/commands/reset.js +132 -34
  129. package/dist/cli/commands/reset.js.map +1 -1
  130. package/dist/cli/commands/serve.js +242 -24
  131. package/dist/cli/commands/serve.js.map +1 -1
  132. package/dist/cli/commands/sync.d.ts +1 -1
  133. package/dist/cli/commands/sync.js +230 -227
  134. package/dist/cli/commands/sync.js.map +1 -1
  135. package/dist/cli/crypto-bundle.d.ts +39 -0
  136. package/dist/cli/crypto-bundle.js +94 -0
  137. package/dist/cli/crypto-bundle.js.map +1 -0
  138. package/dist/cli/index.js +24 -23
  139. package/dist/cli/index.js.map +1 -1
  140. package/dist/cli/railway-pin.d.ts +68 -0
  141. package/dist/cli/railway-pin.js +96 -0
  142. package/dist/cli/railway-pin.js.map +1 -0
  143. package/dist/cli/railway-provisioning.d.ts +53 -0
  144. package/dist/cli/railway-provisioning.js +85 -0
  145. package/dist/cli/railway-provisioning.js.map +1 -0
  146. package/dist/cli/setup-wizard.d.ts +30 -49
  147. package/dist/cli/setup-wizard.js +39 -40
  148. package/dist/cli/setup-wizard.js.map +1 -1
  149. package/dist/cli/theme.d.ts +1 -1
  150. package/dist/core/accent-palette.d.ts +7 -18
  151. package/dist/core/accent-palette.js +27 -38
  152. package/dist/core/accent-palette.js.map +1 -1
  153. package/dist/core/artifact-asset-resolution.d.ts +90 -0
  154. package/dist/core/artifact-asset-resolution.js +138 -0
  155. package/dist/core/artifact-asset-resolution.js.map +1 -0
  156. package/dist/core/artifact-asset-urls.d.ts +111 -0
  157. package/dist/core/artifact-asset-urls.js +174 -0
  158. package/dist/core/artifact-asset-urls.js.map +1 -0
  159. package/dist/core/artifact-bundle.d.ts +69 -0
  160. package/dist/core/artifact-bundle.js +305 -0
  161. package/dist/core/artifact-bundle.js.map +1 -0
  162. package/dist/core/artifact-columns-css.d.ts +38 -0
  163. package/dist/core/artifact-columns-css.js +157 -0
  164. package/dist/core/artifact-columns-css.js.map +1 -0
  165. package/dist/core/artifact-escape.d.ts +5 -0
  166. package/dist/core/artifact-escape.js +26 -0
  167. package/dist/core/artifact-escape.js.map +1 -0
  168. package/dist/core/artifact-export.d.ts +83 -0
  169. package/dist/core/artifact-export.js +1567 -0
  170. package/dist/core/artifact-export.js.map +1 -0
  171. package/dist/core/artifact-frame-document.d.ts +147 -0
  172. package/dist/core/artifact-frame-document.js +1570 -0
  173. package/dist/core/artifact-frame-document.js.map +1 -0
  174. package/dist/core/artifact-frame-layout.d.ts +79 -0
  175. package/dist/core/artifact-frame-layout.js +94 -0
  176. package/dist/core/artifact-frame-layout.js.map +1 -0
  177. package/dist/core/artifact-frame-model.d.ts +271 -0
  178. package/dist/core/artifact-frame-model.js +824 -0
  179. package/dist/core/artifact-frame-model.js.map +1 -0
  180. package/dist/core/artifact-frame-selectors.d.ts +42 -0
  181. package/dist/core/artifact-frame-selectors.js +65 -0
  182. package/dist/core/artifact-frame-selectors.js.map +1 -0
  183. package/dist/core/artifact-libraries.d.ts +23 -0
  184. package/dist/core/artifact-libraries.js +229 -0
  185. package/dist/core/artifact-libraries.js.map +1 -0
  186. package/dist/core/artifact-manifest.d.ts +64 -0
  187. package/dist/core/artifact-manifest.js +88 -0
  188. package/dist/core/artifact-manifest.js.map +1 -0
  189. package/dist/core/artifact-paged-css.d.ts +64 -0
  190. package/dist/core/artifact-paged-css.js +253 -0
  191. package/dist/core/artifact-paged-css.js.map +1 -0
  192. package/dist/core/artifact-patch.d.ts +58 -0
  193. package/dist/core/artifact-patch.js +327 -0
  194. package/dist/core/artifact-patch.js.map +1 -0
  195. package/dist/core/artifact-warnings.d.ts +51 -0
  196. package/dist/core/artifact-warnings.js +165 -0
  197. package/dist/core/artifact-warnings.js.map +1 -0
  198. package/dist/core/breakpoints.d.ts +27 -0
  199. package/dist/core/breakpoints.js +28 -0
  200. package/dist/core/breakpoints.js.map +1 -0
  201. package/dist/core/cell-anchor.d.ts +29 -0
  202. package/dist/core/cell-anchor.js +53 -0
  203. package/dist/core/cell-anchor.js.map +1 -0
  204. package/dist/core/comment-anchor.d.ts +41 -0
  205. package/dist/core/comment-anchor.js +147 -0
  206. package/dist/core/comment-anchor.js.map +1 -0
  207. package/dist/core/commit-messages.d.ts +57 -0
  208. package/dist/core/commit-messages.js +85 -0
  209. package/dist/core/commit-messages.js.map +1 -0
  210. package/dist/core/embeds.d.ts +108 -0
  211. package/dist/core/embeds.js +226 -0
  212. package/dist/core/embeds.js.map +1 -0
  213. package/dist/core/entity-body-templates.d.ts +21 -0
  214. package/dist/core/entity-body-templates.js +66 -0
  215. package/dist/core/entity-body-templates.js.map +1 -0
  216. package/dist/core/entity-types-catalog.d.ts +65 -0
  217. package/dist/core/entity-types-catalog.js +142 -0
  218. package/dist/core/entity-types-catalog.js.map +1 -0
  219. package/dist/core/field-library.d.ts +62 -0
  220. package/dist/core/field-library.js +129 -0
  221. package/dist/core/field-library.js.map +1 -0
  222. package/dist/core/folder-paths.d.ts +41 -0
  223. package/dist/core/folder-paths.js +95 -0
  224. package/dist/core/folder-paths.js.map +1 -0
  225. package/dist/core/folder-sidecar.d.ts +36 -0
  226. package/dist/core/folder-sidecar.js +91 -0
  227. package/dist/core/folder-sidecar.js.map +1 -0
  228. package/dist/core/font-family.d.ts +62 -0
  229. package/dist/core/font-family.js +84 -0
  230. package/dist/core/font-family.js.map +1 -0
  231. package/dist/core/format-registry.d.ts +196 -0
  232. package/dist/core/format-registry.js +449 -0
  233. package/dist/core/format-registry.js.map +1 -0
  234. package/dist/core/graph.d.ts +770 -30
  235. package/dist/core/graph.js +2282 -386
  236. package/dist/core/graph.js.map +1 -1
  237. package/dist/core/history-diff.d.ts +35 -0
  238. package/dist/core/history-diff.js +114 -0
  239. package/dist/core/history-diff.js.map +1 -0
  240. package/dist/core/markdown-strip.d.ts +22 -0
  241. package/dist/core/markdown-strip.js +51 -0
  242. package/dist/core/markdown-strip.js.map +1 -0
  243. package/dist/core/refs.d.ts +41 -0
  244. package/dist/core/refs.js +80 -0
  245. package/dist/core/refs.js.map +1 -0
  246. package/dist/core/schema-registry.d.ts +66 -0
  247. package/dist/core/schema-registry.js +198 -37
  248. package/dist/core/schema-registry.js.map +1 -1
  249. package/dist/core/schemas/connector.d.ts +67 -0
  250. package/dist/core/schemas/connector.js +100 -0
  251. package/dist/core/schemas/connector.js.map +1 -0
  252. package/dist/core/schemas/workspace.d.ts +122 -0
  253. package/dist/core/schemas/workspace.js +211 -0
  254. package/dist/core/schemas/workspace.js.map +1 -0
  255. package/dist/core/secrets/SecretStore.d.ts +77 -0
  256. package/dist/core/secrets/SecretStore.js +13 -0
  257. package/dist/core/secrets/SecretStore.js.map +1 -0
  258. package/dist/core/secrets/SettingsResolver.d.ts +54 -0
  259. package/dist/core/secrets/SettingsResolver.js +80 -0
  260. package/dist/core/secrets/SettingsResolver.js.map +1 -0
  261. package/dist/core/secrets/SettingsStore.d.ts +30 -0
  262. package/dist/core/secrets/SettingsStore.js +9 -0
  263. package/dist/core/secrets/SettingsStore.js.map +1 -0
  264. package/dist/core/secrets/SqliteEncryptedStore.d.ts +90 -0
  265. package/dist/core/secrets/SqliteEncryptedStore.js +598 -0
  266. package/dist/core/secrets/SqliteEncryptedStore.js.map +1 -0
  267. package/dist/core/secrets/audit.d.ts +36 -0
  268. package/dist/core/secrets/audit.js +60 -0
  269. package/dist/core/secrets/audit.js.map +1 -0
  270. package/dist/core/secrets/auth-db-migration.d.ts +129 -0
  271. package/dist/core/secrets/auth-db-migration.js +653 -0
  272. package/dist/core/secrets/auth-db-migration.js.map +1 -0
  273. package/dist/core/secrets/bundle.d.ts +141 -0
  274. package/dist/core/secrets/bundle.js +435 -0
  275. package/dist/core/secrets/bundle.js.map +1 -0
  276. package/dist/core/secrets/dual-write.d.ts +81 -0
  277. package/dist/core/secrets/dual-write.js +247 -0
  278. package/dist/core/secrets/dual-write.js.map +1 -0
  279. package/dist/core/secrets/encryption.d.ts +44 -0
  280. package/dist/core/secrets/encryption.js +97 -0
  281. package/dist/core/secrets/encryption.js.map +1 -0
  282. package/dist/core/secrets/index.d.ts +49 -0
  283. package/dist/core/secrets/index.js +74 -0
  284. package/dist/core/secrets/index.js.map +1 -0
  285. package/dist/core/secrets/master-key.d.ts +38 -0
  286. package/dist/core/secrets/master-key.js +122 -0
  287. package/dist/core/secrets/master-key.js.map +1 -0
  288. package/dist/core/secrets/probes/anthropic.d.ts +98 -0
  289. package/dist/core/secrets/probes/anthropic.js +300 -0
  290. package/dist/core/secrets/probes/anthropic.js.map +1 -0
  291. package/dist/core/secrets/probes/brave.d.ts +9 -0
  292. package/dist/core/secrets/probes/brave.js +15 -0
  293. package/dist/core/secrets/probes/brave.js.map +1 -0
  294. package/dist/core/secrets/probes/r2.d.ts +15 -0
  295. package/dist/core/secrets/probes/r2.js +14 -0
  296. package/dist/core/secrets/probes/r2.js.map +1 -0
  297. package/dist/core/secrets/probes/tavily.d.ts +18 -0
  298. package/dist/core/secrets/probes/tavily.js +58 -0
  299. package/dist/core/secrets/probes/tavily.js.map +1 -0
  300. package/dist/core/secrets/probes/voyage.d.ts +13 -0
  301. package/dist/core/secrets/probes/voyage.js +52 -0
  302. package/dist/core/secrets/probes/voyage.js.map +1 -0
  303. package/dist/core/secrets/r2-structural-migration.d.ts +39 -0
  304. package/dist/core/secrets/r2-structural-migration.js +109 -0
  305. package/dist/core/secrets/r2-structural-migration.js.map +1 -0
  306. package/dist/core/secrets/read-flip.d.ts +59 -0
  307. package/dist/core/secrets/read-flip.js +87 -0
  308. package/dist/core/secrets/read-flip.js.map +1 -0
  309. package/dist/core/secrets/registry.d.ts +237 -0
  310. package/dist/core/secrets/registry.js +710 -0
  311. package/dist/core/secrets/registry.js.map +1 -0
  312. package/dist/core/seed-folder.d.ts +59 -0
  313. package/dist/core/seed-folder.js +76 -0
  314. package/dist/core/seed-folder.js.map +1 -0
  315. package/dist/core/types.d.ts +88 -480
  316. package/dist/core/types.js +53 -6
  317. package/dist/core/types.js.map +1 -1
  318. package/dist/core/user-config.d.ts +81 -14
  319. package/dist/core/user-config.js +147 -17
  320. package/dist/core/user-config.js.map +1 -1
  321. package/dist/core/validation.d.ts +828 -1472
  322. package/dist/core/validation.js +475 -163
  323. package/dist/core/validation.js.map +1 -1
  324. package/dist/core/view-scope.d.ts +88 -0
  325. package/dist/core/view-scope.js +71 -0
  326. package/dist/core/view-scope.js.map +1 -0
  327. package/dist/core/workspace-manager.d.ts +156 -11
  328. package/dist/core/workspace-manager.js +364 -92
  329. package/dist/core/workspace-manager.js.map +1 -1
  330. package/dist/core/workspace.d.ts +19 -5
  331. package/dist/core/workspace.js +72 -56
  332. package/dist/core/workspace.js.map +1 -1
  333. package/dist/mcp/comment-virtual-entity.d.ts +36 -0
  334. package/dist/mcp/comment-virtual-entity.js +71 -0
  335. package/dist/mcp/comment-virtual-entity.js.map +1 -0
  336. package/dist/mcp/connector-catalog.d.ts +100 -0
  337. package/dist/mcp/connector-catalog.js +393 -0
  338. package/dist/mcp/connector-catalog.js.map +1 -0
  339. package/dist/mcp/connector-manager.d.ts +72 -2
  340. package/dist/mcp/connector-manager.js +216 -32
  341. package/dist/mcp/connector-manager.js.map +1 -1
  342. package/dist/mcp/oauth-provider.d.ts +0 -5
  343. package/dist/mcp/oauth-provider.js +31 -25
  344. package/dist/mcp/oauth-provider.js.map +1 -1
  345. package/dist/mcp/oauth-registry.d.ts +46 -8
  346. package/dist/mcp/oauth-registry.js +52 -13
  347. package/dist/mcp/oauth-registry.js.map +1 -1
  348. package/dist/mcp/server-discovery.d.ts +73 -0
  349. package/dist/mcp/server-discovery.js +164 -0
  350. package/dist/mcp/server-discovery.js.map +1 -0
  351. package/dist/mcp/server.d.ts +24 -3
  352. package/dist/mcp/server.js +53 -10
  353. package/dist/mcp/server.js.map +1 -1
  354. package/dist/mcp/state-signer.d.ts +62 -0
  355. package/dist/mcp/state-signer.js +205 -0
  356. package/dist/mcp/state-signer.js.map +1 -0
  357. package/dist/mcp/stdio-proxy.d.ts +67 -0
  358. package/dist/mcp/stdio-proxy.js +149 -0
  359. package/dist/mcp/stdio-proxy.js.map +1 -0
  360. package/dist/mcp/tools.d.ts +73 -2
  361. package/dist/mcp/tools.js +2317 -115
  362. package/dist/mcp/tools.js.map +1 -1
  363. package/dist/server/__tests__/helpers/graph-api.d.ts +17 -0
  364. package/dist/server/__tests__/helpers/graph-api.js +17 -0
  365. package/dist/server/__tests__/helpers/graph-api.js.map +1 -0
  366. package/dist/server/__tests__/helpers/multipart.d.ts +9 -0
  367. package/dist/server/__tests__/helpers/multipart.js +14 -0
  368. package/dist/server/__tests__/helpers/multipart.js.map +1 -0
  369. package/dist/server/agent-task-executor.d.ts +30 -0
  370. package/dist/server/agent-task-executor.js +139 -0
  371. package/dist/server/agent-task-executor.js.map +1 -0
  372. package/dist/server/agent-task-runner.d.ts +126 -0
  373. package/dist/server/agent-task-runner.js +351 -0
  374. package/dist/server/agent-task-runner.js.map +1 -0
  375. package/dist/server/artifact-asset-mint.d.ts +59 -0
  376. package/dist/server/artifact-asset-mint.js +127 -0
  377. package/dist/server/artifact-asset-mint.js.map +1 -0
  378. package/dist/server/asset-index-queue.d.ts +98 -0
  379. package/dist/server/asset-index-queue.js +193 -0
  380. package/dist/server/asset-index-queue.js.map +1 -0
  381. package/dist/server/body-write-coordinator.d.ts +161 -0
  382. package/dist/server/body-write-coordinator.js +182 -0
  383. package/dist/server/body-write-coordinator.js.map +1 -0
  384. package/dist/server/canonical-origin.d.ts +41 -0
  385. package/dist/server/canonical-origin.js +62 -0
  386. package/dist/server/canonical-origin.js.map +1 -0
  387. package/dist/server/cloud-billing-flow.d.ts +32 -0
  388. package/dist/server/cloud-billing-flow.js +75 -0
  389. package/dist/server/cloud-billing-flow.js.map +1 -0
  390. package/dist/server/commit-audit.d.ts +26 -0
  391. package/dist/server/commit-audit.js +30 -0
  392. package/dist/server/commit-audit.js.map +1 -0
  393. package/dist/server/index.d.ts +50 -1
  394. package/dist/server/index.js +858 -229
  395. package/dist/server/index.js.map +1 -1
  396. package/dist/server/middleware/sanitize.d.ts +46 -0
  397. package/dist/server/middleware/sanitize.js +195 -0
  398. package/dist/server/middleware/sanitize.js.map +1 -0
  399. package/dist/server/process-guards.d.ts +37 -0
  400. package/dist/server/process-guards.js +44 -0
  401. package/dist/server/process-guards.js.map +1 -0
  402. package/dist/server/routes/ai-usage-api.d.ts +24 -0
  403. package/dist/server/routes/ai-usage-api.js +68 -0
  404. package/dist/server/routes/ai-usage-api.js.map +1 -0
  405. package/dist/server/routes/artifact-export-api.d.ts +11 -0
  406. package/dist/server/routes/artifact-export-api.js +179 -0
  407. package/dist/server/routes/artifact-export-api.js.map +1 -0
  408. package/dist/server/routes/artifact-patch-api.d.ts +19 -0
  409. package/dist/server/routes/artifact-patch-api.js +114 -0
  410. package/dist/server/routes/artifact-patch-api.js.map +1 -0
  411. package/dist/server/routes/artifact-selection-api.d.ts +15 -0
  412. package/dist/server/routes/artifact-selection-api.js +90 -0
  413. package/dist/server/routes/artifact-selection-api.js.map +1 -0
  414. package/dist/server/routes/asset-api.d.ts +88 -2
  415. package/dist/server/routes/asset-api.js +858 -112
  416. package/dist/server/routes/asset-api.js.map +1 -1
  417. package/dist/server/routes/audit-api.d.ts +24 -0
  418. package/dist/server/routes/audit-api.js +113 -0
  419. package/dist/server/routes/audit-api.js.map +1 -0
  420. package/dist/server/routes/auth-api.js +536 -44
  421. package/dist/server/routes/auth-api.js.map +1 -1
  422. package/dist/server/routes/capture-api.js +81 -9
  423. package/dist/server/routes/capture-api.js.map +1 -1
  424. package/dist/server/routes/chat-sessions-api.d.ts +13 -0
  425. package/dist/server/routes/chat-sessions-api.js +500 -0
  426. package/dist/server/routes/chat-sessions-api.js.map +1 -0
  427. package/dist/server/routes/chat-turn-outcome.d.ts +129 -0
  428. package/dist/server/routes/chat-turn-outcome.js +169 -0
  429. package/dist/server/routes/chat-turn-outcome.js.map +1 -0
  430. package/dist/server/routes/chat.d.ts +35 -1
  431. package/dist/server/routes/chat.js +1173 -80
  432. package/dist/server/routes/chat.js.map +1 -1
  433. package/dist/server/routes/comments-api.d.ts +15 -0
  434. package/dist/server/routes/comments-api.js +444 -0
  435. package/dist/server/routes/comments-api.js.map +1 -0
  436. package/dist/server/routes/config-api.d.ts +3 -2
  437. package/dist/server/routes/config-api.js +183 -57
  438. package/dist/server/routes/config-api.js.map +1 -1
  439. package/dist/server/routes/connectors-api.js +213 -56
  440. package/dist/server/routes/connectors-api.js.map +1 -1
  441. package/dist/server/routes/desktop-diagnostics-api.d.ts +22 -0
  442. package/dist/server/routes/desktop-diagnostics-api.js +114 -0
  443. package/dist/server/routes/desktop-diagnostics-api.js.map +1 -0
  444. package/dist/server/routes/event-ingest-api.d.ts +15 -0
  445. package/dist/server/routes/event-ingest-api.js +125 -0
  446. package/dist/server/routes/event-ingest-api.js.map +1 -0
  447. package/dist/server/routes/field-library-api.d.ts +28 -0
  448. package/dist/server/routes/field-library-api.js +126 -0
  449. package/dist/server/routes/field-library-api.js.map +1 -0
  450. package/dist/server/routes/git-http.d.ts +3 -3
  451. package/dist/server/routes/git-http.js +90 -30
  452. package/dist/server/routes/git-http.js.map +1 -1
  453. package/dist/server/routes/graph-api-access.d.ts +63 -0
  454. package/dist/server/routes/graph-api-access.js +115 -0
  455. package/dist/server/routes/graph-api-access.js.map +1 -0
  456. package/dist/server/routes/graph-api.d.ts +2 -3
  457. package/dist/server/routes/graph-api.js +1476 -417
  458. package/dist/server/routes/graph-api.js.map +1 -1
  459. package/dist/server/routes/health.d.ts +18 -0
  460. package/dist/server/routes/health.js +116 -0
  461. package/dist/server/routes/health.js.map +1 -0
  462. package/dist/server/routes/import-batch.d.ts +24 -0
  463. package/dist/server/routes/import-batch.js +33 -0
  464. package/dist/server/routes/import-batch.js.map +1 -0
  465. package/dist/server/routes/insights-api.d.ts +9 -2
  466. package/dist/server/routes/insights-api.js +352 -66
  467. package/dist/server/routes/insights-api.js.map +1 -1
  468. package/dist/server/routes/mcp.d.ts +8 -3
  469. package/dist/server/routes/mcp.js +24 -8
  470. package/dist/server/routes/mcp.js.map +1 -1
  471. package/dist/server/routes/oauth-api.d.ts +63 -0
  472. package/dist/server/routes/oauth-api.js +413 -0
  473. package/dist/server/routes/oauth-api.js.map +1 -0
  474. package/dist/server/routes/permissions-api.d.ts +8 -3
  475. package/dist/server/routes/permissions-api.js +43 -12
  476. package/dist/server/routes/permissions-api.js.map +1 -1
  477. package/dist/server/routes/r2-api.d.ts +25 -0
  478. package/dist/server/routes/r2-api.js +273 -0
  479. package/dist/server/routes/r2-api.js.map +1 -0
  480. package/dist/server/routes/secrets-api.d.ts +36 -0
  481. package/dist/server/routes/secrets-api.js +305 -0
  482. package/dist/server/routes/secrets-api.js.map +1 -0
  483. package/dist/server/routes/settings-api.d.ts +29 -0
  484. package/dist/server/routes/settings-api.js +177 -0
  485. package/dist/server/routes/settings-api.js.map +1 -0
  486. package/dist/server/routes/share-api.d.ts +30 -6
  487. package/dist/server/routes/share-api.js +240 -31
  488. package/dist/server/routes/share-api.js.map +1 -1
  489. package/dist/server/routes/views-api.d.ts +11 -2
  490. package/dist/server/routes/views-api.js +123 -22
  491. package/dist/server/routes/views-api.js.map +1 -1
  492. package/dist/server/routes/workspace-api.d.ts +2 -1
  493. package/dist/server/routes/workspace-api.js +150 -23
  494. package/dist/server/routes/workspace-api.js.map +1 -1
  495. package/dist/server/routes/ws.d.ts +2 -1
  496. package/dist/server/routes/ws.js +73 -20
  497. package/dist/server/routes/ws.js.map +1 -1
  498. package/dist/server/session-manager.d.ts +48 -5
  499. package/dist/server/session-manager.js +182 -14
  500. package/dist/server/session-manager.js.map +1 -1
  501. package/dist/server/ws-hub.d.ts +135 -56
  502. package/dist/server/ws-hub.js +0 -0
  503. package/dist/server/ws-hub.js.map +1 -1
  504. package/dist/server/yjs-manager.d.ts +275 -18
  505. package/dist/server/yjs-manager.js +819 -70
  506. package/dist/server/yjs-manager.js.map +1 -1
  507. package/dist/server/yjs-persistence.d.ts +165 -0
  508. package/dist/server/yjs-persistence.js +557 -0
  509. package/dist/server/yjs-persistence.js.map +1 -0
  510. package/dist/server/yjs-text-diff.d.ts +32 -0
  511. package/dist/server/yjs-text-diff.js +61 -0
  512. package/dist/server/yjs-text-diff.js.map +1 -0
  513. package/dist/services/access-control.d.ts +121 -0
  514. package/dist/services/access-control.js +194 -0
  515. package/dist/services/access-control.js.map +1 -0
  516. package/dist/services/agent-task-store.d.ts +96 -0
  517. package/dist/services/agent-task-store.js +184 -0
  518. package/dist/services/agent-task-store.js.map +1 -0
  519. package/dist/services/ai-usage-ledger.d.ts +75 -0
  520. package/dist/services/ai-usage-ledger.js +250 -0
  521. package/dist/services/ai-usage-ledger.js.map +1 -0
  522. package/dist/services/artifact-asset-token.d.ts +69 -0
  523. package/dist/services/artifact-asset-token.js +94 -0
  524. package/dist/services/artifact-asset-token.js.map +1 -0
  525. package/dist/services/artifact-inspect-metadata.d.ts +21 -0
  526. package/dist/services/artifact-inspect-metadata.js +66 -0
  527. package/dist/services/artifact-inspect-metadata.js.map +1 -0
  528. package/dist/services/artifact-library-sources.d.ts +28 -0
  529. package/dist/services/artifact-library-sources.js +83 -0
  530. package/dist/services/artifact-library-sources.js.map +1 -0
  531. package/dist/services/artifact-patch-runner.d.ts +52 -0
  532. package/dist/services/artifact-patch-runner.js +74 -0
  533. package/dist/services/artifact-patch-runner.js.map +1 -0
  534. package/dist/services/artifact-render-export.d.ts +261 -0
  535. package/dist/services/artifact-render-export.js +1088 -0
  536. package/dist/services/artifact-render-export.js.map +1 -0
  537. package/dist/services/artifact-selection-store.d.ts +68 -0
  538. package/dist/services/artifact-selection-store.js +90 -0
  539. package/dist/services/artifact-selection-store.js.map +1 -0
  540. package/dist/services/artifact-store.d.ts +124 -0
  541. package/dist/services/artifact-store.js +260 -0
  542. package/dist/services/artifact-store.js.map +1 -0
  543. package/dist/services/asset-caption-service.d.ts +103 -0
  544. package/dist/services/asset-caption-service.js +200 -0
  545. package/dist/services/asset-caption-service.js.map +1 -0
  546. package/dist/services/asset-delete-authz.d.ts +32 -0
  547. package/dist/services/asset-delete-authz.js +62 -0
  548. package/dist/services/asset-delete-authz.js.map +1 -0
  549. package/dist/services/asset-delete-impact.d.ts +63 -0
  550. package/dist/services/asset-delete-impact.js +96 -0
  551. package/dist/services/asset-delete-impact.js.map +1 -0
  552. package/dist/services/asset-finalize-service.d.ts +58 -0
  553. package/dist/services/asset-finalize-service.js +216 -0
  554. package/dist/services/asset-finalize-service.js.map +1 -0
  555. package/dist/services/asset-import-service.d.ts +116 -0
  556. package/dist/services/asset-import-service.js +486 -0
  557. package/dist/services/asset-import-service.js.map +1 -0
  558. package/dist/services/asset-index-sweep.d.ts +95 -0
  559. package/dist/services/asset-index-sweep.js +271 -0
  560. package/dist/services/asset-index-sweep.js.map +1 -0
  561. package/dist/services/asset-lifecycle-check.d.ts +22 -0
  562. package/dist/services/asset-lifecycle-check.js +80 -0
  563. package/dist/services/asset-lifecycle-check.js.map +1 -0
  564. package/dist/services/asset-listing.d.ts +63 -0
  565. package/dist/services/asset-listing.js +124 -0
  566. package/dist/services/asset-listing.js.map +1 -0
  567. package/dist/services/asset-move-impact.d.ts +49 -0
  568. package/dist/services/asset-move-impact.js +62 -0
  569. package/dist/services/asset-move-impact.js.map +1 -0
  570. package/dist/services/asset-presign-service.d.ts +62 -0
  571. package/dist/services/asset-presign-service.js +126 -0
  572. package/dist/services/asset-presign-service.js.map +1 -0
  573. package/dist/services/asset-reference-index.d.ts +39 -0
  574. package/dist/services/asset-reference-index.js +33 -0
  575. package/dist/services/asset-reference-index.js.map +1 -0
  576. package/dist/services/asset-reference-scan.d.ts +57 -0
  577. package/dist/services/asset-reference-scan.js +150 -0
  578. package/dist/services/asset-reference-scan.js.map +1 -0
  579. package/dist/services/asset-sidecar-service.d.ts +28 -0
  580. package/dist/services/asset-sidecar-service.js +79 -0
  581. package/dist/services/asset-sidecar-service.js.map +1 -0
  582. package/dist/services/asset-upload-errors.d.ts +41 -0
  583. package/dist/services/asset-upload-errors.js +45 -0
  584. package/dist/services/asset-upload-errors.js.map +1 -0
  585. package/dist/services/asset-upload-service.d.ts +56 -0
  586. package/dist/services/asset-upload-service.js +200 -0
  587. package/dist/services/asset-upload-service.js.map +1 -0
  588. package/dist/services/asset-upload-token.d.ts +58 -0
  589. package/dist/services/asset-upload-token.js +75 -0
  590. package/dist/services/asset-upload-token.js.map +1 -0
  591. package/dist/services/assets/asset-index-service.d.ts +158 -0
  592. package/dist/services/assets/asset-index-service.js +293 -0
  593. package/dist/services/assets/asset-index-service.js.map +1 -0
  594. package/dist/services/assets/base.d.ts +119 -4
  595. package/dist/services/assets/base.js +148 -3
  596. package/dist/services/assets/base.js.map +1 -1
  597. package/dist/services/assets/index.d.ts +90 -0
  598. package/dist/services/assets/index.js +202 -0
  599. package/dist/services/assets/index.js.map +1 -1
  600. package/dist/services/assets/local.d.ts +9 -0
  601. package/dist/services/assets/local.js +30 -4
  602. package/dist/services/assets/local.js.map +1 -1
  603. package/dist/services/assets/r2-sync.d.ts +88 -0
  604. package/dist/services/assets/r2-sync.js +412 -0
  605. package/dist/services/assets/r2-sync.js.map +1 -0
  606. package/dist/services/assets/r2.d.ts +80 -0
  607. package/dist/services/assets/r2.js +159 -4
  608. package/dist/services/assets/r2.js.map +1 -1
  609. package/dist/services/auth-service.d.ts +278 -51
  610. package/dist/services/auth-service.js +995 -272
  611. package/dist/services/auth-service.js.map +1 -1
  612. package/dist/services/chat-session-service.d.ts +197 -0
  613. package/dist/services/chat-session-service.js +552 -0
  614. package/dist/services/chat-session-service.js.map +1 -0
  615. package/dist/services/cloud-inference-billing.d.ts +64 -0
  616. package/dist/services/cloud-inference-billing.js +321 -0
  617. package/dist/services/cloud-inference-billing.js.map +1 -0
  618. package/dist/services/comment-service.d.ts +97 -0
  619. package/dist/services/comment-service.js +341 -0
  620. package/dist/services/comment-service.js.map +1 -0
  621. package/dist/services/comment-virtual-entity.d.ts +36 -0
  622. package/dist/services/comment-virtual-entity.js +71 -0
  623. package/dist/services/comment-virtual-entity.js.map +1 -0
  624. package/dist/services/convert-service.d.ts +64 -0
  625. package/dist/services/convert-service.js +68 -0
  626. package/dist/services/convert-service.js.map +1 -0
  627. package/dist/services/csv-service.d.ts +22 -17
  628. package/dist/services/csv-service.js +55 -92
  629. package/dist/services/csv-service.js.map +1 -1
  630. package/dist/services/desktop-diagnostics-service.d.ts +177 -0
  631. package/dist/services/desktop-diagnostics-service.js +343 -0
  632. package/dist/services/desktop-diagnostics-service.js.map +1 -0
  633. package/dist/services/entity-mutations.d.ts +313 -0
  634. package/dist/services/entity-mutations.js +531 -0
  635. package/dist/services/entity-mutations.js.map +1 -0
  636. package/dist/services/event-processor.d.ts +104 -0
  637. package/dist/services/event-processor.js +451 -0
  638. package/dist/services/event-processor.js.map +1 -0
  639. package/dist/services/extract/docx.d.ts +1 -0
  640. package/dist/services/extract/docx.js +233 -0
  641. package/dist/services/extract/docx.js.map +1 -0
  642. package/dist/services/extract/index.d.ts +9 -0
  643. package/dist/services/extract/index.js +10 -0
  644. package/dist/services/extract/index.js.map +1 -0
  645. package/dist/services/extract/pdf.d.ts +13 -0
  646. package/dist/services/extract/pdf.js +69 -0
  647. package/dist/services/extract/pdf.js.map +1 -0
  648. package/dist/services/folder-creation.d.ts +33 -0
  649. package/dist/services/folder-creation.js +103 -0
  650. package/dist/services/folder-creation.js.map +1 -0
  651. package/dist/services/fonts/font-metadata.d.ts +42 -0
  652. package/dist/services/fonts/font-metadata.js +126 -0
  653. package/dist/services/fonts/font-metadata.js.map +1 -0
  654. package/dist/services/fonts/font-skill-service.d.ts +66 -0
  655. package/dist/services/fonts/font-skill-service.js +137 -0
  656. package/dist/services/fonts/font-skill-service.js.map +1 -0
  657. package/dist/services/git.d.ts +58 -0
  658. package/dist/services/git.js +194 -55
  659. package/dist/services/git.js.map +1 -1
  660. package/dist/services/graph-maintenance.js +4 -4
  661. package/dist/services/graph-maintenance.js.map +1 -1
  662. package/dist/services/import-service.d.ts +51 -2
  663. package/dist/services/import-service.js +271 -109
  664. package/dist/services/import-service.js.map +1 -1
  665. package/dist/services/lint-service.js +10 -17
  666. package/dist/services/lint-service.js.map +1 -1
  667. package/dist/services/markdown.d.ts +12 -1
  668. package/dist/services/markdown.js +77 -9
  669. package/dist/services/markdown.js.map +1 -1
  670. package/dist/services/mention-detector.d.ts +23 -0
  671. package/dist/services/mention-detector.js +47 -0
  672. package/dist/services/mention-detector.js.map +1 -0
  673. package/dist/services/model-capabilities.d.ts +41 -0
  674. package/dist/services/model-capabilities.js +107 -0
  675. package/dist/services/model-capabilities.js.map +1 -0
  676. package/dist/services/notification-broadcast.d.ts +32 -0
  677. package/dist/services/notification-broadcast.js +38 -0
  678. package/dist/services/notification-broadcast.js.map +1 -0
  679. package/dist/services/notification-service.d.ts +41 -0
  680. package/dist/services/notification-service.js +100 -0
  681. package/dist/services/notification-service.js.map +1 -0
  682. package/dist/services/oauth-server-store.d.ts +147 -0
  683. package/dist/services/oauth-server-store.js +319 -0
  684. package/dist/services/oauth-server-store.js.map +1 -0
  685. package/dist/services/orphan-service.js +2 -2
  686. package/dist/services/orphan-service.js.map +1 -1
  687. package/dist/services/pdf-raster-service.d.ts +95 -0
  688. package/dist/services/pdf-raster-service.js +361 -0
  689. package/dist/services/pdf-raster-service.js.map +1 -0
  690. package/dist/services/personal-folder.d.ts +49 -0
  691. package/dist/services/personal-folder.js +122 -0
  692. package/dist/services/personal-folder.js.map +1 -0
  693. package/dist/services/playwright-bootstrap.d.ts +78 -0
  694. package/dist/services/playwright-bootstrap.js +219 -0
  695. package/dist/services/playwright-bootstrap.js.map +1 -0
  696. package/dist/services/scratch-asset-promote.d.ts +57 -0
  697. package/dist/services/scratch-asset-promote.js +95 -0
  698. package/dist/services/scratch-asset-promote.js.map +1 -0
  699. package/dist/services/scratch-attachment-service.d.ts +247 -0
  700. package/dist/services/scratch-attachment-service.js +478 -0
  701. package/dist/services/scratch-attachment-service.js.map +1 -0
  702. package/dist/services/scratch-blob.d.ts +16 -0
  703. package/dist/services/scratch-blob.js +31 -0
  704. package/dist/services/scratch-blob.js.map +1 -0
  705. package/dist/services/share-link-service.d.ts +57 -0
  706. package/dist/services/share-link-service.js +142 -0
  707. package/dist/services/share-link-service.js.map +1 -0
  708. package/dist/services/user-person-bridge.d.ts +136 -0
  709. package/dist/services/user-person-bridge.js +341 -0
  710. package/dist/services/user-person-bridge.js.map +1 -0
  711. package/dist/services/utility-model-resolver.d.ts +37 -0
  712. package/dist/services/utility-model-resolver.js +67 -0
  713. package/dist/services/utility-model-resolver.js.map +1 -0
  714. package/dist/services/vector-service.d.ts +282 -5
  715. package/dist/services/vector-service.js +594 -39
  716. package/dist/services/vector-service.js.map +1 -1
  717. package/dist/services/workspace-access.d.ts +115 -0
  718. package/dist/services/workspace-access.js +154 -0
  719. package/dist/services/workspace-access.js.map +1 -0
  720. package/dist/services/workspace-assets-folder.d.ts +46 -0
  721. package/dist/services/workspace-assets-folder.js +75 -0
  722. package/dist/services/workspace-assets-folder.js.map +1 -0
  723. package/dist/utils/git.d.ts +17 -2
  724. package/dist/utils/git.js +23 -7
  725. package/dist/utils/git.js.map +1 -1
  726. package/dist/utils/log.d.ts +42 -0
  727. package/dist/utils/log.js +137 -0
  728. package/dist/utils/log.js.map +1 -0
  729. package/dist/utils/preflight.js +2 -2
  730. package/dist/utils/preflight.js.map +1 -1
  731. package/dist/utils/version-checker.d.ts +12 -19
  732. package/dist/utils/version-checker.js +14 -104
  733. package/dist/utils/version-checker.js.map +1 -1
  734. package/dist/web/_app/immutable/assets/0.EQ13aeT7.css +2 -0
  735. package/dist/web/_app/immutable/assets/12.DlIf1mKh.css +1 -0
  736. package/dist/web/_app/immutable/assets/13.WUaKJbVc.css +1 -0
  737. package/dist/web/_app/immutable/assets/15.CItnu3nw.css +1 -0
  738. package/dist/web/_app/immutable/assets/16.C3czeWWx.css +1 -0
  739. package/dist/web/_app/immutable/assets/17.CHiwoAMO.css +1 -0
  740. package/dist/web/_app/immutable/assets/18.fUGuXQ0K.css +1 -0
  741. package/dist/web/_app/immutable/assets/19.DcuK5ZVm.css +1 -0
  742. package/dist/web/_app/immutable/assets/2.D-t-UF92.css +1 -0
  743. package/dist/web/_app/immutable/assets/3.NwBs3e5P.css +1 -0
  744. package/dist/web/_app/immutable/assets/4.a48oSJc8.css +1 -0
  745. package/dist/web/_app/immutable/assets/6.qYwAAyw6.css +1 -0
  746. package/dist/web/_app/immutable/assets/AssetLibraryPicker.BWH260L8.css +1 -0
  747. package/dist/web/_app/immutable/assets/BulkActionsBar.C7rAqpQH.css +1 -0
  748. package/dist/web/_app/immutable/assets/CalendarView.BPjGVS79.css +1 -0
  749. package/dist/web/_app/immutable/assets/CodeMirrorEditor.D6hf2pNJ.css +1 -0
  750. package/dist/web/_app/immutable/assets/CopyField.DVGZtw4U.css +1 -0
  751. package/dist/web/_app/immutable/assets/DeleteEntryDialog.CuV5GGgm.css +1 -0
  752. package/dist/web/_app/immutable/assets/EntryActionDialogs.Bk7DSdfo.css +1 -0
  753. package/dist/web/_app/immutable/assets/FolderMembersPanel.BvV1lBCg.css +1 -0
  754. package/dist/web/_app/immutable/assets/FolderMutationDialogs.De2NQ55E.css +1 -0
  755. package/dist/web/_app/immutable/assets/FolderPicker.Cq1tMnu_.css +1 -0
  756. package/dist/web/_app/immutable/assets/FolderTreeField.DTSzn15s.css +1 -0
  757. package/dist/web/_app/immutable/assets/FrameCanvas.Clh5Xdr7.css +1 -0
  758. package/dist/web/_app/immutable/assets/GalleryView.Dmr8-vDv.css +1 -0
  759. package/dist/web/_app/immutable/assets/GraphView.BJtGL9py.css +1 -0
  760. package/dist/web/_app/immutable/assets/GridCell.DnKM4Fcp.css +1 -0
  761. package/dist/web/_app/immutable/assets/KanbanView.CRc-eYXO.css +1 -0
  762. package/dist/web/_app/immutable/assets/Link.vV0ne105.css +1 -0
  763. package/dist/web/_app/immutable/assets/LocationPill.BZlFTn09.css +1 -0
  764. package/dist/web/_app/immutable/assets/Markdown.CSYKSAm0.css +1 -0
  765. package/dist/web/_app/immutable/assets/Rail.CCPxL1o_.css +1 -0
  766. package/dist/web/_app/immutable/assets/RowSelectSlot.BKY62Bks.css +1 -0
  767. package/dist/web/_app/immutable/assets/SaveViewDialog.Bb9E81xd.css +1 -0
  768. package/dist/web/_app/immutable/assets/SearchInput.DTB6W35f.css +1 -0
  769. package/dist/web/_app/immutable/assets/SettingsDialog.CFukBBGR.css +1 -0
  770. package/dist/web/_app/immutable/assets/Spinner.UBfl0pab.css +1 -0
  771. package/dist/web/_app/immutable/assets/StopFilledAlt.CjuwgVxu.css +1 -0
  772. package/dist/web/_app/immutable/assets/TimelineView.u4YqiztR.css +1 -0
  773. package/dist/web/_app/immutable/assets/Version.BQq1Fihu.css +1 -0
  774. package/dist/web/_app/immutable/assets/ViewBanner.DWswnFdi.css +1 -0
  775. package/dist/web/_app/immutable/assets/WorkspaceView.CONYOyXk.css +1 -0
  776. package/dist/web/_app/immutable/assets/button.DOg1smbV.css +1 -0
  777. package/dist/web/_app/immutable/assets/filters.RgfXKVpA.css +1 -0
  778. package/dist/web/_app/immutable/assets/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff +0 -0
  779. package/dist/web/_app/immutable/assets/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2 +0 -0
  780. package/dist/web/_app/immutable/assets/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff +0 -0
  781. package/dist/web/_app/immutable/assets/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2 +0 -0
  782. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-400-italic.CZTNEAuW.woff2 +0 -0
  783. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-400-italic.CsGl1sm0.woff +0 -0
  784. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2 +0 -0
  785. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-400-normal.CYLoc0-x.woff +0 -0
  786. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-500-italic.BNK2_mGO.woff2 +0 -0
  787. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-500-italic.DpEwFAQM.woff +0 -0
  788. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-500-normal.6ng42L7E.woff2 +0 -0
  789. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-500-normal.BgVn5rGT.woff +0 -0
  790. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.woff +0 -0
  791. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2 +0 -0
  792. package/dist/web/_app/immutable/assets/list-columns.BgnafZ4K.css +1 -0
  793. package/dist/web/_app/immutable/assets/select.CAcHq8G6.css +1 -0
  794. package/dist/web/_app/immutable/chunks/-MYqXlc3.js +185 -0
  795. package/dist/web/_app/immutable/chunks/1_BWKAKA2.js +23 -0
  796. package/dist/web/_app/immutable/chunks/3KN8jP3c.js +3 -0
  797. package/dist/web/_app/immutable/chunks/6guf_P8c.js +1 -0
  798. package/dist/web/_app/immutable/chunks/6xvgZqen.js +1 -0
  799. package/dist/web/_app/immutable/chunks/B0BPsOkj2.js +1 -0
  800. package/dist/web/_app/immutable/chunks/B2cjR0rG2.js +83 -0
  801. package/dist/web/_app/immutable/chunks/B6Lt-qaJ.js +1 -0
  802. package/dist/web/_app/immutable/chunks/B7rD1tc8.js +1 -0
  803. package/dist/web/_app/immutable/chunks/B9KfEsQw2.js +1 -0
  804. package/dist/web/_app/immutable/chunks/BAoPqRQe2.js +1 -0
  805. package/dist/web/_app/immutable/chunks/BEnhEpl4.js +2 -0
  806. package/dist/web/_app/immutable/chunks/BEyPhM3C.js +1 -0
  807. package/dist/web/_app/immutable/chunks/BKR_U18i.js +1 -0
  808. package/dist/web/_app/immutable/chunks/BO1IS8SY2.js +1041 -0
  809. package/dist/web/_app/immutable/chunks/BO6-nRV9.js +1 -0
  810. package/dist/web/_app/immutable/chunks/BPILs-6H.js +1 -0
  811. package/dist/web/_app/immutable/chunks/BPRQzMGs.js +1 -0
  812. package/dist/web/_app/immutable/chunks/BQE7bWgF.js +1 -0
  813. package/dist/web/_app/immutable/chunks/BTY6LKQP2.js +2 -0
  814. package/dist/web/_app/immutable/chunks/BUqPn9bc.js +5 -0
  815. package/dist/web/_app/immutable/chunks/BYwdNl_6.js +1 -0
  816. package/dist/web/_app/immutable/chunks/B_H-sCl92.js +1 -0
  817. package/dist/web/_app/immutable/chunks/B_y9A6Kg.js +4 -0
  818. package/dist/web/_app/immutable/chunks/BbCaFmwr.js +1 -0
  819. package/dist/web/_app/immutable/chunks/BdR7t2GN.js +3 -0
  820. package/dist/web/_app/immutable/chunks/BetFlDsY2.js +1 -0
  821. package/dist/web/_app/immutable/chunks/BhXvdD9_.js +12 -0
  822. package/dist/web/_app/immutable/chunks/Bi0xMDiZ2.js +2 -0
  823. package/dist/web/_app/immutable/chunks/BjBlyur1.js +2 -0
  824. package/dist/web/_app/immutable/chunks/Bk3YvmMa.js +1 -0
  825. package/dist/web/_app/immutable/chunks/Bl1wqOjP2.js +1 -0
  826. package/dist/web/_app/immutable/chunks/Bm1zMkOs.js +1 -0
  827. package/dist/web/_app/immutable/chunks/BnYohOts2.js +1 -0
  828. package/dist/web/_app/immutable/chunks/BrT4x2ps.js +1 -0
  829. package/dist/web/_app/immutable/chunks/BsKd-PCm.js +1 -0
  830. package/dist/web/_app/immutable/chunks/BtDSRU36.js +1 -0
  831. package/dist/web/_app/immutable/chunks/Bvr6nSm92.js +1 -0
  832. package/dist/web/_app/immutable/chunks/BvyVm7-j.js +184 -0
  833. package/dist/web/_app/immutable/chunks/Bwk2tzAR.js +2 -0
  834. package/dist/web/_app/immutable/chunks/Bx6T8G5n2.js +1 -0
  835. package/dist/web/_app/immutable/chunks/C1B4xDs0.js +1 -0
  836. package/dist/web/_app/immutable/chunks/C2yz630b.js +2 -0
  837. package/dist/web/_app/immutable/chunks/C5YoDj-e.js +1 -0
  838. package/dist/web/_app/immutable/chunks/C8ZiSqQm.js +1 -0
  839. package/dist/web/_app/immutable/chunks/CB-t1Bv-.js +1 -0
  840. package/dist/web/_app/immutable/chunks/CDWL7K4J2.js +1 -0
  841. package/dist/web/_app/immutable/chunks/CFcnCWEw.js +5 -0
  842. package/dist/web/_app/immutable/chunks/CKGHeJzq.js +1 -0
  843. package/dist/web/_app/immutable/chunks/CM400nLL.js +7 -0
  844. package/dist/web/_app/immutable/chunks/CPvxN2G62.js +1 -0
  845. package/dist/web/_app/immutable/chunks/CS4vSmCG.js +1 -0
  846. package/dist/web/_app/immutable/chunks/CS99yx6h.js +2 -0
  847. package/dist/web/_app/immutable/chunks/CT35tdLp.js +1 -0
  848. package/dist/web/_app/immutable/chunks/CVk6pSTs.js +3 -0
  849. package/dist/web/_app/immutable/chunks/CWIHttTH.js +1 -0
  850. package/dist/web/_app/immutable/chunks/CWZSexLW.js +1 -0
  851. package/dist/web/_app/immutable/chunks/CXPMb3zd.js +1 -0
  852. package/dist/web/_app/immutable/chunks/CZWZNDRS2.js +1 -0
  853. package/dist/web/_app/immutable/chunks/CaimSvvF.js +5 -0
  854. package/dist/web/_app/immutable/chunks/Cbl4aytm2.js +1 -0
  855. package/dist/web/_app/immutable/chunks/CcWaWbrI2.js +1 -0
  856. package/dist/web/_app/immutable/chunks/CgCz4Fj6.js +1 -0
  857. package/dist/web/_app/immutable/chunks/CgOgBK5j.js +1 -0
  858. package/dist/web/_app/immutable/chunks/CkeUq-8R.js +1 -0
  859. package/dist/web/_app/immutable/chunks/CkhJDrAq.js +1 -0
  860. package/dist/web/_app/immutable/chunks/CmWflMFc.js +1 -0
  861. package/dist/web/_app/immutable/chunks/CqyFdLMa.js +1 -0
  862. package/dist/web/_app/immutable/chunks/CrI1td1i2.js +1 -0
  863. package/dist/web/_app/immutable/chunks/CsIWxmio2.js +22 -0
  864. package/dist/web/_app/immutable/chunks/CyDz1jcK.js +1 -0
  865. package/dist/web/_app/immutable/chunks/CyTgggiM2.js +1 -0
  866. package/dist/web/_app/immutable/chunks/D1AgYXMF2.js +2 -0
  867. package/dist/web/_app/immutable/chunks/D27N0qvQ2.js +1 -0
  868. package/dist/web/_app/immutable/chunks/D6cPOH832.js +66 -0
  869. package/dist/web/_app/immutable/chunks/D6toh9Mr.js +1 -0
  870. package/dist/web/_app/immutable/chunks/D7-46v9S.js +1 -0
  871. package/dist/web/_app/immutable/chunks/DAjr1sZA.js +1 -0
  872. package/dist/web/_app/immutable/chunks/DBFtlslO.js +1 -0
  873. package/dist/web/_app/immutable/chunks/DBGaXAP8.js +1 -0
  874. package/dist/web/_app/immutable/chunks/DBHHqC8f.js +2 -0
  875. package/dist/web/_app/immutable/chunks/DBUH-iQj.js +6 -0
  876. package/dist/web/_app/immutable/chunks/DCeG-e2l.js +1 -0
  877. package/dist/web/_app/immutable/chunks/DCgKWtld.js +1 -0
  878. package/dist/web/_app/immutable/chunks/DIsSxB_C.js +1 -0
  879. package/dist/web/_app/immutable/chunks/DJTvBXur.js +2 -0
  880. package/dist/web/_app/immutable/chunks/DK0NSuAS2.js +1 -0
  881. package/dist/web/_app/immutable/chunks/DLHpr4Vi2.js +1 -0
  882. package/dist/web/_app/immutable/chunks/DN-jrZJ02.js +1 -0
  883. package/dist/web/_app/immutable/chunks/DNCh8Cb_.js +1 -0
  884. package/dist/web/_app/immutable/chunks/DNLoQniz.js +1 -0
  885. package/dist/web/_app/immutable/chunks/DPLkAijI2.js +1 -0
  886. package/dist/web/_app/immutable/chunks/DQMWa2t7.js +1 -0
  887. package/dist/web/_app/immutable/chunks/DSDgV2YD.js +2692 -0
  888. package/dist/web/_app/immutable/chunks/DShaCvAr.js +1 -0
  889. package/dist/web/_app/immutable/chunks/DV85F2-d.js +1 -0
  890. package/dist/web/_app/immutable/chunks/DWCE-wSZ.js +2 -0
  891. package/dist/web/_app/immutable/chunks/Ddgu2Sjp.js +1 -0
  892. package/dist/web/_app/immutable/chunks/DgP0Pxes.js +224 -0
  893. package/dist/web/_app/immutable/chunks/Dhmw5GUH.js +1 -0
  894. package/dist/web/_app/immutable/chunks/DiMsLIh3.js +1 -0
  895. package/dist/web/_app/immutable/chunks/DiiXREv7.js +1 -0
  896. package/dist/web/_app/immutable/chunks/DkAKpjj12.js +2 -0
  897. package/dist/web/_app/immutable/chunks/DlJZ9kVY.js +1 -0
  898. package/dist/web/_app/immutable/chunks/DpmptkAg2.js +2 -0
  899. package/dist/web/_app/immutable/chunks/DuHa0E8I.js +1 -0
  900. package/dist/web/_app/immutable/chunks/DxhO1bqL2.js +1 -0
  901. package/dist/web/_app/immutable/chunks/F92HmKX8.js +1 -0
  902. package/dist/web/_app/immutable/chunks/FISIvbqq.js +3 -0
  903. package/dist/web/_app/immutable/chunks/FyGHIQwA.js +2 -0
  904. package/dist/web/_app/immutable/chunks/GC5Izn9E2.js +1 -0
  905. package/dist/web/_app/immutable/chunks/GikfwGZz.js +1 -0
  906. package/dist/web/_app/immutable/chunks/IMJutqSu2.js +1 -0
  907. package/dist/web/_app/immutable/chunks/MAYbL-xn2.js +6 -0
  908. package/dist/web/_app/immutable/chunks/MtN4vJa02.js +1 -0
  909. package/dist/web/_app/immutable/chunks/Oglnp7sm2.js +14 -0
  910. package/dist/web/_app/immutable/chunks/QlvGbfkt2.js +1 -0
  911. package/dist/web/_app/immutable/chunks/QsO256-z.js +1 -0
  912. package/dist/web/_app/immutable/chunks/RA-JwTzo.js +1 -0
  913. package/dist/web/_app/immutable/chunks/ah3ktS0_.js +2 -0
  914. package/dist/web/_app/immutable/chunks/cJT54ldG.js +1 -0
  915. package/dist/web/_app/immutable/chunks/dMyvBfyH.js +1 -0
  916. package/dist/web/_app/immutable/chunks/hA8kwzor.js +1 -0
  917. package/dist/web/_app/immutable/chunks/hub1HF5s.js +1 -0
  918. package/dist/web/_app/immutable/chunks/j6ZT0Fzw2.js +2 -0
  919. package/dist/web/_app/immutable/chunks/j_uHTBnD.js +1 -0
  920. package/dist/web/_app/immutable/chunks/kNaey6uv.js +1 -0
  921. package/dist/web/_app/immutable/chunks/m96_DtL9.js +1 -0
  922. package/dist/web/_app/immutable/chunks/n1_hJpnq.js +1 -0
  923. package/dist/web/_app/immutable/chunks/nqo2e2Yv.js +1 -0
  924. package/dist/web/_app/immutable/chunks/om-ip4O12.js +2 -0
  925. package/dist/web/_app/immutable/chunks/qevfNcid.js +1 -0
  926. package/dist/web/_app/immutable/chunks/rjjyuGhb.js +1 -0
  927. package/dist/web/_app/immutable/chunks/sd1UgxTd.js +1 -0
  928. package/dist/web/_app/immutable/chunks/secOWbPM.js +1 -0
  929. package/dist/web/_app/immutable/chunks/tBw__QoK.js +1 -0
  930. package/dist/web/_app/immutable/chunks/uHaS74te.js +1 -0
  931. package/dist/web/_app/immutable/chunks/uz0bKlBh.js +1 -0
  932. package/dist/web/_app/immutable/chunks/w5tsuIav.js +5 -0
  933. package/dist/web/_app/immutable/chunks/xGXTHqYt.js +1 -0
  934. package/dist/web/_app/immutable/chunks/xihTtKlq.js +1 -0
  935. package/dist/web/_app/immutable/entry/app.BHIqztXG.js +2 -0
  936. package/dist/web/_app/immutable/entry/start.Jj_CeiCF.js +1 -0
  937. package/dist/web/_app/immutable/nodes/0.Adu49FsB.js +2 -0
  938. package/dist/web/_app/immutable/nodes/1.DWtfg_P4.js +1 -0
  939. package/dist/web/_app/immutable/nodes/10.DDEoihl2.js +1 -0
  940. package/dist/web/_app/immutable/nodes/11.Dbyeghdx.js +1 -0
  941. package/dist/web/_app/immutable/nodes/12.DH4TMGyG.js +1 -0
  942. package/dist/web/_app/immutable/nodes/13.CFG3CGsv.js +1 -0
  943. package/dist/web/_app/immutable/nodes/14.DJwakC0o.js +1 -0
  944. package/dist/web/_app/immutable/nodes/15.BDNmh-od.js +1 -0
  945. package/dist/web/_app/immutable/nodes/16.DfIJwmGV.js +1 -0
  946. package/dist/web/_app/immutable/nodes/17.BI2F37bS.js +1 -0
  947. package/dist/web/_app/immutable/nodes/18.DZH2zZF5.js +1 -0
  948. package/dist/web/_app/immutable/nodes/19.CwYvbbVl.js +77 -0
  949. package/dist/web/_app/immutable/nodes/2.DfL0LG4z.js +124 -0
  950. package/dist/web/_app/immutable/nodes/3.Qldz4SxJ.js +6 -0
  951. package/dist/web/_app/immutable/nodes/4.Cgxi5fT2.js +16 -0
  952. package/dist/web/_app/immutable/nodes/5.D6OaKv4N.js +1 -0
  953. package/dist/web/_app/immutable/nodes/6.C8lsqzwP.js +6 -0
  954. package/dist/web/_app/immutable/nodes/7.BK_hwkz6.js +1 -0
  955. package/dist/web/_app/immutable/nodes/8.Cr8XUj5g.js +1 -0
  956. package/dist/web/_app/immutable/nodes/9._kzCJI8M.js +1 -0
  957. package/dist/web/_app/version.json +1 -1
  958. package/dist/web/favicon-16.png +0 -0
  959. package/dist/web/favicon-180.png +0 -0
  960. package/dist/web/favicon-32.png +0 -0
  961. package/dist/web/favicon-48.png +0 -0
  962. package/dist/web/favicon-512.png +0 -0
  963. package/dist/web/favicon.ico +0 -0
  964. package/dist/web/favicon.svg +8 -0
  965. package/dist/web/index.html +59 -20
  966. package/dist/web/studiograph-logomark.svg +29 -0
  967. package/package.json +44 -15
  968. package/dist/agent/role-loader.d.ts +0 -24
  969. package/dist/agent/role-loader.js +0 -67
  970. package/dist/agent/role-loader.js.map +0 -1
  971. package/dist/agent/skills/create-deck/content-guide.md +0 -238
  972. package/dist/agent/skills/create-deck/deck-cadence.md +0 -105
  973. package/dist/agent/skills/create-deck/diagrams.md +0 -431
  974. package/dist/agent/skills/create-deck/skill.md +0 -89
  975. package/dist/agent/skills/create-deck/slide-selection.md +0 -115
  976. package/dist/agent/skills/create-deck/slide-types.md +0 -638
  977. package/dist/agent/skills/create-document/skill.md +0 -229
  978. package/dist/agent/skills/enrich-entities.md +0 -136
  979. package/dist/agent/skills/obsidian-source-setup.md +0 -246
  980. package/dist/agent/skills/skill-loader.d.ts +0 -48
  981. package/dist/agent/skills/skill-loader.js +0 -166
  982. package/dist/agent/skills/skill-loader.js.map +0 -1
  983. package/dist/agent/skills/sync-configuration.md +0 -119
  984. package/dist/agent/skills/sync-setup.md +0 -82
  985. package/dist/agent/tools/message-tools.d.ts +0 -42
  986. package/dist/agent/tools/message-tools.js +0 -96
  987. package/dist/agent/tools/message-tools.js.map +0 -1
  988. package/dist/agent/tools/sync-tools.d.ts +0 -35
  989. package/dist/agent/tools/sync-tools.js +0 -992
  990. package/dist/agent/tools/sync-tools.js.map +0 -1
  991. package/dist/auth/github.d.ts +0 -56
  992. package/dist/auth/github.js +0 -169
  993. package/dist/auth/github.js.map +0 -1
  994. package/dist/cli/commands/access.d.ts +0 -11
  995. package/dist/cli/commands/access.js +0 -156
  996. package/dist/cli/commands/access.js.map +0 -1
  997. package/dist/cli/commands/app.d.ts +0 -7
  998. package/dist/cli/commands/app.js +0 -268
  999. package/dist/cli/commands/app.js.map +0 -1
  1000. package/dist/cli/commands/auth.d.ts +0 -10
  1001. package/dist/cli/commands/auth.js +0 -79
  1002. package/dist/cli/commands/auth.js.map +0 -1
  1003. package/dist/cli/commands/clear.d.ts +0 -5
  1004. package/dist/cli/commands/clear.js +0 -36
  1005. package/dist/cli/commands/clear.js.map +0 -1
  1006. package/dist/cli/commands/collection.d.ts +0 -10
  1007. package/dist/cli/commands/collection.js +0 -185
  1008. package/dist/cli/commands/collection.js.map +0 -1
  1009. package/dist/cli/commands/enrich.d.ts +0 -11
  1010. package/dist/cli/commands/enrich.js +0 -135
  1011. package/dist/cli/commands/enrich.js.map +0 -1
  1012. package/dist/cli/commands/graphrag.d.ts +0 -12
  1013. package/dist/cli/commands/graphrag.js +0 -122
  1014. package/dist/cli/commands/graphrag.js.map +0 -1
  1015. package/dist/cli/commands/join.d.ts +0 -9
  1016. package/dist/cli/commands/join.js +0 -255
  1017. package/dist/cli/commands/join.js.map +0 -1
  1018. package/dist/cli/commands/members.d.ts +0 -11
  1019. package/dist/cli/commands/members.js +0 -230
  1020. package/dist/cli/commands/members.js.map +0 -1
  1021. package/dist/cli/commands/org.d.ts +0 -10
  1022. package/dist/cli/commands/org.js +0 -132
  1023. package/dist/cli/commands/org.js.map +0 -1
  1024. package/dist/cli/commands/provision.d.ts +0 -8
  1025. package/dist/cli/commands/provision.js +0 -116
  1026. package/dist/cli/commands/provision.js.map +0 -1
  1027. package/dist/cli/commands/resolve.d.ts +0 -8
  1028. package/dist/cli/commands/resolve.js +0 -85
  1029. package/dist/cli/commands/resolve.js.map +0 -1
  1030. package/dist/cli/commands/review.d.ts +0 -19
  1031. package/dist/cli/commands/review.js +0 -128
  1032. package/dist/cli/commands/review.js.map +0 -1
  1033. package/dist/cli/commands/source.d.ts +0 -16
  1034. package/dist/cli/commands/source.js +0 -159
  1035. package/dist/cli/commands/source.js.map +0 -1
  1036. package/dist/cli/commands/start.d.ts +0 -7
  1037. package/dist/cli/commands/start.js +0 -576
  1038. package/dist/cli/commands/start.js.map +0 -1
  1039. package/dist/cli/commands/sync-collection.d.ts +0 -14
  1040. package/dist/cli/commands/sync-collection.js +0 -355
  1041. package/dist/cli/commands/sync-collection.js.map +0 -1
  1042. package/dist/cli/commands/sync-entities.d.ts +0 -13
  1043. package/dist/cli/commands/sync-entities.js +0 -242
  1044. package/dist/cli/commands/sync-entities.js.map +0 -1
  1045. package/dist/cli/commands/team.d.ts +0 -12
  1046. package/dist/cli/commands/team.js +0 -185
  1047. package/dist/cli/commands/team.js.map +0 -1
  1048. package/dist/cli/commands/update.d.ts +0 -8
  1049. package/dist/cli/commands/update.js +0 -155
  1050. package/dist/cli/commands/update.js.map +0 -1
  1051. package/dist/cli/commands/user.d.ts +0 -7
  1052. package/dist/cli/commands/user.js +0 -169
  1053. package/dist/cli/commands/user.js.map +0 -1
  1054. package/dist/cli/scaffolding.d.ts +0 -12
  1055. package/dist/cli/scaffolding.js +0 -397
  1056. package/dist/cli/scaffolding.js.map +0 -1
  1057. package/dist/cli/sync-review-interactive.d.ts +0 -31
  1058. package/dist/cli/sync-review-interactive.js +0 -393
  1059. package/dist/cli/sync-review-interactive.js.map +0 -1
  1060. package/dist/core/feature-flags.d.ts +0 -17
  1061. package/dist/core/feature-flags.js +0 -15
  1062. package/dist/core/feature-flags.js.map +0 -1
  1063. package/dist/core/features.d.ts +0 -16
  1064. package/dist/core/features.js +0 -48
  1065. package/dist/core/features.js.map +0 -1
  1066. package/dist/core/launch-entity-types.d.ts +0 -23
  1067. package/dist/core/launch-entity-types.js +0 -48
  1068. package/dist/core/launch-entity-types.js.map +0 -1
  1069. package/dist/core/migration-runner.d.ts +0 -42
  1070. package/dist/core/migration-runner.js +0 -232
  1071. package/dist/core/migration-runner.js.map +0 -1
  1072. package/dist/core/migration-types.d.ts +0 -101
  1073. package/dist/core/migration-types.js +0 -21
  1074. package/dist/core/migration-types.js.map +0 -1
  1075. package/dist/core/migrations/20260219-formalize-memory-location.d.ts +0 -2
  1076. package/dist/core/migrations/20260219-formalize-memory-location.js +0 -35
  1077. package/dist/core/migrations/20260219-formalize-memory-location.js.map +0 -1
  1078. package/dist/core/migrations/20260220-add-workspace-metadata.d.ts +0 -12
  1079. package/dist/core/migrations/20260220-add-workspace-metadata.js +0 -65
  1080. package/dist/core/migrations/20260220-add-workspace-metadata.js.map +0 -1
  1081. package/dist/core/migrations/20260220-add-workspace-readme.d.ts +0 -11
  1082. package/dist/core/migrations/20260220-add-workspace-readme.js +0 -82
  1083. package/dist/core/migrations/20260220-add-workspace-readme.js.map +0 -1
  1084. package/dist/core/migrations/20260220-migrate-yaml-to-json.d.ts +0 -9
  1085. package/dist/core/migrations/20260220-migrate-yaml-to-json.js +0 -64
  1086. package/dist/core/migrations/20260220-migrate-yaml-to-json.js.map +0 -1
  1087. package/dist/core/migrations/index.d.ts +0 -11
  1088. package/dist/core/migrations/index.js +0 -23
  1089. package/dist/core/migrations/index.js.map +0 -1
  1090. package/dist/integrations/asana.d.ts +0 -26
  1091. package/dist/integrations/asana.js +0 -78
  1092. package/dist/integrations/asana.js.map +0 -1
  1093. package/dist/integrations/figma-local.d.ts +0 -16
  1094. package/dist/integrations/figma-local.js +0 -10
  1095. package/dist/integrations/figma-local.js.map +0 -1
  1096. package/dist/integrations/figma.d.ts +0 -17
  1097. package/dist/integrations/figma.js +0 -17
  1098. package/dist/integrations/figma.js.map +0 -1
  1099. package/dist/integrations/granola.d.ts +0 -24
  1100. package/dist/integrations/granola.js +0 -60
  1101. package/dist/integrations/granola.js.map +0 -1
  1102. package/dist/integrations/linear.d.ts +0 -14
  1103. package/dist/integrations/linear.js +0 -80
  1104. package/dist/integrations/linear.js.map +0 -1
  1105. package/dist/integrations/paper-local.d.ts +0 -14
  1106. package/dist/integrations/paper-local.js +0 -10
  1107. package/dist/integrations/paper-local.js.map +0 -1
  1108. package/dist/integrations/paper.d.ts +0 -2
  1109. package/dist/integrations/paper.js +0 -10
  1110. package/dist/integrations/paper.js.map +0 -1
  1111. package/dist/integrations/pipedrive.d.ts +0 -26
  1112. package/dist/integrations/pipedrive.js +0 -97
  1113. package/dist/integrations/pipedrive.js.map +0 -1
  1114. package/dist/integrations/registry.d.ts +0 -8
  1115. package/dist/integrations/registry.js +0 -7
  1116. package/dist/integrations/registry.js.map +0 -1
  1117. package/dist/integrations/types.d.ts +0 -43
  1118. package/dist/integrations/types.js +0 -5
  1119. package/dist/integrations/types.js.map +0 -1
  1120. package/dist/lib/lib/utils.d.ts +0 -2
  1121. package/dist/lib/lib/utils.js +0 -6
  1122. package/dist/lib/lib/utils.js.map +0 -1
  1123. package/dist/mcp/connectors/asana.d.ts +0 -2
  1124. package/dist/mcp/connectors/asana.js +0 -20
  1125. package/dist/mcp/connectors/asana.js.map +0 -1
  1126. package/dist/mcp/connectors/definitions.d.ts +0 -45
  1127. package/dist/mcp/connectors/definitions.js +0 -32
  1128. package/dist/mcp/connectors/definitions.js.map +0 -1
  1129. package/dist/mcp/connectors/figma.d.ts +0 -5
  1130. package/dist/mcp/connectors/figma.js +0 -21
  1131. package/dist/mcp/connectors/figma.js.map +0 -1
  1132. package/dist/mcp/connectors/gdrive.d.ts +0 -2
  1133. package/dist/mcp/connectors/gdrive.js +0 -20
  1134. package/dist/mcp/connectors/gdrive.js.map +0 -1
  1135. package/dist/mcp/connectors/granola.d.ts +0 -2
  1136. package/dist/mcp/connectors/granola.js +0 -12
  1137. package/dist/mcp/connectors/granola.js.map +0 -1
  1138. package/dist/mcp/connectors/linear.d.ts +0 -2
  1139. package/dist/mcp/connectors/linear.js +0 -19
  1140. package/dist/mcp/connectors/linear.js.map +0 -1
  1141. package/dist/mcp/connectors/obsidian.d.ts +0 -2
  1142. package/dist/mcp/connectors/obsidian.js +0 -19
  1143. package/dist/mcp/connectors/obsidian.js.map +0 -1
  1144. package/dist/mcp/connectors/pipedrive.d.ts +0 -2
  1145. package/dist/mcp/connectors/pipedrive.js +0 -20
  1146. package/dist/mcp/connectors/pipedrive.js.map +0 -1
  1147. package/dist/mcp/connectors/slack.d.ts +0 -2
  1148. package/dist/mcp/connectors/slack.js +0 -21
  1149. package/dist/mcp/connectors/slack.js.map +0 -1
  1150. package/dist/mcp/server-oauth-provider.d.ts +0 -56
  1151. package/dist/mcp/server-oauth-provider.js +0 -142
  1152. package/dist/mcp/server-oauth-provider.js.map +0 -1
  1153. package/dist/renderers/documents/branding.d.ts +0 -2
  1154. package/dist/renderers/documents/branding.js +0 -42
  1155. package/dist/renderers/documents/branding.js.map +0 -1
  1156. package/dist/renderers/documents/entity-types.json +0 -14
  1157. package/dist/renderers/documents/parser/frontmatter.d.ts +0 -5
  1158. package/dist/renderers/documents/parser/frontmatter.js +0 -90
  1159. package/dist/renderers/documents/parser/frontmatter.js.map +0 -1
  1160. package/dist/renderers/documents/parser/index.d.ts +0 -5
  1161. package/dist/renderers/documents/parser/index.js +0 -142
  1162. package/dist/renderers/documents/parser/index.js.map +0 -1
  1163. package/dist/renderers/documents/parser/sections.d.ts +0 -18
  1164. package/dist/renderers/documents/parser/sections.js +0 -131
  1165. package/dist/renderers/documents/parser/sections.js.map +0 -1
  1166. package/dist/renderers/documents/pdf/generator.d.ts +0 -13
  1167. package/dist/renderers/documents/pdf/generator.js +0 -79
  1168. package/dist/renderers/documents/pdf/generator.js.map +0 -1
  1169. package/dist/renderers/documents/plugin.d.ts +0 -2
  1170. package/dist/renderers/documents/plugin.js +0 -63
  1171. package/dist/renderers/documents/plugin.js.map +0 -1
  1172. package/dist/renderers/documents/public/branding/logo.svg +0 -3
  1173. package/dist/renderers/documents/public/editor/chrome.css +0 -461
  1174. package/dist/renderers/documents/public/editor/chrome.js +0 -524
  1175. package/dist/renderers/documents/public/editor/editor.css +0 -751
  1176. package/dist/renderers/documents/public/editor/editor.html +0 -140
  1177. package/dist/renderers/documents/public/editor/editor.js +0 -953
  1178. package/dist/renderers/documents/public/fonts/fonts.css +0 -145
  1179. package/dist/renderers/documents/public/viewer/viewer.css +0 -1
  1180. package/dist/renderers/documents/public/viewer/viewer.js +0 -4
  1181. package/dist/renderers/documents/renderer/back.d.ts +0 -8
  1182. package/dist/renderers/documents/renderer/back.js +0 -28
  1183. package/dist/renderers/documents/renderer/back.js.map +0 -1
  1184. package/dist/renderers/documents/renderer/content.d.ts +0 -7
  1185. package/dist/renderers/documents/renderer/content.js +0 -25
  1186. package/dist/renderers/documents/renderer/content.js.map +0 -1
  1187. package/dist/renderers/documents/renderer/cover.d.ts +0 -15
  1188. package/dist/renderers/documents/renderer/cover.js +0 -43
  1189. package/dist/renderers/documents/renderer/cover.js.map +0 -1
  1190. package/dist/renderers/documents/renderer/helpers.d.ts +0 -1
  1191. package/dist/renderers/documents/renderer/helpers.js +0 -11
  1192. package/dist/renderers/documents/renderer/helpers.js.map +0 -1
  1193. package/dist/renderers/documents/renderer/index.d.ts +0 -32
  1194. package/dist/renderers/documents/renderer/index.js +0 -80
  1195. package/dist/renderers/documents/renderer/index.js.map +0 -1
  1196. package/dist/renderers/documents/renderer/styles.d.ts +0 -16
  1197. package/dist/renderers/documents/renderer/styles.js +0 -546
  1198. package/dist/renderers/documents/renderer/styles.js.map +0 -1
  1199. package/dist/renderers/documents/routes/api.d.ts +0 -2
  1200. package/dist/renderers/documents/routes/api.js +0 -587
  1201. package/dist/renderers/documents/routes/api.js.map +0 -1
  1202. package/dist/renderers/documents/routes/editor.d.ts +0 -2
  1203. package/dist/renderers/documents/routes/editor.js +0 -31
  1204. package/dist/renderers/documents/routes/editor.js.map +0 -1
  1205. package/dist/renderers/documents/routes/viewer.d.ts +0 -2
  1206. package/dist/renderers/documents/routes/viewer.js +0 -67
  1207. package/dist/renderers/documents/routes/viewer.js.map +0 -1
  1208. package/dist/renderers/documents/types.d.ts +0 -61
  1209. package/dist/renderers/documents/types.js +0 -2
  1210. package/dist/renderers/documents/types.js.map +0 -1
  1211. package/dist/renderers/index.d.ts +0 -24
  1212. package/dist/renderers/index.js +0 -66
  1213. package/dist/renderers/index.js.map +0 -1
  1214. package/dist/renderers/slides/design-system/tokens.d.ts +0 -108
  1215. package/dist/renderers/slides/design-system/tokens.js +0 -44
  1216. package/dist/renderers/slides/design-system/tokens.js.map +0 -1
  1217. package/dist/renderers/slides/entity-types.json +0 -14
  1218. package/dist/renderers/slides/parser/comment-parser.d.ts +0 -10
  1219. package/dist/renderers/slides/parser/comment-parser.js +0 -89
  1220. package/dist/renderers/slides/parser/comment-parser.js.map +0 -1
  1221. package/dist/renderers/slides/parser/frontmatter.d.ts +0 -10
  1222. package/dist/renderers/slides/parser/frontmatter.js +0 -93
  1223. package/dist/renderers/slides/parser/frontmatter.js.map +0 -1
  1224. package/dist/renderers/slides/parser/index.d.ts +0 -7
  1225. package/dist/renderers/slides/parser/index.js +0 -569
  1226. package/dist/renderers/slides/parser/index.js.map +0 -1
  1227. package/dist/renderers/slides/parser/slide-splitter.d.ts +0 -6
  1228. package/dist/renderers/slides/parser/slide-splitter.js +0 -54
  1229. package/dist/renderers/slides/parser/slide-splitter.js.map +0 -1
  1230. package/dist/renderers/slides/parser/type-detector.d.ts +0 -6
  1231. package/dist/renderers/slides/parser/type-detector.js +0 -70
  1232. package/dist/renderers/slides/parser/type-detector.js.map +0 -1
  1233. package/dist/renderers/slides/pdf/generator.d.ts +0 -11
  1234. package/dist/renderers/slides/pdf/generator.js +0 -105
  1235. package/dist/renderers/slides/pdf/generator.js.map +0 -1
  1236. package/dist/renderers/slides/plugin.d.ts +0 -2
  1237. package/dist/renderers/slides/plugin.js +0 -70
  1238. package/dist/renderers/slides/plugin.js.map +0 -1
  1239. package/dist/renderers/slides/public/editor/.gitkeep +0 -0
  1240. package/dist/renderers/slides/public/editor/chrome.css +0 -461
  1241. package/dist/renderers/slides/public/editor/chrome.js +0 -519
  1242. package/dist/renderers/slides/public/editor/editor.css +0 -896
  1243. package/dist/renderers/slides/public/editor/editor.html +0 -131
  1244. package/dist/renderers/slides/public/editor/editor.js +0 -1038
  1245. package/dist/renderers/slides/public/fonts/fonts.css +0 -145
  1246. package/dist/renderers/slides/public/viewer/.gitkeep +0 -0
  1247. package/dist/renderers/slides/public/viewer/chrome.css +0 -62
  1248. package/dist/renderers/slides/public/viewer/transitions.css +0 -1
  1249. package/dist/renderers/slides/public/viewer/viewer.css +0 -2145
  1250. package/dist/renderers/slides/public/viewer/viewer.js +0 -303
  1251. package/dist/renderers/slides/renderer/chrome/browser-frame.d.ts +0 -5
  1252. package/dist/renderers/slides/renderer/chrome/browser-frame.js +0 -22
  1253. package/dist/renderers/slides/renderer/chrome/browser-frame.js.map +0 -1
  1254. package/dist/renderers/slides/renderer/chrome/mobile-frame.d.ts +0 -6
  1255. package/dist/renderers/slides/renderer/chrome/mobile-frame.js +0 -18
  1256. package/dist/renderers/slides/renderer/chrome/mobile-frame.js.map +0 -1
  1257. package/dist/renderers/slides/renderer/helpers.d.ts +0 -13
  1258. package/dist/renderers/slides/renderer/helpers.js +0 -33
  1259. package/dist/renderers/slides/renderer/helpers.js.map +0 -1
  1260. package/dist/renderers/slides/renderer/index.d.ts +0 -16
  1261. package/dist/renderers/slides/renderer/index.js +0 -160
  1262. package/dist/renderers/slides/renderer/index.js.map +0 -1
  1263. package/dist/renderers/slides/renderer/layouts/agenda.d.ts +0 -2
  1264. package/dist/renderers/slides/renderer/layouts/agenda.js +0 -18
  1265. package/dist/renderers/slides/renderer/layouts/agenda.js.map +0 -1
  1266. package/dist/renderers/slides/renderer/layouts/blank.d.ts +0 -2
  1267. package/dist/renderers/slides/renderer/layouts/blank.js +0 -4
  1268. package/dist/renderers/slides/renderer/layouts/blank.js.map +0 -1
  1269. package/dist/renderers/slides/renderer/layouts/columns.d.ts +0 -2
  1270. package/dist/renderers/slides/renderer/layouts/columns.js +0 -32
  1271. package/dist/renderers/slides/renderer/layouts/columns.js.map +0 -1
  1272. package/dist/renderers/slides/renderer/layouts/cover.d.ts +0 -2
  1273. package/dist/renderers/slides/renderer/layouts/cover.js +0 -18
  1274. package/dist/renderers/slides/renderer/layouts/cover.js.map +0 -1
  1275. package/dist/renderers/slides/renderer/layouts/diagram-concentric.d.ts +0 -2
  1276. package/dist/renderers/slides/renderer/layouts/diagram-concentric.js +0 -120
  1277. package/dist/renderers/slides/renderer/layouts/diagram-concentric.js.map +0 -1
  1278. package/dist/renderers/slides/renderer/layouts/diagram-matrix.d.ts +0 -2
  1279. package/dist/renderers/slides/renderer/layouts/diagram-matrix.js +0 -158
  1280. package/dist/renderers/slides/renderer/layouts/diagram-matrix.js.map +0 -1
  1281. package/dist/renderers/slides/renderer/layouts/diagram-pyramid.d.ts +0 -2
  1282. package/dist/renderers/slides/renderer/layouts/diagram-pyramid.js +0 -86
  1283. package/dist/renderers/slides/renderer/layouts/diagram-pyramid.js.map +0 -1
  1284. package/dist/renderers/slides/renderer/layouts/diagram-sitemap.d.ts +0 -2
  1285. package/dist/renderers/slides/renderer/layouts/diagram-sitemap.js +0 -146
  1286. package/dist/renderers/slides/renderer/layouts/diagram-sitemap.js.map +0 -1
  1287. package/dist/renderers/slides/renderer/layouts/diagram-venn.d.ts +0 -2
  1288. package/dist/renderers/slides/renderer/layouts/diagram-venn.js +0 -100
  1289. package/dist/renderers/slides/renderer/layouts/diagram-venn.js.map +0 -1
  1290. package/dist/renderers/slides/renderer/layouts/diagram.d.ts +0 -2
  1291. package/dist/renderers/slides/renderer/layouts/diagram.js +0 -21
  1292. package/dist/renderers/slides/renderer/layouts/diagram.js.map +0 -1
  1293. package/dist/renderers/slides/renderer/layouts/divider.d.ts +0 -2
  1294. package/dist/renderers/slides/renderer/layouts/divider.js +0 -4
  1295. package/dist/renderers/slides/renderer/layouts/divider.js.map +0 -1
  1296. package/dist/renderers/slides/renderer/layouts/end.d.ts +0 -2
  1297. package/dist/renderers/slides/renderer/layouts/end.js +0 -8
  1298. package/dist/renderers/slides/renderer/layouts/end.js.map +0 -1
  1299. package/dist/renderers/slides/renderer/layouts/framework.d.ts +0 -2
  1300. package/dist/renderers/slides/renderer/layouts/framework.js +0 -47
  1301. package/dist/renderers/slides/renderer/layouts/framework.js.map +0 -1
  1302. package/dist/renderers/slides/renderer/layouts/image-browser-2up.d.ts +0 -2
  1303. package/dist/renderers/slides/renderer/layouts/image-browser-2up.js +0 -38
  1304. package/dist/renderers/slides/renderer/layouts/image-browser-2up.js.map +0 -1
  1305. package/dist/renderers/slides/renderer/layouts/image-browser-6up.d.ts +0 -2
  1306. package/dist/renderers/slides/renderer/layouts/image-browser-6up.js +0 -30
  1307. package/dist/renderers/slides/renderer/layouts/image-browser-6up.js.map +0 -1
  1308. package/dist/renderers/slides/renderer/layouts/image-browser.d.ts +0 -2
  1309. package/dist/renderers/slides/renderer/layouts/image-browser.js +0 -18
  1310. package/dist/renderers/slides/renderer/layouts/image-browser.js.map +0 -1
  1311. package/dist/renderers/slides/renderer/layouts/image-bullets.d.ts +0 -2
  1312. package/dist/renderers/slides/renderer/layouts/image-bullets.js +0 -26
  1313. package/dist/renderers/slides/renderer/layouts/image-bullets.js.map +0 -1
  1314. package/dist/renderers/slides/renderer/layouts/image-device-pair.d.ts +0 -2
  1315. package/dist/renderers/slides/renderer/layouts/image-device-pair.js +0 -34
  1316. package/dist/renderers/slides/renderer/layouts/image-device-pair.js.map +0 -1
  1317. package/dist/renderers/slides/renderer/layouts/image-full.d.ts +0 -2
  1318. package/dist/renderers/slides/renderer/layouts/image-full.js +0 -36
  1319. package/dist/renderers/slides/renderer/layouts/image-full.js.map +0 -1
  1320. package/dist/renderers/slides/renderer/layouts/image-grid-2x2.d.ts +0 -2
  1321. package/dist/renderers/slides/renderer/layouts/image-grid-2x2.js +0 -23
  1322. package/dist/renderers/slides/renderer/layouts/image-grid-2x2.js.map +0 -1
  1323. package/dist/renderers/slides/renderer/layouts/image-keywords.d.ts +0 -2
  1324. package/dist/renderers/slides/renderer/layouts/image-keywords.js +0 -31
  1325. package/dist/renderers/slides/renderer/layouts/image-keywords.js.map +0 -1
  1326. package/dist/renderers/slides/renderer/layouts/image-mobile-3up.d.ts +0 -2
  1327. package/dist/renderers/slides/renderer/layouts/image-mobile-3up.js +0 -22
  1328. package/dist/renderers/slides/renderer/layouts/image-mobile-3up.js.map +0 -1
  1329. package/dist/renderers/slides/renderer/layouts/image-mobile.d.ts +0 -2
  1330. package/dist/renderers/slides/renderer/layouts/image-mobile.js +0 -17
  1331. package/dist/renderers/slides/renderer/layouts/image-mobile.js.map +0 -1
  1332. package/dist/renderers/slides/renderer/layouts/image-split-right.d.ts +0 -2
  1333. package/dist/renderers/slides/renderer/layouts/image-split-right.js +0 -19
  1334. package/dist/renderers/slides/renderer/layouts/image-split-right.js.map +0 -1
  1335. package/dist/renderers/slides/renderer/layouts/image-split.d.ts +0 -2
  1336. package/dist/renderers/slides/renderer/layouts/image-split.js +0 -19
  1337. package/dist/renderers/slides/renderer/layouts/image-split.js.map +0 -1
  1338. package/dist/renderers/slides/renderer/layouts/introductions.d.ts +0 -2
  1339. package/dist/renderers/slides/renderer/layouts/introductions.js +0 -41
  1340. package/dist/renderers/slides/renderer/layouts/introductions.js.map +0 -1
  1341. package/dist/renderers/slides/renderer/layouts/moodboard.d.ts +0 -15
  1342. package/dist/renderers/slides/renderer/layouts/moodboard.js +0 -63
  1343. package/dist/renderers/slides/renderer/layouts/moodboard.js.map +0 -1
  1344. package/dist/renderers/slides/renderer/layouts/next-steps.d.ts +0 -2
  1345. package/dist/renderers/slides/renderer/layouts/next-steps.js +0 -13
  1346. package/dist/renderers/slides/renderer/layouts/next-steps.js.map +0 -1
  1347. package/dist/renderers/slides/renderer/layouts/pullquote.d.ts +0 -2
  1348. package/dist/renderers/slides/renderer/layouts/pullquote.js +0 -17
  1349. package/dist/renderers/slides/renderer/layouts/pullquote.js.map +0 -1
  1350. package/dist/renderers/slides/renderer/layouts/schedule.d.ts +0 -2
  1351. package/dist/renderers/slides/renderer/layouts/schedule.js +0 -58
  1352. package/dist/renderers/slides/renderer/layouts/schedule.js.map +0 -1
  1353. package/dist/renderers/slides/renderer/layouts/section.d.ts +0 -2
  1354. package/dist/renderers/slides/renderer/layouts/section.js +0 -18
  1355. package/dist/renderers/slides/renderer/layouts/section.js.map +0 -1
  1356. package/dist/renderers/slides/renderer/layouts/statement.d.ts +0 -2
  1357. package/dist/renderers/slides/renderer/layouts/statement.js +0 -13
  1358. package/dist/renderers/slides/renderer/layouts/statement.js.map +0 -1
  1359. package/dist/renderers/slides/renderer/layouts/stats.d.ts +0 -2
  1360. package/dist/renderers/slides/renderer/layouts/stats.js +0 -26
  1361. package/dist/renderers/slides/renderer/layouts/stats.js.map +0 -1
  1362. package/dist/renderers/slides/renderer/layouts/table.d.ts +0 -2
  1363. package/dist/renderers/slides/renderer/layouts/table.js +0 -23
  1364. package/dist/renderers/slides/renderer/layouts/table.js.map +0 -1
  1365. package/dist/renderers/slides/renderer/layouts/text-body.d.ts +0 -2
  1366. package/dist/renderers/slides/renderer/layouts/text-body.js +0 -14
  1367. package/dist/renderers/slides/renderer/layouts/text-body.js.map +0 -1
  1368. package/dist/renderers/slides/renderer/placeholder.d.ts +0 -5
  1369. package/dist/renderers/slides/renderer/placeholder.js +0 -12
  1370. package/dist/renderers/slides/renderer/placeholder.js.map +0 -1
  1371. package/dist/renderers/slides/routes/api.d.ts +0 -2
  1372. package/dist/renderers/slides/routes/api.js +0 -568
  1373. package/dist/renderers/slides/routes/api.js.map +0 -1
  1374. package/dist/renderers/slides/routes/editor.d.ts +0 -2
  1375. package/dist/renderers/slides/routes/editor.js +0 -32
  1376. package/dist/renderers/slides/routes/editor.js.map +0 -1
  1377. package/dist/renderers/slides/routes/viewer.d.ts +0 -2
  1378. package/dist/renderers/slides/routes/viewer.js +0 -67
  1379. package/dist/renderers/slides/routes/viewer.js.map +0 -1
  1380. package/dist/renderers/slides/types.d.ts +0 -111
  1381. package/dist/renderers/slides/types.js +0 -2
  1382. package/dist/renderers/slides/types.js.map +0 -1
  1383. package/dist/server/agents/agent-loader.d.ts +0 -16
  1384. package/dist/server/agents/agent-loader.js +0 -175
  1385. package/dist/server/agents/agent-loader.js.map +0 -1
  1386. package/dist/server/agents/agent-runner.d.ts +0 -33
  1387. package/dist/server/agents/agent-runner.js +0 -187
  1388. package/dist/server/agents/agent-runner.js.map +0 -1
  1389. package/dist/server/agents/agent-runtime.d.ts +0 -39
  1390. package/dist/server/agents/agent-runtime.js +0 -214
  1391. package/dist/server/agents/agent-runtime.js.map +0 -1
  1392. package/dist/server/agents/base-agent.d.ts +0 -30
  1393. package/dist/server/agents/base-agent.js +0 -88
  1394. package/dist/server/agents/base-agent.js.map +0 -1
  1395. package/dist/server/agents/executive-digest.d.ts +0 -16
  1396. package/dist/server/agents/executive-digest.js +0 -115
  1397. package/dist/server/agents/executive-digest.js.map +0 -1
  1398. package/dist/server/agents/graph-steward.d.ts +0 -16
  1399. package/dist/server/agents/graph-steward.js +0 -59
  1400. package/dist/server/agents/graph-steward.js.map +0 -1
  1401. package/dist/server/agents/meeting-followup.d.ts +0 -16
  1402. package/dist/server/agents/meeting-followup.js +0 -88
  1403. package/dist/server/agents/meeting-followup.js.map +0 -1
  1404. package/dist/server/agents/pipeline-monitor.d.ts +0 -15
  1405. package/dist/server/agents/pipeline-monitor.js +0 -86
  1406. package/dist/server/agents/pipeline-monitor.js.map +0 -1
  1407. package/dist/server/agents/types.d.ts +0 -81
  1408. package/dist/server/agents/types.js +0 -41
  1409. package/dist/server/agents/types.js.map +0 -1
  1410. package/dist/server/chrome/chrome.css +0 -701
  1411. package/dist/server/chrome/chrome.js +0 -374
  1412. package/dist/server/collab-authority.d.ts +0 -70
  1413. package/dist/server/collab-authority.js +0 -218
  1414. package/dist/server/collab-authority.js.map +0 -1
  1415. package/dist/server/collab.d.ts +0 -29
  1416. package/dist/server/collab.js +0 -195
  1417. package/dist/server/collab.js.map +0 -1
  1418. package/dist/server/commit-scheduler.d.ts +0 -39
  1419. package/dist/server/commit-scheduler.js +0 -113
  1420. package/dist/server/commit-scheduler.js.map +0 -1
  1421. package/dist/server/plugin-loader.d.ts +0 -53
  1422. package/dist/server/plugin-loader.js +0 -155
  1423. package/dist/server/plugin-loader.js.map +0 -1
  1424. package/dist/server/routes/agents-api.d.ts +0 -10
  1425. package/dist/server/routes/agents-api.js +0 -25
  1426. package/dist/server/routes/agents-api.js.map +0 -1
  1427. package/dist/server/routes/collab.d.ts +0 -6
  1428. package/dist/server/routes/collab.js +0 -10
  1429. package/dist/server/routes/collab.js.map +0 -1
  1430. package/dist/server/routes/features-api.d.ts +0 -10
  1431. package/dist/server/routes/features-api.js +0 -15
  1432. package/dist/server/routes/features-api.js.map +0 -1
  1433. package/dist/server/routes/git-api.d.ts +0 -9
  1434. package/dist/server/routes/git-api.js +0 -82
  1435. package/dist/server/routes/git-api.js.map +0 -1
  1436. package/dist/server/routes/meeting-ingest-api.d.ts +0 -14
  1437. package/dist/server/routes/meeting-ingest-api.js +0 -117
  1438. package/dist/server/routes/meeting-ingest-api.js.map +0 -1
  1439. package/dist/server/routes/messages-api.d.ts +0 -15
  1440. package/dist/server/routes/messages-api.js +0 -569
  1441. package/dist/server/routes/messages-api.js.map +0 -1
  1442. package/dist/server/routes/sync-api.d.ts +0 -26
  1443. package/dist/server/routes/sync-api.js +0 -848
  1444. package/dist/server/routes/sync-api.js.map +0 -1
  1445. package/dist/server/routes/view-public.d.ts +0 -10
  1446. package/dist/server/routes/view-public.js +0 -107
  1447. package/dist/server/routes/view-public.js.map +0 -1
  1448. package/dist/server/routes/webhook.d.ts +0 -14
  1449. package/dist/server/routes/webhook.js +0 -102
  1450. package/dist/server/routes/webhook.js.map +0 -1
  1451. package/dist/services/batch-processor.d.ts +0 -49
  1452. package/dist/services/batch-processor.js +0 -166
  1453. package/dist/services/batch-processor.js.map +0 -1
  1454. package/dist/services/briefing.d.ts +0 -26
  1455. package/dist/services/briefing.js +0 -206
  1456. package/dist/services/briefing.js.map +0 -1
  1457. package/dist/services/github-provisioner.d.ts +0 -36
  1458. package/dist/services/github-provisioner.js +0 -126
  1459. package/dist/services/github-provisioner.js.map +0 -1
  1460. package/dist/services/github-service.d.ts +0 -99
  1461. package/dist/services/github-service.js +0 -310
  1462. package/dist/services/github-service.js.map +0 -1
  1463. package/dist/services/heartbeat.d.ts +0 -35
  1464. package/dist/services/heartbeat.js +0 -236
  1465. package/dist/services/heartbeat.js.map +0 -1
  1466. package/dist/services/image-import-service.d.ts +0 -24
  1467. package/dist/services/image-import-service.js +0 -108
  1468. package/dist/services/image-import-service.js.map +0 -1
  1469. package/dist/services/insights.d.ts +0 -38
  1470. package/dist/services/insights.js +0 -269
  1471. package/dist/services/insights.js.map +0 -1
  1472. package/dist/services/meeting-processor.d.ts +0 -97
  1473. package/dist/services/meeting-processor.js +0 -382
  1474. package/dist/services/meeting-processor.js.map +0 -1
  1475. package/dist/services/message-service.d.ts +0 -117
  1476. package/dist/services/message-service.js +0 -414
  1477. package/dist/services/message-service.js.map +0 -1
  1478. package/dist/services/sync/collection-sync.d.ts +0 -60
  1479. package/dist/services/sync/collection-sync.js +0 -509
  1480. package/dist/services/sync/collection-sync.js.map +0 -1
  1481. package/dist/services/sync/commit.d.ts +0 -60
  1482. package/dist/services/sync/commit.js +0 -354
  1483. package/dist/services/sync/commit.js.map +0 -1
  1484. package/dist/services/sync/context-index.d.ts +0 -69
  1485. package/dist/services/sync/context-index.js +0 -280
  1486. package/dist/services/sync/context-index.js.map +0 -1
  1487. package/dist/services/sync/data-fetcher.d.ts +0 -31
  1488. package/dist/services/sync/data-fetcher.js +0 -12
  1489. package/dist/services/sync/data-fetcher.js.map +0 -1
  1490. package/dist/services/sync/derive.d.ts +0 -34
  1491. package/dist/services/sync/derive.js +0 -164
  1492. package/dist/services/sync/derive.js.map +0 -1
  1493. package/dist/services/sync/enrichment-state.d.ts +0 -31
  1494. package/dist/services/sync/enrichment-state.js +0 -63
  1495. package/dist/services/sync/enrichment-state.js.map +0 -1
  1496. package/dist/services/sync/enrichment.d.ts +0 -25
  1497. package/dist/services/sync/enrichment.js +0 -121
  1498. package/dist/services/sync/enrichment.js.map +0 -1
  1499. package/dist/services/sync/entity-refresh.d.ts +0 -30
  1500. package/dist/services/sync/entity-refresh.js +0 -275
  1501. package/dist/services/sync/entity-refresh.js.map +0 -1
  1502. package/dist/services/sync/frontmatter-extractor.d.ts +0 -40
  1503. package/dist/services/sync/frontmatter-extractor.js +0 -279
  1504. package/dist/services/sync/frontmatter-extractor.js.map +0 -1
  1505. package/dist/services/sync/graph-match-state.d.ts +0 -33
  1506. package/dist/services/sync/graph-match-state.js +0 -61
  1507. package/dist/services/sync/graph-match-state.js.map +0 -1
  1508. package/dist/services/sync/graph-match.d.ts +0 -53
  1509. package/dist/services/sync/graph-match.js +0 -316
  1510. package/dist/services/sync/graph-match.js.map +0 -1
  1511. package/dist/services/sync/graphrag-client.d.ts +0 -43
  1512. package/dist/services/sync/graphrag-client.js +0 -94
  1513. package/dist/services/sync/graphrag-client.js.map +0 -1
  1514. package/dist/services/sync/graphrag-config.d.ts +0 -16
  1515. package/dist/services/sync/graphrag-config.js +0 -39
  1516. package/dist/services/sync/graphrag-config.js.map +0 -1
  1517. package/dist/services/sync/graphrag-context.d.ts +0 -14
  1518. package/dist/services/sync/graphrag-context.js +0 -109
  1519. package/dist/services/sync/graphrag-context.js.map +0 -1
  1520. package/dist/services/sync/graphrag-indexer.d.ts +0 -30
  1521. package/dist/services/sync/graphrag-indexer.js +0 -358
  1522. package/dist/services/sync/graphrag-indexer.js.map +0 -1
  1523. package/dist/services/sync/llm.d.ts +0 -32
  1524. package/dist/services/sync/llm.js +0 -115
  1525. package/dist/services/sync/llm.js.map +0 -1
  1526. package/dist/services/sync/mcp-client.d.ts +0 -71
  1527. package/dist/services/sync/mcp-client.js +0 -299
  1528. package/dist/services/sync/mcp-client.js.map +0 -1
  1529. package/dist/services/sync/model-factory.d.ts +0 -13
  1530. package/dist/services/sync/model-factory.js +0 -38
  1531. package/dist/services/sync/model-factory.js.map +0 -1
  1532. package/dist/services/sync/name-quality.d.ts +0 -31
  1533. package/dist/services/sync/name-quality.js +0 -60
  1534. package/dist/services/sync/name-quality.js.map +0 -1
  1535. package/dist/services/sync/output-schemas.d.ts +0 -92
  1536. package/dist/services/sync/output-schemas.js +0 -43
  1537. package/dist/services/sync/output-schemas.js.map +0 -1
  1538. package/dist/services/sync/prompts.d.ts +0 -19
  1539. package/dist/services/sync/prompts.js +0 -128
  1540. package/dist/services/sync/prompts.js.map +0 -1
  1541. package/dist/services/sync/reconciler.d.ts +0 -48
  1542. package/dist/services/sync/reconciler.js +0 -294
  1543. package/dist/services/sync/reconciler.js.map +0 -1
  1544. package/dist/services/sync/rest-client.d.ts +0 -40
  1545. package/dist/services/sync/rest-client.js +0 -100
  1546. package/dist/services/sync/rest-client.js.map +0 -1
  1547. package/dist/services/sync/source-config.d.ts +0 -67
  1548. package/dist/services/sync/source-config.js +0 -304
  1549. package/dist/services/sync/source-config.js.map +0 -1
  1550. package/dist/services/sync/source-definitions/asana.d.ts +0 -14
  1551. package/dist/services/sync/source-definitions/asana.js +0 -42
  1552. package/dist/services/sync/source-definitions/asana.js.map +0 -1
  1553. package/dist/services/sync/source-definitions/definitions.d.ts +0 -8
  1554. package/dist/services/sync/source-definitions/definitions.js +0 -8
  1555. package/dist/services/sync/source-definitions/definitions.js.map +0 -1
  1556. package/dist/services/sync/source-definitions/gdrive.d.ts +0 -16
  1557. package/dist/services/sync/source-definitions/gdrive.js +0 -68
  1558. package/dist/services/sync/source-definitions/gdrive.js.map +0 -1
  1559. package/dist/services/sync/source-definitions/granola.d.ts +0 -2
  1560. package/dist/services/sync/source-definitions/granola.js +0 -21
  1561. package/dist/services/sync/source-definitions/granola.js.map +0 -1
  1562. package/dist/services/sync/source-definitions/linear.d.ts +0 -2
  1563. package/dist/services/sync/source-definitions/linear.js +0 -62
  1564. package/dist/services/sync/source-definitions/linear.js.map +0 -1
  1565. package/dist/services/sync/source-definitions/obsidian.d.ts +0 -2
  1566. package/dist/services/sync/source-definitions/obsidian.js +0 -55
  1567. package/dist/services/sync/source-definitions/obsidian.js.map +0 -1
  1568. package/dist/services/sync/source-definitions/pipedrive.d.ts +0 -2
  1569. package/dist/services/sync/source-definitions/pipedrive.js +0 -43
  1570. package/dist/services/sync/source-definitions/pipedrive.js.map +0 -1
  1571. package/dist/services/sync/staging.d.ts +0 -53
  1572. package/dist/services/sync/staging.js +0 -130
  1573. package/dist/services/sync/staging.js.map +0 -1
  1574. package/dist/services/sync/structured-extractor.d.ts +0 -57
  1575. package/dist/services/sync/structured-extractor.js +0 -584
  1576. package/dist/services/sync/structured-extractor.js.map +0 -1
  1577. package/dist/services/sync/sync-runner.d.ts +0 -32
  1578. package/dist/services/sync/sync-runner.js +0 -195
  1579. package/dist/services/sync/sync-runner.js.map +0 -1
  1580. package/dist/services/sync/sync-state.d.ts +0 -43
  1581. package/dist/services/sync/sync-state.js +0 -154
  1582. package/dist/services/sync/sync-state.js.map +0 -1
  1583. package/dist/services/sync/types.d.ts +0 -381
  1584. package/dist/services/sync/types.js +0 -8
  1585. package/dist/services/sync/types.js.map +0 -1
  1586. package/dist/services/sync/unstructured-extractor.d.ts +0 -27
  1587. package/dist/services/sync/unstructured-extractor.js +0 -185
  1588. package/dist/services/sync/unstructured-extractor.js.map +0 -1
  1589. package/dist/utils/merge-resolver.d.ts +0 -59
  1590. package/dist/utils/merge-resolver.js +0 -303
  1591. package/dist/utils/merge-resolver.js.map +0 -1
  1592. package/dist/utils/workspace-config.d.ts +0 -8
  1593. package/dist/utils/workspace-config.js +0 -22
  1594. package/dist/utils/workspace-config.js.map +0 -1
  1595. package/dist/web/_app/immutable/assets/0.B3eM5J6m.css +0 -1
  1596. package/dist/web/_app/immutable/assets/10.2jzI3cZY.css +0 -1
  1597. package/dist/web/_app/immutable/assets/11.Cb9eS4rw.css +0 -1
  1598. package/dist/web/_app/immutable/assets/12.DSXdDCt2.css +0 -1
  1599. package/dist/web/_app/immutable/assets/2.DrPprHoK.css +0 -1
  1600. package/dist/web/_app/immutable/assets/3.Ih7su2rl.css +0 -1
  1601. package/dist/web/_app/immutable/assets/4.CwXIQz3p.css +0 -1
  1602. package/dist/web/_app/immutable/assets/ChevronLeft.BwM9mwS4.css +0 -1
  1603. package/dist/web/_app/immutable/assets/GraphView.CRV5cekT.css +0 -1
  1604. package/dist/web/_app/immutable/assets/Toaster.rN8r_Hzv.css +0 -1
  1605. package/dist/web/_app/immutable/assets/ViewToolbar.CsWTe0yn.css +0 -1
  1606. package/dist/web/_app/immutable/assets/WorkspaceView.iWtzksrr.css +0 -1
  1607. package/dist/web/_app/immutable/chunks/0kuZ2gtb.js +0 -1
  1608. package/dist/web/_app/immutable/chunks/1Ea1UXwM.js +0 -2
  1609. package/dist/web/_app/immutable/chunks/284Zhbif.js +0 -1
  1610. package/dist/web/_app/immutable/chunks/7S2LGqoP.js +0 -2
  1611. package/dist/web/_app/immutable/chunks/B0qHb2ee.js +0 -1
  1612. package/dist/web/_app/immutable/chunks/B2_KIZWs.js +0 -1
  1613. package/dist/web/_app/immutable/chunks/B45od9dM.js +0 -2
  1614. package/dist/web/_app/immutable/chunks/B93Il9VC.js +0 -1
  1615. package/dist/web/_app/immutable/chunks/BB_5th5W.js +0 -3383
  1616. package/dist/web/_app/immutable/chunks/BDvg8O5k.js +0 -5
  1617. package/dist/web/_app/immutable/chunks/BHb8xKxs.js +0 -1
  1618. package/dist/web/_app/immutable/chunks/BHgT2Ede.js +0 -1
  1619. package/dist/web/_app/immutable/chunks/BQ1nK9ru.js +0 -1
  1620. package/dist/web/_app/immutable/chunks/BbFPiyww.js +0 -1
  1621. package/dist/web/_app/immutable/chunks/BkxW0BJZ.js +0 -1
  1622. package/dist/web/_app/immutable/chunks/Bp7FKkGt.js +0 -1
  1623. package/dist/web/_app/immutable/chunks/BrebtJNG.js +0 -18
  1624. package/dist/web/_app/immutable/chunks/BtoubqOl.js +0 -1
  1625. package/dist/web/_app/immutable/chunks/Bz0ZjVQE.js +0 -2
  1626. package/dist/web/_app/immutable/chunks/C0LVZhvn.js +0 -1
  1627. package/dist/web/_app/immutable/chunks/C0Zx4tMe.js +0 -1
  1628. package/dist/web/_app/immutable/chunks/CIlFznwy.js +0 -2
  1629. package/dist/web/_app/immutable/chunks/CSVbGg_b.js +0 -5
  1630. package/dist/web/_app/immutable/chunks/CUo0CDSW.js +0 -2
  1631. package/dist/web/_app/immutable/chunks/CX_61fY8.js +0 -5
  1632. package/dist/web/_app/immutable/chunks/CYrVHOHA.js +0 -1
  1633. package/dist/web/_app/immutable/chunks/CdIKiXW6.js +0 -1
  1634. package/dist/web/_app/immutable/chunks/CqT1x-Gw.js +0 -1
  1635. package/dist/web/_app/immutable/chunks/CqkleIqs.js +0 -1
  1636. package/dist/web/_app/immutable/chunks/CtbsDVo3.js +0 -1
  1637. package/dist/web/_app/immutable/chunks/CvEgdftB.js +0 -1
  1638. package/dist/web/_app/immutable/chunks/D14M5KlG.js +0 -1
  1639. package/dist/web/_app/immutable/chunks/D71c9o7J.js +0 -2
  1640. package/dist/web/_app/immutable/chunks/DFYOFE3o.js +0 -1
  1641. package/dist/web/_app/immutable/chunks/DHJAqtPb.js +0 -1
  1642. package/dist/web/_app/immutable/chunks/DHms3TGS.js +0 -2
  1643. package/dist/web/_app/immutable/chunks/DOqcDZIJ.js +0 -1
  1644. package/dist/web/_app/immutable/chunks/DUfIcKIt.js +0 -1
  1645. package/dist/web/_app/immutable/chunks/DZHWps9n.js +0 -1
  1646. package/dist/web/_app/immutable/chunks/DjLrjK2H.js +0 -1
  1647. package/dist/web/_app/immutable/chunks/DjvJRtva.js +0 -1
  1648. package/dist/web/_app/immutable/chunks/DnL9f0lc.js +0 -7
  1649. package/dist/web/_app/immutable/chunks/DsnmJJEf.js +0 -1
  1650. package/dist/web/_app/immutable/chunks/DtG1tx2A.js +0 -1
  1651. package/dist/web/_app/immutable/chunks/Dxmmz-Kc.js +0 -1
  1652. package/dist/web/_app/immutable/chunks/Dzm0X5CJ.js +0 -1
  1653. package/dist/web/_app/immutable/chunks/Ee5s0qSS.js +0 -5
  1654. package/dist/web/_app/immutable/chunks/KlRV1tKP.js +0 -1
  1655. package/dist/web/_app/immutable/chunks/L7dfS1-w.js +0 -1
  1656. package/dist/web/_app/immutable/chunks/PPVm8Dsz.js +0 -1
  1657. package/dist/web/_app/immutable/chunks/WSUKABI_.js +0 -1
  1658. package/dist/web/_app/immutable/chunks/lzCjGQTf.js +0 -4
  1659. package/dist/web/_app/immutable/chunks/qE6Hm01v.js +0 -1
  1660. package/dist/web/_app/immutable/chunks/vxEtkL8z.js +0 -1
  1661. package/dist/web/_app/immutable/chunks/wDIGUaoU.js +0 -3
  1662. package/dist/web/_app/immutable/chunks/wZWzupWT.js +0 -1
  1663. package/dist/web/_app/immutable/entry/app.CzJR64ww.js +0 -2
  1664. package/dist/web/_app/immutable/entry/start.DZVHSAiD.js +0 -1
  1665. package/dist/web/_app/immutable/nodes/0.BxI98Rw5.js +0 -2
  1666. package/dist/web/_app/immutable/nodes/1.BKnk3c99.js +0 -1
  1667. package/dist/web/_app/immutable/nodes/10.CaRwejbK.js +0 -1
  1668. package/dist/web/_app/immutable/nodes/11.B2Euwc9a.js +0 -1
  1669. package/dist/web/_app/immutable/nodes/12.CGKYzHxA.js +0 -1
  1670. package/dist/web/_app/immutable/nodes/2.CYXLieW2.js +0 -269
  1671. package/dist/web/_app/immutable/nodes/3.C84fxKvm.js +0 -5
  1672. package/dist/web/_app/immutable/nodes/4.ChSsp8k0.js +0 -11
  1673. package/dist/web/_app/immutable/nodes/5.CvaaNMAf.js +0 -1
  1674. package/dist/web/_app/immutable/nodes/6.D6IvoFSs.js +0 -1
  1675. package/dist/web/_app/immutable/nodes/7.Byu1_fh1.js +0 -1
  1676. package/dist/web/_app/immutable/nodes/8.CxwYH2kI.js +0 -1
  1677. package/dist/web/_app/immutable/nodes/9.dAR1N8tA.js +0 -1
@@ -1,8 +1,18 @@
1
1
  /**
2
2
  * Base types and interfaces for asset management
3
3
  */
4
+ import { assetUploadExtensions } from '../../core/format-registry.js';
4
5
  /**
5
- * Content type mappings
6
+ * Content type mappings.
7
+ *
8
+ * TODO(import-refactor): this map + `detectAssetKind` are a second source of
9
+ * truth for per-extension MIME / kind alongside the format registry
10
+ * (`src/core/format-registry.ts`, which owns `mimeTypes`). Folding them into
11
+ * the registry is deferred because it would change observable behavior the
12
+ * P0 parity refactor must preserve (e.g. svg's asset_kind `other`→`image`,
13
+ * tsv's Content-Type `octet-stream`→`text/tab-separated-values`). Until that
14
+ * unification lands, `format-registry.test.ts` guards the two against drift
15
+ * on every shared extension.
6
16
  */
7
17
  export const CONTENT_TYPES = {
8
18
  // Images
@@ -35,6 +45,11 @@ export const CONTENT_TYPES = {
35
45
  zip: 'application/zip',
36
46
  tar: 'application/x-tar',
37
47
  gz: 'application/gzip',
48
+ // Fonts
49
+ woff: 'font/woff',
50
+ woff2: 'font/woff2',
51
+ ttf: 'font/ttf',
52
+ otf: 'font/otf',
38
53
  // Design files
39
54
  fig: 'application/octet-stream',
40
55
  sketch: 'application/octet-stream',
@@ -52,15 +67,98 @@ export function detectContentType(filename) {
52
67
  return CONTENT_TYPES[ext] || 'application/octet-stream';
53
68
  }
54
69
  /**
55
- * Determine media type from content type
70
+ * Map a filename to the high-level `asset_kind` written into the asset
71
+ * entity's frontmatter. Drives icon and viewer selection; coarser than
72
+ * MIME so the UI doesn't need to enumerate every format. The kind set
73
+ * is canonical in `ASSET_KINDS` in src/core/validation.ts.
56
74
  */
57
- export function getMediaType(contentType) {
75
+ export function detectAssetKind(filename) {
76
+ const ext = filename.split('.').pop()?.toLowerCase() || '';
77
+ if (IMAGE_EXTS.has(ext))
78
+ return 'image';
79
+ if (VIDEO_EXTS.has(ext))
80
+ return 'video';
81
+ if (AUDIO_EXTS.has(ext))
82
+ return 'audio';
83
+ if (ext === 'pdf')
84
+ return 'pdf';
85
+ if (SPREADSHEET_EXTS.has(ext))
86
+ return 'spreadsheet';
87
+ return 'other';
88
+ }
89
+ // SVG is intentionally excluded — see docs/asset-architecture.md §security.
90
+ // Stored XSS risk: SVG can contain <script> and the GET /api/assets/* route
91
+ // serves files inline with `Content-Type: image/svg+xml`, which executes in
92
+ // the app origin. Users who need vector assets can paste source into a note
93
+ // or embed via the editor's per-entity attach (which also blocks SVG).
94
+ const IMAGE_EXTS = new Set(['jpg', 'jpeg', 'png', 'gif', 'webp', 'avif', 'heic']);
95
+ const VIDEO_EXTS = new Set(['mp4', 'mov', 'webm', 'avi', 'mkv', 'm4v']);
96
+ const AUDIO_EXTS = new Set(['mp3', 'wav', 'm4a', 'ogg', 'flac', 'aac']);
97
+ const SPREADSHEET_EXTS = new Set(['csv', 'xlsx', 'xls', 'numbers', 'tsv']);
98
+ // Other formerly-categorized extensions (indd, sketch, psd, ai, fig, doc/docx,
99
+ // pptx, key, pages, zip, tar, etc.) all fall to `other` for asset_kind. The
100
+ // product has no preview / extract support for them today, so the previous
101
+ // fine-grained kinds were noise. The set of opaque extensions the upload
102
+ // route ACCEPTS now lives in the format registry (see ASSET_UPLOAD_EXTENSIONS
103
+ // below); detectAssetKind only needs the families it classifies distinctly.
104
+ /**
105
+ * Extension set the asset upload route accepts (bare, no leading dot).
106
+ *
107
+ * The format registry (`src/core/format-registry.ts`) is the single source
108
+ * of truth for this set — it owns the canonical disposition of every format.
109
+ * This re-export keeps `isAssetUploadExtension` and the (untouched) agent
110
+ * `import_file` tool working against the same data, with no parallel list to
111
+ * drift. The registry's `assetUploadExtensions()` reproduces the historical
112
+ * membership exactly (including `.csv`, which the agent tool stores as an
113
+ * opaque asset even though the web path writes it as a dataset).
114
+ */
115
+ export const ASSET_UPLOAD_EXTENSIONS = assetUploadExtensions();
116
+ export function isAssetUploadExtension(filename) {
117
+ const ext = filename.split('.').pop()?.toLowerCase() || '';
118
+ return ASSET_UPLOAD_EXTENSIONS.has(ext);
119
+ }
120
+ /**
121
+ * Whether an asset row should be vision-captioned for search: a raster IMAGE
122
+ * that is not SVG (SVG stays transitional until sanitize-html is wired). The
123
+ * single predicate the live caption trigger
124
+ * (`VectorService.ensureInitialAssetIndexState`) and the boot/recovery sweep
125
+ * (`asset-index-sweep.ts`) share, so they can't drift on which assets get
126
+ * captioned.
127
+ */
128
+ export function isCaptionableImage(mediaType, filename) {
129
+ if (mediaType !== 'image')
130
+ return false;
131
+ const ext = filename.split('.').pop()?.toLowerCase() || '';
132
+ return ext !== 'svg';
133
+ }
134
+ // Extension fallbacks for getMediaType — families whose files commonly arrive
135
+ // as application/octet-stream (design tools, iWork, legacy font uploads), so
136
+ // MIME alone can't classify them. Membership follows the upload registry's
137
+ // accepted set (assetUploadExtensions); json/xml/txt/md cover legacy and
138
+ // agent-imported rows even though the web upload route doesn't accept them.
139
+ const DESIGN_MEDIA_EXTS = new Set(['ai', 'fig', 'idml', 'indd', 'psd', 'sketch', 'xd']);
140
+ const ARCHIVE_MEDIA_EXTS = new Set(['zip', 'tar', 'gz', 'tgz', '7z', 'rar']);
141
+ const IWORK_MEDIA_EXTS = new Set(['key', 'pages', 'numbers']);
142
+ const FONT_MEDIA_EXTS = new Set(['woff', 'woff2', 'ttf', 'otf']);
143
+ const DATA_MEDIA_EXTS = new Set(['json', 'xml', 'csv', 'tsv', 'yaml', 'yml']);
144
+ const TEXT_MEDIA_EXTS = new Set(['txt', 'md', 'rtf']);
145
+ /**
146
+ * Determine media type (the user-facing Library category) from content type,
147
+ * with an extension fallback for octet-stream families. The category is
148
+ * DERIVED at read time wherever it reaches the UI (asset-listing re-computes
149
+ * it from contentType + filename), so refining these rules re-categorizes
150
+ * existing assets with no migration; the stored assets.db `media_type`
151
+ * column remains for internal queries (e.g. the caption sweep's image check).
152
+ */
153
+ export function getMediaType(contentType, filename) {
58
154
  if (contentType.startsWith('image/'))
59
155
  return 'image';
60
156
  if (contentType.startsWith('video/'))
61
157
  return 'video';
62
158
  if (contentType.startsWith('audio/'))
63
159
  return 'audio';
160
+ if (contentType.startsWith('font/') || contentType.includes('font'))
161
+ return 'font';
64
162
  if (contentType.includes('pdf') ||
65
163
  contentType.includes('document') ||
66
164
  contentType.includes('word') ||
@@ -69,8 +167,55 @@ export function getMediaType(contentType) {
69
167
  contentType.includes('presentation')) {
70
168
  return 'document';
71
169
  }
170
+ if (contentType.includes('zip') ||
171
+ contentType.includes('tar') ||
172
+ contentType.includes('gzip') ||
173
+ contentType.includes('7z') ||
174
+ contentType.includes('rar') ||
175
+ contentType.includes('compressed')) {
176
+ return 'archive';
177
+ }
178
+ // Structured/data text before the text/* catch-all so text/csv lands in
179
+ // data, not text.
180
+ if (contentType.includes('json') ||
181
+ contentType.includes('xml') ||
182
+ contentType.includes('csv') ||
183
+ contentType.includes('tab-separated') ||
184
+ contentType.includes('yaml')) {
185
+ return 'data';
186
+ }
187
+ if (contentType.startsWith('text/'))
188
+ return 'text';
189
+ const ext = filename?.split('.').pop()?.toLowerCase() ?? '';
190
+ if (DESIGN_MEDIA_EXTS.has(ext))
191
+ return 'design';
192
+ if (ARCHIVE_MEDIA_EXTS.has(ext))
193
+ return 'archive';
194
+ if (IWORK_MEDIA_EXTS.has(ext))
195
+ return 'document';
196
+ if (FONT_MEDIA_EXTS.has(ext))
197
+ return 'font';
198
+ if (DATA_MEDIA_EXTS.has(ext))
199
+ return 'data';
200
+ if (TEXT_MEDIA_EXTS.has(ext))
201
+ return 'text';
72
202
  return 'other';
73
203
  }
204
+ /**
205
+ * Sanitize a filename for use as a storage key segment.
206
+ *
207
+ * Replaces every character that's not `[a-zA-Z0-9._-]` with `_`. Preserves
208
+ * the extension via the `.` allowlist; preserves common separators (`_` and
209
+ * `-`) so display titles derived from the slug stay readable.
210
+ *
211
+ * NOT a security boundary — `validateFilename()` above is the gate that
212
+ * throws on traversal / hidden / forbidden chars / length. `safeFilename`
213
+ * is the post-validation key builder. Promoted from
214
+ * `asset-sidecar-service.ts` so the MCP presign flow can share it.
215
+ */
216
+ export function safeFilename(name) {
217
+ return name.replace(/[^a-zA-Z0-9._-]/g, '_');
218
+ }
74
219
  /**
75
220
  * Validate filename for security
76
221
  */
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/services/assets/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/services/assets/base.ts"],"names":[],"mappings":"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"}
@@ -5,10 +5,94 @@
5
5
  * with pluggable storage backends (local filesystem or R2)
6
6
  */
7
7
  import type { AssetInfo, AssetRecord, AssetConfig } from './base.js';
8
+ import { encodeAssetFilename } from '../../core/artifact-asset-urls.js';
8
9
  export * from './base.js';
10
+ /**
11
+ * Result of `graph.uploadAsset`. Extends AssetInfo with the canonical public
12
+ * URL the caller should embed/store (`publicUrl`) and, on the immutable-key
13
+ * path, the generated `assetId`. Centralizing the URL here keeps callers from
14
+ * re-deriving `/api/assets/...` (and getting the scheme wrong).
15
+ */
16
+ export interface AssetUploadResult extends AssetInfo {
17
+ assetId?: string;
18
+ publicUrl: string;
19
+ }
9
20
  export declare class AssetService {
10
21
  private backend;
22
+ private storage;
11
23
  constructor(config: AssetConfig);
24
+ /** Which backend this service is bound to. Routes that need different
25
+ * serving strategies per backend (e.g. stream local files vs. 302 to
26
+ * pre-signed URL for R2) branch on this. */
27
+ getStorage(): 'local' | 'r2';
28
+ /** Whether the backend can mint short-lived pre-signed download URLs.
29
+ * True for R2; false for local (where the HTTP server streams files
30
+ * directly). */
31
+ supportsSignedUrls(): boolean;
32
+ /** Whether the backend supports the full pre-signed PUT + HEAD + copy
33
+ * lifecycle needed for the MCP presign flow. Tied to all three because a
34
+ * backend that signs PUT but can't HEAD-verify the upload would break
35
+ * the finalize contract. R2 supports all three; local supports none. */
36
+ supportsPresignedUploads(): boolean;
37
+ /** Generate a short-lived pre-signed download URL for an asset.
38
+ * Throws if the backend doesn't support pre-signed URLs (local).
39
+ * Default expiry is 4 hours (14400s) — see R2AssetBackend.getSignedUrl
40
+ * for the rationale. `method` selects the HTTP verb the URL is signed
41
+ * against — HEAD requests (link unfurls, OpenGraph) need a HEAD-signed
42
+ * URL because pre-signed URLs are method-bound. */
43
+ getSignedUrl(entityType: string, entityId: string, filename: string, keyPrefix?: string, expiresIn?: number, method?: 'GET' | 'HEAD'): Promise<string>;
44
+ /** Reject key segments that could escape the prefix. */
45
+ private assertSafeSegment;
46
+ /** Upload bytes under an immutable assetId key. Caller records the index row. */
47
+ uploadByAssetId(assetId: string, filename: string, buffer: Buffer): Promise<AssetInfo>;
48
+ getSignedUrlByAssetId(assetId: string, filename: string, expiresIn?: number, method?: 'GET' | 'HEAD'): Promise<string>;
49
+ deleteByAssetId(assetId: string, filename: string): Promise<void>;
50
+ existsByAssetId(assetId: string, filename: string): Promise<boolean>;
51
+ private pendingKey;
52
+ private canonicalKey;
53
+ signPendingPutUrl(assetId: string, filename: string, contentType: string, expiresIn?: number): Promise<{
54
+ uploadUrl: string;
55
+ headers: Record<string, string>;
56
+ }>;
57
+ /** HEAD the pending blob. Returns null when the agent never PUT (or the
58
+ * TTL already expired). */
59
+ headPending(assetId: string, filename: string): Promise<{
60
+ contentType: string;
61
+ size: number;
62
+ } | null>;
63
+ /** Server-side copy pending → canonical (R2's CopyObject — no download). */
64
+ copyPendingToCanonical(assetId: string, filename: string): Promise<void>;
65
+ deletePending(assetId: string, filename: string): Promise<void>;
66
+ /** Bucket lifecycle rules summary for the MCP presign flow's boot-time
67
+ * backstop. Returns `null` when the backend has no lifecycle support
68
+ * (local) or when the bucket has no rules configured at all. Throws on
69
+ * permission / network errors so the caller can decide whether to
70
+ * degrade or propagate. */
71
+ getBucketLifecycle(): Promise<Array<{
72
+ prefix: string | undefined;
73
+ expirationDays: number | undefined;
74
+ enabled: boolean;
75
+ }> | null>;
76
+ /** Download an object's bytes by raw key. Validates every path segment —
77
+ * the key is derived from a stored `asset_url`, so a `..` segment must
78
+ * never reach the backend's path join (arbitrary-file read). */
79
+ download(key: string): Promise<Buffer>;
80
+ /** Upload an object's bytes by raw key (non-catalog keyspaces — e.g. the chat
81
+ * conversation-scratch images, alongside the existing `pending` keyspace).
82
+ * Validates every path segment. Does NOT create an asset-index row. */
83
+ uploadByKey(key: string, buffer: Buffer, contentType: string): Promise<AssetInfo>;
84
+ /** Delete an object's bytes by raw key (non-catalog keyspaces). Validates
85
+ * every path segment. No-op-safe at the backend level. */
86
+ deleteByKey(key: string): Promise<void>;
87
+ /** Pre-signed download URL for a raw key (R2 only; local throws). Validates
88
+ * every path segment. Used to 302-redirect non-catalog objects (scratch
89
+ * images) the same way catalog assets are served. */
90
+ getSignedUrlForKey(key: string, method?: 'GET' | 'HEAD', expiresIn?: number): Promise<string>;
91
+ /** Server-side copy between raw keys (migration + transfer-copy). Validates
92
+ * every path segment of both keys — the migration derives srcKey from
93
+ * user-editable body URLs, so a `..` in a key segment must never reach the
94
+ * backend's path join (arbitrary-file read/write). */
95
+ copy(srcKey: string, destKey: string): Promise<void>;
12
96
  /**
13
97
  * Upload asset for an entity
14
98
  */
@@ -39,3 +123,9 @@ export declare class AssetService {
39
123
  */
40
124
  getInfo(entityType: string, entityId: string, filename: string, keyPrefix?: string): Promise<AssetInfo | null>;
41
125
  }
126
+ /**
127
+ * Immutable-key public URL: `/api/assets/{assetId}/{filename}`. The only asset
128
+ * URL form the app emits now that the legacy 3-segment scheme is retired.
129
+ */
130
+ export declare function publicUrlForAssetId(assetId: string, filename: string): string;
131
+ export { encodeAssetFilename };
@@ -7,25 +7,215 @@
7
7
  import { validateFilename, detectContentType, buildAssetKey, buildAssetPrefix, } from './base.js';
8
8
  import { LocalAssetBackend } from './local.js';
9
9
  import { R2AssetBackend } from './r2.js';
10
+ import { encodeAssetFilename } from '../../core/artifact-asset-urls.js';
10
11
  export * from './base.js';
11
12
  export class AssetService {
12
13
  backend;
14
+ storage;
13
15
  constructor(config) {
14
16
  // Initialize appropriate backend
15
17
  if (config.storage === 'local') {
16
18
  const localPath = config.localPath || '.studiograph/assets';
17
19
  this.backend = new LocalAssetBackend(localPath);
20
+ this.storage = 'local';
18
21
  }
19
22
  else if (config.storage === 'r2') {
20
23
  if (!config.r2Config) {
21
24
  throw new Error('R2 config is required when storage is set to r2');
22
25
  }
23
26
  this.backend = new R2AssetBackend(config.r2Config);
27
+ this.storage = 'r2';
24
28
  }
25
29
  else {
26
30
  throw new Error(`Unknown storage backend: ${config.storage}`);
27
31
  }
28
32
  }
33
+ /** Which backend this service is bound to. Routes that need different
34
+ * serving strategies per backend (e.g. stream local files vs. 302 to
35
+ * pre-signed URL for R2) branch on this. */
36
+ getStorage() {
37
+ return this.storage;
38
+ }
39
+ /** Whether the backend can mint short-lived pre-signed download URLs.
40
+ * True for R2; false for local (where the HTTP server streams files
41
+ * directly). */
42
+ supportsSignedUrls() {
43
+ return typeof this.backend.getSignedUrl === 'function';
44
+ }
45
+ /** Whether the backend supports the full pre-signed PUT + HEAD + copy
46
+ * lifecycle needed for the MCP presign flow. Tied to all three because a
47
+ * backend that signs PUT but can't HEAD-verify the upload would break
48
+ * the finalize contract. R2 supports all three; local supports none. */
49
+ supportsPresignedUploads() {
50
+ return (typeof this.backend.getSignedPutUrl === 'function' &&
51
+ typeof this.backend.head === 'function' &&
52
+ typeof this.backend.copy === 'function');
53
+ }
54
+ /** Generate a short-lived pre-signed download URL for an asset.
55
+ * Throws if the backend doesn't support pre-signed URLs (local).
56
+ * Default expiry is 4 hours (14400s) — see R2AssetBackend.getSignedUrl
57
+ * for the rationale. `method` selects the HTTP verb the URL is signed
58
+ * against — HEAD requests (link unfurls, OpenGraph) need a HEAD-signed
59
+ * URL because pre-signed URLs are method-bound. */
60
+ async getSignedUrl(entityType, entityId, filename, keyPrefix, expiresIn = 14400, method = 'GET') {
61
+ if (!this.backend.getSignedUrl) {
62
+ throw new Error('Pre-signed URLs are not supported by the local asset backend');
63
+ }
64
+ // Validate every key component, not just filename. Without this, a
65
+ // caller passing entityType='..' or entityId='../' could mint a
66
+ // signed URL for any object in the bucket — including non-asset
67
+ // prefixes (fonts, tokens, theme blobs). Today the only caller
68
+ // is the asset route which feeds Fastify path segments (so `/` is
69
+ // already blocked), but the AssetService is a public surface and
70
+ // future callers shouldn't have to know about the route's quirks.
71
+ for (const part of [entityType, entityId, filename]) {
72
+ if (!part || part.includes('/') || part.includes('\\') || part.includes('..')) {
73
+ throw new Error('Asset key components cannot contain path separators or traversal sequences');
74
+ }
75
+ }
76
+ validateFilename(filename);
77
+ const key = buildAssetKey(entityType, entityId, filename, keyPrefix);
78
+ return await this.backend.getSignedUrl(key, expiresIn, method);
79
+ }
80
+ // ── Immutable-key (assetId) surface ──────────────────────────────────────
81
+ //
82
+ // New scheme: assets are keyed `{assetId}/{filename}` where assetId is an
83
+ // immutable UUID. The owning entity's (type,id) is no longer in the key —
84
+ // ownership/authz lives in AssetIndexService. The legacy `(type,id,filename)`
85
+ // methods above stay for the dual-read cutover window.
86
+ /** Reject key segments that could escape the prefix. */
87
+ assertSafeSegment(seg) {
88
+ if (!seg || seg.includes('/') || seg.includes('\\') || seg.includes('..')) {
89
+ throw new Error('Asset key components cannot contain path separators or traversal sequences');
90
+ }
91
+ }
92
+ /** Upload bytes under an immutable assetId key. Caller records the index row. */
93
+ async uploadByAssetId(assetId, filename, buffer) {
94
+ this.assertSafeSegment(assetId);
95
+ validateFilename(filename);
96
+ if (!buffer || buffer.length === 0)
97
+ throw new Error('Buffer cannot be empty');
98
+ const maxSize = 100 * 1024 * 1024;
99
+ if (buffer.length > maxSize)
100
+ throw new Error(`File too large (max ${maxSize / 1024 / 1024}MB)`);
101
+ const contentType = detectContentType(filename);
102
+ return await this.backend.upload(`${assetId}/${filename}`, buffer, contentType);
103
+ }
104
+ async getSignedUrlByAssetId(assetId, filename, expiresIn = 14400, method = 'GET') {
105
+ if (!this.backend.getSignedUrl) {
106
+ throw new Error('Pre-signed URLs are not supported by the local asset backend');
107
+ }
108
+ this.assertSafeSegment(assetId);
109
+ validateFilename(filename);
110
+ return await this.backend.getSignedUrl(`${assetId}/${filename}`, expiresIn, method);
111
+ }
112
+ async deleteByAssetId(assetId, filename) {
113
+ this.assertSafeSegment(assetId);
114
+ validateFilename(filename);
115
+ return await this.backend.delete(`${assetId}/${filename}`);
116
+ }
117
+ async existsByAssetId(assetId, filename) {
118
+ this.assertSafeSegment(assetId);
119
+ validateFilename(filename);
120
+ return await this.backend.exists(`${assetId}/${filename}`);
121
+ }
122
+ // ── Pending-upload (MCP presign) surface ────────────────────────────────
123
+ //
124
+ // Quarantine prefix: `pending/{assetId}/{filename}`. The agent PUTs bytes
125
+ // here directly via a pre-signed URL; finalize HEADs + copies into the
126
+ // canonical `{assetId}/{filename}` keyspace + deletes pending. An R2
127
+ // lifecycle rule on `pending/` is the backstop that cleans up orphans the
128
+ // agent never finalized (see docs/r2-lifecycle.md). All methods throw if
129
+ // the backend doesn't support pre-signed uploads (local FS).
130
+ pendingKey(assetId, filename) {
131
+ this.assertSafeSegment(assetId);
132
+ validateFilename(filename);
133
+ return `pending/${assetId}/${filename}`;
134
+ }
135
+ canonicalKey(assetId, filename) {
136
+ this.assertSafeSegment(assetId);
137
+ validateFilename(filename);
138
+ return `${assetId}/${filename}`;
139
+ }
140
+ async signPendingPutUrl(assetId, filename, contentType, expiresIn = 900) {
141
+ if (!this.backend.getSignedPutUrl) {
142
+ throw new Error('Pre-signed uploads are not supported by the local asset backend');
143
+ }
144
+ return await this.backend.getSignedPutUrl(this.pendingKey(assetId, filename), contentType, expiresIn);
145
+ }
146
+ /** HEAD the pending blob. Returns null when the agent never PUT (or the
147
+ * TTL already expired). */
148
+ async headPending(assetId, filename) {
149
+ if (!this.backend.head) {
150
+ throw new Error('HEAD is not supported by the local asset backend');
151
+ }
152
+ return await this.backend.head(this.pendingKey(assetId, filename));
153
+ }
154
+ /** Server-side copy pending → canonical (R2's CopyObject — no download). */
155
+ async copyPendingToCanonical(assetId, filename) {
156
+ return await this.backend.copy(this.pendingKey(assetId, filename), this.canonicalKey(assetId, filename));
157
+ }
158
+ async deletePending(assetId, filename) {
159
+ return await this.backend.delete(this.pendingKey(assetId, filename));
160
+ }
161
+ /** Bucket lifecycle rules summary for the MCP presign flow's boot-time
162
+ * backstop. Returns `null` when the backend has no lifecycle support
163
+ * (local) or when the bucket has no rules configured at all. Throws on
164
+ * permission / network errors so the caller can decide whether to
165
+ * degrade or propagate. */
166
+ async getBucketLifecycle() {
167
+ if (!this.backend.getBucketLifecycle)
168
+ return null;
169
+ return await this.backend.getBucketLifecycle();
170
+ }
171
+ /** Download an object's bytes by raw key. Validates every path segment —
172
+ * the key is derived from a stored `asset_url`, so a `..` segment must
173
+ * never reach the backend's path join (arbitrary-file read). */
174
+ async download(key) {
175
+ for (const seg of key.split('/')) {
176
+ this.assertSafeSegment(seg);
177
+ }
178
+ return await this.backend.download(key);
179
+ }
180
+ /** Upload an object's bytes by raw key (non-catalog keyspaces — e.g. the chat
181
+ * conversation-scratch images, alongside the existing `pending` keyspace).
182
+ * Validates every path segment. Does NOT create an asset-index row. */
183
+ async uploadByKey(key, buffer, contentType) {
184
+ for (const seg of key.split('/')) {
185
+ this.assertSafeSegment(seg);
186
+ }
187
+ return await this.backend.upload(key, buffer, contentType);
188
+ }
189
+ /** Delete an object's bytes by raw key (non-catalog keyspaces). Validates
190
+ * every path segment. No-op-safe at the backend level. */
191
+ async deleteByKey(key) {
192
+ for (const seg of key.split('/')) {
193
+ this.assertSafeSegment(seg);
194
+ }
195
+ return await this.backend.delete(key);
196
+ }
197
+ /** Pre-signed download URL for a raw key (R2 only; local throws). Validates
198
+ * every path segment. Used to 302-redirect non-catalog objects (scratch
199
+ * images) the same way catalog assets are served. */
200
+ async getSignedUrlForKey(key, method = 'GET', expiresIn = 14400) {
201
+ if (!this.backend.getSignedUrl) {
202
+ throw new Error('Pre-signed URLs are not supported by the local asset backend');
203
+ }
204
+ for (const seg of key.split('/')) {
205
+ this.assertSafeSegment(seg);
206
+ }
207
+ return await this.backend.getSignedUrl(key, expiresIn, method);
208
+ }
209
+ /** Server-side copy between raw keys (migration + transfer-copy). Validates
210
+ * every path segment of both keys — the migration derives srcKey from
211
+ * user-editable body URLs, so a `..` in a key segment must never reach the
212
+ * backend's path join (arbitrary-file read/write). */
213
+ async copy(srcKey, destKey) {
214
+ for (const seg of [...srcKey.split('/'), ...destKey.split('/')]) {
215
+ this.assertSafeSegment(seg);
216
+ }
217
+ return await this.backend.copy(srcKey, destKey);
218
+ }
29
219
  /**
30
220
  * Upload asset for an entity
31
221
  */
@@ -93,4 +283,16 @@ export class AssetService {
93
283
  return assets.find(a => a.filename === filename) || null;
94
284
  }
95
285
  }
286
+ /**
287
+ * Immutable-key public URL: `/api/assets/{assetId}/{filename}`. The only asset
288
+ * URL form the app emits now that the legacy 3-segment scheme is retired.
289
+ */
290
+ export function publicUrlForAssetId(assetId, filename) {
291
+ return `/api/assets/${assetId}/${encodeAssetFilename(filename)}`;
292
+ }
293
+ // The percent-encoder for asset-URL filename segments lives with its parse
294
+ // counterpart in core/artifact-asset-urls (encode on emit, decode on parse —
295
+ // one owner for the identity contract); re-exported here for the existing
296
+ // server-side import sites.
297
+ export { encodeAssetFilename };
96
298
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/assets/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/assets/index.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,15 @@ export declare class LocalAssetBackend implements AssetBackend {
29
29
  * reads. Used by the asset manager endpoint.
30
30
  */
31
31
  listAll(): Promise<AssetRecord[]>;
32
+ /**
33
+ * Server-side copy (filesystem copy). Creates the destination directory
34
+ * and overwrites an existing destination so migration re-runs are idempotent.
35
+ */
36
+ /**
37
+ * Read an object's bytes from the local filesystem.
38
+ */
39
+ download(key: string): Promise<Buffer>;
40
+ copy(srcKey: string, destKey: string): Promise<void>;
32
41
  /**
33
42
  * Delete a single asset
34
43
  */
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Stores assets in .studiograph/assets/ directory
5
5
  */
6
- import { existsSync, mkdirSync, writeFileSync, readdirSync, unlinkSync, statSync } from 'fs';
6
+ import { existsSync, mkdirSync, writeFileSync, readFileSync, readdirSync, unlinkSync, statSync, copyFileSync } from 'fs';
7
7
  import { join, dirname, relative } from 'path';
8
8
  import { getMediaType } from './base.js';
9
9
  export class LocalAssetBackend {
@@ -50,7 +50,7 @@ export class LocalAssetBackend {
50
50
  contentType,
51
51
  url: `file:///${filePath}`, // Local file URL
52
52
  path: relativePath, // Relative path for markdown
53
- mediaType: getMediaType(contentType),
53
+ mediaType: getMediaType(contentType, filename),
54
54
  };
55
55
  }
56
56
  /**
@@ -83,7 +83,7 @@ export class LocalAssetBackend {
83
83
  contentType,
84
84
  url: `file:///${filePath}`,
85
85
  path: relativePath,
86
- mediaType: getMediaType(contentType),
86
+ mediaType: getMediaType(contentType, filename),
87
87
  });
88
88
  }
89
89
  }
@@ -167,7 +167,7 @@ export class LocalAssetBackend {
167
167
  contentType,
168
168
  url: `file:///${filePath}`,
169
169
  path: relativePath,
170
- mediaType: getMediaType(contentType),
170
+ mediaType: getMediaType(contentType, filename),
171
171
  entityType: type,
172
172
  entityId: id,
173
173
  });
@@ -176,6 +176,32 @@ export class LocalAssetBackend {
176
176
  }
177
177
  return results;
178
178
  }
179
+ /**
180
+ * Server-side copy (filesystem copy). Creates the destination directory
181
+ * and overwrites an existing destination so migration re-runs are idempotent.
182
+ */
183
+ /**
184
+ * Read an object's bytes from the local filesystem.
185
+ */
186
+ async download(key) {
187
+ const filePath = this.getFilePath(key);
188
+ if (!existsSync(filePath)) {
189
+ throw new Error(`Asset not found: ${key}`);
190
+ }
191
+ return readFileSync(filePath);
192
+ }
193
+ async copy(srcKey, destKey) {
194
+ const srcPath = this.getFilePath(srcKey);
195
+ if (!existsSync(srcPath)) {
196
+ throw new Error(`Asset not found: ${srcKey}`);
197
+ }
198
+ const destPath = this.getFilePath(destKey);
199
+ const destDir = dirname(destPath);
200
+ if (!existsSync(destDir)) {
201
+ mkdirSync(destDir, { recursive: true });
202
+ }
203
+ copyFileSync(srcPath, destPath);
204
+ }
179
205
  /**
180
206
  * Delete a single asset
181
207
  */