@tangle-network/agent-app 0.45.54 → 0.45.56

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 (492) 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/index.js +3 -3
  17. package/dist/assistant/launcher.d.ts +23 -0
  18. package/dist/assistant/persistence.d.ts +26 -0
  19. package/dist/assistant/presentation.d.ts +99 -0
  20. package/dist/assistant/provider-label.d.ts +7 -0
  21. package/dist/assistant/reducer.d.ts +130 -0
  22. package/dist/assistant/sse.d.ts +24 -0
  23. package/dist/assistant/time-ago.d.ts +6 -0
  24. package/dist/assistant/transcript.d.ts +97 -0
  25. package/dist/assistant/types.d.ts +291 -0
  26. package/dist/assistant/use-stick-to-bottom.d.ts +28 -0
  27. package/dist/assistant/useAssistantChat.d.ts +63 -0
  28. package/dist/assistant/useAssistantModels.d.ts +22 -0
  29. package/dist/assistant/useAssistantThreads.d.ts +47 -0
  30. package/dist/assistant/usePanelPrefs.d.ts +55 -0
  31. package/dist/billing/index.d.ts +19 -21
  32. package/dist/brand/index.d.ts +16 -10
  33. package/dist/brand-extraction/extract.d.ts +34 -0
  34. package/dist/brand-extraction/index.d.ts +12 -214
  35. package/dist/brand-extraction/map.d.ts +58 -0
  36. package/dist/brand-extraction/types.d.ts +119 -0
  37. package/dist/catalog/index.d.ts +11 -101
  38. package/dist/chat-react/composer-mode-controls.d.ts +14 -0
  39. package/dist/chat-react/entry-composer.d.ts +92 -0
  40. package/dist/chat-react/index.d.ts +22 -118
  41. package/dist/chat-react/index.js +2 -2
  42. package/dist/chat-react/types.d.ts +11 -0
  43. package/dist/chat-routes/attachment-store.d.ts +84 -0
  44. package/dist/chat-routes/attachment-upload.d.ts +89 -0
  45. package/dist/chat-routes/attachment-validation.d.ts +95 -0
  46. package/dist/chat-routes/binary-sniff.d.ts +45 -0
  47. package/dist/chat-routes/completed-sandbox-turn.d.ts +25 -0
  48. package/dist/chat-routes/detached-turn.d.ts +197 -0
  49. package/dist/chat-routes/dispatch-parts.d.ts +101 -0
  50. package/dist/chat-routes/draft-persistence.d.ts +189 -0
  51. package/dist/chat-routes/durable-projection.d.ts +18 -0
  52. package/dist/chat-routes/file-index.d.ts +115 -0
  53. package/dist/chat-routes/index.d.ts +25 -1840
  54. package/dist/chat-routes/index.js +6 -2
  55. package/dist/chat-routes/index.js.map +1 -1
  56. package/dist/chat-routes/model-failover-stream.d.ts +206 -0
  57. package/dist/chat-routes/promote-file-part.d.ts +84 -0
  58. package/dist/chat-routes/resolve-attachments.d.ts +72 -0
  59. package/dist/chat-routes/sandbox-producer.d.ts +146 -0
  60. package/dist/chat-routes/sandbox-turn-usage.d.ts +4 -0
  61. package/dist/{stale-turn-lock-DucQzvXu.d.ts → chat-routes/stale-turn-lock.d.ts} +7 -9
  62. package/dist/chat-routes/turn-routes.d.ts +540 -0
  63. package/dist/chat-routes/upload.d.ts +84 -0
  64. package/dist/{wire-DOZ-O6hD.d.ts → chat-routes/wire.d.ts} +41 -44
  65. package/dist/chat-store/core.d.ts +19 -0
  66. package/dist/chat-store/index.d.ts +22 -322
  67. package/dist/{parts-BqIHMdyu.d.ts → chat-store/parts.d.ts} +49 -47
  68. package/dist/chat-store/schema.d.ts +157 -0
  69. package/dist/chat-store/store.d.ts +177 -0
  70. package/dist/{chunk-PVP57G3S.js → chunk-2IFGVBNI.js} +2 -2
  71. package/dist/{chunk-MQO5ML66.js → chunk-KJ2Q27U7.js} +2 -2
  72. package/dist/{chunk-CCVG2TL6.js → chunk-YNMPMW3G.js} +64 -2
  73. package/dist/chunk-YNMPMW3G.js.map +1 -0
  74. package/dist/config/index.d.ts +13 -18
  75. package/dist/crypto/index.d.ts +10 -12
  76. package/dist/crypto/web-token.d.ts +22 -0
  77. package/dist/design-canvas/apply.d.ts +70 -0
  78. package/dist/design-canvas/drizzle-store.d.ts +29 -0
  79. package/dist/design-canvas/drizzle.d.ts +7 -575
  80. package/dist/{export-presets-mgVulRaV.d.ts → design-canvas/export-presets.d.ts} +18 -22
  81. package/dist/design-canvas/index.d.ts +22 -268
  82. package/dist/design-canvas/mcp-entry.d.ts +15 -0
  83. package/dist/design-canvas/mcp-handler.d.ts +34 -0
  84. package/dist/design-canvas/mcp-tools.d.ts +30 -0
  85. package/dist/{model-DnfO_PdJ.d.ts → design-canvas/model.d.ts} +33 -35
  86. package/dist/{operations-ByJ6yXOW.d.ts → design-canvas/operations.d.ts} +21 -25
  87. package/dist/design-canvas/schema.d.ts +558 -0
  88. package/dist/{store-CqfDtnPQ.d.ts → design-canvas/store.d.ts} +8 -12
  89. package/dist/design-canvas/templates.d.ts +72 -0
  90. package/dist/design-canvas/validate.d.ts +32 -0
  91. package/dist/design-canvas-react/components/BleedTrimOverlay.d.ts +22 -0
  92. package/dist/design-canvas-react/components/BrandKnot.d.ts +11 -0
  93. package/dist/design-canvas-react/components/CanvasEmptyState.d.ts +32 -0
  94. package/dist/design-canvas-react/components/CanvasInsertPanel.d.ts +53 -0
  95. package/dist/{lazy-DrkVyDpe.d.ts → design-canvas-react/components/DesignCanvas.d.ts} +27 -20
  96. package/dist/design-canvas-react/components/DesignCanvasEditor.d.ts +23 -0
  97. package/dist/design-canvas-react/components/ElementNode.d.ts +51 -0
  98. package/dist/design-canvas-react/components/ExportControl.d.ts +21 -0
  99. package/dist/design-canvas-react/components/GridLayer.d.ts +47 -0
  100. package/dist/design-canvas-react/components/InlineTextEditor.d.ts +25 -0
  101. package/dist/design-canvas-react/components/LayersPanel.d.ts +20 -0
  102. package/dist/design-canvas-react/components/PagesStrip.d.ts +34 -0
  103. package/dist/design-canvas-react/components/Rulers.d.ts +31 -0
  104. package/dist/design-canvas-react/components/SelectionLayer.d.ts +51 -0
  105. package/dist/design-canvas-react/components/SnapGuidesOverlay.d.ts +25 -0
  106. package/dist/design-canvas-react/components/Toolbar.d.ts +64 -0
  107. package/dist/design-canvas-react/components/Workspace.d.ts +92 -0
  108. package/dist/design-canvas-react/components/ZoomControls.d.ts +14 -0
  109. package/dist/design-canvas-react/components/glyphs.d.ts +46 -0
  110. package/dist/design-canvas-react/components/icon-button.d.ts +22 -0
  111. package/dist/design-canvas-react/components/index.d.ts +27 -0
  112. package/dist/design-canvas-react/components/layer-tree.d.ts +34 -0
  113. package/dist/design-canvas-react/components/ruler-math.d.ts +78 -0
  114. package/dist/design-canvas-react/components/transform-math.d.ts +168 -0
  115. package/dist/{command-stack-TNPWJCzW.d.ts → design-canvas-react/contracts.d.ts} +16 -63
  116. package/dist/design-canvas-react/engine/command-stack.d.ts +43 -0
  117. package/dist/design-canvas-react/engine/commands.d.ts +154 -0
  118. package/dist/design-canvas-react/engine/selection.d.ts +48 -0
  119. package/dist/design-canvas-react/engine/snap.d.ts +24 -0
  120. package/dist/design-canvas-react/engine/zoom-pan.d.ts +18 -0
  121. package/dist/design-canvas-react/engine.d.ts +21 -399
  122. package/dist/design-canvas-react/export-math.d.ts +104 -0
  123. package/dist/design-canvas-react/export.d.ts +89 -0
  124. package/dist/design-canvas-react/index.d.ts +16 -586
  125. package/dist/design-canvas-react/insert-builders.d.ts +61 -0
  126. package/dist/design-canvas-react/lazy.d.ts +21 -6
  127. package/dist/documents/docx.d.ts +50 -0
  128. package/dist/documents/extract.d.ts +87 -0
  129. package/dist/documents/index.d.ts +26 -232
  130. package/dist/documents/media-type.d.ts +33 -0
  131. package/dist/documents/pdf-inspector.d.ts +5 -9
  132. package/dist/{types-DrBidf3O.d.ts → documents/types.d.ts} +13 -15
  133. package/dist/documents/zip.d.ts +56 -0
  134. package/dist/eval/calibration.d.ts +106 -0
  135. package/dist/eval/index.d.ts +8 -116
  136. package/dist/eval-campaign/index.d.ts +11 -12
  137. package/dist/{trust-gate-Dcm5xSva.d.ts → eval-campaign/trust-gate.d.ts} +5 -9
  138. package/dist/forms/blank.d.ts +48 -0
  139. package/dist/forms/fill.d.ts +105 -0
  140. package/dist/forms/index.d.ts +58 -332
  141. package/dist/forms/registry.d.ts +115 -0
  142. package/dist/forms/verify.d.ts +58 -0
  143. package/dist/harness/index.d.ts +21 -19
  144. package/dist/intakes/api.d.ts +5 -11
  145. package/dist/{completion-CvcNUz07.d.ts → intakes/completion.d.ts} +7 -11
  146. package/dist/intakes/context-sufficiency.d.ts +113 -0
  147. package/dist/intakes/drizzle/schema.d.ts +338 -0
  148. package/dist/intakes/drizzle/store.d.ts +75 -0
  149. package/dist/intakes/drizzle.d.ts +12 -391
  150. package/dist/intakes/index.d.ts +23 -113
  151. package/dist/{model-C8U0HZxL.d.ts → intakes/model.d.ts} +15 -17
  152. package/dist/intakes-react/components/BrandMark.d.ts +10 -0
  153. package/dist/intakes-react/components/IntakeInterview.d.ts +15 -0
  154. package/dist/intakes-react/components/index.d.ts +1 -0
  155. package/dist/intakes-react/contracts.d.ts +42 -0
  156. package/dist/intakes-react/index.d.ts +12 -47
  157. package/dist/intakes-react/lazy.d.ts +9 -8
  158. package/dist/integrations/index.d.ts +10 -12
  159. package/dist/{contract-OxG_jVMx.d.ts → interactions/contract.d.ts} +40 -42
  160. package/dist/interactions/index.d.ts +16 -256
  161. package/dist/interactions/route.d.ts +151 -0
  162. package/dist/interactions/sidecar.d.ts +100 -0
  163. package/dist/knowledge/index.d.ts +7 -11
  164. package/dist/knowledge-loop/index.d.ts +13 -20
  165. package/dist/legibility/checks/empty-state.d.ts +59 -0
  166. package/dist/legibility/checks/reachability.d.ts +103 -0
  167. package/dist/legibility/checks/silent-failure.d.ts +57 -0
  168. package/dist/legibility/checks/success.d.ts +38 -0
  169. package/dist/legibility/checks/vocabulary.d.ts +65 -0
  170. package/dist/legibility/cli-args.d.ts +30 -0
  171. package/dist/legibility/cli.d.ts +25 -0
  172. package/dist/legibility/index.d.ts +10 -530
  173. package/dist/legibility/report.d.ts +22 -0
  174. package/dist/legibility/scan.d.ts +29 -0
  175. package/dist/legibility/source.d.ts +132 -0
  176. package/dist/legibility/suppress.d.ts +36 -0
  177. package/dist/legibility/types.d.ts +168 -0
  178. package/dist/legibility/walk-sources.d.ts +21 -0
  179. package/dist/{agent-activity-C8ZG0F0M.d.ts → missions/agent-activity.d.ts} +3 -5
  180. package/dist/missions/engine.d.ts +251 -0
  181. package/dist/missions/events.d.ts +195 -0
  182. package/dist/missions/index.d.ts +12 -765
  183. package/dist/missions/plan-parse.d.ts +50 -0
  184. package/dist/missions/service.d.ts +265 -0
  185. package/dist/{failover-D-3UXXTb.d.ts → model-resolution/failover.d.ts} +10 -12
  186. package/dist/model-resolution/index.d.ts +15 -18
  187. package/dist/object-store/index.d.ts +15 -17
  188. package/dist/openui/action.d.ts +54 -0
  189. package/dist/openui/authoring.d.ts +25 -0
  190. package/dist/openui/index.d.ts +24 -206
  191. package/dist/openui/route.d.ts +124 -0
  192. package/dist/openui/segments.d.ts +71 -0
  193. package/dist/openui/values.d.ts +82 -0
  194. package/dist/openui-react/index.d.ts +9 -13
  195. package/dist/peer-floors/check.d.ts +9 -190
  196. package/dist/peer-floors/cli.d.ts +2 -3
  197. package/dist/peer-floors/dependency-source.d.ts +178 -0
  198. package/dist/plans/index.d.ts +13 -14
  199. package/dist/{billing-BuNlaKlE.d.ts → platform/billing.d.ts} +28 -32
  200. package/dist/platform/guards.d.ts +79 -0
  201. package/dist/platform/hub.d.ts +107 -0
  202. package/dist/platform/index.d.ts +7 -112
  203. package/dist/{sso-Cm00S61u.d.ts → platform/sso.d.ts} +15 -97
  204. package/dist/preflight/cli.d.ts +3 -6
  205. package/dist/preflight/index.d.ts +16 -18
  206. package/dist/preset-cloudflare/headers.d.ts +12 -0
  207. package/dist/preset-cloudflare/index.d.ts +22 -74
  208. package/dist/preset-cloudflare/workflow-instance.d.ts +35 -0
  209. package/dist/profile/budget.d.ts +72 -0
  210. package/dist/profile/fingerprint.d.ts +65 -0
  211. package/dist/profile/index.d.ts +27 -19
  212. package/dist/prompt/index.d.ts +3 -5
  213. package/dist/record/drizzle/schema.d.ts +488 -0
  214. package/dist/record/drizzle/store.d.ts +224 -0
  215. package/dist/record/drizzle.d.ts +10 -679
  216. package/dist/record/fold.d.ts +99 -0
  217. package/dist/record/index.d.ts +13 -13
  218. package/dist/{fold-DACU7gtf.d.ts → record/model.d.ts} +22 -124
  219. package/dist/record/ulid.d.ts +12 -0
  220. package/dist/redact/index.d.ts +14 -16
  221. package/dist/run/index.d.ts +11 -16
  222. package/dist/runtime/agent.d.ts +23 -0
  223. package/dist/runtime/certified-delivery.d.ts +57 -0
  224. package/dist/runtime/index.d.ts +17 -367
  225. package/dist/runtime/loop.d.ts +58 -0
  226. package/dist/runtime/model-catalog.d.ts +103 -0
  227. package/dist/{model-CdCDfBA9.d.ts → runtime/model.d.ts} +25 -27
  228. package/dist/runtime/openai-stream.d.ts +126 -0
  229. package/dist/runtime/surface-profile.d.ts +115 -0
  230. package/dist/sandbox/binary-read.d.ts +63 -0
  231. package/dist/sandbox/diagnostics.d.ts +69 -0
  232. package/dist/sandbox/index.d.ts +103 -1085
  233. package/dist/sandbox/model.d.ts +179 -0
  234. package/dist/sandbox/outcome.d.ts +10 -0
  235. package/dist/sandbox/prewarm-claim-d1.d.ts +80 -0
  236. package/dist/sandbox/prewarm.d.ts +193 -0
  237. package/dist/sandbox/recovery.d.ts +216 -0
  238. package/dist/sandbox/terminal-connection.d.ts +145 -0
  239. package/dist/sandbox/workspace-sandbox-manager.d.ts +44 -0
  240. package/dist/sequences/apply.d.ts +54 -0
  241. package/dist/sequences/captions.d.ts +91 -0
  242. package/dist/sequences/drizzle-store.d.ts +36 -0
  243. package/dist/sequences/drizzle.d.ts +7 -1252
  244. package/dist/sequences/exports.d.ts +138 -0
  245. package/dist/sequences/index.d.ts +19 -340
  246. package/dist/sequences/mcp-entry.d.ts +15 -0
  247. package/dist/sequences/mcp-handler.d.ts +39 -0
  248. package/dist/sequences/mcp-tools.d.ts +47 -0
  249. package/dist/{store-B7LLlk9p.d.ts → sequences/model.d.ts} +26 -110
  250. package/dist/sequences/operations.d.ts +126 -0
  251. package/dist/sequences/schema.d.ts +1231 -0
  252. package/dist/sequences/store.d.ts +81 -0
  253. package/dist/sequences/validate.d.ts +98 -0
  254. package/dist/sequences-react/components/BrandMark.d.ts +10 -0
  255. package/dist/sequences-react/components/PreviewCanvas.d.ts +26 -0
  256. package/dist/sequences-react/components/SnapIndicatorLine.d.ts +11 -0
  257. package/dist/sequences-react/components/TimelineClipChip.d.ts +80 -0
  258. package/dist/sequences-react/components/TimelineEditor.d.ts +44 -0
  259. package/dist/sequences-react/components/TimelineEmptyState.d.ts +21 -0
  260. package/dist/sequences-react/components/TimelineGhostLanes.d.ts +14 -0
  261. package/dist/sequences-react/components/TimelinePlayhead.d.ts +11 -0
  262. package/dist/sequences-react/components/TimelineRuler.d.ts +16 -0
  263. package/dist/sequences-react/components/TimelineSmallScreenGate.d.ts +12 -0
  264. package/dist/sequences-react/components/TimelineTrackRow.d.ts +51 -0
  265. package/dist/sequences-react/components/ZoomControl.d.ts +15 -0
  266. package/dist/sequences-react/components/composite-command.d.ts +8 -0
  267. package/dist/sequences-react/components/glyphs.d.ts +26 -0
  268. package/dist/sequences-react/components/index.d.ts +31 -0
  269. package/dist/sequences-react/components/interaction-math.d.ts +103 -0
  270. package/dist/sequences-react/contracts.d.ts +187 -0
  271. package/dist/sequences-react/engine/command-stack.d.ts +18 -0
  272. package/dist/sequences-react/engine/commands.d.ts +146 -0
  273. package/dist/sequences-react/engine/playback.d.ts +18 -0
  274. package/dist/sequences-react/engine/snap.d.ts +29 -0
  275. package/dist/sequences-react/engine/zoom.d.ts +29 -0
  276. package/dist/sequences-react/index.d.ts +20 -880
  277. package/dist/sequences-react/lazy.d.ts +8 -0
  278. package/dist/sequences-react/media/frame-provider.d.ts +70 -0
  279. package/dist/sequences-react/media/transcription.d.ts +33 -0
  280. package/dist/sequences-react/media/waveform.d.ts +34 -0
  281. package/dist/session-shell/index.d.ts +31 -204
  282. package/dist/session-shell/nav-guard.d.ts +170 -0
  283. package/dist/session-shell/path.d.ts +19 -0
  284. package/dist/signoff/cli.d.ts +4 -7
  285. package/dist/signoff/config.d.ts +12 -0
  286. package/dist/signoff/exec.d.ts +44 -0
  287. package/dist/signoff/index.d.ts +56 -14
  288. package/dist/signoff/invoked-as-script.d.ts +25 -0
  289. package/dist/signoff/node-version.d.ts +50 -0
  290. package/dist/signoff/proof-attach.d.ts +88 -0
  291. package/dist/signoff/proof-cli.d.ts +1 -0
  292. package/dist/signoff/proof-fixture.d.ts +13 -0
  293. package/dist/signoff/proof-from-report.d.ts +22 -0
  294. package/dist/signoff/proof-git.d.ts +57 -0
  295. package/dist/signoff/proof-record.d.ts +202 -0
  296. package/dist/signoff/proof-verify.d.ts +103 -0
  297. package/dist/signoff/proof.d.ts +35 -310
  298. package/dist/signoff/report.d.ts +7 -0
  299. package/dist/{run-D80hoLKh.d.ts → signoff/run.d.ts} +3 -6
  300. package/dist/signoff/schedule.d.ts +55 -0
  301. package/dist/signoff/seeds.d.ts +50 -0
  302. package/dist/signoff/store.d.ts +22 -0
  303. package/dist/{types-Bd6uW9vQ.d.ts → signoff/types.d.ts} +15 -17
  304. package/dist/signoff/workflow-pin.d.ts +56 -0
  305. package/dist/signoff/workspace.d.ts +40 -0
  306. package/dist/skills/index.d.ts +28 -32
  307. package/dist/skills-placement/index.d.ts +7 -11
  308. package/dist/spend/budget.d.ts +123 -0
  309. package/dist/spend/ceiling.d.ts +51 -0
  310. package/dist/spend/cli-args.d.ts +20 -0
  311. package/dist/spend/cli.d.ts +1 -0
  312. package/dist/spend/fixtures/incident-parked-time.d.ts +55 -0
  313. package/dist/spend/index.d.ts +38 -1144
  314. package/dist/spend/liveness.d.ts +131 -0
  315. package/dist/spend/ownership.d.ts +87 -0
  316. package/dist/spend/reconcile.d.ts +109 -0
  317. package/dist/spend/reference.d.ts +42 -0
  318. package/dist/spend/report.d.ts +12 -0
  319. package/dist/spend/store.d.ts +123 -0
  320. package/dist/spend/types.d.ts +466 -0
  321. package/dist/store/index.d.ts +10 -12
  322. package/dist/stories/app-shell/fixtures.d.ts +43 -0
  323. package/dist/stories/app-shell/shell.d.ts +81 -0
  324. package/dist/stories/assistant/fixtures.d.ts +73 -0
  325. package/dist/stories/chat/fixtures.d.ts +70 -0
  326. package/dist/stories/chat/markdown.d.ts +11 -0
  327. package/dist/stories/chat/run-drill-in.d.ts +19 -0
  328. package/dist/stories/chat-controls/fixtures.d.ts +116 -0
  329. package/dist/stories/design-canvas/fixtures.d.ts +57 -0
  330. package/dist/stories/fixtures/canvas.d.ts +10 -0
  331. package/dist/stories/fixtures/catalog.d.ts +7 -0
  332. package/dist/stories/fixtures/chat.d.ts +39 -0
  333. package/dist/stories/fixtures/index.d.ts +4 -0
  334. package/dist/stories/fixtures/sequences.d.ts +17 -0
  335. package/dist/stories/panels/fixtures.d.ts +63 -0
  336. package/dist/stories/sequences/fixtures.d.ts +30 -0
  337. package/dist/stories/studio/fixtures.d.ts +22 -0
  338. package/dist/stream/index.d.ts +10 -56
  339. package/dist/{stream-normalizer-DKRxyVlZ.d.ts → stream/stream-normalizer.d.ts} +23 -26
  340. package/dist/{turn-buffer-COMQUwO2.d.ts → stream/turn-buffer.d.ts} +21 -23
  341. package/dist/stream/turn-identity.d.ts +49 -0
  342. package/dist/studio/generation.d.ts +179 -0
  343. package/dist/studio/index.d.ts +12 -181
  344. package/dist/studio-react/avatar-composer.d.ts +8 -0
  345. package/dist/studio-react/composer-hero.d.ts +12 -0
  346. package/dist/studio-react/composer-shell.d.ts +18 -0
  347. package/dist/studio-react/generation-card.d.ts +9 -0
  348. package/dist/studio-react/generation-detail-modal.d.ts +11 -0
  349. package/dist/studio-react/generation-detail.d.ts +6 -0
  350. package/dist/studio-react/generation-grid.d.ts +15 -0
  351. package/dist/studio-react/image-composer.d.ts +8 -0
  352. package/dist/studio-react/index.d.ts +32 -245
  353. package/dist/studio-react/library-drawer.d.ts +12 -0
  354. package/dist/studio-react/library-panel.d.ts +15 -0
  355. package/dist/studio-react/publish-package-composer.d.ts +18 -0
  356. package/dist/studio-react/result-canvas.d.ts +6 -0
  357. package/dist/studio-react/speech-composer.d.ts +4 -0
  358. package/dist/studio-react/studio-header.d.ts +5 -0
  359. package/dist/studio-react/studio-sheet.d.ts +12 -0
  360. package/dist/studio-react/studio-workspace.d.ts +23 -0
  361. package/dist/studio-react/transcription-composer.d.ts +12 -0
  362. package/dist/studio-react/type-config.d.ts +11 -0
  363. package/dist/studio-react/use-studio-generations.d.ts +20 -0
  364. package/dist/studio-react/video-composer.d.ts +10 -0
  365. package/dist/tangle/index.d.ts +7 -9
  366. package/dist/teams/drizzle/access.d.ts +82 -0
  367. package/dist/{invitations-schema-_fI7HkJP.d.ts → teams/drizzle/invitations-schema.d.ts} +39 -27
  368. package/dist/teams/drizzle/personal-organization.d.ts +41 -0
  369. package/dist/{access-490O6aOU.d.ts → teams/drizzle/schema.d.ts} +57 -122
  370. package/dist/teams/drizzle.d.ts +12 -44
  371. package/dist/teams/index.d.ts +20 -44
  372. package/dist/teams/invitations-api.d.ts +17 -21
  373. package/dist/{invitations-DoYMvXea.d.ts → teams/invitations.d.ts} +14 -18
  374. package/dist/teams/invite.d.ts +42 -0
  375. package/dist/teams/members-api.d.ts +12 -16
  376. package/dist/teams/resend.d.ts +3 -13
  377. package/dist/{roles-B4nU3jDi.d.ts → teams/roles.d.ts} +18 -20
  378. package/dist/teams-react/components/BrandMark.d.ts +10 -0
  379. package/dist/teams-react/components/InvitationsPanel.d.ts +13 -0
  380. package/dist/teams-react/components/InviteAcceptPage.d.ts +10 -0
  381. package/dist/teams-react/components/MembersPanel.d.ts +14 -0
  382. package/dist/teams-react/components/RoleSelect.d.ts +17 -0
  383. package/dist/teams-react/components/index.d.ts +3 -0
  384. package/dist/teams-react/contracts.d.ts +134 -0
  385. package/dist/teams-react/index.d.ts +12 -143
  386. package/dist/teams-react/lazy.d.ts +11 -11
  387. package/dist/test-setup.d.ts +1 -0
  388. package/dist/theme/index.d.ts +6 -104
  389. package/dist/theme/tailwind-preset.d.ts +1 -2
  390. package/dist/theme/theme.d.ts +106 -0
  391. package/dist/theme-contract/cli.d.ts +21 -0
  392. package/dist/theme-contract/index.d.ts +4 -6
  393. package/dist/{auth-BYtiazA4.d.ts → tools/auth.d.ts} +8 -11
  394. package/dist/tools/capability.d.ts +54 -0
  395. package/dist/tools/dispatch.d.ts +37 -0
  396. package/dist/tools/errors.d.ts +8 -0
  397. package/dist/tools/gating.d.ts +62 -0
  398. package/dist/tools/http.d.ts +27 -0
  399. package/dist/tools/index.d.ts +12 -217
  400. package/dist/{mcp-rpc-DYwPlYbZ.d.ts → tools/mcp-rpc.d.ts} +7 -9
  401. package/dist/{mcp-xxoZZfor.d.ts → tools/mcp.d.ts} +14 -16
  402. package/dist/tools/openai.d.ts +28 -0
  403. package/dist/tools/registry.d.ts +39 -0
  404. package/dist/tools/runtime.d.ts +22 -0
  405. package/dist/{types-B25Mib1r.d.ts → tools/types.d.ts} +15 -83
  406. package/dist/{flow-types-CJxEmaRy.d.ts → trace/flow-types.d.ts} +2 -4
  407. package/dist/trace/index.d.ts +11 -148
  408. package/dist/trace/mission-flow.d.ts +82 -0
  409. package/dist/trace/mission-trace.d.ts +52 -0
  410. package/dist/turn-health/classify.d.ts +207 -0
  411. package/dist/turn-health/index.d.ts +29 -637
  412. package/dist/turn-health/lifecycle.d.ts +75 -0
  413. package/dist/turn-health/sink.d.ts +122 -0
  414. package/dist/turn-health/sweep.d.ts +245 -0
  415. package/dist/turn-stream/adapters.d.ts +257 -0
  416. package/dist/turn-stream/core.d.ts +293 -0
  417. package/dist/turn-stream/do.d.ts +144 -0
  418. package/dist/turn-stream/index.d.ts +62 -738
  419. package/dist/turn-stream/memory.d.ts +41 -0
  420. package/dist/vault/ConfirmDialog.d.ts +22 -0
  421. package/dist/vault/VaultPane.d.ts +15 -0
  422. package/dist/{VaultPane-BDP6SB_K.d.ts → vault/contracts.d.ts} +15 -22
  423. package/dist/vault/index.d.ts +15 -22
  424. package/dist/vault/lazy.d.ts +9 -7
  425. package/dist/vault/server.d.ts +8 -10
  426. package/dist/web/free-route-limit.d.ts +187 -0
  427. package/dist/web/index.d.ts +15 -207
  428. package/dist/{rate-limit-BOVmJRXZ.d.ts → web/rate-limit.d.ts} +3 -5
  429. package/dist/web-react/agent-session-controls.d.ts +105 -0
  430. package/dist/web-react/async/async-view.d.ts +69 -0
  431. package/dist/web-react/async/index.d.ts +13 -305
  432. package/dist/web-react/async/state.d.ts +107 -0
  433. package/dist/web-react/async/use-async-resource.d.ts +41 -0
  434. package/dist/web-react/async/use-confirmed-mutation.d.ts +90 -0
  435. package/dist/web-react/brand-mark.d.ts +11 -0
  436. package/dist/web-react/chat-attachments.d.ts +21 -0
  437. package/dist/web-react/chat-composer.d.ts +174 -0
  438. package/dist/web-react/chat-interactions.d.ts +1 -0
  439. package/dist/web-react/chat-mentions.d.ts +48 -0
  440. package/dist/web-react/chat-stream.d.ts +106 -0
  441. package/dist/web-react/class-names.d.ts +10 -0
  442. package/dist/web-react/controls.d.ts +265 -0
  443. package/dist/web-react/durable-chat-cards.d.ts +40 -0
  444. package/dist/web-react/durable-interaction-submit.d.ts +22 -0
  445. package/dist/web-react/durable-plan-card.d.ts +13 -0
  446. package/dist/web-react/durable-plan-flow.d.ts +77 -0
  447. package/dist/web-react/harness-glyphs.d.ts +28 -0
  448. package/dist/web-react/index.d.ts +80 -2347
  449. package/dist/web-react/index.js +3 -3
  450. package/dist/web-react/inert.d.ts +39 -0
  451. package/dist/web-react/insight-card.d.ts +203 -0
  452. package/dist/web-react/interaction-card-support.d.ts +115 -0
  453. package/dist/web-react/interaction-plan-card.d.ts +39 -0
  454. package/dist/web-react/interaction-question-card.d.ts +100 -0
  455. package/dist/web-react/message-attachments.d.ts +56 -0
  456. package/dist/web-react/mission-activity.d.ts +96 -0
  457. package/dist/web-react/motion.d.ts +43 -0
  458. package/dist/web-react/provenance-model.d.ts +195 -0
  459. package/dist/web-react/provenance.d.ts +82 -0
  460. package/dist/web-react/provider-logo.d.ts +14 -0
  461. package/dist/web-react/record-grid-model.d.ts +257 -0
  462. package/dist/web-react/record-grid.d.ts +108 -0
  463. package/dist/web-react/sandbox-terminal.d.ts +90 -0
  464. package/dist/web-react/seat-paywall.d.ts +47 -0
  465. package/dist/web-react/session-history.d.ts +196 -0
  466. package/dist/web-react/smooth-text.d.ts +29 -0
  467. package/dist/web-react/sparkline.d.ts +150 -0
  468. package/dist/web-react/terminal.d.ts +1 -92
  469. package/dist/web-react/use-chat-interactions.d.ts +78 -0
  470. package/dist/web-react/use-composer-attachments.d.ts +111 -0
  471. package/dist/web-react/use-file-mentions.d.ts +94 -0
  472. package/dist/web-react/work-product.d.ts +105 -0
  473. package/dist/work-product/claim-support.d.ts +288 -0
  474. package/dist/work-product/index.d.ts +16 -849
  475. package/dist/work-product/provenance.d.ts +61 -0
  476. package/dist/{queue-VTBA5ONX.d.ts → work-product/queue.d.ts} +10 -12
  477. package/dist/work-product/quote.d.ts +139 -0
  478. package/dist/work-product/route.d.ts +88 -0
  479. package/dist/work-product/service.d.ts +123 -0
  480. package/dist/work-product/tools.d.ts +144 -0
  481. package/dist/{types-CCeYywdS.d.ts → work-product/types.d.ts} +29 -31
  482. package/dist/work-product-react/index.d.ts +19 -8
  483. package/dist/workspace-react/index.d.ts +8 -11
  484. package/package.json +4 -3
  485. package/dist/agent-session-controls-CmlXwp_H.d.ts +0 -384
  486. package/dist/apply-6wlMOLf8.d.ts +0 -280
  487. package/dist/attachment-validation-BfJDBU1g.d.ts +0 -261
  488. package/dist/budget-BOucfcb_.d.ts +0 -142
  489. package/dist/chunk-CCVG2TL6.js.map +0 -1
  490. package/dist/values-C7RidJuI.d.ts +0 -156
  491. /package/dist/{chunk-PVP57G3S.js.map → chunk-2IFGVBNI.js.map} +0 -0
  492. /package/dist/{chunk-MQO5ML66.js.map → chunk-KJ2Q27U7.js.map} +0 -0
@@ -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;
@@ -0,0 +1,288 @@
1
+ /**
2
+ * Claim support and target correctness — is this citation attached to the RIGHT
3
+ * place, and does the text it names actually say what the entry claims?
4
+ *
5
+ * Three checks live here, each answering a different half of "is this evidence
6
+ * row honest": {@link verifyClaimSupport} (claim ↔ cited text),
7
+ * {@link verifyTargetLabel} (target ↔ cited line), and
8
+ * {@link verifyArtifactAgreement} (claim ↔ the artifact field it decorates).
9
+ * They share the numeric canonicalization below, which is why they share a
10
+ * file — a second copy of "what counts as the same figure" is how two gates
11
+ * drift into disagreeing about the same row.
12
+ *
13
+ * ── Check one: claim support ────────────────────────────────────────────────
14
+ *
15
+ * The two gates before this one answer different questions. `sourceContainsQuote`
16
+ * asks whether the quote is really in the document; `findSourceLine` /
17
+ * `sliceSourceSpan` make the platform produce the quote so it cannot be typed
18
+ * wrong. Both are about the TEXT's provenance. Neither one looks at `claim`.
19
+ *
20
+ * Production row `7256ef49` is what that gap costs. Four evidence entries, all
21
+ * `quoteBasis:'span'`, every quote a genuine slice of the document it named —
22
+ * and every one landing on the employer/payer line about 200 characters above
23
+ * the figure:
24
+ *
25
+ * claim 128450.00 -> "tics LLC EIN 84-2213907\nEmployee: Dana"
26
+ * claim 812.44 -> "nt Savings Bank TIN 22-5510983\nRecip"
27
+ * claim 2204.18 -> "ndex Fund Trust TIN 47-3320115\nRec"
28
+ * claim 1955.02 -> "pient: Dana R. Whitfield\n------------"
29
+ *
30
+ * That is strictly worse than a fabricated quote. A fabricated quote fails the
31
+ * verbatim gate; this one passes every gate, is real text from the right
32
+ * document, and reads to a reviewer as an authoritative citation while
33
+ * supporting nothing. `locator.find` (the platform locating a value the model
34
+ * names) prevents the model from ADDRESSING the wrong line, and it is the right
35
+ * primary fix. This module is the independent check underneath it: whatever
36
+ * anchoring form produced the text, the text has to contain the figure.
37
+ *
38
+ * That also settles what a raw `locator.span` is worth. Hand-computed offsets
39
+ * stay accepted, but only when they independently verify — which is exactly
40
+ * "the slice contains the claimed value".
41
+ *
42
+ * ── The rule, and why it is drawn here ──────────────────────────────────────
43
+ *
44
+ * Strict on figures, silent on everything else. An unsatisfiable gate does not
45
+ * stop a bad submit, it SELECTS for one — that is the measured mechanism behind
46
+ * the 38 fabricated quotes on row `a68b1943`, where a coverage gate demanded
47
+ * document lineage for computed values and got thirteen invented citations
48
+ * forty seconds later. So the rule fires only where an honest citation can
49
+ * always satisfy it:
50
+ *
51
+ * - The claim IS a value (`"128450.00"`, `"$30,000"`, `"3"`) — the anchored
52
+ * text MUST contain that value. No latitude. This is the shape every tax
53
+ * figure takes and the shape row `7256ef49` failed.
54
+ * - The claim is prose naming figures (`"indemnity capped at $5,000,000"`) —
55
+ * at least one of its currency-shaped figures must occur. Not all of them:
56
+ * a claim may legitimately narrate a computation over several lines while
57
+ * anchoring to the one line under discussion, and refusing that would make
58
+ * an honest citation unrepresentable for the sake of a stricter-sounding
59
+ * rule. One is enough to keep the anchor tethered to the claim's subject.
60
+ * - The claim carries no figure at all (`"Married Filing Jointly"`,
61
+ * `"Dana R. Whitfield"`, `"2025-04-15"`) — nothing to check, and the entry
62
+ * passes. A filing status has no number to find, and inventing a
63
+ * word-overlap score here would re-open the hole the verbatim gate closes.
64
+ * - The entry has no anchored text at all — nothing to check. A computed
65
+ * value cites its computation, not a document.
66
+ *
67
+ * A bare year, a form number and a box number are deliberately NOT figures:
68
+ * `2025`, `1040` and `Box 1` have no thousands separator, no cent pair and no
69
+ * currency symbol, so prose mentioning them does not trip the rule.
70
+ *
71
+ * ── Matching is value-wise, never substring ─────────────────────────────────
72
+ *
73
+ * `text.includes(claim)` would be the obvious implementation and it is wrong in
74
+ * the direction that matters: it passes `"450.00"` against `"128,450.00"`, so a
75
+ * claim citing the wrong figure survives whenever its digits happen to be a tail
76
+ * of a real one. Both sides are tokenized into numbers and compared as VALUES,
77
+ * so `450` and `128450` are simply different.
78
+ */
79
+ /**
80
+ * Reduce a numeric token to the form both sides are compared in: no currency,
81
+ * no grouping, no trailing zeros in the fraction, no leading zeros.
82
+ *
83
+ * Sign and accounting parentheses are stripped rather than preserved, so
84
+ * `(1,234.00)`, `-1,234.00` and `1,234.00` all reduce to `1234`. A document
85
+ * renders the same deduction all three ways depending on the form and the
86
+ * extractor, and the sign is a property of the TARGET LINE's semantics, not of
87
+ * the document's typography. Comparing magnitudes keeps those honest citations
88
+ * working, and it concedes nothing to fabrication: the digits still have to be
89
+ * the document's digits.
90
+ *
91
+ * Returns `null` for anything that is not a plain number.
92
+ */
93
+ export declare function canonicalizeValue(token: string): string | null;
94
+ /** Every distinct value appearing in `text`, canonicalized. */
95
+ export declare function valuesInText(text: string): string[];
96
+ /**
97
+ * The values a claim asserts, canonicalized — empty when the claim asserts no
98
+ * figure, which is the "nothing to check" case.
99
+ *
100
+ * A claim that is ENTIRELY one value yields that value (strict path). Otherwise
101
+ * only currency-shaped figures inside the prose count, so an assertion that
102
+ * merely mentions a year or a form number yields nothing.
103
+ */
104
+ export declare function claimValues(claim: string): string[];
105
+ export type ClaimSupport =
106
+ /** No figure to check: a non-numeric claim, or no anchored text. */
107
+ {
108
+ status: 'not_applicable';
109
+ } | {
110
+ status: 'supported';
111
+ matched: string;
112
+ } | {
113
+ status: 'unsupported';
114
+ claimed: string[];
115
+ present: string[];
116
+ };
117
+ /**
118
+ * Does `quote` carry the figure `claim` asserts?
119
+ *
120
+ * `supported` requires ONE claimed value to occur, which is exact for the
121
+ * single-value claim (there is only one) and deliberate latitude for prose (see
122
+ * the rule note at the top of the file).
123
+ */
124
+ export declare function verifyClaimSupport(quote: string, claim: string): ClaimSupport;
125
+ /**
126
+ * The sentence a model can act on without re-reading the document: what it
127
+ * claimed, what the line it cited actually says, what figures that line does
128
+ * carry, and the two ways out — cite the value, or drop the locator because the
129
+ * figure was computed. Naming both keeps the gate satisfiable, which is the
130
+ * property that stops it manufacturing the citation it screens for.
131
+ */
132
+ export declare function claimSupportErrorDetail(failure: Extract<ClaimSupport, {
133
+ status: 'unsupported';
134
+ }>, quote: string): string;
135
+ /**
136
+ * Does the cited line belong to the target the entry attaches it to?
137
+ *
138
+ * `verifyClaimSupport` asks whether the anchored text carries the claimed
139
+ * figure. It is blind, BY CONSTRUCTION, to whether that figure belongs on that
140
+ * line. Production row `95105c8a` is what the blindness costs — two entries,
141
+ * both anchored to a real line of the right document, both carrying the figure
142
+ * they claim, and both attached to the wrong form line:
143
+ *
144
+ * f1040.line_3b claim 1955.02 -> "Box 1b Qualified dividends ..... 1,955.02"
145
+ * f1040.line_3a claim 2204.18 -> "Box 1a Total ordinary dividends . 2,204.18"
146
+ *
147
+ * Form 1040 line 3a is QUALIFIED dividends and line 3b is ORDINARY, so each
148
+ * citation points a reviewer at the other one's line. `quote_verification`,
149
+ * `claim_support` and `evidence_coverage` were all green on that row. A
150
+ * citation that points at the wrong line is a wrong citation even when every
151
+ * character of it is real, and it is the failure a reviewer is least able to
152
+ * catch by eye, because it looks exactly like a good one.
153
+ *
154
+ * ── Why the domain supplies LABELS and the shell supplies the COMPARISON ────
155
+ *
156
+ * The shell cannot know that line 3a means qualified dividends; that is tax
157
+ * vocabulary and baking it here would violate the one rule this package is
158
+ * built on. So the product declares which targets are CONFUSABLE with each
159
+ * other and what each one's line looks like in a source document — a
160
+ * {@link ConfusableTargetGroup} — and the shell does the comparing.
161
+ *
162
+ * ── Why a group of labels, and not a per-target expectation ─────────────────
163
+ *
164
+ * The obvious shape is a per-target expectation read POSITIVELY: "a citation
165
+ * for line_3a must contain 'Qualified'". It is stricter, it is easier to
166
+ * explain, and it is the wrong shape, because it refuses honest work. A
167
+ * consolidated broker statement writing "Qual. div. income", a payer writing
168
+ * "Dividends that are qualified", an OCR layer dropping a word — each one turns
169
+ * a correct citation into a refusal. And this codebase has already measured
170
+ * what refusing honest work does: a coverage gate that demanded document
171
+ * lineage for computed values produced 38 fabricated quotes on row `a68b1943`,
172
+ * because a gate a model cannot satisfy honestly is a gate it satisfies
173
+ * dishonestly. An unsatisfiable rule does not stop bad work; it SELECTS for
174
+ * invented work.
175
+ *
176
+ * So the same labels are read NEGATIVELY and COMPARATIVELY. An entry is
177
+ * refused only when the cited line positively identifies a SIBLING target and
178
+ * says nothing that identifies its own:
179
+ *
180
+ * - the line carries one of the target's own labels → `identified`, pass
181
+ * - the line carries no label from the group at all → `not_applicable`, pass
182
+ * - the line carries a sibling's label and none of its own → `crossed`, refuse
183
+ *
184
+ * Silence therefore always passes. An unusually-labelled document costs
185
+ * nothing, a target the product never grouped costs nothing, and the only way
186
+ * to fail is for the document itself to say the line belongs to a different
187
+ * target — which is not a phrasing accident, it is the crossed pair. The rule
188
+ * is satisfiable by the honest citation in every case, and unsatisfiable only
189
+ * by the wrong one.
190
+ *
191
+ * Matching is punctuation- and case-insensitive: a label is a semantic marker
192
+ * for which LINE this is, not a quotation. (`sourceContainsQuote` stays exact —
193
+ * different question, different tolerance.)
194
+ */
195
+ /** One set of targets whose source lines are mistakable for each other, with
196
+ * the phrases that tell them apart. Every string is product vocabulary; the
197
+ * shell reads none of them as meaning anything. */
198
+ export interface ConfusableTargetGroup {
199
+ /** Named in the refusal so the model is told which distinction it missed
200
+ * ("Form 1099-DIV boxes 1a/1b"). */
201
+ note?: string;
202
+ /** Target → phrases that identify THAT target's line in a source document.
203
+ * Targets must be spelled the way evidence targets are spelled after the
204
+ * product's `normalizeTarget`, so one canonical name is written once. */
205
+ labels: Record<string, readonly string[]>;
206
+ }
207
+ export type TargetLabelVerdict =
208
+ /** No group covers this target, or the line says nothing either way. */
209
+ {
210
+ status: 'not_applicable';
211
+ }
212
+ /** The cited line carries one of this target's own labels. */
213
+ | {
214
+ status: 'identified';
215
+ label: string;
216
+ }
217
+ /** The cited line identifies a DIFFERENT target in the same group. */
218
+ | {
219
+ status: 'crossed';
220
+ rival: string;
221
+ rivalLabel: string;
222
+ expected: readonly string[];
223
+ note?: string;
224
+ };
225
+ export declare function verifyTargetLabel(quote: string, target: string, groups: readonly ConfusableTargetGroup[]): TargetLabelVerdict;
226
+ /** The sentence a model can act on: which line it actually cited, which target
227
+ * that line belongs to, and what its own target's line looks like. */
228
+ export declare function targetLabelErrorDetail(failure: Extract<TargetLabelVerdict, {
229
+ status: 'crossed';
230
+ }>, target: string, quote: string): string;
231
+ /**
232
+ * Does the entry agree with the artifact it is evidence FOR?
233
+ *
234
+ * The two checks above compare evidence to the SOURCE. This one compares it to
235
+ * the DELIVERABLE, and it needs no product vocabulary at all: when the artifact
236
+ * states a value for a target and an evidence entry attached to that target
237
+ * asserts a different one, the work product contradicts itself, and a reviewer
238
+ * clicking that line is shown a figure the package does not report there.
239
+ *
240
+ * ── The rule, and the honest citation it must not refuse ────────────────────
241
+ *
242
+ * "Claim must equal the field" is the tempting rule and it is unsatisfiable for
243
+ * every aggregated or derived line. Measured on production row `a68b1943`:
244
+ * line 1a is 189,750.00 and its two evidence rows cite $128,450.00 and
245
+ * $61,300.00 — one per W-2, which is exactly the lineage a reviewer wants.
246
+ * Line 8 is a Schedule C net profit of 11,056.56 evidenced by gross receipts of
247
+ * 14,750.00 and four expense lines. Refusing those would delete correct work
248
+ * and, on this codebase's measured history, buy invented citations in its place.
249
+ *
250
+ * So the refusal is narrower and it is a CONTRADICTION rather than an
251
+ * inequality: the claim asserts a figure that the artifact itself assigns to a
252
+ * DIFFERENT target. On row `95105c8a` that is precisely the crossed pair —
253
+ * `line_3a` is 1955.02 in the artifact and its evidence claims 2204.18, which
254
+ * the same artifact reports on `line_3b`. There is no honest reading of that:
255
+ * the package cannot simultaneously say the number belongs on 3b and offer it
256
+ * as the support for 3a.
257
+ *
258
+ * A component that appears nowhere else in the field map (128,450.00 of a
259
+ * 189,750.00 total) is not a contradiction and is not refused. A claim
260
+ * narrating a computation passes as soon as one of its figures is the target's
261
+ * own value, which is what a narration of line 9 does by definition.
262
+ */
263
+ /** Canonical target → canonical value, for the artifact fields that state a
264
+ * figure. Non-numeric fields are dropped: a filing status or a name has no
265
+ * numeric contradiction to detect, and inventing a string comparison here
266
+ * would re-open the fuzzy-matching hole the quote gate closes. */
267
+ export declare function indexArtifactValues(fields: Readonly<Record<string, unknown>> | undefined, normalizeTarget?: (target: string) => string): Map<string, string>;
268
+ export type ArtifactAgreement =
269
+ /** The artifact states no figure for this target, or the claim asserts none. */
270
+ {
271
+ status: 'not_applicable';
272
+ } | {
273
+ status: 'agrees';
274
+ value: string;
275
+ }
276
+ /** The claim asserts a figure the artifact reports on a different target. */
277
+ | {
278
+ status: 'contradicts';
279
+ claimed: string;
280
+ expected: string;
281
+ belongsTo: string;
282
+ };
283
+ export declare function verifyArtifactAgreement(target: string, claim: string, fieldValues: ReadonlyMap<string, string>): ArtifactAgreement;
284
+ /** The sentence a model can act on: both numbers, both lines, and the two ways
285
+ * out — move the citation, or correct the artifact. */
286
+ export declare function artifactAgreementErrorDetail(failure: Extract<ArtifactAgreement, {
287
+ status: 'contradicts';
288
+ }>, target: string): string;