@tangle-network/agent-app 0.45.53 → 0.45.55

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 (480) hide show
  1. package/README.md +1 -1
  2. package/dist/alerting/index.d.ts +5 -175
  3. package/dist/alerting/slack.d.ts +176 -0
  4. package/dist/app-auth/index.d.ts +14 -17
  5. package/dist/assets/index.d.ts +2 -504
  6. package/dist/assets/schema.d.ts +264 -0
  7. package/dist/assets/types.d.ts +237 -0
  8. package/dist/assistant/AssistantDock.d.ts +56 -0
  9. package/dist/assistant/AssistantHistory.d.ts +41 -0
  10. package/dist/assistant/AssistantPanel.d.ts +84 -0
  11. package/dist/assistant/ProposalCard.d.ts +41 -0
  12. package/dist/assistant/ResizeHandle.d.ts +19 -0
  13. package/dist/assistant/client-context.d.ts +20 -0
  14. package/dist/assistant/client.d.ts +117 -0
  15. package/dist/assistant/index.d.ts +19 -848
  16. package/dist/assistant/launcher.d.ts +23 -0
  17. package/dist/assistant/persistence.d.ts +26 -0
  18. package/dist/assistant/presentation.d.ts +99 -0
  19. package/dist/assistant/provider-label.d.ts +7 -0
  20. package/dist/assistant/reducer.d.ts +130 -0
  21. package/dist/assistant/sse.d.ts +24 -0
  22. package/dist/assistant/time-ago.d.ts +6 -0
  23. package/dist/assistant/transcript.d.ts +97 -0
  24. package/dist/assistant/types.d.ts +291 -0
  25. package/dist/assistant/use-stick-to-bottom.d.ts +28 -0
  26. package/dist/assistant/useAssistantChat.d.ts +63 -0
  27. package/dist/assistant/useAssistantModels.d.ts +22 -0
  28. package/dist/assistant/useAssistantThreads.d.ts +47 -0
  29. package/dist/assistant/usePanelPrefs.d.ts +55 -0
  30. package/dist/billing/index.d.ts +19 -21
  31. package/dist/brand/index.d.ts +16 -10
  32. package/dist/brand-extraction/extract.d.ts +34 -0
  33. package/dist/brand-extraction/index.d.ts +12 -214
  34. package/dist/brand-extraction/map.d.ts +58 -0
  35. package/dist/brand-extraction/types.d.ts +119 -0
  36. package/dist/catalog/index.d.ts +11 -101
  37. package/dist/chat-react/composer-mode-controls.d.ts +14 -0
  38. package/dist/chat-react/entry-composer.d.ts +92 -0
  39. package/dist/chat-react/index.d.ts +22 -118
  40. package/dist/chat-react/types.d.ts +11 -0
  41. package/dist/chat-routes/attachment-store.d.ts +84 -0
  42. package/dist/chat-routes/attachment-upload.d.ts +84 -0
  43. package/dist/chat-routes/attachment-validation.d.ts +95 -0
  44. package/dist/chat-routes/binary-sniff.d.ts +45 -0
  45. package/dist/chat-routes/completed-sandbox-turn.d.ts +25 -0
  46. package/dist/chat-routes/detached-turn.d.ts +197 -0
  47. package/dist/chat-routes/dispatch-parts.d.ts +101 -0
  48. package/dist/chat-routes/draft-persistence.d.ts +189 -0
  49. package/dist/chat-routes/durable-projection.d.ts +18 -0
  50. package/dist/chat-routes/file-index.d.ts +115 -0
  51. package/dist/chat-routes/index.d.ts +25 -1840
  52. package/dist/chat-routes/model-failover-stream.d.ts +206 -0
  53. package/dist/chat-routes/promote-file-part.d.ts +84 -0
  54. package/dist/chat-routes/resolve-attachments.d.ts +72 -0
  55. package/dist/chat-routes/sandbox-producer.d.ts +146 -0
  56. package/dist/chat-routes/sandbox-turn-usage.d.ts +4 -0
  57. package/dist/{stale-turn-lock-DucQzvXu.d.ts → chat-routes/stale-turn-lock.d.ts} +7 -9
  58. package/dist/chat-routes/turn-routes.d.ts +540 -0
  59. package/dist/chat-routes/upload.d.ts +84 -0
  60. package/dist/{wire-DOZ-O6hD.d.ts → chat-routes/wire.d.ts} +41 -44
  61. package/dist/chat-store/core.d.ts +19 -0
  62. package/dist/chat-store/index.d.ts +22 -322
  63. package/dist/{parts-BqIHMdyu.d.ts → chat-store/parts.d.ts} +49 -47
  64. package/dist/chat-store/schema.d.ts +157 -0
  65. package/dist/chat-store/store.d.ts +177 -0
  66. package/dist/config/index.d.ts +13 -18
  67. package/dist/crypto/index.d.ts +10 -12
  68. package/dist/crypto/web-token.d.ts +22 -0
  69. package/dist/design-canvas/apply.d.ts +70 -0
  70. package/dist/design-canvas/drizzle-store.d.ts +29 -0
  71. package/dist/design-canvas/drizzle.d.ts +7 -575
  72. package/dist/{export-presets-mgVulRaV.d.ts → design-canvas/export-presets.d.ts} +18 -22
  73. package/dist/design-canvas/index.d.ts +22 -268
  74. package/dist/design-canvas/mcp-entry.d.ts +15 -0
  75. package/dist/design-canvas/mcp-handler.d.ts +34 -0
  76. package/dist/design-canvas/mcp-tools.d.ts +30 -0
  77. package/dist/{model-DnfO_PdJ.d.ts → design-canvas/model.d.ts} +33 -35
  78. package/dist/{operations-ByJ6yXOW.d.ts → design-canvas/operations.d.ts} +21 -25
  79. package/dist/design-canvas/schema.d.ts +558 -0
  80. package/dist/{store-CqfDtnPQ.d.ts → design-canvas/store.d.ts} +8 -12
  81. package/dist/design-canvas/templates.d.ts +72 -0
  82. package/dist/design-canvas/validate.d.ts +32 -0
  83. package/dist/design-canvas-react/components/BleedTrimOverlay.d.ts +22 -0
  84. package/dist/design-canvas-react/components/BrandKnot.d.ts +11 -0
  85. package/dist/design-canvas-react/components/CanvasEmptyState.d.ts +32 -0
  86. package/dist/design-canvas-react/components/CanvasInsertPanel.d.ts +53 -0
  87. package/dist/{lazy-DrkVyDpe.d.ts → design-canvas-react/components/DesignCanvas.d.ts} +27 -20
  88. package/dist/design-canvas-react/components/DesignCanvasEditor.d.ts +23 -0
  89. package/dist/design-canvas-react/components/ElementNode.d.ts +51 -0
  90. package/dist/design-canvas-react/components/ExportControl.d.ts +21 -0
  91. package/dist/design-canvas-react/components/GridLayer.d.ts +47 -0
  92. package/dist/design-canvas-react/components/InlineTextEditor.d.ts +25 -0
  93. package/dist/design-canvas-react/components/LayersPanel.d.ts +20 -0
  94. package/dist/design-canvas-react/components/PagesStrip.d.ts +34 -0
  95. package/dist/design-canvas-react/components/Rulers.d.ts +31 -0
  96. package/dist/design-canvas-react/components/SelectionLayer.d.ts +51 -0
  97. package/dist/design-canvas-react/components/SnapGuidesOverlay.d.ts +25 -0
  98. package/dist/design-canvas-react/components/Toolbar.d.ts +64 -0
  99. package/dist/design-canvas-react/components/Workspace.d.ts +92 -0
  100. package/dist/design-canvas-react/components/ZoomControls.d.ts +14 -0
  101. package/dist/design-canvas-react/components/glyphs.d.ts +46 -0
  102. package/dist/design-canvas-react/components/icon-button.d.ts +22 -0
  103. package/dist/design-canvas-react/components/index.d.ts +27 -0
  104. package/dist/design-canvas-react/components/layer-tree.d.ts +34 -0
  105. package/dist/design-canvas-react/components/ruler-math.d.ts +78 -0
  106. package/dist/design-canvas-react/components/transform-math.d.ts +168 -0
  107. package/dist/{command-stack-TNPWJCzW.d.ts → design-canvas-react/contracts.d.ts} +16 -63
  108. package/dist/design-canvas-react/engine/command-stack.d.ts +43 -0
  109. package/dist/design-canvas-react/engine/commands.d.ts +154 -0
  110. package/dist/design-canvas-react/engine/selection.d.ts +48 -0
  111. package/dist/design-canvas-react/engine/snap.d.ts +24 -0
  112. package/dist/design-canvas-react/engine/zoom-pan.d.ts +18 -0
  113. package/dist/design-canvas-react/engine.d.ts +21 -399
  114. package/dist/design-canvas-react/export-math.d.ts +104 -0
  115. package/dist/design-canvas-react/export.d.ts +89 -0
  116. package/dist/design-canvas-react/index.d.ts +16 -586
  117. package/dist/design-canvas-react/insert-builders.d.ts +61 -0
  118. package/dist/design-canvas-react/lazy.d.ts +21 -6
  119. package/dist/documents/docx.d.ts +50 -0
  120. package/dist/documents/extract.d.ts +87 -0
  121. package/dist/documents/index.d.ts +26 -232
  122. package/dist/documents/media-type.d.ts +33 -0
  123. package/dist/documents/pdf-inspector.d.ts +5 -9
  124. package/dist/{types-DrBidf3O.d.ts → documents/types.d.ts} +13 -15
  125. package/dist/documents/zip.d.ts +56 -0
  126. package/dist/eval/calibration.d.ts +106 -0
  127. package/dist/eval/index.d.ts +8 -116
  128. package/dist/eval-campaign/index.d.ts +11 -12
  129. package/dist/{trust-gate-Dcm5xSva.d.ts → eval-campaign/trust-gate.d.ts} +5 -9
  130. package/dist/forms/blank.d.ts +48 -0
  131. package/dist/forms/fill.d.ts +105 -0
  132. package/dist/forms/index.d.ts +58 -332
  133. package/dist/forms/registry.d.ts +115 -0
  134. package/dist/forms/verify.d.ts +58 -0
  135. package/dist/harness/index.d.ts +21 -19
  136. package/dist/intakes/api.d.ts +5 -11
  137. package/dist/{completion-CvcNUz07.d.ts → intakes/completion.d.ts} +7 -11
  138. package/dist/intakes/context-sufficiency.d.ts +113 -0
  139. package/dist/intakes/drizzle/schema.d.ts +338 -0
  140. package/dist/intakes/drizzle/store.d.ts +75 -0
  141. package/dist/intakes/drizzle.d.ts +12 -391
  142. package/dist/intakes/index.d.ts +23 -113
  143. package/dist/{model-C8U0HZxL.d.ts → intakes/model.d.ts} +15 -17
  144. package/dist/intakes-react/components/BrandMark.d.ts +10 -0
  145. package/dist/intakes-react/components/IntakeInterview.d.ts +15 -0
  146. package/dist/intakes-react/components/index.d.ts +1 -0
  147. package/dist/intakes-react/contracts.d.ts +42 -0
  148. package/dist/intakes-react/index.d.ts +12 -47
  149. package/dist/intakes-react/lazy.d.ts +9 -8
  150. package/dist/integrations/index.d.ts +10 -12
  151. package/dist/{contract-OxG_jVMx.d.ts → interactions/contract.d.ts} +40 -42
  152. package/dist/interactions/index.d.ts +16 -256
  153. package/dist/interactions/route.d.ts +151 -0
  154. package/dist/interactions/sidecar.d.ts +100 -0
  155. package/dist/knowledge/index.d.ts +7 -11
  156. package/dist/knowledge-loop/index.d.ts +13 -20
  157. package/dist/legibility/checks/empty-state.d.ts +59 -0
  158. package/dist/legibility/checks/reachability.d.ts +103 -0
  159. package/dist/legibility/checks/silent-failure.d.ts +57 -0
  160. package/dist/legibility/checks/success.d.ts +38 -0
  161. package/dist/legibility/checks/vocabulary.d.ts +65 -0
  162. package/dist/legibility/cli-args.d.ts +30 -0
  163. package/dist/legibility/cli.d.ts +25 -0
  164. package/dist/legibility/index.d.ts +10 -530
  165. package/dist/legibility/report.d.ts +22 -0
  166. package/dist/legibility/scan.d.ts +29 -0
  167. package/dist/legibility/source.d.ts +132 -0
  168. package/dist/legibility/suppress.d.ts +36 -0
  169. package/dist/legibility/types.d.ts +168 -0
  170. package/dist/legibility/walk-sources.d.ts +21 -0
  171. package/dist/{agent-activity-C8ZG0F0M.d.ts → missions/agent-activity.d.ts} +3 -5
  172. package/dist/missions/engine.d.ts +251 -0
  173. package/dist/missions/events.d.ts +195 -0
  174. package/dist/missions/index.d.ts +12 -765
  175. package/dist/missions/plan-parse.d.ts +50 -0
  176. package/dist/missions/service.d.ts +265 -0
  177. package/dist/{failover-D-3UXXTb.d.ts → model-resolution/failover.d.ts} +10 -12
  178. package/dist/model-resolution/index.d.ts +15 -18
  179. package/dist/object-store/index.d.ts +15 -17
  180. package/dist/openui/action.d.ts +54 -0
  181. package/dist/openui/authoring.d.ts +25 -0
  182. package/dist/openui/index.d.ts +24 -206
  183. package/dist/openui/route.d.ts +124 -0
  184. package/dist/openui/segments.d.ts +71 -0
  185. package/dist/openui/values.d.ts +82 -0
  186. package/dist/openui-react/index.d.ts +9 -13
  187. package/dist/peer-floors/check.d.ts +9 -190
  188. package/dist/peer-floors/cli.d.ts +2 -3
  189. package/dist/peer-floors/dependency-source.d.ts +178 -0
  190. package/dist/plans/index.d.ts +13 -14
  191. package/dist/{billing-BuNlaKlE.d.ts → platform/billing.d.ts} +28 -32
  192. package/dist/platform/guards.d.ts +79 -0
  193. package/dist/platform/hub.d.ts +107 -0
  194. package/dist/platform/index.d.ts +7 -112
  195. package/dist/{sso-Cm00S61u.d.ts → platform/sso.d.ts} +15 -97
  196. package/dist/preflight/cli.d.ts +3 -6
  197. package/dist/preflight/index.d.ts +16 -18
  198. package/dist/preset-cloudflare/headers.d.ts +12 -0
  199. package/dist/preset-cloudflare/index.d.ts +22 -74
  200. package/dist/preset-cloudflare/workflow-instance.d.ts +35 -0
  201. package/dist/profile/budget.d.ts +72 -0
  202. package/dist/profile/fingerprint.d.ts +65 -0
  203. package/dist/profile/index.d.ts +27 -19
  204. package/dist/prompt/index.d.ts +3 -5
  205. package/dist/record/drizzle/schema.d.ts +488 -0
  206. package/dist/record/drizzle/store.d.ts +224 -0
  207. package/dist/record/drizzle.d.ts +10 -679
  208. package/dist/record/fold.d.ts +99 -0
  209. package/dist/record/index.d.ts +13 -13
  210. package/dist/{fold-DACU7gtf.d.ts → record/model.d.ts} +22 -124
  211. package/dist/record/ulid.d.ts +12 -0
  212. package/dist/redact/index.d.ts +14 -16
  213. package/dist/run/index.d.ts +11 -16
  214. package/dist/runtime/agent.d.ts +23 -0
  215. package/dist/runtime/certified-delivery.d.ts +57 -0
  216. package/dist/runtime/index.d.ts +17 -367
  217. package/dist/runtime/loop.d.ts +58 -0
  218. package/dist/runtime/model-catalog.d.ts +103 -0
  219. package/dist/{model-CdCDfBA9.d.ts → runtime/model.d.ts} +25 -27
  220. package/dist/runtime/openai-stream.d.ts +126 -0
  221. package/dist/runtime/surface-profile.d.ts +115 -0
  222. package/dist/sandbox/binary-read.d.ts +63 -0
  223. package/dist/sandbox/diagnostics.d.ts +69 -0
  224. package/dist/sandbox/index.d.ts +103 -1085
  225. package/dist/sandbox/model.d.ts +179 -0
  226. package/dist/sandbox/outcome.d.ts +10 -0
  227. package/dist/sandbox/prewarm-claim-d1.d.ts +80 -0
  228. package/dist/sandbox/prewarm.d.ts +193 -0
  229. package/dist/sandbox/recovery.d.ts +216 -0
  230. package/dist/sandbox/terminal-connection.d.ts +145 -0
  231. package/dist/sandbox/workspace-sandbox-manager.d.ts +44 -0
  232. package/dist/sequences/apply.d.ts +54 -0
  233. package/dist/sequences/captions.d.ts +91 -0
  234. package/dist/sequences/drizzle-store.d.ts +36 -0
  235. package/dist/sequences/drizzle.d.ts +7 -1252
  236. package/dist/sequences/exports.d.ts +138 -0
  237. package/dist/sequences/index.d.ts +19 -340
  238. package/dist/sequences/mcp-entry.d.ts +15 -0
  239. package/dist/sequences/mcp-handler.d.ts +39 -0
  240. package/dist/sequences/mcp-tools.d.ts +47 -0
  241. package/dist/{store-B7LLlk9p.d.ts → sequences/model.d.ts} +26 -110
  242. package/dist/sequences/operations.d.ts +126 -0
  243. package/dist/sequences/schema.d.ts +1231 -0
  244. package/dist/sequences/store.d.ts +81 -0
  245. package/dist/sequences/validate.d.ts +98 -0
  246. package/dist/sequences-react/components/BrandMark.d.ts +10 -0
  247. package/dist/sequences-react/components/PreviewCanvas.d.ts +26 -0
  248. package/dist/sequences-react/components/SnapIndicatorLine.d.ts +11 -0
  249. package/dist/sequences-react/components/TimelineClipChip.d.ts +80 -0
  250. package/dist/sequences-react/components/TimelineEditor.d.ts +44 -0
  251. package/dist/sequences-react/components/TimelineEmptyState.d.ts +21 -0
  252. package/dist/sequences-react/components/TimelineGhostLanes.d.ts +14 -0
  253. package/dist/sequences-react/components/TimelinePlayhead.d.ts +11 -0
  254. package/dist/sequences-react/components/TimelineRuler.d.ts +16 -0
  255. package/dist/sequences-react/components/TimelineSmallScreenGate.d.ts +12 -0
  256. package/dist/sequences-react/components/TimelineTrackRow.d.ts +51 -0
  257. package/dist/sequences-react/components/ZoomControl.d.ts +15 -0
  258. package/dist/sequences-react/components/composite-command.d.ts +8 -0
  259. package/dist/sequences-react/components/glyphs.d.ts +26 -0
  260. package/dist/sequences-react/components/index.d.ts +31 -0
  261. package/dist/sequences-react/components/interaction-math.d.ts +103 -0
  262. package/dist/sequences-react/contracts.d.ts +187 -0
  263. package/dist/sequences-react/engine/command-stack.d.ts +18 -0
  264. package/dist/sequences-react/engine/commands.d.ts +146 -0
  265. package/dist/sequences-react/engine/playback.d.ts +18 -0
  266. package/dist/sequences-react/engine/snap.d.ts +29 -0
  267. package/dist/sequences-react/engine/zoom.d.ts +29 -0
  268. package/dist/sequences-react/index.d.ts +20 -880
  269. package/dist/sequences-react/lazy.d.ts +8 -0
  270. package/dist/sequences-react/media/frame-provider.d.ts +70 -0
  271. package/dist/sequences-react/media/transcription.d.ts +33 -0
  272. package/dist/sequences-react/media/waveform.d.ts +34 -0
  273. package/dist/session-shell/index.d.ts +31 -204
  274. package/dist/session-shell/nav-guard.d.ts +170 -0
  275. package/dist/session-shell/path.d.ts +19 -0
  276. package/dist/signoff/cli.d.ts +4 -7
  277. package/dist/signoff/config.d.ts +12 -0
  278. package/dist/signoff/exec.d.ts +44 -0
  279. package/dist/signoff/index.d.ts +56 -14
  280. package/dist/signoff/invoked-as-script.d.ts +25 -0
  281. package/dist/signoff/node-version.d.ts +50 -0
  282. package/dist/signoff/proof-attach.d.ts +88 -0
  283. package/dist/signoff/proof-cli.d.ts +1 -0
  284. package/dist/signoff/proof-fixture.d.ts +13 -0
  285. package/dist/signoff/proof-from-report.d.ts +22 -0
  286. package/dist/signoff/proof-git.d.ts +57 -0
  287. package/dist/signoff/proof-record.d.ts +202 -0
  288. package/dist/signoff/proof-verify.d.ts +103 -0
  289. package/dist/signoff/proof.d.ts +35 -310
  290. package/dist/signoff/report.d.ts +7 -0
  291. package/dist/{run-D80hoLKh.d.ts → signoff/run.d.ts} +3 -6
  292. package/dist/signoff/schedule.d.ts +55 -0
  293. package/dist/signoff/seeds.d.ts +50 -0
  294. package/dist/signoff/store.d.ts +22 -0
  295. package/dist/{types-Bd6uW9vQ.d.ts → signoff/types.d.ts} +15 -17
  296. package/dist/signoff/workflow-pin.d.ts +56 -0
  297. package/dist/signoff/workspace.d.ts +40 -0
  298. package/dist/skills/index.d.ts +28 -32
  299. package/dist/skills-placement/index.d.ts +7 -11
  300. package/dist/spend/budget.d.ts +123 -0
  301. package/dist/spend/ceiling.d.ts +51 -0
  302. package/dist/spend/cli-args.d.ts +20 -0
  303. package/dist/spend/cli.d.ts +1 -0
  304. package/dist/spend/fixtures/incident-parked-time.d.ts +55 -0
  305. package/dist/spend/index.d.ts +38 -1144
  306. package/dist/spend/liveness.d.ts +131 -0
  307. package/dist/spend/ownership.d.ts +87 -0
  308. package/dist/spend/reconcile.d.ts +109 -0
  309. package/dist/spend/reference.d.ts +42 -0
  310. package/dist/spend/report.d.ts +12 -0
  311. package/dist/spend/store.d.ts +123 -0
  312. package/dist/spend/types.d.ts +466 -0
  313. package/dist/store/index.d.ts +10 -12
  314. package/dist/stories/app-shell/fixtures.d.ts +43 -0
  315. package/dist/stories/app-shell/shell.d.ts +81 -0
  316. package/dist/stories/assistant/fixtures.d.ts +73 -0
  317. package/dist/stories/chat/fixtures.d.ts +70 -0
  318. package/dist/stories/chat/markdown.d.ts +11 -0
  319. package/dist/stories/chat/run-drill-in.d.ts +19 -0
  320. package/dist/stories/chat-controls/fixtures.d.ts +116 -0
  321. package/dist/stories/design-canvas/fixtures.d.ts +57 -0
  322. package/dist/stories/fixtures/canvas.d.ts +10 -0
  323. package/dist/stories/fixtures/catalog.d.ts +7 -0
  324. package/dist/stories/fixtures/chat.d.ts +39 -0
  325. package/dist/stories/fixtures/index.d.ts +4 -0
  326. package/dist/stories/fixtures/sequences.d.ts +17 -0
  327. package/dist/stories/panels/fixtures.d.ts +63 -0
  328. package/dist/stories/sequences/fixtures.d.ts +30 -0
  329. package/dist/stories/studio/fixtures.d.ts +22 -0
  330. package/dist/stream/index.d.ts +10 -56
  331. package/dist/{stream-normalizer-DKRxyVlZ.d.ts → stream/stream-normalizer.d.ts} +23 -26
  332. package/dist/{turn-buffer-COMQUwO2.d.ts → stream/turn-buffer.d.ts} +21 -23
  333. package/dist/stream/turn-identity.d.ts +49 -0
  334. package/dist/studio/generation.d.ts +179 -0
  335. package/dist/studio/index.d.ts +12 -181
  336. package/dist/studio-react/avatar-composer.d.ts +8 -0
  337. package/dist/studio-react/composer-hero.d.ts +12 -0
  338. package/dist/studio-react/composer-shell.d.ts +18 -0
  339. package/dist/studio-react/generation-card.d.ts +9 -0
  340. package/dist/studio-react/generation-detail-modal.d.ts +11 -0
  341. package/dist/studio-react/generation-detail.d.ts +6 -0
  342. package/dist/studio-react/generation-grid.d.ts +15 -0
  343. package/dist/studio-react/image-composer.d.ts +8 -0
  344. package/dist/studio-react/index.d.ts +32 -245
  345. package/dist/studio-react/library-drawer.d.ts +12 -0
  346. package/dist/studio-react/library-panel.d.ts +15 -0
  347. package/dist/studio-react/publish-package-composer.d.ts +18 -0
  348. package/dist/studio-react/result-canvas.d.ts +6 -0
  349. package/dist/studio-react/speech-composer.d.ts +4 -0
  350. package/dist/studio-react/studio-header.d.ts +5 -0
  351. package/dist/studio-react/studio-sheet.d.ts +12 -0
  352. package/dist/studio-react/studio-workspace.d.ts +23 -0
  353. package/dist/studio-react/transcription-composer.d.ts +12 -0
  354. package/dist/studio-react/type-config.d.ts +11 -0
  355. package/dist/studio-react/use-studio-generations.d.ts +20 -0
  356. package/dist/studio-react/video-composer.d.ts +10 -0
  357. package/dist/tangle/index.d.ts +7 -9
  358. package/dist/teams/drizzle/access.d.ts +82 -0
  359. package/dist/{invitations-schema-_fI7HkJP.d.ts → teams/drizzle/invitations-schema.d.ts} +39 -27
  360. package/dist/teams/drizzle/personal-organization.d.ts +41 -0
  361. package/dist/{access-490O6aOU.d.ts → teams/drizzle/schema.d.ts} +57 -122
  362. package/dist/teams/drizzle.d.ts +12 -44
  363. package/dist/teams/index.d.ts +20 -44
  364. package/dist/teams/invitations-api.d.ts +17 -21
  365. package/dist/{invitations-DoYMvXea.d.ts → teams/invitations.d.ts} +14 -18
  366. package/dist/teams/invite.d.ts +42 -0
  367. package/dist/teams/members-api.d.ts +12 -16
  368. package/dist/teams/resend.d.ts +3 -13
  369. package/dist/{roles-B4nU3jDi.d.ts → teams/roles.d.ts} +18 -20
  370. package/dist/teams-react/components/BrandMark.d.ts +10 -0
  371. package/dist/teams-react/components/InvitationsPanel.d.ts +13 -0
  372. package/dist/teams-react/components/InviteAcceptPage.d.ts +10 -0
  373. package/dist/teams-react/components/MembersPanel.d.ts +14 -0
  374. package/dist/teams-react/components/RoleSelect.d.ts +17 -0
  375. package/dist/teams-react/components/index.d.ts +3 -0
  376. package/dist/teams-react/contracts.d.ts +134 -0
  377. package/dist/teams-react/index.d.ts +12 -143
  378. package/dist/teams-react/lazy.d.ts +11 -11
  379. package/dist/test-setup.d.ts +1 -0
  380. package/dist/theme/index.d.ts +6 -104
  381. package/dist/theme/tailwind-preset.d.ts +1 -2
  382. package/dist/theme/theme.d.ts +106 -0
  383. package/dist/theme-contract/cli.d.ts +21 -0
  384. package/dist/theme-contract/index.d.ts +4 -6
  385. package/dist/{auth-BYtiazA4.d.ts → tools/auth.d.ts} +8 -11
  386. package/dist/tools/capability.d.ts +54 -0
  387. package/dist/tools/dispatch.d.ts +37 -0
  388. package/dist/tools/errors.d.ts +8 -0
  389. package/dist/tools/gating.d.ts +62 -0
  390. package/dist/tools/http.d.ts +27 -0
  391. package/dist/tools/index.d.ts +12 -217
  392. package/dist/{mcp-rpc-DYwPlYbZ.d.ts → tools/mcp-rpc.d.ts} +7 -9
  393. package/dist/{mcp-xxoZZfor.d.ts → tools/mcp.d.ts} +14 -16
  394. package/dist/tools/openai.d.ts +28 -0
  395. package/dist/tools/registry.d.ts +39 -0
  396. package/dist/tools/runtime.d.ts +22 -0
  397. package/dist/{types-B25Mib1r.d.ts → tools/types.d.ts} +15 -83
  398. package/dist/{flow-types-CJxEmaRy.d.ts → trace/flow-types.d.ts} +2 -4
  399. package/dist/trace/index.d.ts +11 -148
  400. package/dist/trace/mission-flow.d.ts +82 -0
  401. package/dist/trace/mission-trace.d.ts +52 -0
  402. package/dist/turn-health/classify.d.ts +207 -0
  403. package/dist/turn-health/index.d.ts +29 -637
  404. package/dist/turn-health/lifecycle.d.ts +75 -0
  405. package/dist/turn-health/sink.d.ts +122 -0
  406. package/dist/turn-health/sweep.d.ts +245 -0
  407. package/dist/turn-stream/adapters.d.ts +257 -0
  408. package/dist/turn-stream/core.d.ts +293 -0
  409. package/dist/turn-stream/do.d.ts +144 -0
  410. package/dist/turn-stream/index.d.ts +62 -738
  411. package/dist/turn-stream/memory.d.ts +41 -0
  412. package/dist/vault/ConfirmDialog.d.ts +22 -0
  413. package/dist/vault/VaultPane.d.ts +15 -0
  414. package/dist/{VaultPane-BDP6SB_K.d.ts → vault/contracts.d.ts} +15 -22
  415. package/dist/vault/index.d.ts +15 -22
  416. package/dist/vault/lazy.d.ts +9 -7
  417. package/dist/vault/server.d.ts +8 -10
  418. package/dist/web/free-route-limit.d.ts +187 -0
  419. package/dist/web/index.d.ts +15 -207
  420. package/dist/{rate-limit-BOVmJRXZ.d.ts → web/rate-limit.d.ts} +3 -5
  421. package/dist/web-react/agent-session-controls.d.ts +105 -0
  422. package/dist/web-react/async/async-view.d.ts +69 -0
  423. package/dist/web-react/async/index.d.ts +13 -305
  424. package/dist/web-react/async/state.d.ts +107 -0
  425. package/dist/web-react/async/use-async-resource.d.ts +41 -0
  426. package/dist/web-react/async/use-confirmed-mutation.d.ts +90 -0
  427. package/dist/web-react/brand-mark.d.ts +11 -0
  428. package/dist/web-react/chat-attachments.d.ts +21 -0
  429. package/dist/web-react/chat-composer.d.ts +174 -0
  430. package/dist/web-react/chat-interactions.d.ts +1 -0
  431. package/dist/web-react/chat-mentions.d.ts +48 -0
  432. package/dist/web-react/chat-stream.d.ts +106 -0
  433. package/dist/web-react/class-names.d.ts +10 -0
  434. package/dist/web-react/controls.d.ts +265 -0
  435. package/dist/web-react/durable-chat-cards.d.ts +40 -0
  436. package/dist/web-react/durable-interaction-submit.d.ts +22 -0
  437. package/dist/web-react/durable-plan-card.d.ts +13 -0
  438. package/dist/web-react/durable-plan-flow.d.ts +77 -0
  439. package/dist/web-react/harness-glyphs.d.ts +28 -0
  440. package/dist/web-react/index.d.ts +80 -2347
  441. package/dist/web-react/inert.d.ts +39 -0
  442. package/dist/web-react/insight-card.d.ts +203 -0
  443. package/dist/web-react/interaction-card-support.d.ts +115 -0
  444. package/dist/web-react/interaction-plan-card.d.ts +39 -0
  445. package/dist/web-react/interaction-question-card.d.ts +100 -0
  446. package/dist/web-react/message-attachments.d.ts +56 -0
  447. package/dist/web-react/mission-activity.d.ts +96 -0
  448. package/dist/web-react/motion.d.ts +43 -0
  449. package/dist/web-react/provenance-model.d.ts +195 -0
  450. package/dist/web-react/provenance.d.ts +82 -0
  451. package/dist/web-react/provider-logo.d.ts +14 -0
  452. package/dist/web-react/record-grid-model.d.ts +257 -0
  453. package/dist/web-react/record-grid.d.ts +108 -0
  454. package/dist/web-react/sandbox-terminal.d.ts +90 -0
  455. package/dist/web-react/seat-paywall.d.ts +47 -0
  456. package/dist/web-react/session-history.d.ts +196 -0
  457. package/dist/web-react/smooth-text.d.ts +29 -0
  458. package/dist/web-react/sparkline.d.ts +150 -0
  459. package/dist/web-react/terminal.d.ts +1 -92
  460. package/dist/web-react/use-chat-interactions.d.ts +78 -0
  461. package/dist/web-react/use-composer-attachments.d.ts +111 -0
  462. package/dist/web-react/use-file-mentions.d.ts +94 -0
  463. package/dist/web-react/work-product.d.ts +105 -0
  464. package/dist/work-product/claim-support.d.ts +288 -0
  465. package/dist/work-product/index.d.ts +16 -849
  466. package/dist/work-product/provenance.d.ts +61 -0
  467. package/dist/{queue-VTBA5ONX.d.ts → work-product/queue.d.ts} +10 -12
  468. package/dist/work-product/quote.d.ts +139 -0
  469. package/dist/work-product/route.d.ts +88 -0
  470. package/dist/work-product/service.d.ts +123 -0
  471. package/dist/work-product/tools.d.ts +144 -0
  472. package/dist/{types-CCeYywdS.d.ts → work-product/types.d.ts} +29 -31
  473. package/dist/work-product-react/index.d.ts +19 -8
  474. package/dist/workspace-react/index.d.ts +8 -11
  475. package/package.json +5 -4
  476. package/dist/agent-session-controls-CmlXwp_H.d.ts +0 -384
  477. package/dist/apply-6wlMOLf8.d.ts +0 -280
  478. package/dist/attachment-validation-BfJDBU1g.d.ts +0 -261
  479. package/dist/budget-BOucfcb_.d.ts +0 -142
  480. package/dist/values-C7RidJuI.d.ts +0 -156
@@ -1,92 +1 @@
1
- /** Define the connection details and status for a sandbox terminal session */
2
- interface SandboxTerminalConnection {
3
- runtimeUrl: string | null;
4
- sidecarUrl: string | null;
5
- token: string | null;
6
- expiresAt: string | null;
7
- status: string;
8
- error: string | null;
9
- loading: boolean;
10
- sandboxId?: string;
11
- connectionId?: string;
12
- }
13
- /**
14
- * Define the response structure for a sandbox terminal connection including URLs, token, status, and errors
15
- *
16
- * The browser-direct scoped-token route (`createSandboxTerminalConnectionRoute`,
17
- * `src/sandbox/terminal-connection.ts`) returns `sidecarUrl`. The hook also
18
- * exposes that URL through the historical `runtimeUrl` state field so existing
19
- * terminal panels do not need transport-specific branching.
20
- *
21
- * `connectionId` is the id the route's minted token's `sid` is bound to
22
- * (echoed back from the `connectionId` the hook sent) — pass it straight
23
- * through as `TerminalView`'s `connectionId` prop, since any other value
24
- * fails the WS upgrade on the current platform.
25
- */
26
- interface SandboxTerminalConnectionResponse {
27
- runtimeUrl?: string;
28
- sidecarUrl?: string;
29
- token?: string;
30
- expiresAt?: string;
31
- status?: string;
32
- error?: string;
33
- sandboxId?: string;
34
- connectionId?: string;
35
- }
36
- /**
37
- * Define options for configuring a sandbox terminal connection including workspace ID and connection parameters
38
- *
39
- * `connectionId`, when set, is passed to
40
- * `createSandboxTerminalConnectionRoute` as the `connectionId` query
41
- * parameter — pass `tabTerminalConnectionId()` here so the route mints a
42
- * token whose `sid` is bound to the same id `TerminalView` will dial. Give
43
- * `TerminalView` the response's echoed `connectionId` (not this input
44
- * value) alongside `sidecarUrl` as `apiUrl` and `token`, since a product's
45
- * `resolveConnectionId` seam may rewrite it server-side.
46
- */
47
- interface UseSandboxTerminalConnectionOptions {
48
- workspaceId: string;
49
- connectionUrl?: string | ((workspaceId: string) => string);
50
- connectionId?: string;
51
- fetcher?: typeof fetch;
52
- provisionPollIntervalMs?: number;
53
- provisionPollTimeoutMs?: number;
54
- tokenRefreshSkewMs?: number;
55
- }
56
- /** Resolve sandbox terminal connection status and provide a method to initiate the connection */
57
- interface UseSandboxTerminalConnectionResult extends SandboxTerminalConnection {
58
- connect: () => Promise<void>;
59
- }
60
- /**
61
- * Manage and maintain a sandbox terminal connection with automatic polling and token refresh handling
62
- *
63
- * `connectionUrl` is backed by the browser-direct scoped-token route
64
- * (`createSandboxTerminalConnectionRoute`,
65
- * `src/sandbox/terminal-connection.ts`). The route returns `sidecarUrl`; the
66
- * hook normalizes it into both URL fields for compatibility with existing
67
- * terminal panels.
68
- *
69
- * Pass `tabTerminalConnectionId()` as `opts.connectionId` — the hook forwards
70
- * it as the `connectionId` query parameter the browser-direct route requires
71
- * to mint a token whose `sid` is bound to that exact id (the orchestrator's
72
- * terminal WS gate fails closed on any other value). Give `TerminalView` the
73
- * RESULT's echoed `connectionId` (not the input value — a product's
74
- * `resolveConnectionId` seam may rewrite it), the resolved `sidecarUrl`/
75
- * `runtimeUrl` as `apiUrl`, and `token` as its token prop.
76
- */
77
- declare function useSandboxTerminalConnection(opts: UseSandboxTerminalConnectionOptions): UseSandboxTerminalConnectionResult;
78
- /**
79
- * Stable-per-tab, unique-per-client terminal connection id.
80
- *
81
- * Persists in `sessionStorage` so a reload in the same tab reuses the id (the
82
- * sidecar restores the same PTY session via `TerminalView.connectionId`), while
83
- * separate tabs/windows each get a distinct id. Pass the result as
84
- * `TerminalView`'s `connectionId`. Without it (e.g. gtm-agent today) every tab
85
- * shares one connection id and their reconnects evict each other.
86
- *
87
- * Falls back to an ephemeral id when `sessionStorage` is unavailable (SSR,
88
- * privacy mode) — still unique per call, just not reload-stable.
89
- */
90
- declare function tabTerminalConnectionId(storageKey?: string): string;
91
-
92
- export { type SandboxTerminalConnection, type SandboxTerminalConnectionResponse, type UseSandboxTerminalConnectionOptions, type UseSandboxTerminalConnectionResult, tabTerminalConnectionId, useSandboxTerminalConnection };
1
+ export * from './sandbox-terminal';
@@ -0,0 +1,78 @@
1
+ /**
2
+ * useChatInteractions — the interaction-state wiring every consumer of
3
+ * `ChatStreamCallbacks.onInteraction` re-implements: an id-keyed,
4
+ * insertion-ordered list with
5
+ *
6
+ * - forward-only status transitions (a replayed/stale `pending` never
7
+ * resurrects a resolved card),
8
+ * - pending-question content dedupe (a re-emitted duplicate ask never renders
9
+ * a second card),
10
+ * - cancel-event application (`interaction.cancel` → cancelled/expired),
11
+ * - local resolution marking (the card's `onResolved`),
12
+ * - reload restore from the answer route's GET list (sidecar registry is the
13
+ * source of truth after a reload),
14
+ * - turn-end settling (client mirror of the server's finalize pass: a turn
15
+ * that completed without a cancel was answered; a failed turn can make no
16
+ * such claim).
17
+ *
18
+ * The reducer functions are pure and exported for non-React consumers/tests;
19
+ * the hook is a thin `useState` shell over them.
20
+ */
21
+ import { type ChatInteraction, type ChatInteractionStatus, type InteractionAnswers, type InteractionCancelData, type InteractionRequestWire } from './chat-interactions';
22
+ /** Insert or update one interaction. A terminal existing entry wins over any
23
+ * incoming state for the same id; a new pending ask that duplicates another
24
+ * pending ask's content is dropped. Returns the same array when unchanged. */
25
+ export declare function upsertChatInteraction(list: ChatInteraction[], interaction: ChatInteraction): ChatInteraction[];
26
+ /** Applies an `interaction.cancel` event: only a pending ask moves, to
27
+ * `expired` (reason:"timeout") or `cancelled`. */
28
+ export declare function cancelChatInteraction(list: ChatInteraction[], cancel: InteractionCancelData): ChatInteraction[];
29
+ /** Marks one ask resolved locally (the card's `onResolved`). Forward-only. */
30
+ export declare function resolveChatInteraction(list: ChatInteraction[], id: string, status: Exclude<ChatInteractionStatus, 'pending'>, answers?: InteractionAnswers): ChatInteraction[];
31
+ /** Settles every still-pending ask when the turn ends: `answered` for a turn
32
+ * that completed cleanly, `expired` for one that failed. */
33
+ export declare function terminalizePendingChatInteractions(list: ChatInteraction[], status: Extract<ChatInteractionStatus, 'answered' | 'expired'>): ChatInteraction[];
34
+ /** Define modes for restoring chat interactions with legacy or durable strategies */
35
+ export type ChatInteractionRestoreMode = 'legacy' | 'durable';
36
+ /** Define options to control how chat interactions are restored during the restore process */
37
+ export interface RestoreChatInteractionsOptions {
38
+ /**
39
+ * `legacy` settles pending asks absent from the sidecar list as answered,
40
+ * preserving the pre-durable restore contract. `durable` leaves them
41
+ * pending because absence is ambiguous until `hydrateChatInteractions`
42
+ * applies the durable projection.
43
+ */
44
+ mode?: ChatInteractionRestoreMode;
45
+ }
46
+ /** Reload restore from the answer route's GET list. Legacy consumers retain
47
+ * the historical absence→answered behavior; durable consumers opt into the
48
+ * ambiguity-preserving mode and apply terminal parts through `hydrate`. */
49
+ export declare function restoreChatInteractions(list: ChatInteraction[], outstanding: InteractionRequestWire[], options?: RestoreChatInteractionsOptions): ChatInteraction[];
50
+ /** Applies transcript/state-store projections after reload. Terminal state and
51
+ * acknowledged answer values enrich an existing pending card without relying
52
+ * on the sidecar's outstanding-list absence. */
53
+ export declare function hydrateChatInteractions(list: ChatInteraction[], persisted: ChatInteraction[]): ChatInteraction[];
54
+ /** Resolve and manage chat interactions with methods to update, cancel, mark resolved, and restore state */
55
+ export interface UseChatInteractionsResult {
56
+ /** All known interactions, insertion-ordered. */
57
+ interactions: ChatInteraction[];
58
+ /** The asks currently blocking the run (waiting on the user). */
59
+ pending: ChatInteraction[];
60
+ /** Wire to `ChatStreamCallbacks.onInteraction` (and persisted-part replay). */
61
+ upsert: (interaction: ChatInteraction) => void;
62
+ /** Wire to `interaction.cancel` events. */
63
+ applyCancel: (cancel: InteractionCancelData) => void;
64
+ /** Wire to the cards' `onResolved`. */
65
+ markResolved: (id: string, status: Exclude<ChatInteractionStatus, 'pending'>, answers?: InteractionAnswers) => void;
66
+ /** Wire to the answer route's GET list after a reload/reconnect. */
67
+ restore: (outstanding: InteractionRequestWire[], options?: RestoreChatInteractionsOptions) => void;
68
+ /** Apply durable transcript/state projections after a reload. */
69
+ hydrate: (persisted: ChatInteraction[]) => void;
70
+ /** Settle still-pending asks when the turn ends. */
71
+ terminalizePending: (status: Extract<ChatInteractionStatus, 'answered' | 'expired'>) => void;
72
+ /** Drop everything (thread switch). */
73
+ reset: () => void;
74
+ }
75
+ /** Resolve options for restoring chat interactions from previous sessions */
76
+ export type UseChatInteractionsOptions = RestoreChatInteractionsOptions;
77
+ /** Manage chat interactions state with upsert, cancel, resolve, and restore capabilities */
78
+ export declare function useChatInteractions(options?: UseChatInteractionsOptions): UseChatInteractionsResult;
@@ -0,0 +1,111 @@
1
+ /**
2
+ * `useComposerAttachments` — the composer's staged-upload lifecycle: validate
3
+ * selected/dropped/pasted files against the shared limits (the SAME
4
+ * `sniffBinary`/`checkAttachmentType`/size-cap vocabulary the store-backed
5
+ * upload route enforces server-side, `../chat-routes/attachment-validation`
6
+ * + `../chat-routes/binary-sniff`), upload each accepted file with one POST
7
+ * request per file (so a single failure never poisons the batch), and track
8
+ * every file's status so a host composer can render chips and gate sending.
9
+ *
10
+ * Ported from gtm-agent's `src/components/composer-attachments.tsx`
11
+ * (gtm#584/#592/#593 hardened the sniff gate and batch semantics this leans
12
+ * on), de-gtm-ified:
13
+ * - the hardcoded `/api/vault/upload?workspaceId=` URL becomes
14
+ * `uploadUrl`/`buildUploadRequest` (the latter wins — it hands back both
15
+ * the URL and a `RequestInit` override, e.g. an auth header);
16
+ * - `sonner` toasts become `onReject` (client pre-validation, never hits the
17
+ * network) and `onError` (a request that reached the server and failed);
18
+ * - the sandbox-ui `validateComposerFiles` import becomes a small
19
+ * accept-list matcher re-implemented locally (`isAcceptedFileType`,
20
+ * mirroring its `accept`-string matching byte-for-byte) — this module
21
+ * stays free of the sandbox-ui peer;
22
+ * - the response is expected to be `{ files: ChatAttachmentInput[] }` (full
23
+ * server-authoritative descriptors — size/mediaType/kind — not gtm's
24
+ * `{path, name}`), so `references` is a verbatim pass-through with no
25
+ * client recompute;
26
+ * - `workspaceId`'s truthiness gate becomes `enabled` (default `true`).
27
+ *
28
+ * Import-free beyond React + the browser-safe `/chat-routes` validation core:
29
+ * this module ships through `/web-react` into client bundles
30
+ * (`tests/browser-safe-subpaths.test.ts` walks the graph), so nothing here
31
+ * may reach a Node builtin, `sandbox-ui`, or an engine package.
32
+ */
33
+ import type { ChatAttachmentInput, ChatAttachmentKind } from './chat-stream';
34
+ import type { ComposerFile } from './chat-composer';
35
+ export { ATTACHMENT_ACCEPT } from '../chat-routes/attachment-validation';
36
+ /** Define options for configuring file upload behavior and handling in a composer component */
37
+ export interface UseComposerAttachmentsOptions {
38
+ /** Simple upload target: every file POSTs here. Ignored when
39
+ * `buildUploadRequest` is provided. */
40
+ uploadUrl?: string;
41
+ /** Full request-building seam (auth headers, per-file routing, …) — wins
42
+ * over `uploadUrl` when both are set. */
43
+ buildUploadRequest?: (args: {
44
+ file: File;
45
+ name: string;
46
+ form: FormData;
47
+ }) => {
48
+ url: string;
49
+ init?: Omit<RequestInit, 'body' | 'signal'>;
50
+ };
51
+ /** Client pre-validation rejections — a file that never reaches the
52
+ * network (bad type, over a size cap, over count, disallowed kind). */
53
+ onReject?: (reason: string, file?: File) => void;
54
+ /** A file that reached the upload endpoint and failed (HTTP error,
55
+ * transport error, malformed response). */
56
+ onError?: (reason: string) => void;
57
+ limits?: {
58
+ maxCount?: number;
59
+ maxBinaryBytes?: number;
60
+ maxTextBytes?: number;
61
+ maxTotalBytes?: number;
62
+ };
63
+ /** Attachment kinds accepted, checked against the sniffed content's
64
+ * mime. Default: both (`['image', 'file']` — i.e. no restriction). */
65
+ allowedKinds?: ChatAttachmentKind[];
66
+ /** `<input accept>`-style gate for the file picker/drop/paste path.
67
+ * Default {@link ATTACHMENT_ACCEPT}. */
68
+ accept?: string;
69
+ /** When `false`, `addFiles` rejects every call via `onReject` (and
70
+ * `blockReason` explains why) instead of staging anything — the
71
+ * replacement for gtm's `workspaceId`-truthiness gate (e.g. no workspace
72
+ * loaded yet). Default `true`. */
73
+ enabled?: boolean;
74
+ }
75
+ /** Provide staged file chips, ready attachments, and methods to add, retry, or drop composer files */
76
+ export interface UseComposerAttachmentsResult {
77
+ /** Chip models for `ChatComposer`'s `pendingFiles` prop, one per staged
78
+ * file — `kind` is always `'file'` (agent-app's `ComposerFile.kind`
79
+ * discriminates file-vs-folder chips, not attachment media type). */
80
+ composerFiles: ComposerFile[];
81
+ /** Ready-to-send attachment descriptors — only files whose upload
82
+ * succeeded, straight from the server's response (no recompute). Feed
83
+ * this into `ChatTurnRequestPayload.attachments`. */
84
+ references: ChatAttachmentInput[];
85
+ /** Validate + stage + upload the given files, one request per file. */
86
+ addFiles: (files: File[] | FileList) => Promise<void>;
87
+ /** Re-upload a failed entry using its retained `File`. */
88
+ retry: (id: string) => void;
89
+ /** Drop one staged entry, aborting its upload and revoking its preview. */
90
+ removeAttachment: (id: string) => void;
91
+ /** Forget every staged entry (call after a successful send). */
92
+ clear: () => void;
93
+ /** True while any file is still pending or uploading. */
94
+ hasPending: boolean;
95
+ /** True while any file failed to upload. */
96
+ hasError: boolean;
97
+ /** Why a send is blocked, or `null` when the queue is clean. */
98
+ blockReason: string | null;
99
+ }
100
+ /**
101
+ * Owns the composer's attachment lifecycle: validate selected/dropped/pasted
102
+ * files against the shared limits, upload each accepted file to the
103
+ * product's store (one request per file), and track every file's status so
104
+ * the composer can render chips and gate sending.
105
+ *
106
+ * Failures surface loud — a rejected file calls `onReject` and is never
107
+ * uploaded; a failed upload calls `onError` and leaves an error chip the user
108
+ * can retry or remove. `references` only ever contains files whose upload the
109
+ * server actually confirmed.
110
+ */
111
+ export declare function useComposerAttachments(options: UseComposerAttachmentsOptions): UseComposerAttachmentsResult;
@@ -0,0 +1,94 @@
1
+ /**
2
+ * `useFileMentions` — the glue a host passes straight into `AgentComposer`'s
3
+ * `mention` prop (`@tangle-network/sandbox-ui#184`) to wire up `@`-file
4
+ * mentions against `createSandboxFileIndexRoute` (`/chat-routes`).
5
+ *
6
+ * Fetches the index once per session from `indexUrl`, refreshes it in the
7
+ * background whenever the popover opens (a `fetchItems` call) if the cached
8
+ * copy has aged past `refreshAfterMs`, and answers every keystroke from an
9
+ * in-memory fuzzy filter — no per-keystroke network round trip. The returned
10
+ * `refresh()` lets a caller force a re-fetch immediately instead of waiting
11
+ * on `refreshAfterMs` — e.g. right after the agent creates a file mid-session.
12
+ *
13
+ * `MentionItem`/the `mention` prop shape mirror the FROZEN contract from
14
+ * sandbox-ui#184 structurally (no import: `/web-react` stays dependency-free
15
+ * beyond React, and `@tangle-network/sandbox-ui` is an optional peer).
16
+ */
17
+ import type { ReactNode } from 'react';
18
+ import type { FileMention } from '../chat-routes/wire';
19
+ /** Mirrors sandbox-ui#184's `MentionItem` — the atomic pill's payload. For a
20
+ * file mention, `id` is the workspace-relative path (the pill's stable
21
+ * identity and the `@<id>` serialization sandbox-ui uses to round-trip
22
+ * `value`), `label` is the display name, and `detail` carries the full path
23
+ * for the popover row's secondary line. */
24
+ export interface MentionItem {
25
+ id: string;
26
+ label: string;
27
+ detail?: string;
28
+ kind?: string;
29
+ }
30
+ /** Mirrors sandbox-ui#184's `AgentComposerProps['mention']` shape — plug the
31
+ * hook's `mention` return value straight into that prop. */
32
+ export interface ComposerMentionProp {
33
+ trigger?: string;
34
+ fetchItems(query: string): Promise<MentionItem[]>;
35
+ onMentionsChange?(mentions: MentionItem[]): void;
36
+ renderItem?(item: MentionItem): ReactNode;
37
+ emptyText?: string;
38
+ }
39
+ /**
40
+ * Ranks `files` against `query` (case-insensitive), capped to `limit`:
41
+ * name-prefix matches first, then name-substring, then path-substring.
42
+ * Within a tier, shorter names sort first (the more specific match), then
43
+ * alphabetically by path for a stable order. An empty query returns the
44
+ * first `limit` entries unranked — the popover's default list before typing.
45
+ * Pure and dependency-free (no fuzzy-match library) so it's cheap enough to
46
+ * re-run on every keystroke against a 10k-entry index.
47
+ */
48
+ export declare function rankFileMentions(files: readonly FileMention[], query: string, limit: number): FileMention[];
49
+ /** Max popover results per query — enough to show a useful spread of matches
50
+ * without pushing the fuzzy-filtered list past what a popover can usefully
51
+ * render in one screen. */
52
+ export declare const DEFAULT_MENTION_LIMIT = 20;
53
+ /** How long a `ready` index is served before a background refetch — long
54
+ * enough that a full session's worth of popover opens don't repeatedly hit
55
+ * the index endpoint, short enough that a stale listing doesn't linger too
56
+ * far past workspace file changes. Callers who need the index current right
57
+ * now (e.g. just after the agent creates a file) call `refresh()` instead of
58
+ * waiting on this window. */
59
+ export declare const INDEX_REFRESH_AFTER_MS: number;
60
+ /** Popover empty-state copy for a `ready` index whose query matched nothing.
61
+ * Loading/warming/error states have their own copy — see `emptyTextFor`. */
62
+ export declare const DEFAULT_MENTION_EMPTY_TEXT = "No matching files";
63
+ /** Define options for configuring file mention fetching, caching, and display behavior */
64
+ export interface UseFileMentionsOptions {
65
+ /** GET endpoint returning `FileIndexResponse` (a `createSandboxFileIndexRoute`). */
66
+ indexUrl: string;
67
+ /** Max popover results per query. Default {@link DEFAULT_MENTION_LIMIT}. */
68
+ limit?: number;
69
+ /** How long a `ready` index is served without a background refetch.
70
+ * Default {@link INDEX_REFRESH_AFTER_MS}. */
71
+ refreshAfterMs?: number;
72
+ /** `fetch` override for tests / non-global-fetch hosts. Default `fetch`. */
73
+ fetchImpl?: typeof fetch;
74
+ /** Text shown in the popover's empty state once the index is loaded and
75
+ * the query matched nothing. Default {@link DEFAULT_MENTION_EMPTY_TEXT}. */
76
+ emptyText?: string;
77
+ }
78
+ /** Provide properties and methods to manage and refresh file mentions in a composer interface */
79
+ export interface UseFileMentionsResult {
80
+ /** Spread straight into `AgentComposer`'s `mention` prop. */
81
+ mention: ComposerMentionProp;
82
+ /** The files currently referenced by mentions in the composer's value —
83
+ * the send-body list (map through `fileMentionsToParts`). */
84
+ mentions: FileMention[];
85
+ /** Drop all currently-referenced mentions (e.g. after a successful send). */
86
+ clearMentions: () => void;
87
+ /** Force a re-fetch of the index right now, ignoring `refreshAfterMs` — for
88
+ * example right after the agent creates a file mid-session, so the next
89
+ * popover open sees it. Dedupes against an already-in-flight load rather
90
+ * than firing a second request. */
91
+ refresh: () => Promise<void>;
92
+ }
93
+ /** Resolve and manage file mention data with configurable fetching and state handling */
94
+ export declare function useFileMentions(options: UseFileMentionsOptions): UseFileMentionsResult;
@@ -0,0 +1,105 @@
1
+ /**
2
+ * Work-product review surfaces — the sandbox-ui-FREE half of the vertical:
3
+ *
4
+ * - {@link ReviewQueuePanel}: the practice/matters/campaign review queue over
5
+ * a `fetchQueue(cursor)` data port (the `AgentActivityPanel` shape).
6
+ * - {@link WorkProductCard}: the persisted `type:'work_product'` transcript
7
+ * anchor rendered inside `ChatMessages` — chat stays the driver surface.
8
+ * - {@link EvidenceLineageTable}: target → claim → source rows with
9
+ * click-through via an injected `resolveSourceUrl` (the
10
+ * `MessageAttachments.resolveFileUrl` pattern).
11
+ * - {@link ExceptionList} / {@link QualityCheckList}: severity-badged
12
+ * exception rows and pass/fail check rows.
13
+ * - {@link ProvenanceStamp}: profileHash prefix + runId + serving-model
14
+ * chips + the optional backtest slot ("182 cases · composite 0.81 ·
15
+ * trust PASS" — or "quality: unverified" when the trust gate failed).
16
+ *
17
+ * Anything hosting sandbox-ui (DiffView, CodeView, PillTabs) lives in
18
+ * `./work-product-react` instead — this module must stay importable without
19
+ * the optional sandbox-ui peer.
20
+ */
21
+ import { parseReviewQueueItem, type ReviewQueueItem, type ReviewQueueState } from '../work-product/queue';
22
+ import type { EvidenceEntry, ExceptionEntry, ProfileBacktestSummary, QualityCheck, WorkProductPersistedPart, WorkProductProvenance, WorkProductStatus } from '../work-product/types';
23
+ export { parseReviewQueueItem };
24
+ export type { ReviewQueueItem, ReviewQueueState };
25
+ /** Human label for a queue state. */
26
+ export declare function reviewQueueStateLabel(state: ReviewQueueState): string;
27
+ /** Human label for a work-product status. */
28
+ export declare function workProductStatusLabel(status: WorkProductStatus): string;
29
+ /** Every persisted work-product anchor on one message, re-validated. */
30
+ export declare function workProductPartsFromMessageParts(parts: ReadonlyArray<Record<string, unknown>> | null | undefined): WorkProductPersistedPart[];
31
+ /** Properties for the transcript anchor card rendered in chat */
32
+ export interface WorkProductCardProps {
33
+ part: WorkProductPersistedPart;
34
+ /** Open the work product (queue detail / pane) — the card's only action. */
35
+ onOpen?: (part: WorkProductPersistedPart) => void;
36
+ className?: string;
37
+ }
38
+ /** The chat transcript anchor card for one work-product version — a compact,
39
+ * system-authored pointer, not a parallel review surface. */
40
+ export declare function WorkProductCard({ part, onOpen, className }: WorkProductCardProps): import("react").JSX.Element;
41
+ /** One fetched page of queue items with an optional continuation cursor */
42
+ export interface ReviewQueuePage {
43
+ items: ReviewQueueItem[];
44
+ /** Opaque continuation token; absent ⇒ no further pages. */
45
+ nextCursor?: string;
46
+ }
47
+ /** Properties for the review queue panel over a fetch data port */
48
+ export interface ReviewQueuePanelProps {
49
+ /** Data port — fetch one page of queue items (the projection's output,
50
+ * re-validated here at the JSON boundary). */
51
+ fetchQueue: (cursor?: string) => Promise<ReviewQueuePage>;
52
+ /** Open one queue item (navigate to its thread / detail pane). */
53
+ onSelect?: (item: ReviewQueueItem) => void;
54
+ title?: string;
55
+ emptyLabel?: string;
56
+ className?: string;
57
+ }
58
+ /** Merge a fetched page into held rows: dedupe by scopeKey, incoming wins,
59
+ * newest updatedAt first. Exported for tests. */
60
+ export declare function mergeReviewQueuePages(existing: ReviewQueueItem[], incoming: ReviewQueueItem[]): ReviewQueueItem[];
61
+ /** The workspace review queue — cursor-paged, refreshable, selection via
62
+ * callback. States, counts, and provenance render from the projection; the
63
+ * panel holds no domain logic. */
64
+ export declare function ReviewQueuePanel({ fetchQueue, onSelect, title, emptyLabel, className, }: ReviewQueuePanelProps): import("react").JSX.Element;
65
+ /** Properties for the evidence lineage table with source click-through */
66
+ export interface EvidenceLineageTableProps {
67
+ evidence: readonly EvidenceEntry[];
68
+ /** Resolve one entry's source document to an openable URL (signed
69
+ * object-store/vault download) — the `resolveFileUrl` pattern. Absent →
70
+ * sources render as plain refs without links. */
71
+ resolveSourceUrl?: (entry: EvidenceEntry) => string;
72
+ className?: string;
73
+ }
74
+ /** Target → claim → source lineage rows: the "every material value traceable
75
+ * to source evidence" surface. Each row names the artifact target, the
76
+ * claim, and the source document location supporting it. */
77
+ export declare function EvidenceLineageTable({ evidence, resolveSourceUrl, className }: EvidenceLineageTableProps): import("react").JSX.Element;
78
+ /** Properties for the severity-badged exception list */
79
+ export interface ExceptionListProps {
80
+ exceptions: readonly ExceptionEntry[];
81
+ className?: string;
82
+ }
83
+ /** Severity-badged exception rows with resolution state. */
84
+ export declare function ExceptionList({ exceptions, className }: ExceptionListProps): import("react").JSX.Element;
85
+ /** Properties for the pass/fail quality check list */
86
+ export interface QualityCheckListProps {
87
+ checks: readonly QualityCheck[];
88
+ className?: string;
89
+ }
90
+ /** Pass/fail quality-check rows tagged with their source (agent self-report,
91
+ * platform gate, judge ensemble). */
92
+ export declare function QualityCheckList({ checks, className }: QualityCheckListProps): import("react").JSX.Element;
93
+ /** Properties for the provenance stamp with the optional backtest slot */
94
+ export interface ProvenanceStampProps {
95
+ provenance: Pick<WorkProductProvenance, 'profileHash' | 'runId' | 'servingModels'> & Partial<Pick<WorkProductProvenance, 'costUsd' | 'producedAt'>>;
96
+ /** The product-resolved backtest summary for this profile hash. When its
97
+ * trust gate failed, the composite renders as "quality: unverified" —
98
+ * never a naked number. */
99
+ backtest?: ProfileBacktestSummary;
100
+ className?: string;
101
+ }
102
+ /** The audit line a reviewer approves against: which configuration produced
103
+ * this document, what served it, and how that configuration measured on its
104
+ * backtest. */
105
+ export declare function ProvenanceStamp({ provenance, backtest, className }: ProvenanceStampProps): import("react").JSX.Element;