@buoy-gg/ask-buoy 7.0.38 → 7.0.40

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 (306) hide show
  1. package/lib/commonjs/blocks/AskBlocks.js +338 -1
  2. package/lib/commonjs/blocks/AskBlocks.js.map +1 -0
  3. package/lib/commonjs/blocks/BlockRenderer.js +262 -1
  4. package/lib/commonjs/blocks/BlockRenderer.js.map +1 -0
  5. package/lib/commonjs/blocks/ChromePrototypes.js +514 -1
  6. package/lib/commonjs/blocks/ChromePrototypes.js.map +1 -0
  7. package/lib/commonjs/blocks/DataBlocks.js +781 -1
  8. package/lib/commonjs/blocks/DataBlocks.js.map +1 -0
  9. package/lib/commonjs/blocks/ExtraBlocks.js +1860 -1
  10. package/lib/commonjs/blocks/ExtraBlocks.js.map +1 -0
  11. package/lib/commonjs/blocks/MediaBlocks.js +156 -1
  12. package/lib/commonjs/blocks/MediaBlocks.js.map +1 -0
  13. package/lib/commonjs/blocks/ReceiptBlocks.js +586 -1
  14. package/lib/commonjs/blocks/ReceiptBlocks.js.map +1 -0
  15. package/lib/commonjs/blocks/blockText.js +60 -1
  16. package/lib/commonjs/blocks/blockText.js.map +1 -0
  17. package/lib/commonjs/blocks/blockText.test.js +53 -1
  18. package/lib/commonjs/blocks/blockText.test.js.map +1 -0
  19. package/lib/commonjs/blocks/context.js +42 -1
  20. package/lib/commonjs/blocks/context.js.map +1 -0
  21. package/lib/commonjs/blocks/icons.js +96 -1
  22. package/lib/commonjs/blocks/icons.js.map +1 -0
  23. package/lib/commonjs/blocks/index.js +95 -1
  24. package/lib/commonjs/blocks/index.js.map +1 -0
  25. package/lib/commonjs/blocks/listRow.test.js +55 -1
  26. package/lib/commonjs/blocks/listRow.test.js.map +1 -0
  27. package/lib/commonjs/blocks/pageState.js +34 -1
  28. package/lib/commonjs/blocks/pageState.js.map +1 -0
  29. package/lib/commonjs/blocks/pageState.test.js +57 -1
  30. package/lib/commonjs/blocks/pageState.test.js.map +1 -0
  31. package/lib/commonjs/blocks/primitives.js +457 -1
  32. package/lib/commonjs/blocks/primitives.js.map +1 -0
  33. package/lib/commonjs/blocks/primitivesIndex.js +62 -1
  34. package/lib/commonjs/blocks/primitivesIndex.js.map +1 -0
  35. package/lib/commonjs/components/ApprovalCard.js +297 -1
  36. package/lib/commonjs/components/ApprovalCard.js.map +1 -0
  37. package/lib/commonjs/components/AskBuoyHeader.js +196 -1
  38. package/lib/commonjs/components/AskBuoyHeader.js.map +1 -0
  39. package/lib/commonjs/components/AskBuoyIcon.js +19 -1
  40. package/lib/commonjs/components/AskBuoyIcon.js.map +1 -0
  41. package/lib/commonjs/components/AskBuoyModal.js +479 -1
  42. package/lib/commonjs/components/AskBuoyModal.js.map +1 -0
  43. package/lib/commonjs/components/AskBuoySettings.js +181 -1
  44. package/lib/commonjs/components/AskBuoySettings.js.map +1 -0
  45. package/lib/commonjs/components/ChangesBar.js +211 -1
  46. package/lib/commonjs/components/ChangesBar.js.map +1 -0
  47. package/lib/commonjs/components/Composer.js +255 -1
  48. package/lib/commonjs/components/Composer.js.map +1 -0
  49. package/lib/commonjs/components/EmptyState.js +161 -1
  50. package/lib/commonjs/components/EmptyState.js.map +1 -0
  51. package/lib/commonjs/components/KeyboardPad.js +80 -1
  52. package/lib/commonjs/components/KeyboardPad.js.map +1 -0
  53. package/lib/commonjs/components/Markdown.js +310 -1
  54. package/lib/commonjs/components/Markdown.js.map +1 -0
  55. package/lib/commonjs/components/MessageList.js +970 -1
  56. package/lib/commonjs/components/MessageList.js.map +1 -0
  57. package/lib/commonjs/components/QueuedMessages.js +145 -1
  58. package/lib/commonjs/components/QueuedMessages.js.map +1 -0
  59. package/lib/commonjs/components/ThinkingStrip.js +223 -1
  60. package/lib/commonjs/components/ThinkingStrip.js.map +1 -0
  61. package/lib/commonjs/components/TypingDots.js +63 -1
  62. package/lib/commonjs/components/TypingDots.js.map +1 -0
  63. package/lib/commonjs/components/markdownParse.js +131 -1
  64. package/lib/commonjs/components/markdownParse.js.map +1 -0
  65. package/lib/commonjs/components/markdownParse.test.js +99 -1
  66. package/lib/commonjs/components/markdownParse.test.js.map +1 -0
  67. package/lib/commonjs/components/useCopyAction.js +50 -1
  68. package/lib/commonjs/components/useCopyAction.js.map +1 -0
  69. package/lib/commonjs/index.js +252 -1
  70. package/lib/commonjs/index.js.map +1 -0
  71. package/lib/commonjs/preset.js +91 -1
  72. package/lib/commonjs/preset.js.map +1 -0
  73. package/lib/commonjs/store/activityGroups.js +110 -1
  74. package/lib/commonjs/store/activityGroups.js.map +1 -0
  75. package/lib/commonjs/store/activityGroups.test.js +78 -1
  76. package/lib/commonjs/store/activityGroups.test.js.map +1 -0
  77. package/lib/commonjs/store/askBuoySettings.js +72 -1
  78. package/lib/commonjs/store/askBuoySettings.js.map +1 -0
  79. package/lib/commonjs/store/askBuoyStore.js +589 -1
  80. package/lib/commonjs/store/askBuoyStore.js.map +1 -0
  81. package/lib/commonjs/store/blockPlacement.js +64 -1
  82. package/lib/commonjs/store/blockPlacement.js.map +1 -0
  83. package/lib/commonjs/store/blockPlacement.test.js +123 -1
  84. package/lib/commonjs/store/blockPlacement.test.js.map +1 -0
  85. package/lib/commonjs/store/queue.test.js +150 -1
  86. package/lib/commonjs/store/queue.test.js.map +1 -0
  87. package/lib/commonjs/store/resetConversation.js +77 -1
  88. package/lib/commonjs/store/resetConversation.js.map +1 -0
  89. package/lib/commonjs/store/restorePending.test.js +63 -1
  90. package/lib/commonjs/store/restorePending.test.js.map +1 -0
  91. package/lib/commonjs/store/restoredIds.test.js +47 -1
  92. package/lib/commonjs/store/restoredIds.test.js.map +1 -0
  93. package/lib/commonjs/store/suggestions.js +54 -1
  94. package/lib/commonjs/store/suggestions.js.map +1 -0
  95. package/lib/commonjs/store/suggestions.test.js +58 -1
  96. package/lib/commonjs/store/suggestions.test.js.map +1 -0
  97. package/lib/commonjs/store/systemLine.test.js +77 -1
  98. package/lib/commonjs/store/systemLine.test.js.map +1 -0
  99. package/lib/commonjs/store/ticketPrompt.js +17 -1
  100. package/lib/commonjs/store/ticketPrompt.js.map +1 -0
  101. package/lib/commonjs/store/traceText.js +81 -1
  102. package/lib/commonjs/store/traceText.js.map +1 -0
  103. package/lib/commonjs/store/traceText.test.js +112 -1
  104. package/lib/commonjs/store/traceText.test.js.map +1 -0
  105. package/lib/commonjs/store/transcriptPersistence.js +297 -1
  106. package/lib/commonjs/store/transcriptPersistence.js.map +1 -0
  107. package/lib/commonjs/store/transcriptPersistence.test.js +333 -1
  108. package/lib/commonjs/store/transcriptPersistence.test.js.map +1 -0
  109. package/lib/commonjs/store/turnRendering.test.js +151 -1
  110. package/lib/commonjs/store/turnRendering.test.js.map +1 -0
  111. package/lib/commonjs/store/useAskBuoy.js +651 -1
  112. package/lib/commonjs/store/useAskBuoy.js.map +1 -0
  113. package/lib/commonjs/store/useAskBuoySettings.js +14 -1
  114. package/lib/commonjs/store/useAskBuoySettings.js.map +1 -0
  115. package/lib/commonjs/sync/askBuoySyncAdapter.js +153 -1
  116. package/lib/commonjs/sync/askBuoySyncAdapter.js.map +1 -0
  117. package/lib/commonjs/sync/askBuoySyncAdapter.test.js +141 -1
  118. package/lib/commonjs/sync/askBuoySyncAdapter.test.js.map +1 -0
  119. package/lib/commonjs/sync/wire.js +58 -1
  120. package/lib/commonjs/sync/wire.js.map +1 -0
  121. package/lib/commonjs/types.js +6 -1
  122. package/lib/commonjs/types.js.map +1 -0
  123. package/lib/module/blocks/AskBlocks.js +331 -1
  124. package/lib/module/blocks/AskBlocks.js.map +1 -0
  125. package/lib/module/blocks/BlockRenderer.js +257 -1
  126. package/lib/module/blocks/BlockRenderer.js.map +1 -0
  127. package/lib/module/blocks/ChromePrototypes.js +503 -1
  128. package/lib/module/blocks/ChromePrototypes.js.map +1 -0
  129. package/lib/module/blocks/DataBlocks.js +767 -1
  130. package/lib/module/blocks/DataBlocks.js.map +1 -0
  131. package/lib/module/blocks/ExtraBlocks.js +1833 -1
  132. package/lib/module/blocks/ExtraBlocks.js.map +1 -0
  133. package/lib/module/blocks/MediaBlocks.js +151 -1
  134. package/lib/module/blocks/MediaBlocks.js.map +1 -0
  135. package/lib/module/blocks/ReceiptBlocks.js +574 -1
  136. package/lib/module/blocks/ReceiptBlocks.js.map +1 -0
  137. package/lib/module/blocks/blockText.js +55 -1
  138. package/lib/module/blocks/blockText.js.map +1 -0
  139. package/lib/module/blocks/blockText.test.js +53 -1
  140. package/lib/module/blocks/blockText.test.js.map +1 -0
  141. package/lib/module/blocks/context.js +35 -1
  142. package/lib/module/blocks/context.js.map +1 -0
  143. package/lib/module/blocks/icons.js +91 -1
  144. package/lib/module/blocks/icons.js.map +1 -0
  145. package/lib/module/blocks/index.js +8 -1
  146. package/lib/module/blocks/index.js.map +1 -0
  147. package/lib/module/blocks/listRow.test.js +56 -1
  148. package/lib/module/blocks/listRow.test.js.map +1 -0
  149. package/lib/module/blocks/pageState.js +30 -1
  150. package/lib/module/blocks/pageState.js.map +1 -0
  151. package/lib/module/blocks/pageState.test.js +56 -1
  152. package/lib/module/blocks/pageState.test.js.map +1 -0
  153. package/lib/module/blocks/primitives.js +445 -1
  154. package/lib/module/blocks/primitives.js.map +1 -0
  155. package/lib/module/blocks/primitivesIndex.js +5 -1
  156. package/lib/module/blocks/primitivesIndex.js.map +1 -0
  157. package/lib/module/components/ApprovalCard.js +292 -1
  158. package/lib/module/components/ApprovalCard.js.map +1 -0
  159. package/lib/module/components/AskBuoyHeader.js +193 -1
  160. package/lib/module/components/AskBuoyHeader.js.map +1 -0
  161. package/lib/module/components/AskBuoyIcon.js +8 -1
  162. package/lib/module/components/AskBuoyIcon.js.map +1 -0
  163. package/lib/module/components/AskBuoyModal.js +474 -1
  164. package/lib/module/components/AskBuoyModal.js.map +1 -0
  165. package/lib/module/components/AskBuoySettings.js +176 -1
  166. package/lib/module/components/AskBuoySettings.js.map +1 -0
  167. package/lib/module/components/ChangesBar.js +206 -1
  168. package/lib/module/components/ChangesBar.js.map +1 -0
  169. package/lib/module/components/Composer.js +250 -1
  170. package/lib/module/components/Composer.js.map +1 -0
  171. package/lib/module/components/EmptyState.js +156 -1
  172. package/lib/module/components/EmptyState.js.map +1 -0
  173. package/lib/module/components/KeyboardPad.js +75 -1
  174. package/lib/module/components/KeyboardPad.js.map +1 -0
  175. package/lib/module/components/Markdown.js +305 -1
  176. package/lib/module/components/Markdown.js.map +1 -0
  177. package/lib/module/components/MessageList.js +964 -1
  178. package/lib/module/components/MessageList.js.map +1 -0
  179. package/lib/module/components/QueuedMessages.js +140 -1
  180. package/lib/module/components/QueuedMessages.js.map +1 -0
  181. package/lib/module/components/ThinkingStrip.js +218 -1
  182. package/lib/module/components/ThinkingStrip.js.map +1 -0
  183. package/lib/module/components/TypingDots.js +58 -1
  184. package/lib/module/components/TypingDots.js.map +1 -0
  185. package/lib/module/components/markdownParse.js +125 -1
  186. package/lib/module/components/markdownParse.js.map +1 -0
  187. package/lib/module/components/markdownParse.test.js +98 -1
  188. package/lib/module/components/markdownParse.test.js.map +1 -0
  189. package/lib/module/components/useCopyAction.js +46 -1
  190. package/lib/module/components/useCopyAction.js.map +1 -0
  191. package/lib/module/index.js +34 -1
  192. package/lib/module/index.js.map +1 -0
  193. package/lib/module/preset.js +74 -1
  194. package/lib/module/preset.js.map +1 -0
  195. package/lib/module/store/activityGroups.js +103 -1
  196. package/lib/module/store/activityGroups.js.map +1 -0
  197. package/lib/module/store/activityGroups.test.js +77 -1
  198. package/lib/module/store/activityGroups.test.js.map +1 -0
  199. package/lib/module/store/askBuoySettings.js +67 -1
  200. package/lib/module/store/askBuoySettings.js.map +1 -0
  201. package/lib/module/store/askBuoyStore.js +583 -1
  202. package/lib/module/store/askBuoyStore.js.map +1 -0
  203. package/lib/module/store/blockPlacement.js +59 -1
  204. package/lib/module/store/blockPlacement.js.map +1 -0
  205. package/lib/module/store/blockPlacement.test.js +122 -1
  206. package/lib/module/store/blockPlacement.test.js.map +1 -0
  207. package/lib/module/store/queue.test.js +149 -1
  208. package/lib/module/store/queue.test.js.map +1 -0
  209. package/lib/module/store/resetConversation.js +72 -1
  210. package/lib/module/store/resetConversation.js.map +1 -0
  211. package/lib/module/store/restorePending.test.js +62 -1
  212. package/lib/module/store/restorePending.test.js.map +1 -0
  213. package/lib/module/store/restoredIds.test.js +46 -1
  214. package/lib/module/store/restoredIds.test.js.map +1 -0
  215. package/lib/module/store/suggestions.js +49 -1
  216. package/lib/module/store/suggestions.js.map +1 -0
  217. package/lib/module/store/suggestions.test.js +57 -1
  218. package/lib/module/store/suggestions.test.js.map +1 -0
  219. package/lib/module/store/systemLine.test.js +76 -1
  220. package/lib/module/store/systemLine.test.js.map +1 -0
  221. package/lib/module/store/ticketPrompt.js +13 -1
  222. package/lib/module/store/ticketPrompt.js.map +1 -0
  223. package/lib/module/store/traceText.js +75 -1
  224. package/lib/module/store/traceText.js.map +1 -0
  225. package/lib/module/store/traceText.test.js +111 -1
  226. package/lib/module/store/traceText.test.js.map +1 -0
  227. package/lib/module/store/transcriptPersistence.js +287 -1
  228. package/lib/module/store/transcriptPersistence.js.map +1 -0
  229. package/lib/module/store/transcriptPersistence.test.js +332 -1
  230. package/lib/module/store/transcriptPersistence.test.js.map +1 -0
  231. package/lib/module/store/turnRendering.test.js +150 -1
  232. package/lib/module/store/turnRendering.test.js.map +1 -0
  233. package/lib/module/store/useAskBuoy.js +646 -1
  234. package/lib/module/store/useAskBuoy.js.map +1 -0
  235. package/lib/module/store/useAskBuoySettings.js +9 -1
  236. package/lib/module/store/useAskBuoySettings.js.map +1 -0
  237. package/lib/module/sync/askBuoySyncAdapter.js +148 -1
  238. package/lib/module/sync/askBuoySyncAdapter.js.map +1 -0
  239. package/lib/module/sync/askBuoySyncAdapter.test.js +140 -1
  240. package/lib/module/sync/askBuoySyncAdapter.test.js.map +1 -0
  241. package/lib/module/sync/wire.js +47 -1
  242. package/lib/module/sync/wire.js.map +1 -0
  243. package/lib/module/types.js +4 -1
  244. package/lib/module/types.js.map +1 -0
  245. package/lib/typescript/blocks/AskBlocks.d.ts.map +1 -0
  246. package/lib/typescript/blocks/BlockRenderer.d.ts.map +1 -0
  247. package/lib/typescript/blocks/ChromePrototypes.d.ts.map +1 -0
  248. package/lib/typescript/blocks/DataBlocks.d.ts.map +1 -0
  249. package/lib/typescript/blocks/ExtraBlocks.d.ts.map +1 -0
  250. package/lib/typescript/blocks/MediaBlocks.d.ts.map +1 -0
  251. package/lib/typescript/blocks/ReceiptBlocks.d.ts.map +1 -0
  252. package/lib/typescript/blocks/blockText.d.ts.map +1 -0
  253. package/lib/typescript/blocks/blockText.test.d.ts.map +1 -0
  254. package/lib/typescript/blocks/context.d.ts.map +1 -0
  255. package/lib/typescript/blocks/icons.d.ts.map +1 -0
  256. package/lib/typescript/blocks/index.d.ts.map +1 -0
  257. package/lib/typescript/blocks/listRow.test.d.ts.map +1 -0
  258. package/lib/typescript/blocks/pageState.d.ts.map +1 -0
  259. package/lib/typescript/blocks/pageState.test.d.ts.map +1 -0
  260. package/lib/typescript/blocks/primitives.d.ts.map +1 -0
  261. package/lib/typescript/blocks/primitivesIndex.d.ts.map +1 -0
  262. package/lib/typescript/components/ApprovalCard.d.ts.map +1 -0
  263. package/lib/typescript/components/AskBuoyHeader.d.ts.map +1 -0
  264. package/lib/typescript/components/AskBuoyIcon.d.ts.map +1 -0
  265. package/lib/typescript/components/AskBuoyModal.d.ts.map +1 -0
  266. package/lib/typescript/components/AskBuoySettings.d.ts.map +1 -0
  267. package/lib/typescript/components/ChangesBar.d.ts.map +1 -0
  268. package/lib/typescript/components/Composer.d.ts.map +1 -0
  269. package/lib/typescript/components/EmptyState.d.ts.map +1 -0
  270. package/lib/typescript/components/KeyboardPad.d.ts.map +1 -0
  271. package/lib/typescript/components/Markdown.d.ts.map +1 -0
  272. package/lib/typescript/components/MessageList.d.ts.map +1 -0
  273. package/lib/typescript/components/QueuedMessages.d.ts.map +1 -0
  274. package/lib/typescript/components/ThinkingStrip.d.ts.map +1 -0
  275. package/lib/typescript/components/TypingDots.d.ts.map +1 -0
  276. package/lib/typescript/components/markdownParse.d.ts.map +1 -0
  277. package/lib/typescript/components/markdownParse.test.d.ts.map +1 -0
  278. package/lib/typescript/components/useCopyAction.d.ts.map +1 -0
  279. package/lib/typescript/index.d.ts.map +1 -0
  280. package/lib/typescript/preset.d.ts.map +1 -0
  281. package/lib/typescript/store/activityGroups.d.ts.map +1 -0
  282. package/lib/typescript/store/activityGroups.test.d.ts.map +1 -0
  283. package/lib/typescript/store/askBuoySettings.d.ts.map +1 -0
  284. package/lib/typescript/store/askBuoyStore.d.ts.map +1 -0
  285. package/lib/typescript/store/blockPlacement.d.ts.map +1 -0
  286. package/lib/typescript/store/blockPlacement.test.d.ts.map +1 -0
  287. package/lib/typescript/store/queue.test.d.ts.map +1 -0
  288. package/lib/typescript/store/resetConversation.d.ts.map +1 -0
  289. package/lib/typescript/store/restorePending.test.d.ts.map +1 -0
  290. package/lib/typescript/store/restoredIds.test.d.ts.map +1 -0
  291. package/lib/typescript/store/suggestions.d.ts.map +1 -0
  292. package/lib/typescript/store/suggestions.test.d.ts.map +1 -0
  293. package/lib/typescript/store/systemLine.test.d.ts.map +1 -0
  294. package/lib/typescript/store/ticketPrompt.d.ts.map +1 -0
  295. package/lib/typescript/store/traceText.d.ts.map +1 -0
  296. package/lib/typescript/store/traceText.test.d.ts.map +1 -0
  297. package/lib/typescript/store/transcriptPersistence.d.ts.map +1 -0
  298. package/lib/typescript/store/transcriptPersistence.test.d.ts.map +1 -0
  299. package/lib/typescript/store/turnRendering.test.d.ts.map +1 -0
  300. package/lib/typescript/store/useAskBuoy.d.ts.map +1 -0
  301. package/lib/typescript/store/useAskBuoySettings.d.ts.map +1 -0
  302. package/lib/typescript/sync/askBuoySyncAdapter.d.ts.map +1 -0
  303. package/lib/typescript/sync/askBuoySyncAdapter.test.d.ts.map +1 -0
  304. package/lib/typescript/sync/wire.d.ts.map +1 -0
  305. package/lib/typescript/types.d.ts.map +1 -0
  306. package/package.json +8 -8
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_sharedUi","require","_react","_reactNative","_agentCore","_askBuoyStore","_resetConversation","_transcriptPersistence","_useAskBuoySettings","isRelease","__DEV__","questionBehind","blockId","m","askBuoyStore","getState","messages","restored","placed","blocks","b","block","id","asked","question","label","title","trim","undefined","readAvailableActions","actions","listToolActions","toolId","listSnapshotToolIds","includes","SNAPSHOT_ACTION","SAVE_DEBOUNCE_MS","useAskBuoyState","useSyncExternalStore","subscribe","useAskBuoy","config","state","hasProAccess","getUseIsPro","proAccessRef","useRef","current","dispatchAgentAction","useCallback","args","hasAccountAccess","Promise","reject","Error","dispatchToolAction","sessionRef","restoredRef","abortRef","configRef","configured","endpoint","model","persist","persistTranscript","bypassApprovals","readOnly","useAskBuoySettings","bypassRef","readOnlyRef","effectivePolicy","policy","registryTick","setRegistryTick","useState","useEffect","cancelled","waitForToolRegistry","then","n","availableActions","useMemo","toolKey","Object","keys","sort","join","setConfigured","setMeta","protocol","appName","platform","Platform","OS","build","setNotice","apiKey","test","signature","held","getHeldSession","session","setAvailableActions","setApprovalBypass","setReadOnly","setLedger","ledger","createAskBuoySession","headers","maxTokens","anthropicVersion","requestOverrides","catalog","tools","length","CATALOG","dispatch","readSnapshot","readToolSnapshot","context","requestApproval","input","askApproval","holdSession","ready","prime","readTranscript","saved","hydrated","hydrate","answers","usage","queued","restore","history","pending","restorePending","busy","write","writeTranscript","buildPayload","getLedger","list","timer","setTimeout","clearTimeout","runTurn","text","beginTurn","messageId","startAssistant","controller","AbortController","onEvent","ev","send","signal","applyEvent","err","aborted","type","message","markStopped","finishAssistant","trimmed","enqueue","awaiting","awaitingBlockId","recordAnswer","kind","addUser","retry","lastUser","reverse","find","role","stop","requestStop","answerApproval","abort","off","subscribeAccountAccess","turnPhaseOf","queuePauseReason","next","shiftQueued","editQueued","takeQueuedToDraft","removeQueued","reset","clearConversation","undoThenReset","resetConversation","undoFirst","applyRestoredApproval","targetDigest","now","readTargetDigest","action","params","addNote","outcome","runGatedAction","ok","error","approve","answer","approved","a","answerToText","runAction","key","setActionState","toolCount","availableToolIds"],"sourceRoot":"../../../src","sources":["store/useAskBuoy.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1,14 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useAskBuoySettings=useAskBuoySettings;var _react=require("react"),_askBuoySettings=require("./askBuoySettings");function useAskBuoySettings(){return(0,_react.useSyncExternalStore)(_askBuoySettings.askBuoySettings.subscribe,_askBuoySettings.askBuoySettings.get,_askBuoySettings.askBuoySettings.get)}
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useAskBuoySettings = useAskBuoySettings;
7
+ var _react = require("react");
8
+ var _askBuoySettings = require("./askBuoySettings");
9
+ /** Subscribe the sheet to Ask Buoy's own preferences. */
10
+
11
+ function useAskBuoySettings() {
12
+ return (0, _react.useSyncExternalStore)(_askBuoySettings.askBuoySettings.subscribe, _askBuoySettings.askBuoySettings.get, _askBuoySettings.askBuoySettings.get);
13
+ }
14
+ //# sourceMappingURL=useAskBuoySettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_askBuoySettings","useAskBuoySettings","useSyncExternalStore","askBuoySettings","subscribe","get"],"sourceRoot":"../../../src","sources":["store/useAskBuoySettings.ts"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,gBAAA,GAAAD,OAAA;AAHA;;AAKO,SAASE,kBAAkBA,CAAA,EAAoB;EACpD,OAAO,IAAAC,2BAAoB,EAACC,gCAAe,CAACC,SAAS,EAAED,gCAAe,CAACE,GAAG,EAAEF,gCAAe,CAACE,GAAG,CAAC;AAClG","ignoreList":[]}
@@ -1 +1,153 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.askBuoySyncAdapter=exports.ASK_BUOY_ADAPTER_VERSION=void 0;var _resetConversation=require("../store/resetConversation"),_wire=require("./wire"),_agentCore=require("@buoy-gg/agent-core"),_askBuoyStore=require("../store/askBuoyStore");const ASK_BUOY_ADAPTER_VERSION=exports.ASK_BUOY_ADAPTER_VERSION=1,askBuoySyncAdapter=exports.askBuoySyncAdapter={version:ASK_BUOY_ADAPTER_VERSION,async dispose(e){const t=_askBuoyStore.askBuoyStore.getLedger();for(const o of t?.list()??[])o.undoneAt||"network-override"===o.effect.kind&&await e("network","deleteOverrideRule",{id:o.effect.ruleId})},getSnapshot(){const e=_askBuoyStore.askBuoyStore.getState(),t=_askBuoyStore.askBuoyStore.getLedger(),o=(t?.list()??[]).filter(e=>!e.undoneAt);return{version:ASK_BUOY_ADAPTER_VERSION,busy:e.busy,configured:e.configured,notice:e.notice,messageCount:e.messages.length,messages:e.messages.map(e=>({id:e.id,role:e.role,text:(0,_wire.redactForWire)(e.text),streaming:!!e.streaming,toolCalls:e.toolCalls.map(e=>({toolId:e.toolId,action:e.action,status:e.status}))})),usage:e.usage,pendingApproval:e.pending?{toolId:e.pending.toolId,action:e.pending.action,label:e.pending.label}:null,changes:{reversible:o.filter(e=>(0,_agentCore.isReversible)(e.effect)).length,permanent:o.filter(e=>"transient"!==e.effect.kind&&!(0,_agentCore.isReversible)(e.effect)).length,transients:o.filter(e=>"transient"===e.effect.kind).length,items:o.map(e=>({kind:e.effect.kind,label:e.effect.label}))}}},subscribe(e){const t=_askBuoyStore.askBuoyStore.subscribe(e),o=_askBuoyStore.askBuoyStore.getLedger()?.subscribe(e);return()=>{t(),o?.()}},actions:{listChanges:()=>(_askBuoyStore.askBuoyStore.getLedger()?.list()??[]).filter(e=>!e.undoneAt).map(e=>({id:e.id,at:e.at,toolId:e.toolId,action:e.action,kind:e.effect.kind,label:e.effect.label,reversible:(0,_agentCore.isReversible)(e.effect)})),undoAll:async()=>{const e=_askBuoyStore.askBuoyStore.getLedger();return e?{ok:!0,...await e.revertAll(_wire.dispatchToolAction)}:{ok:!1,error:"No Ask Buoy session on this device."}},reset:async()=>{const e=await(0,_resetConversation.resetConversation)({dispatch:_wire.dispatchToolAction,undoFirst:!0});return e.cleared?{ok:!0,reverted:e.reverted}:{ok:!1,error:`Couldn't undo ${e.failed.length} change${1===e.failed.length?"":"s"} — conversation kept.`,failed:e.failed}}}};
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.askBuoySyncAdapter = exports.ASK_BUOY_ADAPTER_VERSION = void 0;
7
+ var _resetConversation = require("../store/resetConversation");
8
+ var _wire = require("./wire");
9
+ var _agentCore = require("@buoy-gg/agent-core");
10
+ var _askBuoyStore = require("../store/askBuoyStore");
11
+ /**
12
+ * The sync adapter, so Buoy Desktop and MCP can see what Ask Buoy is doing.
13
+ *
14
+ * Read-heavy on purpose. There is no `send` action: letting a remote client
15
+ * put words in the agent's mouth would mean anyone who can reach the broker —
16
+ * which has no authentication at all, binds 0.0.0.0, and accepts any client
17
+ * calling itself "Dashboard" — could drive a mutating agent on a tester's
18
+ * device. The chat is initiated on-device, by a person, full stop.
19
+ *
20
+ * `undoAll` IS exposed, because the asymmetry is deliberate: putting things
21
+ * back is the safe direction, and a dev watching from the desktop should be
22
+ * able to clean up a device without walking over to it.
23
+ *
24
+ * The transcript is redacted before it crosses the wire. Action results the
25
+ * agent read can contain storage values and response bodies, and this socket
26
+ * broadcasts to every connected dashboard — it already leaks license keys the
27
+ * same way.
28
+ */
29
+
30
+ const ASK_BUOY_ADAPTER_VERSION = exports.ASK_BUOY_ADAPTER_VERSION = 1;
31
+ const askBuoySyncAdapter = exports.askBuoySyncAdapter = {
32
+ version: ASK_BUOY_ADAPTER_VERSION,
33
+ async dispose(cleanup) {
34
+ const ledger = _askBuoyStore.askBuoyStore.getLedger();
35
+ for (const entry of ledger?.list() ?? []) {
36
+ if (entry.undoneAt) continue;
37
+ if (entry.effect.kind === "network-override") {
38
+ await cleanup("network", "deleteOverrideRule", {
39
+ id: entry.effect.ruleId
40
+ });
41
+ }
42
+ // Impersonation removes its own header without clearing host caches.
43
+ // Completed storage/query/state writes remain deliberate developer edits.
44
+ }
45
+ },
46
+ getSnapshot() {
47
+ const state = _askBuoyStore.askBuoyStore.getState();
48
+ const ledger = _askBuoyStore.askBuoyStore.getLedger();
49
+ const entries = ledger?.list() ?? [];
50
+ const outstanding = entries.filter(e => !e.undoneAt);
51
+ return {
52
+ version: ASK_BUOY_ADAPTER_VERSION,
53
+ busy: state.busy,
54
+ configured: state.configured,
55
+ notice: state.notice,
56
+ messageCount: state.messages.length,
57
+ // Only the shape of the conversation, never tool payloads.
58
+ messages: state.messages.map(m => ({
59
+ id: m.id,
60
+ role: m.role,
61
+ text: (0, _wire.redactForWire)(m.text),
62
+ streaming: !!m.streaming,
63
+ toolCalls: m.toolCalls.map(c => ({
64
+ toolId: c.toolId,
65
+ action: c.action,
66
+ status: c.status
67
+ }))
68
+ })),
69
+ // Session token totals, so a desktop/MCP observer can meter cost.
70
+ usage: state.usage,
71
+ pendingApproval: state.pending ? {
72
+ toolId: state.pending.toolId,
73
+ action: state.pending.action,
74
+ label: state.pending.label
75
+ } : null,
76
+ changes: {
77
+ // Transients (navigation, taps) are one-shot actions, not changes —
78
+ // same rule as the on-device bar, so desktop and device tell one story.
79
+ reversible: outstanding.filter(e => (0, _agentCore.isReversible)(e.effect)).length,
80
+ permanent: outstanding.filter(e => e.effect.kind !== "transient" && !(0, _agentCore.isReversible)(e.effect)).length,
81
+ transients: outstanding.filter(e => e.effect.kind === "transient").length,
82
+ items: outstanding.map(e => ({
83
+ kind: e.effect.kind,
84
+ label: e.effect.label
85
+ }))
86
+ }
87
+ };
88
+ },
89
+ subscribe(onChange) {
90
+ const offStore = _askBuoyStore.askBuoyStore.subscribe(onChange);
91
+ const offLedger = _askBuoyStore.askBuoyStore.getLedger()?.subscribe(onChange);
92
+ return () => {
93
+ offStore();
94
+ offLedger?.();
95
+ };
96
+ },
97
+ actions: {
98
+ /** What the agent changed, and whether it can be put back. */
99
+ listChanges: () => {
100
+ const entries = _askBuoyStore.askBuoyStore.getLedger()?.list() ?? [];
101
+ return entries.filter(e => !e.undoneAt).map(e => ({
102
+ id: e.id,
103
+ at: e.at,
104
+ toolId: e.toolId,
105
+ action: e.action,
106
+ kind: e.effect.kind,
107
+ label: e.effect.label,
108
+ reversible: (0, _agentCore.isReversible)(e.effect)
109
+ }));
110
+ },
111
+ /** Put back everything that can be put back. Safe direction only. */
112
+ undoAll: async () => {
113
+ const ledger = _askBuoyStore.askBuoyStore.getLedger();
114
+ if (!ledger) return {
115
+ ok: false,
116
+ error: "No Ask Buoy session on this device."
117
+ };
118
+ const outcome = await ledger.revertAll(_wire.dispatchToolAction);
119
+ return {
120
+ ok: true,
121
+ ...outcome
122
+ };
123
+ },
124
+ /**
125
+ * Undo what can be undone, then clear the transcript and the ledger.
126
+ *
127
+ * The same path as the sheet's "New conversation" (resetConversation.ts).
128
+ * This action used to clear unconditionally — no question, no undo — so a
129
+ * desktop click could drop the only undo record for changes still live on
130
+ * the tester's phone. Now it refuses to clear when a revert fails and says
131
+ * what is still applied; the dashboard decides whether to clear anyway
132
+ * by calling `undoAll` first or accepting the kept conversation.
133
+ */
134
+ reset: async () => {
135
+ const outcome = await (0, _resetConversation.resetConversation)({
136
+ dispatch: _wire.dispatchToolAction,
137
+ undoFirst: true
138
+ });
139
+ if (!outcome.cleared) {
140
+ return {
141
+ ok: false,
142
+ error: `Couldn't undo ${outcome.failed.length} change${outcome.failed.length === 1 ? "" : "s"} — conversation kept.`,
143
+ failed: outcome.failed
144
+ };
145
+ }
146
+ return {
147
+ ok: true,
148
+ reverted: outcome.reverted
149
+ };
150
+ }
151
+ }
152
+ };
153
+ //# sourceMappingURL=askBuoySyncAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_resetConversation","require","_wire","_agentCore","_askBuoyStore","ASK_BUOY_ADAPTER_VERSION","exports","askBuoySyncAdapter","version","dispose","cleanup","ledger","askBuoyStore","getLedger","entry","list","undoneAt","effect","kind","id","ruleId","getSnapshot","state","getState","entries","outstanding","filter","e","busy","configured","notice","messageCount","messages","length","map","m","role","text","redactForWire","streaming","toolCalls","c","toolId","action","status","usage","pendingApproval","pending","label","changes","reversible","isReversible","permanent","transients","items","subscribe","onChange","offStore","offLedger","actions","listChanges","at","undoAll","ok","error","outcome","revertAll","dispatchToolAction","reset","resetConversation","dispatch","undoFirst","cleared","failed","reverted"],"sourceRoot":"../../../src","sources":["sync/askBuoySyncAdapter.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1,141 @@
1
- "use strict";var _vitest=require("vitest"),_agentCore=require("@buoy-gg/agent-core"),_askBuoySyncAdapter=require("./askBuoySyncAdapter"),_wire=require("./wire"),_askBuoyStore=require("../store/askBuoyStore");(0,_vitest.beforeEach)(()=>{_askBuoyStore.askBuoyStore.reset(),_askBuoyStore.askBuoyStore.setLedger(null)}),(0,_vitest.describe)("the wire surface",()=>{(0,_vitest.it)("exposes no action that can make the agent talk",()=>{const e=Object.keys(_askBuoySyncAdapter.askBuoySyncAdapter.actions);(0,_vitest.expect)(e).not.toContain("send"),(0,_vitest.expect)(e).not.toContain("ask"),(0,_vitest.expect)(e).not.toContain("prompt"),(0,_vitest.expect)(e.sort()).toEqual(["listChanges","reset","undoAll"])}),(0,_vitest.it)("puts the shape of the conversation on the wire, never tool payloads",()=>{_askBuoyStore.askBuoyStore.addUser("what is in storage");const e=_askBuoyStore.askBuoyStore.startAssistant();_askBuoyStore.askBuoyStore.applyEvent(e,{type:"tool-start",id:"c1",toolId:"storage",action:"async.getItem",label:"Read session",description:"Read one AsyncStorage key",params:{key:"session"},effect:"read"}),_askBuoyStore.askBuoyStore.applyEvent(e,{type:"tool-end",id:"c1",ok:!0,durationMs:12,summary:"eyJhbGciOiJIUzI1NiJ9.super.secret"});const t=_askBuoySyncAdapter.askBuoySyncAdapter.getSnapshot(),s=t.messages[1].toolCalls[0];(0,_vitest.expect)(s).toEqual({toolId:"storage",action:"async.getItem",status:"ok"}),(0,_vitest.expect)(JSON.stringify(t)).not.toContain("super.secret")}),(0,_vitest.it)("redacts credentials that made it into the assistant's prose",()=>{_askBuoyStore.askBuoyStore.addUser("show me the auth header");const e=_askBuoyStore.askBuoyStore.startAssistant();_askBuoyStore.askBuoyStore.applyEvent(e,{type:"text",delta:"It sends Authorization: Bearer abcdef0123456789ghijkl to the API."});const t=_askBuoySyncAdapter.askBuoySyncAdapter.getSnapshot();(0,_vitest.expect)(JSON.stringify(t)).not.toContain("abcdef0123456789ghijkl")}),(0,_vitest.it)("reports reversible and permanent changes separately",()=>{const e=new _agentCore.EffectLedger;_askBuoyStore.askBuoyStore.setLedger(e),e.record("storage","async.setItem",{kind:"storage-write",toolId:"storage",action:"async.setItem",key:"points",before:"240",label:"Set points to 1500"}),e.record("perf-monitor","clearAll",{kind:"transient",label:"Cleared samples"}),e.record("zustand","setState",{kind:"state-write",toolId:"zustand",action:"setState",label:"Update the cart store"});const t=_askBuoySyncAdapter.askBuoySyncAdapter.getSnapshot();(0,_vitest.expect)(t.changes.reversible).toBe(1),(0,_vitest.expect)(t.changes.permanent).toBe(1),(0,_vitest.expect)(t.changes.transients).toBe(1)})}),(0,_vitest.describe)("redactForWire",()=>{(0,_vitest.it)("removes bearer tokens, JWTs, api keys and license keys",()=>{const e=["Authorization: Bearer abcdefghijklmnop123456","token eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9abcdefgh","key sk-abcdefghijklmnop1234","license BUOY-ABCD-1234-EFGH",'the header is "x-api-key": "supersecretvalue"'];for(const t of e)(0,_vitest.expect)((0,_wire.redactForWire)(t)).toContain("removed]")}),(0,_vitest.it)("leaves ordinary prose alone",()=>{const e="The /menu call returned 200 with 12 items and the burger was in stock.";(0,_vitest.expect)((0,_wire.redactForWire)(e)).toBe(e)})}),(0,_vitest.describe)("undo from the desktop",()=>{(0,_vitest.it)("is allowed, because putting things back is the safe direction",async()=>{const e=new _agentCore.EffectLedger;_askBuoyStore.askBuoyStore.setLedger(e);const t=new Map([["points","1500"]]);e.record("storage","async.setItem",{kind:"storage-write",toolId:"storage",action:"async.setItem",key:"points",before:"240",label:"Set points to 1500"}),await e.revertAll(async(e,s,o)=>{const a=o;"async.setItem"===s&&t.set(a.key,a.value)}),(0,_vitest.expect)(t.get("points")).toBe("240")})});
1
+ "use strict";
2
+
3
+ var _vitest = require("vitest");
4
+ var _agentCore = require("@buoy-gg/agent-core");
5
+ var _askBuoySyncAdapter = require("./askBuoySyncAdapter");
6
+ var _wire = require("./wire");
7
+ var _askBuoyStore = require("../store/askBuoyStore");
8
+ /**
9
+ * What Ask Buoy is allowed to put on the broker wire, and what it refuses to
10
+ * accept from it.
11
+ *
12
+ * Both directions matter. The broker has no authentication, accepts any client
13
+ * that calls itself "Dashboard", and forwards to every connected dashboard — it
14
+ * already broadcasts license keys that way. So: no tool results go out, and no
15
+ * remote client can make the agent say anything.
16
+ */
17
+
18
+ (0, _vitest.beforeEach)(() => {
19
+ _askBuoyStore.askBuoyStore.reset();
20
+ _askBuoyStore.askBuoyStore.setLedger(null);
21
+ });
22
+ (0, _vitest.describe)("the wire surface", () => {
23
+ (0, _vitest.it)("exposes no action that can make the agent talk", () => {
24
+ // A `send` here would let anyone on the LAN drive a mutating agent on a
25
+ // tester's phone. The conversation starts on-device, by a person.
26
+ const actions = Object.keys(_askBuoySyncAdapter.askBuoySyncAdapter.actions);
27
+ (0, _vitest.expect)(actions).not.toContain("send");
28
+ (0, _vitest.expect)(actions).not.toContain("ask");
29
+ (0, _vitest.expect)(actions).not.toContain("prompt");
30
+ (0, _vitest.expect)(actions.sort()).toEqual(["listChanges", "reset", "undoAll"]);
31
+ });
32
+ (0, _vitest.it)("puts the shape of the conversation on the wire, never tool payloads", () => {
33
+ _askBuoyStore.askBuoyStore.addUser("what is in storage");
34
+ const id = _askBuoyStore.askBuoyStore.startAssistant();
35
+ _askBuoyStore.askBuoyStore.applyEvent(id, {
36
+ type: "tool-start",
37
+ id: "c1",
38
+ toolId: "storage",
39
+ action: "async.getItem",
40
+ label: "Read session",
41
+ description: "Read one AsyncStorage key",
42
+ params: {
43
+ key: "session"
44
+ },
45
+ effect: "read"
46
+ });
47
+ _askBuoyStore.askBuoyStore.applyEvent(id, {
48
+ type: "tool-end",
49
+ id: "c1",
50
+ ok: true,
51
+ durationMs: 12,
52
+ summary: "eyJhbGciOiJIUzI1NiJ9.super.secret"
53
+ });
54
+ const snap = _askBuoySyncAdapter.askBuoySyncAdapter.getSnapshot();
55
+ const call = snap.messages[1].toolCalls[0];
56
+ (0, _vitest.expect)(call).toEqual({
57
+ toolId: "storage",
58
+ action: "async.getItem",
59
+ status: "ok"
60
+ });
61
+ // The result summary is not on the wire at all — there is no field for it.
62
+ (0, _vitest.expect)(JSON.stringify(snap)).not.toContain("super.secret");
63
+ });
64
+ (0, _vitest.it)("redacts credentials that made it into the assistant's prose", () => {
65
+ _askBuoyStore.askBuoyStore.addUser("show me the auth header");
66
+ const id = _askBuoyStore.askBuoyStore.startAssistant();
67
+ _askBuoyStore.askBuoyStore.applyEvent(id, {
68
+ type: "text",
69
+ delta: "It sends Authorization: Bearer abcdef0123456789ghijkl to the API."
70
+ });
71
+ const snap = _askBuoySyncAdapter.askBuoySyncAdapter.getSnapshot();
72
+ (0, _vitest.expect)(JSON.stringify(snap)).not.toContain("abcdef0123456789ghijkl");
73
+ });
74
+ (0, _vitest.it)("reports reversible and permanent changes separately", () => {
75
+ const ledger = new _agentCore.EffectLedger();
76
+ _askBuoyStore.askBuoyStore.setLedger(ledger);
77
+ ledger.record("storage", "async.setItem", {
78
+ kind: "storage-write",
79
+ toolId: "storage",
80
+ action: "async.setItem",
81
+ key: "points",
82
+ before: "240",
83
+ label: "Set points to 1500"
84
+ });
85
+ ledger.record("perf-monitor", "clearAll", {
86
+ kind: "transient",
87
+ label: "Cleared samples"
88
+ });
89
+ // A store write with no captured prior state: recorded, visible, and
90
+ // NOT something Undo can deliver — it must count as permanent.
91
+ ledger.record("zustand", "setState", {
92
+ kind: "state-write",
93
+ toolId: "zustand",
94
+ action: "setState",
95
+ label: "Update the cart store"
96
+ });
97
+ const snap = _askBuoySyncAdapter.askBuoySyncAdapter.getSnapshot();
98
+ (0, _vitest.expect)(snap.changes.reversible).toBe(1);
99
+ // The transient is an ACTION, not a change — it must not inflate
100
+ // "permanent" (that read "Changed this app · N permanent" after a
101
+ // read-only tour). It is still reported, in its own count.
102
+ (0, _vitest.expect)(snap.changes.permanent).toBe(1);
103
+ (0, _vitest.expect)(snap.changes.transients).toBe(1);
104
+ });
105
+ });
106
+ (0, _vitest.describe)("redactForWire", () => {
107
+ (0, _vitest.it)("removes bearer tokens, JWTs, api keys and license keys", () => {
108
+ const cases = ["Authorization: Bearer abcdefghijklmnop123456", "token eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9abcdefgh", "key sk-abcdefghijklmnop1234", "license BUOY-ABCD-1234-EFGH", 'the header is "x-api-key": "supersecretvalue"'];
109
+ for (const input of cases) {
110
+ (0, _vitest.expect)((0, _wire.redactForWire)(input)).toContain("removed]");
111
+ }
112
+ });
113
+ (0, _vitest.it)("leaves ordinary prose alone", () => {
114
+ const text = "The /menu call returned 200 with 12 items and the burger was in stock.";
115
+ (0, _vitest.expect)((0, _wire.redactForWire)(text)).toBe(text);
116
+ });
117
+ });
118
+ (0, _vitest.describe)("undo from the desktop", () => {
119
+ (0, _vitest.it)("is allowed, because putting things back is the safe direction", async () => {
120
+ const ledger = new _agentCore.EffectLedger();
121
+ _askBuoyStore.askBuoyStore.setLedger(ledger);
122
+ const store = new Map([["points", "1500"]]);
123
+ ledger.record("storage", "async.setItem", {
124
+ kind: "storage-write",
125
+ toolId: "storage",
126
+ action: "async.setItem",
127
+ key: "points",
128
+ before: "240",
129
+ label: "Set points to 1500"
130
+ });
131
+
132
+ // The adapter dispatches through the real seam; stub it at the ledger.
133
+ await ledger.revertAll(async (_t, action, params) => {
134
+ const p = params;
135
+ if (action === "async.setItem") store.set(p.key, p.value);
136
+ return undefined;
137
+ });
138
+ (0, _vitest.expect)(store.get("points")).toBe("240");
139
+ });
140
+ });
141
+ //# sourceMappingURL=askBuoySyncAdapter.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_vitest","require","_agentCore","_askBuoySyncAdapter","_wire","_askBuoyStore","beforeEach","askBuoyStore","reset","setLedger","describe","it","actions","Object","keys","askBuoySyncAdapter","expect","not","toContain","sort","toEqual","addUser","id","startAssistant","applyEvent","type","toolId","action","label","description","params","key","effect","ok","durationMs","summary","snap","getSnapshot","call","messages","toolCalls","status","JSON","stringify","delta","ledger","EffectLedger","record","kind","before","changes","reversible","toBe","permanent","transients","cases","input","redactForWire","text","store","Map","revertAll","_t","p","set","value","undefined","get"],"sourceRoot":"../../../src","sources":["sync/askBuoySyncAdapter.test.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1,58 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"dispatchToolAction",{enumerable:!0,get:function(){return _sharedUi.dispatchToolAction}}),exports.redactForWire=redactForWire;var _sharedUi=require("@buoy-gg/shared-ui");const PATTERNS=[{re:/\bBearer\s+[A-Za-z0-9._~+/-]{12,}=*/gi,label:"[bearer token removed]"},{re:/\beyJ[A-Za-z0-9._-]{20,}/g,label:"[jwt removed]"},{re:/\bsk-[A-Za-z0-9_-]{16,}/g,label:"[api key removed]"},{re:/\bBUOY-[A-Z0-9-]{8,}/g,label:"[license key removed]"},{re:/("|')?(authorization|x-api-key|api[_-]?key|password|secret|access_token|refresh_token)\1?\s*[:=]\s*("|')?[^\s"',}]{6,}/gi,label:"[credential removed]"}];function redactForWire(e){if(!e)return e;let r=e;for(const{re:e,label:o}of PATTERNS)r=r.replace(e,o);return r}
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "dispatchToolAction", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _sharedUi.dispatchToolAction;
10
+ }
11
+ });
12
+ exports.redactForWire = redactForWire;
13
+ var _sharedUi = require("@buoy-gg/shared-ui");
14
+ /**
15
+ * What the sync adapter is allowed to put on the broker wire.
16
+ *
17
+ * The broker has no authentication, `cors.origin: "*"`, binds every interface,
18
+ * and forwards to every connected dashboard — it already broadcasts each
19
+ * device's license key to every socket. A chat transcript is not a safe thing
20
+ * to add to that channel unfiltered: the agent reads storage values, network
21
+ * response bodies and user records, and any of it can end up quoted in an
22
+ * answer.
23
+ *
24
+ * So text crossing the wire is scrubbed for the shapes that are unambiguously
25
+ * credentials. This is a reduction in blast radius, not a guarantee — the real
26
+ * guarantee is that tool RESULTS never cross at all (see askBuoySyncAdapter).
27
+ */
28
+
29
+ const PATTERNS = [{
30
+ re: /\bBearer\s+[A-Za-z0-9._~+/-]{12,}=*/gi,
31
+ label: "[bearer token removed]"
32
+ }, {
33
+ re: /\beyJ[A-Za-z0-9._-]{20,}/g,
34
+ label: "[jwt removed]"
35
+ }, {
36
+ re: /\bsk-[A-Za-z0-9_-]{16,}/g,
37
+ label: "[api key removed]"
38
+ }, {
39
+ re: /\bBUOY-[A-Z0-9-]{8,}/g,
40
+ label: "[license key removed]"
41
+ },
42
+ // Common "key: value" credential shapes in a quoted payload.
43
+ {
44
+ re: /("|')?(authorization|x-api-key|api[_-]?key|password|secret|access_token|refresh_token)\1?\s*[:=]\s*("|')?[^\s"',}]{6,}/gi,
45
+ label: "[credential removed]"
46
+ }];
47
+ function redactForWire(text) {
48
+ if (!text) return text;
49
+ let out = text;
50
+ for (const {
51
+ re,
52
+ label
53
+ } of PATTERNS) {
54
+ out = out.replace(re, label);
55
+ }
56
+ return out;
57
+ }
58
+ //# sourceMappingURL=wire.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_sharedUi","require","PATTERNS","re","label","redactForWire","text","out","replace"],"sourceRoot":"../../../src","sources":["sync/wire.ts"],"mappings":";;;;;;;;;;;;AAcA,IAAAA,SAAA,GAAAC,OAAA;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,MAAMC,QAAyC,GAAG,CAChD;EAAEC,EAAE,EAAE,uCAAuC;EAAEC,KAAK,EAAE;AAAyB,CAAC,EAChF;EAAED,EAAE,EAAE,2BAA2B;EAAEC,KAAK,EAAE;AAAgB,CAAC,EAC3D;EAAED,EAAE,EAAE,0BAA0B;EAAEC,KAAK,EAAE;AAAoB,CAAC,EAC9D;EAAED,EAAE,EAAE,uBAAuB;EAAEC,KAAK,EAAE;AAAwB,CAAC;AAC/D;AACA;EACED,EAAE,EAAE,0HAA0H;EAC9HC,KAAK,EAAE;AACT,CAAC,CACF;AAEM,SAASC,aAAaA,CAACC,IAAY,EAAU;EAClD,IAAI,CAACA,IAAI,EAAE,OAAOA,IAAI;EACtB,IAAIC,GAAG,GAAGD,IAAI;EACd,KAAK,MAAM;IAAEH,EAAE;IAAEC;EAAM,CAAC,IAAIF,QAAQ,EAAE;IACpCK,GAAG,GAAGA,GAAG,CAACC,OAAO,CAACL,EAAE,EAAEC,KAAK,CAAC;EAC9B;EACA,OAAOG,GAAG;AACZ","ignoreList":[]}
@@ -1 +1,6 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["types.ts"],"mappings":"","ignoreList":[]}