studiograph 1.3.48-next.28 → 1.3.48-next.280

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 (1670) 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 +811 -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/event-ingest-api.d.ts +15 -0
  442. package/dist/server/routes/event-ingest-api.js +125 -0
  443. package/dist/server/routes/event-ingest-api.js.map +1 -0
  444. package/dist/server/routes/field-library-api.d.ts +28 -0
  445. package/dist/server/routes/field-library-api.js +126 -0
  446. package/dist/server/routes/field-library-api.js.map +1 -0
  447. package/dist/server/routes/git-http.d.ts +3 -3
  448. package/dist/server/routes/git-http.js +90 -30
  449. package/dist/server/routes/git-http.js.map +1 -1
  450. package/dist/server/routes/graph-api-access.d.ts +63 -0
  451. package/dist/server/routes/graph-api-access.js +115 -0
  452. package/dist/server/routes/graph-api-access.js.map +1 -0
  453. package/dist/server/routes/graph-api.d.ts +2 -3
  454. package/dist/server/routes/graph-api.js +1476 -417
  455. package/dist/server/routes/graph-api.js.map +1 -1
  456. package/dist/server/routes/health.d.ts +18 -0
  457. package/dist/server/routes/health.js +116 -0
  458. package/dist/server/routes/health.js.map +1 -0
  459. package/dist/server/routes/import-batch.d.ts +24 -0
  460. package/dist/server/routes/import-batch.js +33 -0
  461. package/dist/server/routes/import-batch.js.map +1 -0
  462. package/dist/server/routes/insights-api.d.ts +9 -2
  463. package/dist/server/routes/insights-api.js +352 -66
  464. package/dist/server/routes/insights-api.js.map +1 -1
  465. package/dist/server/routes/mcp.d.ts +8 -3
  466. package/dist/server/routes/mcp.js +24 -8
  467. package/dist/server/routes/mcp.js.map +1 -1
  468. package/dist/server/routes/oauth-api.d.ts +63 -0
  469. package/dist/server/routes/oauth-api.js +413 -0
  470. package/dist/server/routes/oauth-api.js.map +1 -0
  471. package/dist/server/routes/permissions-api.d.ts +8 -3
  472. package/dist/server/routes/permissions-api.js +43 -12
  473. package/dist/server/routes/permissions-api.js.map +1 -1
  474. package/dist/server/routes/r2-api.d.ts +25 -0
  475. package/dist/server/routes/r2-api.js +273 -0
  476. package/dist/server/routes/r2-api.js.map +1 -0
  477. package/dist/server/routes/secrets-api.d.ts +36 -0
  478. package/dist/server/routes/secrets-api.js +305 -0
  479. package/dist/server/routes/secrets-api.js.map +1 -0
  480. package/dist/server/routes/settings-api.d.ts +29 -0
  481. package/dist/server/routes/settings-api.js +177 -0
  482. package/dist/server/routes/settings-api.js.map +1 -0
  483. package/dist/server/routes/share-api.d.ts +30 -6
  484. package/dist/server/routes/share-api.js +240 -31
  485. package/dist/server/routes/share-api.js.map +1 -1
  486. package/dist/server/routes/views-api.d.ts +11 -2
  487. package/dist/server/routes/views-api.js +123 -22
  488. package/dist/server/routes/views-api.js.map +1 -1
  489. package/dist/server/routes/workspace-api.d.ts +2 -1
  490. package/dist/server/routes/workspace-api.js +150 -23
  491. package/dist/server/routes/workspace-api.js.map +1 -1
  492. package/dist/server/routes/ws.d.ts +2 -1
  493. package/dist/server/routes/ws.js +73 -20
  494. package/dist/server/routes/ws.js.map +1 -1
  495. package/dist/server/session-manager.d.ts +48 -5
  496. package/dist/server/session-manager.js +182 -14
  497. package/dist/server/session-manager.js.map +1 -1
  498. package/dist/server/ws-hub.d.ts +135 -56
  499. package/dist/server/ws-hub.js +0 -0
  500. package/dist/server/ws-hub.js.map +1 -1
  501. package/dist/server/yjs-manager.d.ts +275 -18
  502. package/dist/server/yjs-manager.js +819 -70
  503. package/dist/server/yjs-manager.js.map +1 -1
  504. package/dist/server/yjs-persistence.d.ts +165 -0
  505. package/dist/server/yjs-persistence.js +557 -0
  506. package/dist/server/yjs-persistence.js.map +1 -0
  507. package/dist/server/yjs-text-diff.d.ts +32 -0
  508. package/dist/server/yjs-text-diff.js +61 -0
  509. package/dist/server/yjs-text-diff.js.map +1 -0
  510. package/dist/services/access-control.d.ts +121 -0
  511. package/dist/services/access-control.js +194 -0
  512. package/dist/services/access-control.js.map +1 -0
  513. package/dist/services/agent-task-store.d.ts +96 -0
  514. package/dist/services/agent-task-store.js +184 -0
  515. package/dist/services/agent-task-store.js.map +1 -0
  516. package/dist/services/ai-usage-ledger.d.ts +75 -0
  517. package/dist/services/ai-usage-ledger.js +250 -0
  518. package/dist/services/ai-usage-ledger.js.map +1 -0
  519. package/dist/services/artifact-asset-token.d.ts +69 -0
  520. package/dist/services/artifact-asset-token.js +94 -0
  521. package/dist/services/artifact-asset-token.js.map +1 -0
  522. package/dist/services/artifact-inspect-metadata.d.ts +21 -0
  523. package/dist/services/artifact-inspect-metadata.js +66 -0
  524. package/dist/services/artifact-inspect-metadata.js.map +1 -0
  525. package/dist/services/artifact-library-sources.d.ts +28 -0
  526. package/dist/services/artifact-library-sources.js +83 -0
  527. package/dist/services/artifact-library-sources.js.map +1 -0
  528. package/dist/services/artifact-patch-runner.d.ts +52 -0
  529. package/dist/services/artifact-patch-runner.js +74 -0
  530. package/dist/services/artifact-patch-runner.js.map +1 -0
  531. package/dist/services/artifact-render-export.d.ts +261 -0
  532. package/dist/services/artifact-render-export.js +1088 -0
  533. package/dist/services/artifact-render-export.js.map +1 -0
  534. package/dist/services/artifact-selection-store.d.ts +68 -0
  535. package/dist/services/artifact-selection-store.js +90 -0
  536. package/dist/services/artifact-selection-store.js.map +1 -0
  537. package/dist/services/artifact-store.d.ts +124 -0
  538. package/dist/services/artifact-store.js +260 -0
  539. package/dist/services/artifact-store.js.map +1 -0
  540. package/dist/services/asset-caption-service.d.ts +103 -0
  541. package/dist/services/asset-caption-service.js +200 -0
  542. package/dist/services/asset-caption-service.js.map +1 -0
  543. package/dist/services/asset-delete-authz.d.ts +32 -0
  544. package/dist/services/asset-delete-authz.js +62 -0
  545. package/dist/services/asset-delete-authz.js.map +1 -0
  546. package/dist/services/asset-delete-impact.d.ts +63 -0
  547. package/dist/services/asset-delete-impact.js +96 -0
  548. package/dist/services/asset-delete-impact.js.map +1 -0
  549. package/dist/services/asset-finalize-service.d.ts +58 -0
  550. package/dist/services/asset-finalize-service.js +216 -0
  551. package/dist/services/asset-finalize-service.js.map +1 -0
  552. package/dist/services/asset-import-service.d.ts +116 -0
  553. package/dist/services/asset-import-service.js +486 -0
  554. package/dist/services/asset-import-service.js.map +1 -0
  555. package/dist/services/asset-index-sweep.d.ts +95 -0
  556. package/dist/services/asset-index-sweep.js +271 -0
  557. package/dist/services/asset-index-sweep.js.map +1 -0
  558. package/dist/services/asset-lifecycle-check.d.ts +22 -0
  559. package/dist/services/asset-lifecycle-check.js +80 -0
  560. package/dist/services/asset-lifecycle-check.js.map +1 -0
  561. package/dist/services/asset-listing.d.ts +63 -0
  562. package/dist/services/asset-listing.js +124 -0
  563. package/dist/services/asset-listing.js.map +1 -0
  564. package/dist/services/asset-move-impact.d.ts +49 -0
  565. package/dist/services/asset-move-impact.js +62 -0
  566. package/dist/services/asset-move-impact.js.map +1 -0
  567. package/dist/services/asset-presign-service.d.ts +62 -0
  568. package/dist/services/asset-presign-service.js +126 -0
  569. package/dist/services/asset-presign-service.js.map +1 -0
  570. package/dist/services/asset-reference-index.d.ts +39 -0
  571. package/dist/services/asset-reference-index.js +33 -0
  572. package/dist/services/asset-reference-index.js.map +1 -0
  573. package/dist/services/asset-reference-scan.d.ts +57 -0
  574. package/dist/services/asset-reference-scan.js +150 -0
  575. package/dist/services/asset-reference-scan.js.map +1 -0
  576. package/dist/services/asset-sidecar-service.d.ts +28 -0
  577. package/dist/services/asset-sidecar-service.js +79 -0
  578. package/dist/services/asset-sidecar-service.js.map +1 -0
  579. package/dist/services/asset-upload-errors.d.ts +41 -0
  580. package/dist/services/asset-upload-errors.js +45 -0
  581. package/dist/services/asset-upload-errors.js.map +1 -0
  582. package/dist/services/asset-upload-service.d.ts +56 -0
  583. package/dist/services/asset-upload-service.js +200 -0
  584. package/dist/services/asset-upload-service.js.map +1 -0
  585. package/dist/services/asset-upload-token.d.ts +58 -0
  586. package/dist/services/asset-upload-token.js +75 -0
  587. package/dist/services/asset-upload-token.js.map +1 -0
  588. package/dist/services/assets/asset-index-service.d.ts +158 -0
  589. package/dist/services/assets/asset-index-service.js +293 -0
  590. package/dist/services/assets/asset-index-service.js.map +1 -0
  591. package/dist/services/assets/base.d.ts +119 -4
  592. package/dist/services/assets/base.js +148 -3
  593. package/dist/services/assets/base.js.map +1 -1
  594. package/dist/services/assets/index.d.ts +90 -0
  595. package/dist/services/assets/index.js +202 -0
  596. package/dist/services/assets/index.js.map +1 -1
  597. package/dist/services/assets/local.d.ts +9 -0
  598. package/dist/services/assets/local.js +30 -4
  599. package/dist/services/assets/local.js.map +1 -1
  600. package/dist/services/assets/r2-sync.d.ts +88 -0
  601. package/dist/services/assets/r2-sync.js +412 -0
  602. package/dist/services/assets/r2-sync.js.map +1 -0
  603. package/dist/services/assets/r2.d.ts +80 -0
  604. package/dist/services/assets/r2.js +159 -4
  605. package/dist/services/assets/r2.js.map +1 -1
  606. package/dist/services/auth-service.d.ts +278 -51
  607. package/dist/services/auth-service.js +995 -272
  608. package/dist/services/auth-service.js.map +1 -1
  609. package/dist/services/chat-session-service.d.ts +197 -0
  610. package/dist/services/chat-session-service.js +552 -0
  611. package/dist/services/chat-session-service.js.map +1 -0
  612. package/dist/services/cloud-inference-billing.d.ts +64 -0
  613. package/dist/services/cloud-inference-billing.js +321 -0
  614. package/dist/services/cloud-inference-billing.js.map +1 -0
  615. package/dist/services/comment-service.d.ts +97 -0
  616. package/dist/services/comment-service.js +341 -0
  617. package/dist/services/comment-service.js.map +1 -0
  618. package/dist/services/comment-virtual-entity.d.ts +36 -0
  619. package/dist/services/comment-virtual-entity.js +71 -0
  620. package/dist/services/comment-virtual-entity.js.map +1 -0
  621. package/dist/services/convert-service.d.ts +64 -0
  622. package/dist/services/convert-service.js +68 -0
  623. package/dist/services/convert-service.js.map +1 -0
  624. package/dist/services/csv-service.d.ts +22 -17
  625. package/dist/services/csv-service.js +55 -92
  626. package/dist/services/csv-service.js.map +1 -1
  627. package/dist/services/entity-mutations.d.ts +313 -0
  628. package/dist/services/entity-mutations.js +531 -0
  629. package/dist/services/entity-mutations.js.map +1 -0
  630. package/dist/services/event-processor.d.ts +104 -0
  631. package/dist/services/event-processor.js +451 -0
  632. package/dist/services/event-processor.js.map +1 -0
  633. package/dist/services/extract/docx.d.ts +1 -0
  634. package/dist/services/extract/docx.js +233 -0
  635. package/dist/services/extract/docx.js.map +1 -0
  636. package/dist/services/extract/index.d.ts +9 -0
  637. package/dist/services/extract/index.js +10 -0
  638. package/dist/services/extract/index.js.map +1 -0
  639. package/dist/services/extract/pdf.d.ts +13 -0
  640. package/dist/services/extract/pdf.js +69 -0
  641. package/dist/services/extract/pdf.js.map +1 -0
  642. package/dist/services/folder-creation.d.ts +33 -0
  643. package/dist/services/folder-creation.js +103 -0
  644. package/dist/services/folder-creation.js.map +1 -0
  645. package/dist/services/fonts/font-metadata.d.ts +42 -0
  646. package/dist/services/fonts/font-metadata.js +126 -0
  647. package/dist/services/fonts/font-metadata.js.map +1 -0
  648. package/dist/services/fonts/font-skill-service.d.ts +66 -0
  649. package/dist/services/fonts/font-skill-service.js +137 -0
  650. package/dist/services/fonts/font-skill-service.js.map +1 -0
  651. package/dist/services/git.d.ts +58 -0
  652. package/dist/services/git.js +194 -55
  653. package/dist/services/git.js.map +1 -1
  654. package/dist/services/graph-maintenance.js +4 -4
  655. package/dist/services/graph-maintenance.js.map +1 -1
  656. package/dist/services/import-service.d.ts +51 -2
  657. package/dist/services/import-service.js +271 -109
  658. package/dist/services/import-service.js.map +1 -1
  659. package/dist/services/lint-service.js +10 -17
  660. package/dist/services/lint-service.js.map +1 -1
  661. package/dist/services/markdown.d.ts +12 -1
  662. package/dist/services/markdown.js +77 -9
  663. package/dist/services/markdown.js.map +1 -1
  664. package/dist/services/mention-detector.d.ts +23 -0
  665. package/dist/services/mention-detector.js +47 -0
  666. package/dist/services/mention-detector.js.map +1 -0
  667. package/dist/services/model-capabilities.d.ts +41 -0
  668. package/dist/services/model-capabilities.js +107 -0
  669. package/dist/services/model-capabilities.js.map +1 -0
  670. package/dist/services/notification-broadcast.d.ts +32 -0
  671. package/dist/services/notification-broadcast.js +38 -0
  672. package/dist/services/notification-broadcast.js.map +1 -0
  673. package/dist/services/notification-service.d.ts +41 -0
  674. package/dist/services/notification-service.js +100 -0
  675. package/dist/services/notification-service.js.map +1 -0
  676. package/dist/services/oauth-server-store.d.ts +147 -0
  677. package/dist/services/oauth-server-store.js +319 -0
  678. package/dist/services/oauth-server-store.js.map +1 -0
  679. package/dist/services/orphan-service.js +2 -2
  680. package/dist/services/orphan-service.js.map +1 -1
  681. package/dist/services/pdf-raster-service.d.ts +95 -0
  682. package/dist/services/pdf-raster-service.js +361 -0
  683. package/dist/services/pdf-raster-service.js.map +1 -0
  684. package/dist/services/personal-folder.d.ts +49 -0
  685. package/dist/services/personal-folder.js +122 -0
  686. package/dist/services/personal-folder.js.map +1 -0
  687. package/dist/services/playwright-bootstrap.d.ts +78 -0
  688. package/dist/services/playwright-bootstrap.js +219 -0
  689. package/dist/services/playwright-bootstrap.js.map +1 -0
  690. package/dist/services/scratch-asset-promote.d.ts +57 -0
  691. package/dist/services/scratch-asset-promote.js +95 -0
  692. package/dist/services/scratch-asset-promote.js.map +1 -0
  693. package/dist/services/scratch-attachment-service.d.ts +247 -0
  694. package/dist/services/scratch-attachment-service.js +478 -0
  695. package/dist/services/scratch-attachment-service.js.map +1 -0
  696. package/dist/services/scratch-blob.d.ts +16 -0
  697. package/dist/services/scratch-blob.js +31 -0
  698. package/dist/services/scratch-blob.js.map +1 -0
  699. package/dist/services/share-link-service.d.ts +57 -0
  700. package/dist/services/share-link-service.js +142 -0
  701. package/dist/services/share-link-service.js.map +1 -0
  702. package/dist/services/user-person-bridge.d.ts +136 -0
  703. package/dist/services/user-person-bridge.js +341 -0
  704. package/dist/services/user-person-bridge.js.map +1 -0
  705. package/dist/services/utility-model-resolver.d.ts +37 -0
  706. package/dist/services/utility-model-resolver.js +67 -0
  707. package/dist/services/utility-model-resolver.js.map +1 -0
  708. package/dist/services/vector-service.d.ts +282 -5
  709. package/dist/services/vector-service.js +594 -39
  710. package/dist/services/vector-service.js.map +1 -1
  711. package/dist/services/workspace-access.d.ts +115 -0
  712. package/dist/services/workspace-access.js +154 -0
  713. package/dist/services/workspace-access.js.map +1 -0
  714. package/dist/services/workspace-assets-folder.d.ts +46 -0
  715. package/dist/services/workspace-assets-folder.js +75 -0
  716. package/dist/services/workspace-assets-folder.js.map +1 -0
  717. package/dist/utils/git.d.ts +17 -2
  718. package/dist/utils/git.js +23 -7
  719. package/dist/utils/git.js.map +1 -1
  720. package/dist/utils/log.d.ts +42 -0
  721. package/dist/utils/log.js +137 -0
  722. package/dist/utils/log.js.map +1 -0
  723. package/dist/utils/preflight.js +2 -2
  724. package/dist/utils/preflight.js.map +1 -1
  725. package/dist/utils/version-checker.d.ts +12 -19
  726. package/dist/utils/version-checker.js +14 -104
  727. package/dist/utils/version-checker.js.map +1 -1
  728. package/dist/web/_app/immutable/assets/0.EQ13aeT7.css +2 -0
  729. package/dist/web/_app/immutable/assets/12.DlIf1mKh.css +1 -0
  730. package/dist/web/_app/immutable/assets/13.WUaKJbVc.css +1 -0
  731. package/dist/web/_app/immutable/assets/15.CItnu3nw.css +1 -0
  732. package/dist/web/_app/immutable/assets/16.C3czeWWx.css +1 -0
  733. package/dist/web/_app/immutable/assets/17.CHiwoAMO.css +1 -0
  734. package/dist/web/_app/immutable/assets/18.fUGuXQ0K.css +1 -0
  735. package/dist/web/_app/immutable/assets/19.DcuK5ZVm.css +1 -0
  736. package/dist/web/_app/immutable/assets/2.D-t-UF92.css +1 -0
  737. package/dist/web/_app/immutable/assets/3.NwBs3e5P.css +1 -0
  738. package/dist/web/_app/immutable/assets/4.BS2tc0bg.css +1 -0
  739. package/dist/web/_app/immutable/assets/6.qYwAAyw6.css +1 -0
  740. package/dist/web/_app/immutable/assets/AssetLibraryPicker.BWH260L8.css +1 -0
  741. package/dist/web/_app/immutable/assets/BulkActionsBar.C7rAqpQH.css +1 -0
  742. package/dist/web/_app/immutable/assets/CalendarView.BPjGVS79.css +1 -0
  743. package/dist/web/_app/immutable/assets/CodeMirrorEditor.D6hf2pNJ.css +1 -0
  744. package/dist/web/_app/immutable/assets/CopyField.DVGZtw4U.css +1 -0
  745. package/dist/web/_app/immutable/assets/FolderMembersPanel.BvV1lBCg.css +1 -0
  746. package/dist/web/_app/immutable/assets/FolderMutationDialogs.De2NQ55E.css +1 -0
  747. package/dist/web/_app/immutable/assets/FolderPicker.Cq1tMnu_.css +1 -0
  748. package/dist/web/_app/immutable/assets/FolderTreeField.DTSzn15s.css +1 -0
  749. package/dist/web/_app/immutable/assets/FrameCanvas.Clh5Xdr7.css +1 -0
  750. package/dist/web/_app/immutable/assets/GalleryView.Dmr8-vDv.css +1 -0
  751. package/dist/web/_app/immutable/assets/GraphView.BJtGL9py.css +1 -0
  752. package/dist/web/_app/immutable/assets/GridCell.DnKM4Fcp.css +1 -0
  753. package/dist/web/_app/immutable/assets/KanbanView.CRc-eYXO.css +1 -0
  754. package/dist/web/_app/immutable/assets/Link.vV0ne105.css +1 -0
  755. package/dist/web/_app/immutable/assets/Markdown.CSYKSAm0.css +1 -0
  756. package/dist/web/_app/immutable/assets/Rail.CCPxL1o_.css +1 -0
  757. package/dist/web/_app/immutable/assets/RepoCheckList.BLeJ79Eg.css +1 -0
  758. package/dist/web/_app/immutable/assets/RowSelectSlot.BKY62Bks.css +1 -0
  759. package/dist/web/_app/immutable/assets/SaveViewDialog.Bb9E81xd.css +1 -0
  760. package/dist/web/_app/immutable/assets/SearchInput.DTB6W35f.css +1 -0
  761. package/dist/web/_app/immutable/assets/SettingsDialog.CFukBBGR.css +1 -0
  762. package/dist/web/_app/immutable/assets/Spinner.UBfl0pab.css +1 -0
  763. package/dist/web/_app/immutable/assets/StopFilledAlt.CjuwgVxu.css +1 -0
  764. package/dist/web/_app/immutable/assets/TimelineView.u4YqiztR.css +1 -0
  765. package/dist/web/_app/immutable/assets/Version.BQq1Fihu.css +1 -0
  766. package/dist/web/_app/immutable/assets/ViewBanner.DWswnFdi.css +1 -0
  767. package/dist/web/_app/immutable/assets/WorkspaceView.CONYOyXk.css +1 -0
  768. package/dist/web/_app/immutable/assets/button.DOg1smbV.css +1 -0
  769. package/dist/web/_app/immutable/assets/checkbox.CAcHq8G6.css +1 -0
  770. package/dist/web/_app/immutable/assets/download-with-progress.BZlFTn09.css +1 -0
  771. package/dist/web/_app/immutable/assets/filters.RgfXKVpA.css +1 -0
  772. package/dist/web/_app/immutable/assets/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff +0 -0
  773. package/dist/web/_app/immutable/assets/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2 +0 -0
  774. package/dist/web/_app/immutable/assets/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff +0 -0
  775. package/dist/web/_app/immutable/assets/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2 +0 -0
  776. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-400-italic.CZTNEAuW.woff2 +0 -0
  777. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-400-italic.CsGl1sm0.woff +0 -0
  778. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2 +0 -0
  779. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-400-normal.CYLoc0-x.woff +0 -0
  780. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-500-italic.BNK2_mGO.woff2 +0 -0
  781. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-500-italic.DpEwFAQM.woff +0 -0
  782. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-500-normal.6ng42L7E.woff2 +0 -0
  783. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-500-normal.BgVn5rGT.woff +0 -0
  784. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.woff +0 -0
  785. package/dist/web/_app/immutable/assets/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2 +0 -0
  786. package/dist/web/_app/immutable/assets/list-columns.BgnafZ4K.css +1 -0
  787. package/dist/web/_app/immutable/chunks/-MYqXlc3.js +185 -0
  788. package/dist/web/_app/immutable/chunks/0iYgHjxP2.js +2 -0
  789. package/dist/web/_app/immutable/chunks/1_BWKAKA2.js +23 -0
  790. package/dist/web/_app/immutable/chunks/6guf_P8c.js +1 -0
  791. package/dist/web/_app/immutable/chunks/AdUGDNY9.js +2 -0
  792. package/dist/web/_app/immutable/chunks/B0BPsOkj2.js +1 -0
  793. package/dist/web/_app/immutable/chunks/B2cjR0rG.js +83 -0
  794. package/dist/web/_app/immutable/chunks/B41i8cw52.js +2 -0
  795. package/dist/web/_app/immutable/chunks/B6Lt-qaJ.js +1 -0
  796. package/dist/web/_app/immutable/chunks/B8gdzLRB2.js +1041 -0
  797. package/dist/web/_app/immutable/chunks/B9KfEsQw2.js +1 -0
  798. package/dist/web/_app/immutable/chunks/B9MY422N.js +1 -0
  799. package/dist/web/_app/immutable/chunks/BCMCHGnl2.js +1 -0
  800. package/dist/web/_app/immutable/chunks/BEnhEpl4.js +2 -0
  801. package/dist/web/_app/immutable/chunks/BEyPhM3C.js +1 -0
  802. package/dist/web/_app/immutable/chunks/BKZ9xpix2.js +1 -0
  803. package/dist/web/_app/immutable/chunks/BO6-nRV9.js +1 -0
  804. package/dist/web/_app/immutable/chunks/BPILs-6H.js +1 -0
  805. package/dist/web/_app/immutable/chunks/BPRQzMGs.js +1 -0
  806. package/dist/web/_app/immutable/chunks/BQE7bWgF.js +1 -0
  807. package/dist/web/_app/immutable/chunks/BQQaOOf3.js +1 -0
  808. package/dist/web/_app/immutable/chunks/BTFf1mFm.js +1 -0
  809. package/dist/web/_app/immutable/chunks/BUcmsNfi.js +3 -0
  810. package/dist/web/_app/immutable/chunks/BVKswxB62.js +66 -0
  811. package/dist/web/_app/immutable/chunks/B_H-sCl92.js +1 -0
  812. package/dist/web/_app/immutable/chunks/B_d4zq-4.js +2 -0
  813. package/dist/web/_app/immutable/chunks/B_y9A6Kg.js +4 -0
  814. package/dist/web/_app/immutable/chunks/Ba53qoVO.js +1 -0
  815. package/dist/web/_app/immutable/chunks/BdR7t2GN.js +3 -0
  816. package/dist/web/_app/immutable/chunks/BeF_YrEc2.js +1 -0
  817. package/dist/web/_app/immutable/chunks/BlsIMcBq.js +1 -0
  818. package/dist/web/_app/immutable/chunks/BnYohOts2.js +1 -0
  819. package/dist/web/_app/immutable/chunks/BqButnP4.js +1 -0
  820. package/dist/web/_app/immutable/chunks/BsKd-PCm.js +1 -0
  821. package/dist/web/_app/immutable/chunks/BtDSRU36.js +1 -0
  822. package/dist/web/_app/immutable/chunks/BuHbdNQt2.js +1 -0
  823. package/dist/web/_app/immutable/chunks/Bvr6nSm92.js +1 -0
  824. package/dist/web/_app/immutable/chunks/BvyVm7-j.js +184 -0
  825. package/dist/web/_app/immutable/chunks/Bx6T8G5n2.js +1 -0
  826. package/dist/web/_app/immutable/chunks/BxeOdaUQ.js +1 -0
  827. package/dist/web/_app/immutable/chunks/C1B4xDs0.js +1 -0
  828. package/dist/web/_app/immutable/chunks/C2yz630b.js +2 -0
  829. package/dist/web/_app/immutable/chunks/C45ocJQC2.js +1 -0
  830. package/dist/web/_app/immutable/chunks/C5YoDj-e.js +1 -0
  831. package/dist/web/_app/immutable/chunks/C6d9nn3k.js +1 -0
  832. package/dist/web/_app/immutable/chunks/C8ZiSqQm.js +1 -0
  833. package/dist/web/_app/immutable/chunks/CA8NGDnJ.js +1 -0
  834. package/dist/web/_app/immutable/chunks/CB-t1Bv-.js +1 -0
  835. package/dist/web/_app/immutable/chunks/CBDveU8k.js +6 -0
  836. package/dist/web/_app/immutable/chunks/CEQy5B8f2.js +1 -0
  837. package/dist/web/_app/immutable/chunks/CI12Gaeg.js +1 -0
  838. package/dist/web/_app/immutable/chunks/CIvNZDmy.js +1 -0
  839. package/dist/web/_app/immutable/chunks/CKGHeJzq.js +1 -0
  840. package/dist/web/_app/immutable/chunks/CL_APTyv.js +1 -0
  841. package/dist/web/_app/immutable/chunks/CM400nLL.js +7 -0
  842. package/dist/web/_app/immutable/chunks/CMttYaeT2.js +2 -0
  843. package/dist/web/_app/immutable/chunks/CPvxN2G62.js +1 -0
  844. package/dist/web/_app/immutable/chunks/CT35tdLp.js +1 -0
  845. package/dist/web/_app/immutable/chunks/CWIHttTH.js +1 -0
  846. package/dist/web/_app/immutable/chunks/CWZSexLW.js +1 -0
  847. package/dist/web/_app/immutable/chunks/CXPMb3zd.js +1 -0
  848. package/dist/web/_app/immutable/chunks/CX_WuP2f.js +1 -0
  849. package/dist/web/_app/immutable/chunks/CZWZNDRS2.js +1 -0
  850. package/dist/web/_app/immutable/chunks/C_A_y7x5.js +2 -0
  851. package/dist/web/_app/immutable/chunks/CaimSvvF.js +5 -0
  852. package/dist/web/_app/immutable/chunks/Cakxkuk5.js +1 -0
  853. package/dist/web/_app/immutable/chunks/CbOk_o5_.js +2 -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/ChuPYjb5.js +1 -0
  859. package/dist/web/_app/immutable/chunks/ClIEtyi4.js +1 -0
  860. package/dist/web/_app/immutable/chunks/CmWflMFc.js +1 -0
  861. package/dist/web/_app/immutable/chunks/Cm_yhEon2.js +1 -0
  862. package/dist/web/_app/immutable/chunks/CoyEQ_5V.js +1 -0
  863. package/dist/web/_app/immutable/chunks/CqyFdLMa.js +1 -0
  864. package/dist/web/_app/immutable/chunks/CrM8HKY2.js +5 -0
  865. package/dist/web/_app/immutable/chunks/CsIWxmio2.js +22 -0
  866. package/dist/web/_app/immutable/chunks/CswcvBI22.js +1 -0
  867. package/dist/web/_app/immutable/chunks/CtgdtZ0G2.js +1 -0
  868. package/dist/web/_app/immutable/chunks/CyTgggiM2.js +1 -0
  869. package/dist/web/_app/immutable/chunks/D6toh9Mr.js +1 -0
  870. package/dist/web/_app/immutable/chunks/DBGaXAP8.js +1 -0
  871. package/dist/web/_app/immutable/chunks/DCgKWtld.js +1 -0
  872. package/dist/web/_app/immutable/chunks/DHepCXpt.js +2 -0
  873. package/dist/web/_app/immutable/chunks/DIsSxB_C.js +1 -0
  874. package/dist/web/_app/immutable/chunks/DJTvBXur.js +2 -0
  875. package/dist/web/_app/immutable/chunks/DLuIHCPq.js +1 -0
  876. package/dist/web/_app/immutable/chunks/DNLoQniz.js +1 -0
  877. package/dist/web/_app/immutable/chunks/DO_V9Cgc.js +1 -0
  878. package/dist/web/_app/immutable/chunks/DPI7dnke.js +2692 -0
  879. package/dist/web/_app/immutable/chunks/DPLkAijI2.js +1 -0
  880. package/dist/web/_app/immutable/chunks/DQMWa2t7.js +1 -0
  881. package/dist/web/_app/immutable/chunks/DWH6DgCd2.js +2 -0
  882. package/dist/web/_app/immutable/chunks/DYi0TLhD.js +1 -0
  883. package/dist/web/_app/immutable/chunks/DZ2Zr5zb.js +1 -0
  884. package/dist/web/_app/immutable/chunks/DbOFiaoY.js +1 -0
  885. package/dist/web/_app/immutable/chunks/Ddgu2Sjp.js +1 -0
  886. package/dist/web/_app/immutable/chunks/DfUXQOZ92.js +1 -0
  887. package/dist/web/_app/immutable/chunks/DgP0Pxes.js +224 -0
  888. package/dist/web/_app/immutable/chunks/Dhmw5GUH.js +1 -0
  889. package/dist/web/_app/immutable/chunks/DiMsLIh3.js +1 -0
  890. package/dist/web/_app/immutable/chunks/DiiXREv7.js +1 -0
  891. package/dist/web/_app/immutable/chunks/Dk2-JtmU2.js +1 -0
  892. package/dist/web/_app/immutable/chunks/Dl0bYyV_.js +1 -0
  893. package/dist/web/_app/immutable/chunks/DurEh4us2.js +1 -0
  894. package/dist/web/_app/immutable/chunks/DvMpJfpG.js +12 -0
  895. package/dist/web/_app/immutable/chunks/Dvj33Rn2.js +1 -0
  896. package/dist/web/_app/immutable/chunks/DvylWUzx.js +1 -0
  897. package/dist/web/_app/immutable/chunks/DwuBUEvU.js +1 -0
  898. package/dist/web/_app/immutable/chunks/DzaWUnWv.js +3 -0
  899. package/dist/web/_app/immutable/chunks/F92HmKX8.js +1 -0
  900. package/dist/web/_app/immutable/chunks/FISIvbqq.js +3 -0
  901. package/dist/web/_app/immutable/chunks/GC5Izn9E2.js +1 -0
  902. package/dist/web/_app/immutable/chunks/G_Qn9TDJ.js +1 -0
  903. package/dist/web/_app/immutable/chunks/Gk29olsw2.js +2 -0
  904. package/dist/web/_app/immutable/chunks/HDLg5UkK.js +2 -0
  905. package/dist/web/_app/immutable/chunks/IMJutqSu2.js +1 -0
  906. package/dist/web/_app/immutable/chunks/MAYbL-xn2.js +6 -0
  907. package/dist/web/_app/immutable/chunks/MMtHlrry.js +1 -0
  908. package/dist/web/_app/immutable/chunks/MtN4vJa02.js +1 -0
  909. package/dist/web/_app/immutable/chunks/NhtQS20X.js +1 -0
  910. package/dist/web/_app/immutable/chunks/Oglnp7sm2.js +14 -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/aSBc8N1l.js +1 -0
  914. package/dist/web/_app/immutable/chunks/dCZb8Wbu.js +1 -0
  915. package/dist/web/_app/immutable/chunks/j6ZT0Fzw2.js +2 -0
  916. package/dist/web/_app/immutable/chunks/jB_mSyDz.js +1 -0
  917. package/dist/web/_app/immutable/chunks/j_uHTBnD.js +1 -0
  918. package/dist/web/_app/immutable/chunks/joKsoiFC.js +1 -0
  919. package/dist/web/_app/immutable/chunks/kNaey6uv.js +1 -0
  920. package/dist/web/_app/immutable/chunks/nqo2e2Yv.js +1 -0
  921. package/dist/web/_app/immutable/chunks/qevfNcid.js +1 -0
  922. package/dist/web/_app/immutable/chunks/rW9JG922.js +2 -0
  923. package/dist/web/_app/immutable/chunks/rjjyuGhb.js +1 -0
  924. package/dist/web/_app/immutable/chunks/sE-xIBIx2.js +1 -0
  925. package/dist/web/_app/immutable/chunks/uHaS74te.js +1 -0
  926. package/dist/web/_app/immutable/chunks/w5tsuIav.js +5 -0
  927. package/dist/web/_app/immutable/chunks/xihTtKlq.js +1 -0
  928. package/dist/web/_app/immutable/entry/app.B7VOZHNw.js +2 -0
  929. package/dist/web/_app/immutable/entry/start.CJX1xbb4.js +1 -0
  930. package/dist/web/_app/immutable/nodes/0.DPFQMkmA.js +2 -0
  931. package/dist/web/_app/immutable/nodes/1.BUg3EbJ_.js +1 -0
  932. package/dist/web/_app/immutable/nodes/10.CZbTqhAj.js +1 -0
  933. package/dist/web/_app/immutable/nodes/11.Z-Ou8FlB.js +1 -0
  934. package/dist/web/_app/immutable/nodes/12.BUp8Zhqh.js +1 -0
  935. package/dist/web/_app/immutable/nodes/13.Po2Xe1O2.js +1 -0
  936. package/dist/web/_app/immutable/nodes/14.DJwakC0o.js +1 -0
  937. package/dist/web/_app/immutable/nodes/15.Cn6zcfI1.js +1 -0
  938. package/dist/web/_app/immutable/nodes/16.Dal2-WQp.js +1 -0
  939. package/dist/web/_app/immutable/nodes/17.BI2F37bS.js +1 -0
  940. package/dist/web/_app/immutable/nodes/18.BzDlENiF.js +1 -0
  941. package/dist/web/_app/immutable/nodes/19.CQhngMoM.js +77 -0
  942. package/dist/web/_app/immutable/nodes/2.BxjWYHmV.js +124 -0
  943. package/dist/web/_app/immutable/nodes/3.B4lvM3dS.js +6 -0
  944. package/dist/web/_app/immutable/nodes/4.CC_fNxyS.js +16 -0
  945. package/dist/web/_app/immutable/nodes/5.DlfbHz3H.js +1 -0
  946. package/dist/web/_app/immutable/nodes/6.BuwXsPuz.js +6 -0
  947. package/dist/web/_app/immutable/nodes/7.CWkwNeVy.js +1 -0
  948. package/dist/web/_app/immutable/nodes/8.bQx8gIIK.js +1 -0
  949. package/dist/web/_app/immutable/nodes/9.3Mk3Iduz.js +1 -0
  950. package/dist/web/_app/version.json +1 -1
  951. package/dist/web/favicon-16.png +0 -0
  952. package/dist/web/favicon-180.png +0 -0
  953. package/dist/web/favicon-32.png +0 -0
  954. package/dist/web/favicon-48.png +0 -0
  955. package/dist/web/favicon-512.png +0 -0
  956. package/dist/web/favicon.ico +0 -0
  957. package/dist/web/favicon.svg +8 -0
  958. package/dist/web/index.html +59 -20
  959. package/dist/web/studiograph-logomark.svg +29 -0
  960. package/package.json +44 -15
  961. package/dist/agent/role-loader.d.ts +0 -24
  962. package/dist/agent/role-loader.js +0 -67
  963. package/dist/agent/role-loader.js.map +0 -1
  964. package/dist/agent/skills/create-deck/content-guide.md +0 -238
  965. package/dist/agent/skills/create-deck/deck-cadence.md +0 -105
  966. package/dist/agent/skills/create-deck/diagrams.md +0 -431
  967. package/dist/agent/skills/create-deck/skill.md +0 -89
  968. package/dist/agent/skills/create-deck/slide-selection.md +0 -115
  969. package/dist/agent/skills/create-deck/slide-types.md +0 -638
  970. package/dist/agent/skills/create-document/skill.md +0 -229
  971. package/dist/agent/skills/enrich-entities.md +0 -136
  972. package/dist/agent/skills/obsidian-source-setup.md +0 -246
  973. package/dist/agent/skills/skill-loader.d.ts +0 -48
  974. package/dist/agent/skills/skill-loader.js +0 -166
  975. package/dist/agent/skills/skill-loader.js.map +0 -1
  976. package/dist/agent/skills/sync-configuration.md +0 -119
  977. package/dist/agent/skills/sync-setup.md +0 -82
  978. package/dist/agent/tools/message-tools.d.ts +0 -42
  979. package/dist/agent/tools/message-tools.js +0 -96
  980. package/dist/agent/tools/message-tools.js.map +0 -1
  981. package/dist/agent/tools/sync-tools.d.ts +0 -35
  982. package/dist/agent/tools/sync-tools.js +0 -992
  983. package/dist/agent/tools/sync-tools.js.map +0 -1
  984. package/dist/auth/github.d.ts +0 -56
  985. package/dist/auth/github.js +0 -169
  986. package/dist/auth/github.js.map +0 -1
  987. package/dist/cli/commands/access.d.ts +0 -11
  988. package/dist/cli/commands/access.js +0 -156
  989. package/dist/cli/commands/access.js.map +0 -1
  990. package/dist/cli/commands/app.d.ts +0 -7
  991. package/dist/cli/commands/app.js +0 -268
  992. package/dist/cli/commands/app.js.map +0 -1
  993. package/dist/cli/commands/auth.d.ts +0 -10
  994. package/dist/cli/commands/auth.js +0 -79
  995. package/dist/cli/commands/auth.js.map +0 -1
  996. package/dist/cli/commands/clear.d.ts +0 -5
  997. package/dist/cli/commands/clear.js +0 -36
  998. package/dist/cli/commands/clear.js.map +0 -1
  999. package/dist/cli/commands/collection.d.ts +0 -10
  1000. package/dist/cli/commands/collection.js +0 -185
  1001. package/dist/cli/commands/collection.js.map +0 -1
  1002. package/dist/cli/commands/enrich.d.ts +0 -11
  1003. package/dist/cli/commands/enrich.js +0 -135
  1004. package/dist/cli/commands/enrich.js.map +0 -1
  1005. package/dist/cli/commands/graphrag.d.ts +0 -12
  1006. package/dist/cli/commands/graphrag.js +0 -122
  1007. package/dist/cli/commands/graphrag.js.map +0 -1
  1008. package/dist/cli/commands/join.d.ts +0 -9
  1009. package/dist/cli/commands/join.js +0 -255
  1010. package/dist/cli/commands/join.js.map +0 -1
  1011. package/dist/cli/commands/members.d.ts +0 -11
  1012. package/dist/cli/commands/members.js +0 -230
  1013. package/dist/cli/commands/members.js.map +0 -1
  1014. package/dist/cli/commands/org.d.ts +0 -10
  1015. package/dist/cli/commands/org.js +0 -132
  1016. package/dist/cli/commands/org.js.map +0 -1
  1017. package/dist/cli/commands/provision.d.ts +0 -8
  1018. package/dist/cli/commands/provision.js +0 -116
  1019. package/dist/cli/commands/provision.js.map +0 -1
  1020. package/dist/cli/commands/resolve.d.ts +0 -8
  1021. package/dist/cli/commands/resolve.js +0 -85
  1022. package/dist/cli/commands/resolve.js.map +0 -1
  1023. package/dist/cli/commands/review.d.ts +0 -19
  1024. package/dist/cli/commands/review.js +0 -128
  1025. package/dist/cli/commands/review.js.map +0 -1
  1026. package/dist/cli/commands/source.d.ts +0 -16
  1027. package/dist/cli/commands/source.js +0 -159
  1028. package/dist/cli/commands/source.js.map +0 -1
  1029. package/dist/cli/commands/start.d.ts +0 -7
  1030. package/dist/cli/commands/start.js +0 -576
  1031. package/dist/cli/commands/start.js.map +0 -1
  1032. package/dist/cli/commands/sync-collection.d.ts +0 -14
  1033. package/dist/cli/commands/sync-collection.js +0 -355
  1034. package/dist/cli/commands/sync-collection.js.map +0 -1
  1035. package/dist/cli/commands/sync-entities.d.ts +0 -13
  1036. package/dist/cli/commands/sync-entities.js +0 -242
  1037. package/dist/cli/commands/sync-entities.js.map +0 -1
  1038. package/dist/cli/commands/team.d.ts +0 -12
  1039. package/dist/cli/commands/team.js +0 -185
  1040. package/dist/cli/commands/team.js.map +0 -1
  1041. package/dist/cli/commands/update.d.ts +0 -8
  1042. package/dist/cli/commands/update.js +0 -155
  1043. package/dist/cli/commands/update.js.map +0 -1
  1044. package/dist/cli/commands/user.d.ts +0 -7
  1045. package/dist/cli/commands/user.js +0 -169
  1046. package/dist/cli/commands/user.js.map +0 -1
  1047. package/dist/cli/scaffolding.d.ts +0 -12
  1048. package/dist/cli/scaffolding.js +0 -397
  1049. package/dist/cli/scaffolding.js.map +0 -1
  1050. package/dist/cli/sync-review-interactive.d.ts +0 -31
  1051. package/dist/cli/sync-review-interactive.js +0 -393
  1052. package/dist/cli/sync-review-interactive.js.map +0 -1
  1053. package/dist/core/feature-flags.d.ts +0 -17
  1054. package/dist/core/feature-flags.js +0 -15
  1055. package/dist/core/feature-flags.js.map +0 -1
  1056. package/dist/core/features.d.ts +0 -16
  1057. package/dist/core/features.js +0 -48
  1058. package/dist/core/features.js.map +0 -1
  1059. package/dist/core/launch-entity-types.d.ts +0 -23
  1060. package/dist/core/launch-entity-types.js +0 -48
  1061. package/dist/core/launch-entity-types.js.map +0 -1
  1062. package/dist/core/migration-runner.d.ts +0 -42
  1063. package/dist/core/migration-runner.js +0 -232
  1064. package/dist/core/migration-runner.js.map +0 -1
  1065. package/dist/core/migration-types.d.ts +0 -101
  1066. package/dist/core/migration-types.js +0 -21
  1067. package/dist/core/migration-types.js.map +0 -1
  1068. package/dist/core/migrations/20260219-formalize-memory-location.d.ts +0 -2
  1069. package/dist/core/migrations/20260219-formalize-memory-location.js +0 -35
  1070. package/dist/core/migrations/20260219-formalize-memory-location.js.map +0 -1
  1071. package/dist/core/migrations/20260220-add-workspace-metadata.d.ts +0 -12
  1072. package/dist/core/migrations/20260220-add-workspace-metadata.js +0 -65
  1073. package/dist/core/migrations/20260220-add-workspace-metadata.js.map +0 -1
  1074. package/dist/core/migrations/20260220-add-workspace-readme.d.ts +0 -11
  1075. package/dist/core/migrations/20260220-add-workspace-readme.js +0 -82
  1076. package/dist/core/migrations/20260220-add-workspace-readme.js.map +0 -1
  1077. package/dist/core/migrations/20260220-migrate-yaml-to-json.d.ts +0 -9
  1078. package/dist/core/migrations/20260220-migrate-yaml-to-json.js +0 -64
  1079. package/dist/core/migrations/20260220-migrate-yaml-to-json.js.map +0 -1
  1080. package/dist/core/migrations/index.d.ts +0 -11
  1081. package/dist/core/migrations/index.js +0 -23
  1082. package/dist/core/migrations/index.js.map +0 -1
  1083. package/dist/integrations/asana.d.ts +0 -26
  1084. package/dist/integrations/asana.js +0 -78
  1085. package/dist/integrations/asana.js.map +0 -1
  1086. package/dist/integrations/figma-local.d.ts +0 -16
  1087. package/dist/integrations/figma-local.js +0 -10
  1088. package/dist/integrations/figma-local.js.map +0 -1
  1089. package/dist/integrations/figma.d.ts +0 -17
  1090. package/dist/integrations/figma.js +0 -17
  1091. package/dist/integrations/figma.js.map +0 -1
  1092. package/dist/integrations/granola.d.ts +0 -24
  1093. package/dist/integrations/granola.js +0 -60
  1094. package/dist/integrations/granola.js.map +0 -1
  1095. package/dist/integrations/linear.d.ts +0 -14
  1096. package/dist/integrations/linear.js +0 -80
  1097. package/dist/integrations/linear.js.map +0 -1
  1098. package/dist/integrations/paper-local.d.ts +0 -14
  1099. package/dist/integrations/paper-local.js +0 -10
  1100. package/dist/integrations/paper-local.js.map +0 -1
  1101. package/dist/integrations/paper.d.ts +0 -2
  1102. package/dist/integrations/paper.js +0 -10
  1103. package/dist/integrations/paper.js.map +0 -1
  1104. package/dist/integrations/pipedrive.d.ts +0 -26
  1105. package/dist/integrations/pipedrive.js +0 -97
  1106. package/dist/integrations/pipedrive.js.map +0 -1
  1107. package/dist/integrations/registry.d.ts +0 -8
  1108. package/dist/integrations/registry.js +0 -7
  1109. package/dist/integrations/registry.js.map +0 -1
  1110. package/dist/integrations/types.d.ts +0 -43
  1111. package/dist/integrations/types.js +0 -5
  1112. package/dist/integrations/types.js.map +0 -1
  1113. package/dist/lib/lib/utils.d.ts +0 -2
  1114. package/dist/lib/lib/utils.js +0 -6
  1115. package/dist/lib/lib/utils.js.map +0 -1
  1116. package/dist/mcp/connectors/asana.d.ts +0 -2
  1117. package/dist/mcp/connectors/asana.js +0 -20
  1118. package/dist/mcp/connectors/asana.js.map +0 -1
  1119. package/dist/mcp/connectors/definitions.d.ts +0 -45
  1120. package/dist/mcp/connectors/definitions.js +0 -32
  1121. package/dist/mcp/connectors/definitions.js.map +0 -1
  1122. package/dist/mcp/connectors/figma.d.ts +0 -5
  1123. package/dist/mcp/connectors/figma.js +0 -21
  1124. package/dist/mcp/connectors/figma.js.map +0 -1
  1125. package/dist/mcp/connectors/gdrive.d.ts +0 -2
  1126. package/dist/mcp/connectors/gdrive.js +0 -20
  1127. package/dist/mcp/connectors/gdrive.js.map +0 -1
  1128. package/dist/mcp/connectors/granola.d.ts +0 -2
  1129. package/dist/mcp/connectors/granola.js +0 -12
  1130. package/dist/mcp/connectors/granola.js.map +0 -1
  1131. package/dist/mcp/connectors/linear.d.ts +0 -2
  1132. package/dist/mcp/connectors/linear.js +0 -19
  1133. package/dist/mcp/connectors/linear.js.map +0 -1
  1134. package/dist/mcp/connectors/obsidian.d.ts +0 -2
  1135. package/dist/mcp/connectors/obsidian.js +0 -19
  1136. package/dist/mcp/connectors/obsidian.js.map +0 -1
  1137. package/dist/mcp/connectors/pipedrive.d.ts +0 -2
  1138. package/dist/mcp/connectors/pipedrive.js +0 -20
  1139. package/dist/mcp/connectors/pipedrive.js.map +0 -1
  1140. package/dist/mcp/connectors/slack.d.ts +0 -2
  1141. package/dist/mcp/connectors/slack.js +0 -21
  1142. package/dist/mcp/connectors/slack.js.map +0 -1
  1143. package/dist/mcp/server-oauth-provider.d.ts +0 -56
  1144. package/dist/mcp/server-oauth-provider.js +0 -142
  1145. package/dist/mcp/server-oauth-provider.js.map +0 -1
  1146. package/dist/renderers/documents/branding.d.ts +0 -2
  1147. package/dist/renderers/documents/branding.js +0 -42
  1148. package/dist/renderers/documents/branding.js.map +0 -1
  1149. package/dist/renderers/documents/entity-types.json +0 -14
  1150. package/dist/renderers/documents/parser/frontmatter.d.ts +0 -5
  1151. package/dist/renderers/documents/parser/frontmatter.js +0 -90
  1152. package/dist/renderers/documents/parser/frontmatter.js.map +0 -1
  1153. package/dist/renderers/documents/parser/index.d.ts +0 -5
  1154. package/dist/renderers/documents/parser/index.js +0 -142
  1155. package/dist/renderers/documents/parser/index.js.map +0 -1
  1156. package/dist/renderers/documents/parser/sections.d.ts +0 -18
  1157. package/dist/renderers/documents/parser/sections.js +0 -131
  1158. package/dist/renderers/documents/parser/sections.js.map +0 -1
  1159. package/dist/renderers/documents/pdf/generator.d.ts +0 -13
  1160. package/dist/renderers/documents/pdf/generator.js +0 -79
  1161. package/dist/renderers/documents/pdf/generator.js.map +0 -1
  1162. package/dist/renderers/documents/plugin.d.ts +0 -2
  1163. package/dist/renderers/documents/plugin.js +0 -63
  1164. package/dist/renderers/documents/plugin.js.map +0 -1
  1165. package/dist/renderers/documents/public/branding/logo.svg +0 -3
  1166. package/dist/renderers/documents/public/editor/chrome.css +0 -461
  1167. package/dist/renderers/documents/public/editor/chrome.js +0 -524
  1168. package/dist/renderers/documents/public/editor/editor.css +0 -751
  1169. package/dist/renderers/documents/public/editor/editor.html +0 -140
  1170. package/dist/renderers/documents/public/editor/editor.js +0 -953
  1171. package/dist/renderers/documents/public/fonts/fonts.css +0 -145
  1172. package/dist/renderers/documents/public/viewer/viewer.css +0 -1
  1173. package/dist/renderers/documents/public/viewer/viewer.js +0 -4
  1174. package/dist/renderers/documents/renderer/back.d.ts +0 -8
  1175. package/dist/renderers/documents/renderer/back.js +0 -28
  1176. package/dist/renderers/documents/renderer/back.js.map +0 -1
  1177. package/dist/renderers/documents/renderer/content.d.ts +0 -7
  1178. package/dist/renderers/documents/renderer/content.js +0 -25
  1179. package/dist/renderers/documents/renderer/content.js.map +0 -1
  1180. package/dist/renderers/documents/renderer/cover.d.ts +0 -15
  1181. package/dist/renderers/documents/renderer/cover.js +0 -43
  1182. package/dist/renderers/documents/renderer/cover.js.map +0 -1
  1183. package/dist/renderers/documents/renderer/helpers.d.ts +0 -1
  1184. package/dist/renderers/documents/renderer/helpers.js +0 -11
  1185. package/dist/renderers/documents/renderer/helpers.js.map +0 -1
  1186. package/dist/renderers/documents/renderer/index.d.ts +0 -32
  1187. package/dist/renderers/documents/renderer/index.js +0 -80
  1188. package/dist/renderers/documents/renderer/index.js.map +0 -1
  1189. package/dist/renderers/documents/renderer/styles.d.ts +0 -16
  1190. package/dist/renderers/documents/renderer/styles.js +0 -546
  1191. package/dist/renderers/documents/renderer/styles.js.map +0 -1
  1192. package/dist/renderers/documents/routes/api.d.ts +0 -2
  1193. package/dist/renderers/documents/routes/api.js +0 -587
  1194. package/dist/renderers/documents/routes/api.js.map +0 -1
  1195. package/dist/renderers/documents/routes/editor.d.ts +0 -2
  1196. package/dist/renderers/documents/routes/editor.js +0 -31
  1197. package/dist/renderers/documents/routes/editor.js.map +0 -1
  1198. package/dist/renderers/documents/routes/viewer.d.ts +0 -2
  1199. package/dist/renderers/documents/routes/viewer.js +0 -67
  1200. package/dist/renderers/documents/routes/viewer.js.map +0 -1
  1201. package/dist/renderers/documents/types.d.ts +0 -61
  1202. package/dist/renderers/documents/types.js +0 -2
  1203. package/dist/renderers/documents/types.js.map +0 -1
  1204. package/dist/renderers/index.d.ts +0 -24
  1205. package/dist/renderers/index.js +0 -66
  1206. package/dist/renderers/index.js.map +0 -1
  1207. package/dist/renderers/slides/design-system/tokens.d.ts +0 -108
  1208. package/dist/renderers/slides/design-system/tokens.js +0 -44
  1209. package/dist/renderers/slides/design-system/tokens.js.map +0 -1
  1210. package/dist/renderers/slides/entity-types.json +0 -14
  1211. package/dist/renderers/slides/parser/comment-parser.d.ts +0 -10
  1212. package/dist/renderers/slides/parser/comment-parser.js +0 -89
  1213. package/dist/renderers/slides/parser/comment-parser.js.map +0 -1
  1214. package/dist/renderers/slides/parser/frontmatter.d.ts +0 -10
  1215. package/dist/renderers/slides/parser/frontmatter.js +0 -93
  1216. package/dist/renderers/slides/parser/frontmatter.js.map +0 -1
  1217. package/dist/renderers/slides/parser/index.d.ts +0 -7
  1218. package/dist/renderers/slides/parser/index.js +0 -569
  1219. package/dist/renderers/slides/parser/index.js.map +0 -1
  1220. package/dist/renderers/slides/parser/slide-splitter.d.ts +0 -6
  1221. package/dist/renderers/slides/parser/slide-splitter.js +0 -54
  1222. package/dist/renderers/slides/parser/slide-splitter.js.map +0 -1
  1223. package/dist/renderers/slides/parser/type-detector.d.ts +0 -6
  1224. package/dist/renderers/slides/parser/type-detector.js +0 -70
  1225. package/dist/renderers/slides/parser/type-detector.js.map +0 -1
  1226. package/dist/renderers/slides/pdf/generator.d.ts +0 -11
  1227. package/dist/renderers/slides/pdf/generator.js +0 -105
  1228. package/dist/renderers/slides/pdf/generator.js.map +0 -1
  1229. package/dist/renderers/slides/plugin.d.ts +0 -2
  1230. package/dist/renderers/slides/plugin.js +0 -70
  1231. package/dist/renderers/slides/plugin.js.map +0 -1
  1232. package/dist/renderers/slides/public/editor/.gitkeep +0 -0
  1233. package/dist/renderers/slides/public/editor/chrome.css +0 -461
  1234. package/dist/renderers/slides/public/editor/chrome.js +0 -519
  1235. package/dist/renderers/slides/public/editor/editor.css +0 -896
  1236. package/dist/renderers/slides/public/editor/editor.html +0 -131
  1237. package/dist/renderers/slides/public/editor/editor.js +0 -1038
  1238. package/dist/renderers/slides/public/fonts/fonts.css +0 -145
  1239. package/dist/renderers/slides/public/viewer/.gitkeep +0 -0
  1240. package/dist/renderers/slides/public/viewer/chrome.css +0 -62
  1241. package/dist/renderers/slides/public/viewer/transitions.css +0 -1
  1242. package/dist/renderers/slides/public/viewer/viewer.css +0 -2145
  1243. package/dist/renderers/slides/public/viewer/viewer.js +0 -303
  1244. package/dist/renderers/slides/renderer/chrome/browser-frame.d.ts +0 -5
  1245. package/dist/renderers/slides/renderer/chrome/browser-frame.js +0 -22
  1246. package/dist/renderers/slides/renderer/chrome/browser-frame.js.map +0 -1
  1247. package/dist/renderers/slides/renderer/chrome/mobile-frame.d.ts +0 -6
  1248. package/dist/renderers/slides/renderer/chrome/mobile-frame.js +0 -18
  1249. package/dist/renderers/slides/renderer/chrome/mobile-frame.js.map +0 -1
  1250. package/dist/renderers/slides/renderer/helpers.d.ts +0 -13
  1251. package/dist/renderers/slides/renderer/helpers.js +0 -33
  1252. package/dist/renderers/slides/renderer/helpers.js.map +0 -1
  1253. package/dist/renderers/slides/renderer/index.d.ts +0 -16
  1254. package/dist/renderers/slides/renderer/index.js +0 -160
  1255. package/dist/renderers/slides/renderer/index.js.map +0 -1
  1256. package/dist/renderers/slides/renderer/layouts/agenda.d.ts +0 -2
  1257. package/dist/renderers/slides/renderer/layouts/agenda.js +0 -18
  1258. package/dist/renderers/slides/renderer/layouts/agenda.js.map +0 -1
  1259. package/dist/renderers/slides/renderer/layouts/blank.d.ts +0 -2
  1260. package/dist/renderers/slides/renderer/layouts/blank.js +0 -4
  1261. package/dist/renderers/slides/renderer/layouts/blank.js.map +0 -1
  1262. package/dist/renderers/slides/renderer/layouts/columns.d.ts +0 -2
  1263. package/dist/renderers/slides/renderer/layouts/columns.js +0 -32
  1264. package/dist/renderers/slides/renderer/layouts/columns.js.map +0 -1
  1265. package/dist/renderers/slides/renderer/layouts/cover.d.ts +0 -2
  1266. package/dist/renderers/slides/renderer/layouts/cover.js +0 -18
  1267. package/dist/renderers/slides/renderer/layouts/cover.js.map +0 -1
  1268. package/dist/renderers/slides/renderer/layouts/diagram-concentric.d.ts +0 -2
  1269. package/dist/renderers/slides/renderer/layouts/diagram-concentric.js +0 -120
  1270. package/dist/renderers/slides/renderer/layouts/diagram-concentric.js.map +0 -1
  1271. package/dist/renderers/slides/renderer/layouts/diagram-matrix.d.ts +0 -2
  1272. package/dist/renderers/slides/renderer/layouts/diagram-matrix.js +0 -158
  1273. package/dist/renderers/slides/renderer/layouts/diagram-matrix.js.map +0 -1
  1274. package/dist/renderers/slides/renderer/layouts/diagram-pyramid.d.ts +0 -2
  1275. package/dist/renderers/slides/renderer/layouts/diagram-pyramid.js +0 -86
  1276. package/dist/renderers/slides/renderer/layouts/diagram-pyramid.js.map +0 -1
  1277. package/dist/renderers/slides/renderer/layouts/diagram-sitemap.d.ts +0 -2
  1278. package/dist/renderers/slides/renderer/layouts/diagram-sitemap.js +0 -146
  1279. package/dist/renderers/slides/renderer/layouts/diagram-sitemap.js.map +0 -1
  1280. package/dist/renderers/slides/renderer/layouts/diagram-venn.d.ts +0 -2
  1281. package/dist/renderers/slides/renderer/layouts/diagram-venn.js +0 -100
  1282. package/dist/renderers/slides/renderer/layouts/diagram-venn.js.map +0 -1
  1283. package/dist/renderers/slides/renderer/layouts/diagram.d.ts +0 -2
  1284. package/dist/renderers/slides/renderer/layouts/diagram.js +0 -21
  1285. package/dist/renderers/slides/renderer/layouts/diagram.js.map +0 -1
  1286. package/dist/renderers/slides/renderer/layouts/divider.d.ts +0 -2
  1287. package/dist/renderers/slides/renderer/layouts/divider.js +0 -4
  1288. package/dist/renderers/slides/renderer/layouts/divider.js.map +0 -1
  1289. package/dist/renderers/slides/renderer/layouts/end.d.ts +0 -2
  1290. package/dist/renderers/slides/renderer/layouts/end.js +0 -8
  1291. package/dist/renderers/slides/renderer/layouts/end.js.map +0 -1
  1292. package/dist/renderers/slides/renderer/layouts/framework.d.ts +0 -2
  1293. package/dist/renderers/slides/renderer/layouts/framework.js +0 -47
  1294. package/dist/renderers/slides/renderer/layouts/framework.js.map +0 -1
  1295. package/dist/renderers/slides/renderer/layouts/image-browser-2up.d.ts +0 -2
  1296. package/dist/renderers/slides/renderer/layouts/image-browser-2up.js +0 -38
  1297. package/dist/renderers/slides/renderer/layouts/image-browser-2up.js.map +0 -1
  1298. package/dist/renderers/slides/renderer/layouts/image-browser-6up.d.ts +0 -2
  1299. package/dist/renderers/slides/renderer/layouts/image-browser-6up.js +0 -30
  1300. package/dist/renderers/slides/renderer/layouts/image-browser-6up.js.map +0 -1
  1301. package/dist/renderers/slides/renderer/layouts/image-browser.d.ts +0 -2
  1302. package/dist/renderers/slides/renderer/layouts/image-browser.js +0 -18
  1303. package/dist/renderers/slides/renderer/layouts/image-browser.js.map +0 -1
  1304. package/dist/renderers/slides/renderer/layouts/image-bullets.d.ts +0 -2
  1305. package/dist/renderers/slides/renderer/layouts/image-bullets.js +0 -26
  1306. package/dist/renderers/slides/renderer/layouts/image-bullets.js.map +0 -1
  1307. package/dist/renderers/slides/renderer/layouts/image-device-pair.d.ts +0 -2
  1308. package/dist/renderers/slides/renderer/layouts/image-device-pair.js +0 -34
  1309. package/dist/renderers/slides/renderer/layouts/image-device-pair.js.map +0 -1
  1310. package/dist/renderers/slides/renderer/layouts/image-full.d.ts +0 -2
  1311. package/dist/renderers/slides/renderer/layouts/image-full.js +0 -36
  1312. package/dist/renderers/slides/renderer/layouts/image-full.js.map +0 -1
  1313. package/dist/renderers/slides/renderer/layouts/image-grid-2x2.d.ts +0 -2
  1314. package/dist/renderers/slides/renderer/layouts/image-grid-2x2.js +0 -23
  1315. package/dist/renderers/slides/renderer/layouts/image-grid-2x2.js.map +0 -1
  1316. package/dist/renderers/slides/renderer/layouts/image-keywords.d.ts +0 -2
  1317. package/dist/renderers/slides/renderer/layouts/image-keywords.js +0 -31
  1318. package/dist/renderers/slides/renderer/layouts/image-keywords.js.map +0 -1
  1319. package/dist/renderers/slides/renderer/layouts/image-mobile-3up.d.ts +0 -2
  1320. package/dist/renderers/slides/renderer/layouts/image-mobile-3up.js +0 -22
  1321. package/dist/renderers/slides/renderer/layouts/image-mobile-3up.js.map +0 -1
  1322. package/dist/renderers/slides/renderer/layouts/image-mobile.d.ts +0 -2
  1323. package/dist/renderers/slides/renderer/layouts/image-mobile.js +0 -17
  1324. package/dist/renderers/slides/renderer/layouts/image-mobile.js.map +0 -1
  1325. package/dist/renderers/slides/renderer/layouts/image-split-right.d.ts +0 -2
  1326. package/dist/renderers/slides/renderer/layouts/image-split-right.js +0 -19
  1327. package/dist/renderers/slides/renderer/layouts/image-split-right.js.map +0 -1
  1328. package/dist/renderers/slides/renderer/layouts/image-split.d.ts +0 -2
  1329. package/dist/renderers/slides/renderer/layouts/image-split.js +0 -19
  1330. package/dist/renderers/slides/renderer/layouts/image-split.js.map +0 -1
  1331. package/dist/renderers/slides/renderer/layouts/introductions.d.ts +0 -2
  1332. package/dist/renderers/slides/renderer/layouts/introductions.js +0 -41
  1333. package/dist/renderers/slides/renderer/layouts/introductions.js.map +0 -1
  1334. package/dist/renderers/slides/renderer/layouts/moodboard.d.ts +0 -15
  1335. package/dist/renderers/slides/renderer/layouts/moodboard.js +0 -63
  1336. package/dist/renderers/slides/renderer/layouts/moodboard.js.map +0 -1
  1337. package/dist/renderers/slides/renderer/layouts/next-steps.d.ts +0 -2
  1338. package/dist/renderers/slides/renderer/layouts/next-steps.js +0 -13
  1339. package/dist/renderers/slides/renderer/layouts/next-steps.js.map +0 -1
  1340. package/dist/renderers/slides/renderer/layouts/pullquote.d.ts +0 -2
  1341. package/dist/renderers/slides/renderer/layouts/pullquote.js +0 -17
  1342. package/dist/renderers/slides/renderer/layouts/pullquote.js.map +0 -1
  1343. package/dist/renderers/slides/renderer/layouts/schedule.d.ts +0 -2
  1344. package/dist/renderers/slides/renderer/layouts/schedule.js +0 -58
  1345. package/dist/renderers/slides/renderer/layouts/schedule.js.map +0 -1
  1346. package/dist/renderers/slides/renderer/layouts/section.d.ts +0 -2
  1347. package/dist/renderers/slides/renderer/layouts/section.js +0 -18
  1348. package/dist/renderers/slides/renderer/layouts/section.js.map +0 -1
  1349. package/dist/renderers/slides/renderer/layouts/statement.d.ts +0 -2
  1350. package/dist/renderers/slides/renderer/layouts/statement.js +0 -13
  1351. package/dist/renderers/slides/renderer/layouts/statement.js.map +0 -1
  1352. package/dist/renderers/slides/renderer/layouts/stats.d.ts +0 -2
  1353. package/dist/renderers/slides/renderer/layouts/stats.js +0 -26
  1354. package/dist/renderers/slides/renderer/layouts/stats.js.map +0 -1
  1355. package/dist/renderers/slides/renderer/layouts/table.d.ts +0 -2
  1356. package/dist/renderers/slides/renderer/layouts/table.js +0 -23
  1357. package/dist/renderers/slides/renderer/layouts/table.js.map +0 -1
  1358. package/dist/renderers/slides/renderer/layouts/text-body.d.ts +0 -2
  1359. package/dist/renderers/slides/renderer/layouts/text-body.js +0 -14
  1360. package/dist/renderers/slides/renderer/layouts/text-body.js.map +0 -1
  1361. package/dist/renderers/slides/renderer/placeholder.d.ts +0 -5
  1362. package/dist/renderers/slides/renderer/placeholder.js +0 -12
  1363. package/dist/renderers/slides/renderer/placeholder.js.map +0 -1
  1364. package/dist/renderers/slides/routes/api.d.ts +0 -2
  1365. package/dist/renderers/slides/routes/api.js +0 -568
  1366. package/dist/renderers/slides/routes/api.js.map +0 -1
  1367. package/dist/renderers/slides/routes/editor.d.ts +0 -2
  1368. package/dist/renderers/slides/routes/editor.js +0 -32
  1369. package/dist/renderers/slides/routes/editor.js.map +0 -1
  1370. package/dist/renderers/slides/routes/viewer.d.ts +0 -2
  1371. package/dist/renderers/slides/routes/viewer.js +0 -67
  1372. package/dist/renderers/slides/routes/viewer.js.map +0 -1
  1373. package/dist/renderers/slides/types.d.ts +0 -111
  1374. package/dist/renderers/slides/types.js +0 -2
  1375. package/dist/renderers/slides/types.js.map +0 -1
  1376. package/dist/server/agents/agent-loader.d.ts +0 -16
  1377. package/dist/server/agents/agent-loader.js +0 -175
  1378. package/dist/server/agents/agent-loader.js.map +0 -1
  1379. package/dist/server/agents/agent-runner.d.ts +0 -33
  1380. package/dist/server/agents/agent-runner.js +0 -187
  1381. package/dist/server/agents/agent-runner.js.map +0 -1
  1382. package/dist/server/agents/agent-runtime.d.ts +0 -39
  1383. package/dist/server/agents/agent-runtime.js +0 -214
  1384. package/dist/server/agents/agent-runtime.js.map +0 -1
  1385. package/dist/server/agents/base-agent.d.ts +0 -30
  1386. package/dist/server/agents/base-agent.js +0 -88
  1387. package/dist/server/agents/base-agent.js.map +0 -1
  1388. package/dist/server/agents/executive-digest.d.ts +0 -16
  1389. package/dist/server/agents/executive-digest.js +0 -115
  1390. package/dist/server/agents/executive-digest.js.map +0 -1
  1391. package/dist/server/agents/graph-steward.d.ts +0 -16
  1392. package/dist/server/agents/graph-steward.js +0 -59
  1393. package/dist/server/agents/graph-steward.js.map +0 -1
  1394. package/dist/server/agents/meeting-followup.d.ts +0 -16
  1395. package/dist/server/agents/meeting-followup.js +0 -88
  1396. package/dist/server/agents/meeting-followup.js.map +0 -1
  1397. package/dist/server/agents/pipeline-monitor.d.ts +0 -15
  1398. package/dist/server/agents/pipeline-monitor.js +0 -86
  1399. package/dist/server/agents/pipeline-monitor.js.map +0 -1
  1400. package/dist/server/agents/types.d.ts +0 -81
  1401. package/dist/server/agents/types.js +0 -41
  1402. package/dist/server/agents/types.js.map +0 -1
  1403. package/dist/server/chrome/chrome.css +0 -701
  1404. package/dist/server/chrome/chrome.js +0 -374
  1405. package/dist/server/collab-authority.d.ts +0 -70
  1406. package/dist/server/collab-authority.js +0 -218
  1407. package/dist/server/collab-authority.js.map +0 -1
  1408. package/dist/server/collab.d.ts +0 -29
  1409. package/dist/server/collab.js +0 -195
  1410. package/dist/server/collab.js.map +0 -1
  1411. package/dist/server/commit-scheduler.d.ts +0 -39
  1412. package/dist/server/commit-scheduler.js +0 -113
  1413. package/dist/server/commit-scheduler.js.map +0 -1
  1414. package/dist/server/plugin-loader.d.ts +0 -53
  1415. package/dist/server/plugin-loader.js +0 -155
  1416. package/dist/server/plugin-loader.js.map +0 -1
  1417. package/dist/server/routes/agents-api.d.ts +0 -10
  1418. package/dist/server/routes/agents-api.js +0 -25
  1419. package/dist/server/routes/agents-api.js.map +0 -1
  1420. package/dist/server/routes/collab.d.ts +0 -6
  1421. package/dist/server/routes/collab.js +0 -10
  1422. package/dist/server/routes/collab.js.map +0 -1
  1423. package/dist/server/routes/features-api.d.ts +0 -10
  1424. package/dist/server/routes/features-api.js +0 -15
  1425. package/dist/server/routes/features-api.js.map +0 -1
  1426. package/dist/server/routes/git-api.d.ts +0 -9
  1427. package/dist/server/routes/git-api.js +0 -82
  1428. package/dist/server/routes/git-api.js.map +0 -1
  1429. package/dist/server/routes/meeting-ingest-api.d.ts +0 -14
  1430. package/dist/server/routes/meeting-ingest-api.js +0 -117
  1431. package/dist/server/routes/meeting-ingest-api.js.map +0 -1
  1432. package/dist/server/routes/messages-api.d.ts +0 -15
  1433. package/dist/server/routes/messages-api.js +0 -569
  1434. package/dist/server/routes/messages-api.js.map +0 -1
  1435. package/dist/server/routes/sync-api.d.ts +0 -26
  1436. package/dist/server/routes/sync-api.js +0 -848
  1437. package/dist/server/routes/sync-api.js.map +0 -1
  1438. package/dist/server/routes/view-public.d.ts +0 -10
  1439. package/dist/server/routes/view-public.js +0 -107
  1440. package/dist/server/routes/view-public.js.map +0 -1
  1441. package/dist/server/routes/webhook.d.ts +0 -14
  1442. package/dist/server/routes/webhook.js +0 -102
  1443. package/dist/server/routes/webhook.js.map +0 -1
  1444. package/dist/services/batch-processor.d.ts +0 -49
  1445. package/dist/services/batch-processor.js +0 -166
  1446. package/dist/services/batch-processor.js.map +0 -1
  1447. package/dist/services/briefing.d.ts +0 -26
  1448. package/dist/services/briefing.js +0 -206
  1449. package/dist/services/briefing.js.map +0 -1
  1450. package/dist/services/github-provisioner.d.ts +0 -36
  1451. package/dist/services/github-provisioner.js +0 -126
  1452. package/dist/services/github-provisioner.js.map +0 -1
  1453. package/dist/services/github-service.d.ts +0 -99
  1454. package/dist/services/github-service.js +0 -310
  1455. package/dist/services/github-service.js.map +0 -1
  1456. package/dist/services/heartbeat.d.ts +0 -35
  1457. package/dist/services/heartbeat.js +0 -236
  1458. package/dist/services/heartbeat.js.map +0 -1
  1459. package/dist/services/image-import-service.d.ts +0 -24
  1460. package/dist/services/image-import-service.js +0 -108
  1461. package/dist/services/image-import-service.js.map +0 -1
  1462. package/dist/services/insights.d.ts +0 -38
  1463. package/dist/services/insights.js +0 -269
  1464. package/dist/services/insights.js.map +0 -1
  1465. package/dist/services/meeting-processor.d.ts +0 -97
  1466. package/dist/services/meeting-processor.js +0 -382
  1467. package/dist/services/meeting-processor.js.map +0 -1
  1468. package/dist/services/message-service.d.ts +0 -117
  1469. package/dist/services/message-service.js +0 -414
  1470. package/dist/services/message-service.js.map +0 -1
  1471. package/dist/services/sync/collection-sync.d.ts +0 -60
  1472. package/dist/services/sync/collection-sync.js +0 -509
  1473. package/dist/services/sync/collection-sync.js.map +0 -1
  1474. package/dist/services/sync/commit.d.ts +0 -60
  1475. package/dist/services/sync/commit.js +0 -354
  1476. package/dist/services/sync/commit.js.map +0 -1
  1477. package/dist/services/sync/context-index.d.ts +0 -69
  1478. package/dist/services/sync/context-index.js +0 -280
  1479. package/dist/services/sync/context-index.js.map +0 -1
  1480. package/dist/services/sync/data-fetcher.d.ts +0 -31
  1481. package/dist/services/sync/data-fetcher.js +0 -12
  1482. package/dist/services/sync/data-fetcher.js.map +0 -1
  1483. package/dist/services/sync/derive.d.ts +0 -34
  1484. package/dist/services/sync/derive.js +0 -164
  1485. package/dist/services/sync/derive.js.map +0 -1
  1486. package/dist/services/sync/enrichment-state.d.ts +0 -31
  1487. package/dist/services/sync/enrichment-state.js +0 -63
  1488. package/dist/services/sync/enrichment-state.js.map +0 -1
  1489. package/dist/services/sync/enrichment.d.ts +0 -25
  1490. package/dist/services/sync/enrichment.js +0 -121
  1491. package/dist/services/sync/enrichment.js.map +0 -1
  1492. package/dist/services/sync/entity-refresh.d.ts +0 -30
  1493. package/dist/services/sync/entity-refresh.js +0 -275
  1494. package/dist/services/sync/entity-refresh.js.map +0 -1
  1495. package/dist/services/sync/frontmatter-extractor.d.ts +0 -40
  1496. package/dist/services/sync/frontmatter-extractor.js +0 -279
  1497. package/dist/services/sync/frontmatter-extractor.js.map +0 -1
  1498. package/dist/services/sync/graph-match-state.d.ts +0 -33
  1499. package/dist/services/sync/graph-match-state.js +0 -61
  1500. package/dist/services/sync/graph-match-state.js.map +0 -1
  1501. package/dist/services/sync/graph-match.d.ts +0 -53
  1502. package/dist/services/sync/graph-match.js +0 -316
  1503. package/dist/services/sync/graph-match.js.map +0 -1
  1504. package/dist/services/sync/graphrag-client.d.ts +0 -43
  1505. package/dist/services/sync/graphrag-client.js +0 -94
  1506. package/dist/services/sync/graphrag-client.js.map +0 -1
  1507. package/dist/services/sync/graphrag-config.d.ts +0 -16
  1508. package/dist/services/sync/graphrag-config.js +0 -39
  1509. package/dist/services/sync/graphrag-config.js.map +0 -1
  1510. package/dist/services/sync/graphrag-context.d.ts +0 -14
  1511. package/dist/services/sync/graphrag-context.js +0 -109
  1512. package/dist/services/sync/graphrag-context.js.map +0 -1
  1513. package/dist/services/sync/graphrag-indexer.d.ts +0 -30
  1514. package/dist/services/sync/graphrag-indexer.js +0 -358
  1515. package/dist/services/sync/graphrag-indexer.js.map +0 -1
  1516. package/dist/services/sync/llm.d.ts +0 -32
  1517. package/dist/services/sync/llm.js +0 -115
  1518. package/dist/services/sync/llm.js.map +0 -1
  1519. package/dist/services/sync/mcp-client.d.ts +0 -71
  1520. package/dist/services/sync/mcp-client.js +0 -299
  1521. package/dist/services/sync/mcp-client.js.map +0 -1
  1522. package/dist/services/sync/model-factory.d.ts +0 -13
  1523. package/dist/services/sync/model-factory.js +0 -38
  1524. package/dist/services/sync/model-factory.js.map +0 -1
  1525. package/dist/services/sync/name-quality.d.ts +0 -31
  1526. package/dist/services/sync/name-quality.js +0 -60
  1527. package/dist/services/sync/name-quality.js.map +0 -1
  1528. package/dist/services/sync/output-schemas.d.ts +0 -92
  1529. package/dist/services/sync/output-schemas.js +0 -43
  1530. package/dist/services/sync/output-schemas.js.map +0 -1
  1531. package/dist/services/sync/prompts.d.ts +0 -19
  1532. package/dist/services/sync/prompts.js +0 -128
  1533. package/dist/services/sync/prompts.js.map +0 -1
  1534. package/dist/services/sync/reconciler.d.ts +0 -48
  1535. package/dist/services/sync/reconciler.js +0 -294
  1536. package/dist/services/sync/reconciler.js.map +0 -1
  1537. package/dist/services/sync/rest-client.d.ts +0 -40
  1538. package/dist/services/sync/rest-client.js +0 -100
  1539. package/dist/services/sync/rest-client.js.map +0 -1
  1540. package/dist/services/sync/source-config.d.ts +0 -67
  1541. package/dist/services/sync/source-config.js +0 -304
  1542. package/dist/services/sync/source-config.js.map +0 -1
  1543. package/dist/services/sync/source-definitions/asana.d.ts +0 -14
  1544. package/dist/services/sync/source-definitions/asana.js +0 -42
  1545. package/dist/services/sync/source-definitions/asana.js.map +0 -1
  1546. package/dist/services/sync/source-definitions/definitions.d.ts +0 -8
  1547. package/dist/services/sync/source-definitions/definitions.js +0 -8
  1548. package/dist/services/sync/source-definitions/definitions.js.map +0 -1
  1549. package/dist/services/sync/source-definitions/gdrive.d.ts +0 -16
  1550. package/dist/services/sync/source-definitions/gdrive.js +0 -68
  1551. package/dist/services/sync/source-definitions/gdrive.js.map +0 -1
  1552. package/dist/services/sync/source-definitions/granola.d.ts +0 -2
  1553. package/dist/services/sync/source-definitions/granola.js +0 -21
  1554. package/dist/services/sync/source-definitions/granola.js.map +0 -1
  1555. package/dist/services/sync/source-definitions/linear.d.ts +0 -2
  1556. package/dist/services/sync/source-definitions/linear.js +0 -62
  1557. package/dist/services/sync/source-definitions/linear.js.map +0 -1
  1558. package/dist/services/sync/source-definitions/obsidian.d.ts +0 -2
  1559. package/dist/services/sync/source-definitions/obsidian.js +0 -55
  1560. package/dist/services/sync/source-definitions/obsidian.js.map +0 -1
  1561. package/dist/services/sync/source-definitions/pipedrive.d.ts +0 -2
  1562. package/dist/services/sync/source-definitions/pipedrive.js +0 -43
  1563. package/dist/services/sync/source-definitions/pipedrive.js.map +0 -1
  1564. package/dist/services/sync/staging.d.ts +0 -53
  1565. package/dist/services/sync/staging.js +0 -130
  1566. package/dist/services/sync/staging.js.map +0 -1
  1567. package/dist/services/sync/structured-extractor.d.ts +0 -57
  1568. package/dist/services/sync/structured-extractor.js +0 -584
  1569. package/dist/services/sync/structured-extractor.js.map +0 -1
  1570. package/dist/services/sync/sync-runner.d.ts +0 -32
  1571. package/dist/services/sync/sync-runner.js +0 -195
  1572. package/dist/services/sync/sync-runner.js.map +0 -1
  1573. package/dist/services/sync/sync-state.d.ts +0 -43
  1574. package/dist/services/sync/sync-state.js +0 -154
  1575. package/dist/services/sync/sync-state.js.map +0 -1
  1576. package/dist/services/sync/types.d.ts +0 -381
  1577. package/dist/services/sync/types.js +0 -8
  1578. package/dist/services/sync/types.js.map +0 -1
  1579. package/dist/services/sync/unstructured-extractor.d.ts +0 -27
  1580. package/dist/services/sync/unstructured-extractor.js +0 -185
  1581. package/dist/services/sync/unstructured-extractor.js.map +0 -1
  1582. package/dist/utils/merge-resolver.d.ts +0 -59
  1583. package/dist/utils/merge-resolver.js +0 -303
  1584. package/dist/utils/merge-resolver.js.map +0 -1
  1585. package/dist/utils/workspace-config.d.ts +0 -8
  1586. package/dist/utils/workspace-config.js +0 -22
  1587. package/dist/utils/workspace-config.js.map +0 -1
  1588. package/dist/web/_app/immutable/assets/0.B3eM5J6m.css +0 -1
  1589. package/dist/web/_app/immutable/assets/10.2jzI3cZY.css +0 -1
  1590. package/dist/web/_app/immutable/assets/11.Cb9eS4rw.css +0 -1
  1591. package/dist/web/_app/immutable/assets/12.DSXdDCt2.css +0 -1
  1592. package/dist/web/_app/immutable/assets/2.DrPprHoK.css +0 -1
  1593. package/dist/web/_app/immutable/assets/3.Ih7su2rl.css +0 -1
  1594. package/dist/web/_app/immutable/assets/4.CwXIQz3p.css +0 -1
  1595. package/dist/web/_app/immutable/assets/ChevronLeft.BwM9mwS4.css +0 -1
  1596. package/dist/web/_app/immutable/assets/GraphView.CRV5cekT.css +0 -1
  1597. package/dist/web/_app/immutable/assets/Toaster.rN8r_Hzv.css +0 -1
  1598. package/dist/web/_app/immutable/assets/ViewToolbar.CsWTe0yn.css +0 -1
  1599. package/dist/web/_app/immutable/assets/WorkspaceView.iWtzksrr.css +0 -1
  1600. package/dist/web/_app/immutable/chunks/0kuZ2gtb.js +0 -1
  1601. package/dist/web/_app/immutable/chunks/1Ea1UXwM.js +0 -2
  1602. package/dist/web/_app/immutable/chunks/284Zhbif.js +0 -1
  1603. package/dist/web/_app/immutable/chunks/7S2LGqoP.js +0 -2
  1604. package/dist/web/_app/immutable/chunks/B0qHb2ee.js +0 -1
  1605. package/dist/web/_app/immutable/chunks/B2_KIZWs.js +0 -1
  1606. package/dist/web/_app/immutable/chunks/B45od9dM.js +0 -2
  1607. package/dist/web/_app/immutable/chunks/B93Il9VC.js +0 -1
  1608. package/dist/web/_app/immutable/chunks/BB_5th5W.js +0 -3383
  1609. package/dist/web/_app/immutable/chunks/BDvg8O5k.js +0 -5
  1610. package/dist/web/_app/immutable/chunks/BHb8xKxs.js +0 -1
  1611. package/dist/web/_app/immutable/chunks/BHgT2Ede.js +0 -1
  1612. package/dist/web/_app/immutable/chunks/BQ1nK9ru.js +0 -1
  1613. package/dist/web/_app/immutable/chunks/BbFPiyww.js +0 -1
  1614. package/dist/web/_app/immutable/chunks/BkxW0BJZ.js +0 -1
  1615. package/dist/web/_app/immutable/chunks/Bp7FKkGt.js +0 -1
  1616. package/dist/web/_app/immutable/chunks/BrebtJNG.js +0 -18
  1617. package/dist/web/_app/immutable/chunks/BtoubqOl.js +0 -1
  1618. package/dist/web/_app/immutable/chunks/Bz0ZjVQE.js +0 -2
  1619. package/dist/web/_app/immutable/chunks/C0LVZhvn.js +0 -1
  1620. package/dist/web/_app/immutable/chunks/C0Zx4tMe.js +0 -1
  1621. package/dist/web/_app/immutable/chunks/CIlFznwy.js +0 -2
  1622. package/dist/web/_app/immutable/chunks/CSVbGg_b.js +0 -5
  1623. package/dist/web/_app/immutable/chunks/CUo0CDSW.js +0 -2
  1624. package/dist/web/_app/immutable/chunks/CX_61fY8.js +0 -5
  1625. package/dist/web/_app/immutable/chunks/CYrVHOHA.js +0 -1
  1626. package/dist/web/_app/immutable/chunks/CdIKiXW6.js +0 -1
  1627. package/dist/web/_app/immutable/chunks/CqT1x-Gw.js +0 -1
  1628. package/dist/web/_app/immutable/chunks/CqkleIqs.js +0 -1
  1629. package/dist/web/_app/immutable/chunks/CtbsDVo3.js +0 -1
  1630. package/dist/web/_app/immutable/chunks/CvEgdftB.js +0 -1
  1631. package/dist/web/_app/immutable/chunks/D14M5KlG.js +0 -1
  1632. package/dist/web/_app/immutable/chunks/D71c9o7J.js +0 -2
  1633. package/dist/web/_app/immutable/chunks/DFYOFE3o.js +0 -1
  1634. package/dist/web/_app/immutable/chunks/DHJAqtPb.js +0 -1
  1635. package/dist/web/_app/immutable/chunks/DHms3TGS.js +0 -2
  1636. package/dist/web/_app/immutable/chunks/DOqcDZIJ.js +0 -1
  1637. package/dist/web/_app/immutable/chunks/DUfIcKIt.js +0 -1
  1638. package/dist/web/_app/immutable/chunks/DZHWps9n.js +0 -1
  1639. package/dist/web/_app/immutable/chunks/DjLrjK2H.js +0 -1
  1640. package/dist/web/_app/immutable/chunks/DjvJRtva.js +0 -1
  1641. package/dist/web/_app/immutable/chunks/DnL9f0lc.js +0 -7
  1642. package/dist/web/_app/immutable/chunks/DsnmJJEf.js +0 -1
  1643. package/dist/web/_app/immutable/chunks/DtG1tx2A.js +0 -1
  1644. package/dist/web/_app/immutable/chunks/Dxmmz-Kc.js +0 -1
  1645. package/dist/web/_app/immutable/chunks/Dzm0X5CJ.js +0 -1
  1646. package/dist/web/_app/immutable/chunks/Ee5s0qSS.js +0 -5
  1647. package/dist/web/_app/immutable/chunks/KlRV1tKP.js +0 -1
  1648. package/dist/web/_app/immutable/chunks/L7dfS1-w.js +0 -1
  1649. package/dist/web/_app/immutable/chunks/PPVm8Dsz.js +0 -1
  1650. package/dist/web/_app/immutable/chunks/WSUKABI_.js +0 -1
  1651. package/dist/web/_app/immutable/chunks/lzCjGQTf.js +0 -4
  1652. package/dist/web/_app/immutable/chunks/qE6Hm01v.js +0 -1
  1653. package/dist/web/_app/immutable/chunks/vxEtkL8z.js +0 -1
  1654. package/dist/web/_app/immutable/chunks/wDIGUaoU.js +0 -3
  1655. package/dist/web/_app/immutable/chunks/wZWzupWT.js +0 -1
  1656. package/dist/web/_app/immutable/entry/app.CzJR64ww.js +0 -2
  1657. package/dist/web/_app/immutable/entry/start.DZVHSAiD.js +0 -1
  1658. package/dist/web/_app/immutable/nodes/0.BxI98Rw5.js +0 -2
  1659. package/dist/web/_app/immutable/nodes/1.BKnk3c99.js +0 -1
  1660. package/dist/web/_app/immutable/nodes/10.CaRwejbK.js +0 -1
  1661. package/dist/web/_app/immutable/nodes/11.B2Euwc9a.js +0 -1
  1662. package/dist/web/_app/immutable/nodes/12.CGKYzHxA.js +0 -1
  1663. package/dist/web/_app/immutable/nodes/2.CYXLieW2.js +0 -269
  1664. package/dist/web/_app/immutable/nodes/3.C84fxKvm.js +0 -5
  1665. package/dist/web/_app/immutable/nodes/4.ChSsp8k0.js +0 -11
  1666. package/dist/web/_app/immutable/nodes/5.CvaaNMAf.js +0 -1
  1667. package/dist/web/_app/immutable/nodes/6.D6IvoFSs.js +0 -1
  1668. package/dist/web/_app/immutable/nodes/7.Byu1_fh1.js +0 -1
  1669. package/dist/web/_app/immutable/nodes/8.CxwYH2kI.js +0 -1
  1670. package/dist/web/_app/immutable/nodes/9.dAR1N8tA.js +0 -1
@@ -0,0 +1,327 @@
1
+ /**
2
+ * Frame-addressable artifact patching (P4.1).
3
+ *
4
+ * `applyArtifactPatch` is the pure, surface-neutral core that lets an agent edit
5
+ * ONE frame (or one shared file / the token map) of a v2 artifact without
6
+ * re-emitting the whole bundle. Both `patch_artifact` surfaces — the in-app chat
7
+ * tool and the MCP tool — load the current bundle, call this to apply an ordered
8
+ * op list to a working copy, then hand the result to {@link
9
+ * (ArtifactStore:class).write} (the single write path, which re-validates as the
10
+ * authority and enforces the same OCC as a `create_artifact` update).
11
+ *
12
+ * The win is addressing, not storage: the bundle is still persisted whole, but
13
+ * the AGENT names "frame 7" instead of re-sending the deck. `patch_frame_content`
14
+ * is bounded to a single frame's text, so a substring edit can never corrupt the
15
+ * JSON envelope or a sibling frame — the failure mode that made `patch_entity` on
16
+ * an artifact body unsafe.
17
+ *
18
+ * This module owns op SHAPE + ADDRESSING validation only (unknown frame id, no
19
+ * substring match, non-permutation reorder, unsafe path, ...). It does NOT run
20
+ * the whole-bundle {@link validateArtifactBundle} — that stays the store's job,
21
+ * the single validation authority, so geometry/library/byte-cap rules are
22
+ * checked in exactly one place. Op input is accepted untyped (the tool boundary
23
+ * passes it through, mirroring how the `bundle` param is `unknown`) and parsed
24
+ * here, so the zod/typebox schemas never drift from the real contract.
25
+ */
26
+ import { ARTIFACT_FRAME_LAYOUTS, ARTIFACT_DISPLAY_BACKGROUNDS, normalizeBackgroundValue, } from './artifact-frame-model.js';
27
+ /** Op-level failure — a bad addressing/shape problem the agent can fix and
28
+ * retry (unknown frame id, zero/ambiguous substring match, non-permutation
29
+ * reorder, malformed op). Surface tools map this to a recoverable tool error,
30
+ * never a thrown turn. Distinct from the store's whole-bundle
31
+ * `ArtifactWriteError('invalid')`. */
32
+ export class ArtifactPatchError extends Error {
33
+ constructor(message) {
34
+ super(message);
35
+ this.name = 'ArtifactPatchError';
36
+ }
37
+ }
38
+ export const ARTIFACT_PATCH_OP_KINDS = [
39
+ 'set_frame_content',
40
+ 'patch_frame_content',
41
+ 'set_frame_meta',
42
+ 'add_frame',
43
+ 'remove_frame',
44
+ 'reorder_frames',
45
+ 'set_shared_file',
46
+ 'remove_shared_file',
47
+ 'set_tokens',
48
+ ];
49
+ function isRecord(value) {
50
+ return !!value && typeof value === 'object' && !Array.isArray(value);
51
+ }
52
+ /** Deep clone via JSON round-trip — the bundle is pure JSON (frames, shared
53
+ * files, tokens are all strings/numbers), so this is exact and keeps the input
54
+ * bundle untouched (ops mutate the copy). */
55
+ function cloneBundle(bundle) {
56
+ return JSON.parse(JSON.stringify(bundle));
57
+ }
58
+ function frameLabel(frame) {
59
+ return frame.title ? `"${frame.title}" (${frame.id})` : frame.id;
60
+ }
61
+ function requireString(value, field, opKind) {
62
+ if (typeof value !== 'string') {
63
+ throw new ArtifactPatchError(`${opKind}.${field} must be a string`);
64
+ }
65
+ return value;
66
+ }
67
+ function findFrame(bundle, frameId, opKind) {
68
+ if (typeof frameId !== 'string' || !frameId.trim()) {
69
+ throw new ArtifactPatchError(`${opKind}.frameId must be a non-empty string`);
70
+ }
71
+ const frame = bundle.frames.find((f) => f.id === frameId);
72
+ if (!frame) {
73
+ const ids = bundle.frames.map((f) => f.id).join(', ');
74
+ throw new ArtifactPatchError(`${opKind}: no frame with id "${frameId}". Existing frame ids: ${ids}.`);
75
+ }
76
+ return frame;
77
+ }
78
+ /** Apply one op to the working bundle. Records touched/removed ids and the
79
+ * reorder flag back through `acc`. Throws {@link ArtifactPatchError} on any
80
+ * addressing/shape problem. */
81
+ function applyOp(bundle, rawOp, index, acc) {
82
+ if (!isRecord(rawOp)) {
83
+ throw new ArtifactPatchError(`ops[${index}] must be an object`);
84
+ }
85
+ const kind = rawOp.op;
86
+ if (typeof kind !== 'string' || !ARTIFACT_PATCH_OP_KINDS.includes(kind)) {
87
+ throw new ArtifactPatchError(`ops[${index}].op must be one of: ${ARTIFACT_PATCH_OP_KINDS.join(', ')} (got ${JSON.stringify(rawOp.op)})`);
88
+ }
89
+ switch (kind) {
90
+ case 'set_frame_content': {
91
+ const frame = findFrame(bundle, rawOp.frameId, kind);
92
+ frame.content = requireString(rawOp.content, 'content', kind);
93
+ acc.changed.add(frame.id);
94
+ return;
95
+ }
96
+ case 'patch_frame_content': {
97
+ const frame = findFrame(bundle, rawOp.frameId, kind);
98
+ const find = requireString(rawOp.find, 'find', kind);
99
+ const replace = requireString(rawOp.replace, 'replace', kind);
100
+ if (find === '') {
101
+ throw new ArtifactPatchError(`${kind}: \`find\` must be a non-empty string`);
102
+ }
103
+ if (find === replace) {
104
+ throw new ArtifactPatchError(`${kind}: \`find\` and \`replace\` are identical — nothing to do on frame ${frameLabel(frame)}`);
105
+ }
106
+ const occurrences = countOccurrences(frame.content, find);
107
+ if (occurrences === 0) {
108
+ throw new ArtifactPatchError(`${kind}: \`find\` substring not present in frame ${frameLabel(frame)}.`);
109
+ }
110
+ if (rawOp.expectedCount !== undefined) {
111
+ if (typeof rawOp.expectedCount !== 'number' || !Number.isInteger(rawOp.expectedCount) || rawOp.expectedCount < 1) {
112
+ throw new ArtifactPatchError(`${kind}.expectedCount must be a positive integer`);
113
+ }
114
+ if (rawOp.expectedCount !== occurrences) {
115
+ throw new ArtifactPatchError(`${kind}: expected ${rawOp.expectedCount} occurrence(s) of \`find\` in frame ${frameLabel(frame)}, found ${occurrences}. Refine \`find\` or fix expectedCount so you don't edit the wrong text.`);
116
+ }
117
+ }
118
+ // Replace ALL occurrences (parity with patch_entity); literal, not regex.
119
+ frame.content = frame.content.split(find).join(replace);
120
+ acc.changed.add(frame.id);
121
+ return;
122
+ }
123
+ case 'set_frame_meta': {
124
+ const frame = findFrame(bundle, rawOp.frameId, kind);
125
+ let touched = false;
126
+ if (rawOp.title !== undefined) {
127
+ const title = requireString(rawOp.title, 'title', kind);
128
+ // Empty/whitespace title CLEARS it (falls back to "Frame N" chrome);
129
+ // a non-empty value sets it (the store re-validates length).
130
+ if (title.trim() === '')
131
+ delete frame.title;
132
+ else
133
+ frame.title = title.trim();
134
+ touched = true;
135
+ }
136
+ if (rawOp.layout !== undefined) {
137
+ if (typeof rawOp.layout !== 'string' || !ARTIFACT_FRAME_LAYOUTS.includes(rawOp.layout)) {
138
+ throw new ArtifactPatchError(`${kind}.layout must be one of: ${ARTIFACT_FRAME_LAYOUTS.join(', ')}`);
139
+ }
140
+ frame.layout = rawOp.layout;
141
+ touched = true;
142
+ }
143
+ if (rawOp.geometry !== undefined) {
144
+ // geometry is REPLACED wholesale, not merged — require both fields so a
145
+ // `{ width }`-only op fails with a clear message here instead of a
146
+ // low-level "geometry.height must be…" from the store after it has
147
+ // silently dropped the existing height. Numeric bounds stay the store's
148
+ // whole-bundle validate (single authority for the geometry rules).
149
+ if (!isRecord(rawOp.geometry) || rawOp.geometry.width === undefined || rawOp.geometry.height === undefined) {
150
+ throw new ArtifactPatchError(`${kind}.geometry must be a full { width, height } object (it replaces the frame's geometry, it does not merge)`);
151
+ }
152
+ frame.geometry = rawOp.geometry;
153
+ touched = true;
154
+ }
155
+ if (rawOp.background !== undefined) {
156
+ const bg = rawOp.background;
157
+ // Empty string clears the per-frame override (inherits display default).
158
+ if (bg === '' || bg === null) {
159
+ delete frame.background;
160
+ }
161
+ else {
162
+ // Same grammar as create_artifact: a keyword OR a safe custom CSS
163
+ // color/gradient (shared normalizer — set_frame_meta used to reject
164
+ // custom colors that create accepted, forcing a `transparent` workaround).
165
+ const normalized = normalizeBackgroundValue(bg);
166
+ if (normalized === null) {
167
+ throw new ArtifactPatchError(`${kind}.background must be ${ARTIFACT_DISPLAY_BACKGROUNDS.join(' / ')}, a safe CSS color/gradient, or "" to clear`);
168
+ }
169
+ frame.background = normalized;
170
+ }
171
+ touched = true;
172
+ }
173
+ // `pages`-document letterhead/pagination frame fields — pageNumbers,
174
+ // furniture, pageMargins. Each is REPLACED wholesale by a provided object
175
+ // (merging a single sub-field is not expressible — re-send the field), or
176
+ // CLEARED by `null`/`''` (the field is removed → reverts to the platform
177
+ // default). Just like geometry, the value's shape/bounds AND the
178
+ // `pages`-only rule are enforced by the store's whole-bundle
179
+ // validateArtifactBundle (the single authority) — not re-checked here, so
180
+ // an invalid value or a non-`pages` frame fails the whole patch (fail-closed,
181
+ // no partial application).
182
+ for (const key of ['pageNumbers', 'furniture', 'pageMargins']) {
183
+ if (rawOp[key] !== undefined) {
184
+ if (rawOp[key] === '' || rawOp[key] === null)
185
+ delete frame[key];
186
+ else
187
+ frame[key] = rawOp[key];
188
+ touched = true;
189
+ }
190
+ }
191
+ if (!touched) {
192
+ throw new ArtifactPatchError(`${kind}: nothing to change — pass at least one of title, layout, geometry, background, pageNumbers, furniture, pageMargins.`);
193
+ }
194
+ acc.changed.add(frame.id);
195
+ return;
196
+ }
197
+ case 'add_frame': {
198
+ if (!isRecord(rawOp.frame)) {
199
+ throw new ArtifactPatchError(`${kind}.frame must be a frame object ({ id, layout, geometry, content, ... })`);
200
+ }
201
+ const newId = rawOp.frame.id;
202
+ if (typeof newId !== 'string' || !newId.trim()) {
203
+ throw new ArtifactPatchError(`${kind}.frame.id must be a non-empty string`);
204
+ }
205
+ if (bundle.frames.some((f) => f.id === newId)) {
206
+ throw new ArtifactPatchError(`${kind}: a frame with id "${newId}" already exists. Pick a unique id.`);
207
+ }
208
+ // `content` must be a string up front: a later op in this batch (e.g.
209
+ // patch_frame_content on the new frame) would otherwise hit a generic
210
+ // TypeError instead of a recoverable ArtifactPatchError. The store's
211
+ // whole-bundle validate enforces the rest (layout enum, geometry bounds).
212
+ if (typeof rawOp.frame.content !== 'string') {
213
+ throw new ArtifactPatchError(`${kind}.frame.content must be a string`);
214
+ }
215
+ const frame = rawOp.frame;
216
+ let at = bundle.frames.length;
217
+ if (rawOp.atIndex !== undefined) {
218
+ if (typeof rawOp.atIndex !== 'number' || !Number.isInteger(rawOp.atIndex) || rawOp.atIndex < 0) {
219
+ throw new ArtifactPatchError(`${kind}.atIndex must be a non-negative integer`);
220
+ }
221
+ at = Math.min(rawOp.atIndex, bundle.frames.length);
222
+ }
223
+ bundle.frames.splice(at, 0, frame);
224
+ acc.changed.add(newId);
225
+ // If this id was removed earlier in the same batch, it's a replacement,
226
+ // not a removal — don't report it as both removed and changed.
227
+ acc.removed.delete(newId);
228
+ return;
229
+ }
230
+ case 'remove_frame': {
231
+ const frame = findFrame(bundle, rawOp.frameId, kind);
232
+ if (bundle.frames.length === 1) {
233
+ throw new ArtifactPatchError(`${kind}: cannot remove the only frame — an artifact must have at least one frame. Replace its content instead, or delete the whole artifact entry.`);
234
+ }
235
+ bundle.frames = bundle.frames.filter((f) => f.id !== frame.id);
236
+ acc.removed.add(frame.id);
237
+ // A frame removed earlier in the batch should not also count as "changed".
238
+ acc.changed.delete(frame.id);
239
+ return;
240
+ }
241
+ case 'reorder_frames': {
242
+ if (!Array.isArray(rawOp.order) || rawOp.order.some((id) => typeof id !== 'string')) {
243
+ throw new ArtifactPatchError(`${kind}.order must be an array of frame ids`);
244
+ }
245
+ const order = rawOp.order;
246
+ const current = bundle.frames.map((f) => f.id);
247
+ if (order.length !== current.length || new Set(order).size !== order.length || !current.every((id) => order.includes(id))) {
248
+ throw new ArtifactPatchError(`${kind}.order must be a permutation of the current frame ids (each exactly once). Current order: [${current.join(', ')}].`);
249
+ }
250
+ const byId = new Map(bundle.frames.map((f) => [f.id, f]));
251
+ const next = order.map((id) => byId.get(id));
252
+ // OR, never assign: a later identity-reorder in the same batch must not
253
+ // clear an earlier real reorder's flag.
254
+ acc.reordered = acc.reordered || current.some((id, i) => id !== order[i]);
255
+ bundle.frames = next;
256
+ return;
257
+ }
258
+ case 'set_shared_file': {
259
+ const path = requireString(rawOp.path, 'path', kind);
260
+ const content = requireString(rawOp.content, 'content', kind);
261
+ // Path safety + extension allowlist is the store's whole-bundle validate.
262
+ const shared = bundle.shared ?? (bundle.shared = {});
263
+ const files = shared.files ?? (shared.files = {});
264
+ files[path] = content;
265
+ return;
266
+ }
267
+ case 'remove_shared_file': {
268
+ const path = requireString(rawOp.path, 'path', kind);
269
+ const files = bundle.shared?.files;
270
+ if (!files || !(path in files)) {
271
+ const existing = files ? Object.keys(files).join(', ') : '(none)';
272
+ throw new ArtifactPatchError(`${kind}: no shared file at "${path}". Existing shared files: ${existing}.`);
273
+ }
274
+ delete files[path];
275
+ if (Object.keys(files).length === 0)
276
+ delete bundle.shared.files;
277
+ return;
278
+ }
279
+ case 'set_tokens': {
280
+ if (!isRecord(rawOp.tokens)) {
281
+ throw new ArtifactPatchError(`${kind}.tokens must be an object of name → CSS value`);
282
+ }
283
+ // Replace the whole token map (it's a small global). Token-name/value
284
+ // validation is the store's whole-bundle validate. An empty object clears
285
+ // tokens (the store drops an empty map).
286
+ bundle.tokens = rawOp.tokens;
287
+ return;
288
+ }
289
+ }
290
+ }
291
+ function countOccurrences(haystack, needle) {
292
+ if (needle === '')
293
+ return 0;
294
+ let count = 0;
295
+ let from = 0;
296
+ for (;;) {
297
+ const at = haystack.indexOf(needle, from);
298
+ if (at === -1)
299
+ break;
300
+ count++;
301
+ from = at + needle.length;
302
+ }
303
+ return count;
304
+ }
305
+ /**
306
+ * Apply an ordered op list to a COPY of `bundle`, returning the mutated bundle +
307
+ * a change summary. Ops apply in order against the running result, so a later op
308
+ * sees an earlier op's edits (e.g. add_frame then reorder_frames including the
309
+ * new id). Throws {@link ArtifactPatchError} on the first op-level problem,
310
+ * leaving the input bundle untouched (it is never mutated; the copy is
311
+ * discarded by the caller on throw).
312
+ */
313
+ export function applyArtifactPatch(bundle, ops) {
314
+ if (!Array.isArray(ops) || ops.length === 0) {
315
+ throw new ArtifactPatchError('ops must be a non-empty array of patch operations');
316
+ }
317
+ const working = cloneBundle(bundle);
318
+ const acc = { changed: new Set(), removed: new Set(), reordered: false };
319
+ ops.forEach((op, index) => applyOp(working, op, index, acc));
320
+ return {
321
+ bundle: working,
322
+ changedFrameIds: [...acc.changed],
323
+ removedFrameIds: [...acc.removed],
324
+ reordered: acc.reordered,
325
+ };
326
+ }
327
+ //# sourceMappingURL=artifact-patch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact-patch.js","sourceRoot":"","sources":["../../src/core/artifact-patch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Structural warnings for an artifact write (P4.3) — browser-free lints that let
3
+ * the agent self-verify what it just produced, in the SAME turn, without a
4
+ * Playwright render.
5
+ *
6
+ * Paired with the P4.2 frame manifest, these back the "return-rich" create/patch
7
+ * returns: `summarizeArtifactWrite` hands both surfaces (agent chat + MCP) ONE
8
+ * identical `{ manifest, warnings }` payload so the two can't drift. The manifest
9
+ * is built WITHOUT a `frameId`, so it carries no per-frame `content` — the return
10
+ * is structure-only and safe to persist across turns (it does NOT trip the
11
+ * `compactArtifactHistory` MUST-NOT-PERSIST rule that elides full artifact source).
12
+ *
13
+ * The lints are deliberately conservative — high precision over recall — so a
14
+ * legitimate single-`app` artifact is never nagged into being split:
15
+ * - `packed-slides` — ONE non-deck frame whose content carries the fingerprints
16
+ * of a hand-rolled DECK (the agent freelancing a stepper
17
+ * inside one frame instead of one frame per slide).
18
+ * - `packed-pages` — ONE non-document frame whose content carries the
19
+ * fingerprints of a hand-rolled multi-page DOCUMENT (forced
20
+ * page breaks or a page-column grid, e.g. the observed
21
+ * `app` frame with a `repeat(var(--page-cols),816px)` grid)
22
+ * instead of a `pages` frame the platform paginates.
23
+ * - `empty-frame` — a frame that will render blank (objective).
24
+ * - `near-byte-cap` — the bundle is close to the 512KB ceiling, so the NEXT
25
+ * edit may be rejected (objective).
26
+ */
27
+ import { type ArtifactBundle } from './artifact-frame-model.js';
28
+ import { type ArtifactManifest } from './artifact-manifest.js';
29
+ export type ArtifactWarningCode = 'packed-slides' | 'packed-pages' | 'empty-frame' | 'near-byte-cap';
30
+ export interface ArtifactWarning {
31
+ code: ArtifactWarningCode;
32
+ message: string;
33
+ /** Present for frame-scoped warnings (`empty-frame`, `packed-slides`, `packed-pages`). */
34
+ frameId?: string;
35
+ }
36
+ /**
37
+ * Compute the structural warnings for a (already-validated) bundle. Pure — no IO,
38
+ * no browser. Order: the headline adherence lint first, then per-frame blanks,
39
+ * then the size ceiling.
40
+ */
41
+ export declare function artifactStructuralWarnings(bundle: ArtifactBundle): ArtifactWarning[];
42
+ /**
43
+ * THE return-rich payload both write surfaces attach to a create/patch result:
44
+ * the structural manifest (P4.2) + the lints. Built from the WRITTEN bundle so it
45
+ * reflects exactly what was persisted. The manifest carries no per-frame
46
+ * `content` (no `frameId` option) → the result is structure-only and persist-safe.
47
+ */
48
+ export declare function summarizeArtifactWrite(bundle: ArtifactBundle): {
49
+ manifest: ArtifactManifest;
50
+ warnings: ArtifactWarning[];
51
+ };
@@ -0,0 +1,165 @@
1
+ /**
2
+ * Structural warnings for an artifact write (P4.3) — browser-free lints that let
3
+ * the agent self-verify what it just produced, in the SAME turn, without a
4
+ * Playwright render.
5
+ *
6
+ * Paired with the P4.2 frame manifest, these back the "return-rich" create/patch
7
+ * returns: `summarizeArtifactWrite` hands both surfaces (agent chat + MCP) ONE
8
+ * identical `{ manifest, warnings }` payload so the two can't drift. The manifest
9
+ * is built WITHOUT a `frameId`, so it carries no per-frame `content` — the return
10
+ * is structure-only and safe to persist across turns (it does NOT trip the
11
+ * `compactArtifactHistory` MUST-NOT-PERSIST rule that elides full artifact source).
12
+ *
13
+ * The lints are deliberately conservative — high precision over recall — so a
14
+ * legitimate single-`app` artifact is never nagged into being split:
15
+ * - `packed-slides` — ONE non-deck frame whose content carries the fingerprints
16
+ * of a hand-rolled DECK (the agent freelancing a stepper
17
+ * inside one frame instead of one frame per slide).
18
+ * - `packed-pages` — ONE non-document frame whose content carries the
19
+ * fingerprints of a hand-rolled multi-page DOCUMENT (forced
20
+ * page breaks or a page-column grid, e.g. the observed
21
+ * `app` frame with a `repeat(var(--page-cols),816px)` grid)
22
+ * instead of a `pages` frame the platform paginates.
23
+ * - `empty-frame` — a frame that will render blank (objective).
24
+ * - `near-byte-cap` — the bundle is close to the 512KB ceiling, so the NEXT
25
+ * edit may be rejected (objective).
26
+ */
27
+ import { ARTIFACT_BUNDLE_MAX_BYTES, } from './artifact-frame-model.js';
28
+ import { buildArtifactManifest } from './artifact-manifest.js';
29
+ /** Fraction of the hard byte cap at which `near-byte-cap` starts warning. */
30
+ const NEAR_CAP_FRACTION = 0.9;
31
+ /** `data-artifact-frame` is the PLATFORM's own frame-splitting attribute — a
32
+ * single authored frame should never contain it. Two or more inside ONE frame's
33
+ * content means the agent hand-declared multiple frames in one (the exact
34
+ * hand-rolled-deck failure `packed-slides` exists to catch). */
35
+ const PACKED_SUBFRAME_THRESHOLD = 2;
36
+ /** ...or this many FORCED page breaks: a multi-page document crammed into a
37
+ * non-`pages` frame instead of authored as a paginating `pages` frame. */
38
+ const PACKED_PAGEBREAK_THRESHOLD = 2;
39
+ /** Bound the regex scans so a pathological multi-hundred-KB frame can't stall the
40
+ * event loop (mirrors artifact-manifest's KEY_TEXT_SCAN_LIMIT rationale). A cut
41
+ * match can only UNDERcount → at worst a missed warning, never a false positive. */
42
+ const PACKED_SCAN_LIMIT = 64 * 1024;
43
+ /** Forced page break, old (`page-break-before:always`) and modern
44
+ * (`break-before:page`) syntax — the fingerprint of paginating by hand. */
45
+ const PAGE_BREAK_RE = /(?:page-break-(?:before|after)\s*:\s*always|break-(?:before|after)\s*:\s*page)/gi;
46
+ /** A MULTI-page CSS variable — `--page-cols`, `--page-count`, etc. The observed
47
+ * bug grid was `grid-template-columns: repeat(var(--page-cols),816px)`; a var that
48
+ * names a page COUNT/COLUMN only exists to fake a multi-page grid. Deliberately
49
+ * excludes the SINGULAR `--page-width`/`--page-height`/`--page-size` (a legit
50
+ * single content column declares its own page dimensions) and `--page-color`
51
+ * (the `\b` after the keyword guards it). */
52
+ const PAGE_COLUMN_VAR_RE = /--page-(?:col|cols|count|num)\b/i;
53
+ /** ...or a `repeat()` whose track is a BARE page-width px literal
54
+ * (US-Letter/A4/Legal @96dpi) directly after a count of TWO OR MORE — `repeat(3,
55
+ * 816px)`, the shape of a hand-built MULTI-page-column grid. Kept tight for
56
+ * precision: the count must be ≥2 (or `auto-fill`/`auto-fit`) so a single
57
+ * page-width content column `repeat(1, 816px)` does NOT match; the page literal
58
+ * must follow the comma with a left boundary, so a card grid whose track is
59
+ * `minmax(1056px, 1fr)` (the literal is nested, not bare) does NOT match, and
60
+ * `21056px` does not match `1056`. The `repeat(var(--page-cols),816px)` form is
61
+ * caught by PAGE_COLUMN_VAR_RE instead. */
62
+ const PAGE_COLUMN_GRID_RE = /repeat\(\s*(?:[2-9]|\d{2,}|auto-fill|auto-fit)\s*,\s*(?:816|1056|794|1123|1344)px\b/i;
63
+ function byteSizeOf(bundle) {
64
+ // Compact JSON — byte-identical to validateArtifactBundle's cap measurement, so
65
+ // the advisory tracks the exact ceiling the next edit's validator enforces.
66
+ return new TextEncoder().encode(JSON.stringify(bundle)).length;
67
+ }
68
+ function countMatches(text, re) {
69
+ const matches = text.match(re);
70
+ return matches ? matches.length : 0;
71
+ }
72
+ /**
73
+ * Classify a SINGLE non-deck/non-document frame whose content looks like a deck or
74
+ * a multi-page document hand-rolled inside one frame. High precision over recall
75
+ * (the founder's explicit priority): only the unambiguous fingerprints, NOT signals
76
+ * a legitimate single-`app` artifact uses for its own reasons — a `.slide` class
77
+ * (image carousels), repeated `height:100vh` (landing-page sections), or a plain
78
+ * `repeat(3,1fr)` card grid are common in real apps, so they are NOT counted.
79
+ *
80
+ * Returns the kind of artifact the frame is impersonating, or null. `pages` is
81
+ * checked first: a forced-page-break / page-grid document is the headline observed
82
+ * bug, and it can also carry stray `data-artifact-frame` markers.
83
+ */
84
+ function packedKind(frame) {
85
+ if (frame.layout !== 'app' && frame.layout !== 'artboard')
86
+ return null;
87
+ const scan = frame.content.length > PACKED_SCAN_LIMIT
88
+ ? frame.content.slice(0, PACKED_SCAN_LIMIT)
89
+ : frame.content;
90
+ // pages: a multi-page document faked inside one frame.
91
+ if (countMatches(scan, PAGE_BREAK_RE) >= PACKED_PAGEBREAK_THRESHOLD)
92
+ return 'pages';
93
+ if (PAGE_COLUMN_VAR_RE.test(scan) || PAGE_COLUMN_GRID_RE.test(scan))
94
+ return 'pages';
95
+ // slides: the platform frame-splitter attribute hand-declared multiple times.
96
+ if (countMatches(scan, /data-artifact-frame/gi) >= PACKED_SUBFRAME_THRESHOLD)
97
+ return 'slides';
98
+ return null;
99
+ }
100
+ /**
101
+ * Compute the structural warnings for a (already-validated) bundle. Pure — no IO,
102
+ * no browser. Order: the headline adherence lint first, then per-frame blanks,
103
+ * then the size ceiling.
104
+ */
105
+ export function artifactStructuralWarnings(bundle) {
106
+ const warnings = [];
107
+ // packed-slides / packed-pages: only a SINGLE frame can be "a deck/document
108
+ // crammed into one frame"; a real multi-frame artifact is already doing the
109
+ // right thing.
110
+ if (bundle.frames.length === 1) {
111
+ const only = bundle.frames[0];
112
+ const kind = packedKind(only);
113
+ if (kind === 'slides') {
114
+ warnings.push({
115
+ code: 'packed-slides',
116
+ frameId: only.id,
117
+ message: `This is a single "${only.layout}" frame but its content looks like multiple slides. `
118
+ + 'If you meant a deck, author one "slides" frame per slide so the platform steps, '
119
+ + 'arranges, and exports them — do not hand-roll a stepper/filmstrip inside one frame.',
120
+ });
121
+ }
122
+ else if (kind === 'pages') {
123
+ warnings.push({
124
+ code: 'packed-pages',
125
+ frameId: only.id,
126
+ message: `This is a single "${only.layout}" frame but its content looks like a multi-page document `
127
+ + '(forced page breaks or a page-column grid). Author a "pages" frame (a fixed page box, '
128
+ + 'e.g. 816×1056 US-Letter) holding the document body and let the platform paginate, number, '
129
+ + 'and PDF-scroll it — do not build your own page grid or page breaks inside an app/artboard frame.',
130
+ });
131
+ }
132
+ }
133
+ bundle.frames.forEach((frame, index) => {
134
+ if (frame.content.trim().length === 0) {
135
+ warnings.push({
136
+ code: 'empty-frame',
137
+ frameId: frame.id,
138
+ message: `Frame "${frame.id}" (index ${index}) has no content — it will render blank.`,
139
+ });
140
+ }
141
+ });
142
+ const byteSize = byteSizeOf(bundle);
143
+ if (byteSize > NEAR_CAP_FRACTION * ARTIFACT_BUNDLE_MAX_BYTES) {
144
+ const kb = Math.round(byteSize / 1024);
145
+ const capKb = Math.round(ARTIFACT_BUNDLE_MAX_BYTES / 1024);
146
+ warnings.push({
147
+ code: 'near-byte-cap',
148
+ message: `Bundle is ${kb}KB, near the ${capKb}KB limit — the next edit may be rejected; split or trim content.`,
149
+ });
150
+ }
151
+ return warnings;
152
+ }
153
+ /**
154
+ * THE return-rich payload both write surfaces attach to a create/patch result:
155
+ * the structural manifest (P4.2) + the lints. Built from the WRITTEN bundle so it
156
+ * reflects exactly what was persisted. The manifest carries no per-frame
157
+ * `content` (no `frameId` option) → the result is structure-only and persist-safe.
158
+ */
159
+ export function summarizeArtifactWrite(bundle) {
160
+ return {
161
+ manifest: buildArtifactManifest(bundle),
162
+ warnings: artifactStructuralWarnings(bundle),
163
+ };
164
+ }
165
+ //# sourceMappingURL=artifact-warnings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact-warnings.js","sourceRoot":"","sources":["../../src/core/artifact-warnings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Canonical responsive breakpoint queries — the single source of truth for
3
+ * BOTH CSS and JS so they can never drift.
4
+ *
5
+ * - CSS consumes the same strings as `@custom-media --mobile / --touch`,
6
+ * declared in `web/src/styles/media.css` (for component <style> blocks, via
7
+ * @csstools/postcss-global-data) AND in-file at the top of `web/src/app.css`
8
+ * (for the Tailwind/lightningcss pass — see the plan's build-pipeline note).
9
+ * - JS consumes them via `matchMedia(MOBILE_MEDIA_QUERY)` and Svelte 5
10
+ * `new MediaQuery(MOBILE_MEDIA_QUERY)`. Web code imports through the
11
+ * `@core/breakpoints` alias.
12
+ *
13
+ * `src/core/__tests__/breakpoints-sync.test.ts` asserts all three CSS copies
14
+ * stay byte-identical to these constants.
15
+ *
16
+ * --mobile = LAYOUT TOPOLOGY (drawers vs docked). Primary `pointer: coarse`, so
17
+ * a keyboard-attached iPad (trackpad primary) reads as desktop. `767.98px` (not
18
+ * 768) dodges the exact overlap with Tailwind's `md` = min-width:768 and keeps a
19
+ * classic 768px iPad on desktop. The `max-height: 500px` arm catches landscape
20
+ * phones (≤~480 tall) while letting short tablets (≥600) fall through to desktop.
21
+ *
22
+ * --touch = TOUCH ERGONOMICS (44px tap targets, 16px inputs to dodge iOS focus
23
+ * auto-zoom). `any-pointer: coarse` so a touch device still counts even when its
24
+ * PRIMARY pointer is a trackpad (keyboard-attached iPad).
25
+ */
26
+ export declare const MOBILE_MEDIA_QUERY = "(max-width: 767.98px), (hover: none) and (pointer: coarse) and (max-height: 500px)";
27
+ export declare const TOUCH_MEDIA_QUERY = "(any-pointer: coarse)";
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Canonical responsive breakpoint queries — the single source of truth for
3
+ * BOTH CSS and JS so they can never drift.
4
+ *
5
+ * - CSS consumes the same strings as `@custom-media --mobile / --touch`,
6
+ * declared in `web/src/styles/media.css` (for component <style> blocks, via
7
+ * @csstools/postcss-global-data) AND in-file at the top of `web/src/app.css`
8
+ * (for the Tailwind/lightningcss pass — see the plan's build-pipeline note).
9
+ * - JS consumes them via `matchMedia(MOBILE_MEDIA_QUERY)` and Svelte 5
10
+ * `new MediaQuery(MOBILE_MEDIA_QUERY)`. Web code imports through the
11
+ * `@core/breakpoints` alias.
12
+ *
13
+ * `src/core/__tests__/breakpoints-sync.test.ts` asserts all three CSS copies
14
+ * stay byte-identical to these constants.
15
+ *
16
+ * --mobile = LAYOUT TOPOLOGY (drawers vs docked). Primary `pointer: coarse`, so
17
+ * a keyboard-attached iPad (trackpad primary) reads as desktop. `767.98px` (not
18
+ * 768) dodges the exact overlap with Tailwind's `md` = min-width:768 and keeps a
19
+ * classic 768px iPad on desktop. The `max-height: 500px` arm catches landscape
20
+ * phones (≤~480 tall) while letting short tablets (≥600) fall through to desktop.
21
+ *
22
+ * --touch = TOUCH ERGONOMICS (44px tap targets, 16px inputs to dodge iOS focus
23
+ * auto-zoom). `any-pointer: coarse` so a touch device still counts even when its
24
+ * PRIMARY pointer is a trackpad (keyboard-attached iPad).
25
+ */
26
+ export const MOBILE_MEDIA_QUERY = '(max-width: 767.98px), (hover: none) and (pointer: coarse) and (max-height: 500px)';
27
+ export const TOUCH_MEDIA_QUERY = '(any-pointer: coarse)';
28
+ //# sourceMappingURL=breakpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breakpoints.js","sourceRoot":"","sources":["../../src/core/breakpoints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAC9B,oFAAoF,CAAC;AAEtF,MAAM,CAAC,MAAM,iBAAiB,GAAG,uBAAuB,CAAC"}