@fased/fased 0.1.45 → 0.1.47

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 (685) hide show
  1. package/dist/acp/client.js +2 -2
  2. package/dist/acp/control-plane/spawn.js +1 -1
  3. package/dist/acp/secret-file.js +2 -2
  4. package/dist/agents/acp-spawn-parent-stream.js +2 -2
  5. package/dist/agents/acp-spawn.js +3 -3
  6. package/dist/agents/agent-scope.js +2 -2
  7. package/dist/agents/apply-patch.js +8 -8
  8. package/dist/agents/auth-profiles/paths.js +2 -2
  9. package/dist/agents/auth-profiles/store.js +2 -2
  10. package/dist/agents/bash-tools.exec-approval-request.js +1 -1
  11. package/dist/agents/bash-tools.exec-host-node.js +1 -1
  12. package/dist/agents/bash-tools.exec-runtime.js +1 -1
  13. package/dist/agents/bash-tools.exec.js +1 -1
  14. package/dist/agents/bash-tools.shared.js +2 -2
  15. package/dist/agents/cli-credentials.js +4 -4
  16. package/dist/agents/defaults.js +1 -1
  17. package/dist/agents/docs-path.js +3 -3
  18. package/dist/agents/embedded-pi-mcp.js +4 -4
  19. package/dist/agents/fased-tools.js +4 -4
  20. package/dist/agents/identity-avatar.js +4 -4
  21. package/dist/agents/identity-file.js +2 -2
  22. package/dist/agents/pi-embedded-runner/compact.js +4 -4
  23. package/dist/agents/pi-embedded-runner/run/attempt.js +5 -5
  24. package/dist/agents/pi-embedded-runner/run/images.js +1 -1
  25. package/dist/agents/pi-embedded-runner/run.js +2 -2
  26. package/dist/agents/pi-embedded-runner/system-prompt.js +1 -1
  27. package/dist/agents/pi-embedded-subscribe.handlers.compaction.js +1 -1
  28. package/dist/agents/pi-embedded-subscribe.handlers.messages.js +1 -1
  29. package/dist/agents/pi-embedded-subscribe.js +2 -2
  30. package/dist/agents/pi-embedded-subscribe.raw-stream.js +3 -3
  31. package/dist/agents/pi-embedded-subscribe.tools.js +1 -1
  32. package/dist/agents/pi-extensions/compaction-safeguard.js +3 -3
  33. package/dist/agents/pi-model-discovery.js +6 -6
  34. package/dist/agents/pi-project-settings.js +3 -3
  35. package/dist/agents/pi-tools.js +2 -2
  36. package/dist/agents/pi-tools.read.js +1 -1
  37. package/dist/agents/sandbox/browser.js +2 -2
  38. package/dist/agents/sandbox/context.js +2 -2
  39. package/dist/agents/sandbox/docker.js +1 -1
  40. package/dist/agents/sandbox/fs-bridge.js +2 -2
  41. package/dist/agents/sandbox/manage.js +2 -2
  42. package/dist/agents/sandbox/prune.js +2 -2
  43. package/dist/agents/session-dirs.js +4 -4
  44. package/dist/agents/session-write-lock.js +13 -13
  45. package/dist/agents/shell-utils.js +5 -5
  46. package/dist/agents/skills/bundled-dir.js +4 -4
  47. package/dist/agents/skills/local-loader.js +6 -6
  48. package/dist/agents/skills/plugin-skills.js +2 -2
  49. package/dist/agents/skills/workspace.js +13 -13
  50. package/dist/agents/skills-install-download.js +7 -7
  51. package/dist/agents/skills-install-plan.js +2 -2
  52. package/dist/agents/skills-install.js +2 -2
  53. package/dist/agents/skills-status.js +2 -2
  54. package/dist/agents/subagent-announce-output.js +3 -3
  55. package/dist/agents/subagent-announce.js +6 -6
  56. package/dist/agents/subagent-announce.runtime.js +1 -1
  57. package/dist/agents/subagent-depth.js +2 -2
  58. package/dist/agents/subagent-registry.js +3 -3
  59. package/dist/agents/subagent-spawn.js +2 -2
  60. package/dist/agents/system-prompt-params.js +3 -3
  61. package/dist/agents/tool-images.js +1 -1
  62. package/dist/agents/tools/canvas-tool.js +2 -2
  63. package/dist/agents/tools/cron-tool.js +1 -1
  64. package/dist/agents/tools/diff-view-tool.js +1 -1
  65. package/dist/agents/tools/discord-actions-messaging.js +1 -1
  66. package/dist/agents/tools/gateway-tool.js +1 -1
  67. package/dist/agents/tools/gateway.js +1 -1
  68. package/dist/agents/tools/marketplace-offer-draft-tool.js +3 -3
  69. package/dist/agents/tools/message-tool.js +5 -5
  70. package/dist/agents/tools/mining-tool.js +1 -1
  71. package/dist/agents/tools/nodes-tool.js +1 -1
  72. package/dist/agents/tools/session-status-tool.js +3 -3
  73. package/dist/agents/tools/sessions-history-tool.js +1 -1
  74. package/dist/agents/tools/sessions-list-tool.js +1 -1
  75. package/dist/agents/tools/sessions-send-tool.a2a.js +1 -1
  76. package/dist/agents/tools/sessions-send-tool.js +1 -1
  77. package/dist/agents/tools/slack-actions.js +1 -1
  78. package/dist/agents/tools/subagents-tool.js +3 -3
  79. package/dist/agents/tools/telegram-actions.js +1 -1
  80. package/dist/agents/tools/tts-tool.js +1 -1
  81. package/dist/agents/tools/wallet-action-tool.js +4 -4
  82. package/dist/agents/tools/wallet-tool.js +7 -7
  83. package/dist/agents/tools/web-fetch.js +1 -1
  84. package/dist/agents/workspace.js +22 -22
  85. package/dist/auto-reply/chunk.js +1 -1
  86. package/dist/auto-reply/envelope.js +1 -1
  87. package/dist/auto-reply/reply/abort.js +2 -2
  88. package/dist/auto-reply/reply/agent-runner-execution.js +4 -4
  89. package/dist/auto-reply/reply/agent-runner-memory.js +2 -2
  90. package/dist/auto-reply/reply/agent-runner-payloads.js +1 -1
  91. package/dist/auto-reply/reply/agent-runner.js +8 -8
  92. package/dist/auto-reply/reply/bash-command.js +1 -1
  93. package/dist/auto-reply/reply/commands-acp/diagnostics.js +1 -1
  94. package/dist/auto-reply/reply/commands-acp/lifecycle.js +2 -2
  95. package/dist/auto-reply/reply/commands-acp/shared.js +1 -1
  96. package/dist/auto-reply/reply/commands-compact.js +2 -2
  97. package/dist/auto-reply/reply/commands-control.js +1 -1
  98. package/dist/auto-reply/reply/commands-export-session.js +7 -7
  99. package/dist/auto-reply/reply/commands-models.js +1 -1
  100. package/dist/auto-reply/reply/commands-session-abort.js +2 -2
  101. package/dist/auto-reply/reply/commands-status.js +2 -2
  102. package/dist/auto-reply/reply/commands-subagents/action-focus.js +1 -1
  103. package/dist/auto-reply/reply/commands-subagents/action-kill.js +2 -2
  104. package/dist/auto-reply/reply/commands-subagents/action-send.js +1 -1
  105. package/dist/auto-reply/reply/commands-subagents/shared.js +1 -1
  106. package/dist/auto-reply/reply/dispatch-acp.js +5 -5
  107. package/dist/auto-reply/reply/dispatch-from-config.js +2 -2
  108. package/dist/auto-reply/reply/followup-runner.js +4 -4
  109. package/dist/auto-reply/reply/get-reply-directives.js +2 -2
  110. package/dist/auto-reply/reply/get-reply-inline-actions.js +2 -2
  111. package/dist/auto-reply/reply/get-reply-run.js +4 -4
  112. package/dist/auto-reply/reply/model-selection.js +2 -2
  113. package/dist/auto-reply/reply/post-compaction-audit.js +3 -3
  114. package/dist/auto-reply/reply/post-compaction-context.js +3 -3
  115. package/dist/auto-reply/reply/queue/cleanup.js +1 -1
  116. package/dist/auto-reply/reply/reply-delivery.js +1 -1
  117. package/dist/auto-reply/reply/reply-directives.js +1 -1
  118. package/dist/auto-reply/reply/route-reply.js +1 -1
  119. package/dist/auto-reply/reply/session-reset-model.js +1 -1
  120. package/dist/auto-reply/reply/session-updates.js +1 -1
  121. package/dist/auto-reply/reply/session.js +3 -3
  122. package/dist/auto-reply/reply/streaming-directives.js +1 -1
  123. package/dist/auto-reply/reply.js +1 -1
  124. package/dist/auto-reply/skill-commands.js +3 -3
  125. package/dist/auto-reply/status.js +9 -9
  126. package/dist/brand.js +1 -1
  127. package/dist/browser/chrome.executables.js +3 -3
  128. package/dist/browser/chrome.js +3 -3
  129. package/dist/browser/chrome.profile-decoration.js +6 -6
  130. package/dist/browser/profiles-service.js +2 -2
  131. package/dist/browser/server-context.js +2 -2
  132. package/dist/browser/trash.js +4 -4
  133. package/dist/build-info.json +3 -3
  134. package/dist/bundled/session-memory/handler.js +1 -1
  135. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  136. package/dist/canvas-host/a2ui.js +1 -1
  137. package/dist/canvas-host/server.js +5 -5
  138. package/dist/capabilities/catalog.js +3 -3
  139. package/dist/channel-web.js +1 -1
  140. package/dist/channels/plugins/actions/signal.js +1 -1
  141. package/dist/channels/plugins/actions/telegram.js +2 -2
  142. package/dist/channels/plugins/catalog.js +3 -3
  143. package/dist/channels/plugins/onboarding/discord.js +1 -1
  144. package/dist/channels/plugins/onboarding/imessage.js +1 -1
  145. package/dist/cli/browser-cli-extension.js +7 -7
  146. package/dist/cli/command-format.js +2 -2
  147. package/dist/cli/components-cli.js +1 -1
  148. package/dist/cli/cron-cli/register.cron-simple.js +2 -2
  149. package/dist/cli/cron-cli/shared.js +1 -1
  150. package/dist/cli/daemon-cli/install.js +2 -2
  151. package/dist/cli/daemon-cli/status.gather.js +1 -1
  152. package/dist/cli/daemon-cli/status.print.js +1 -1
  153. package/dist/cli/directory-cli.js +1 -1
  154. package/dist/cli/dns-cli.js +9 -9
  155. package/dist/cli/exec-approvals-cli.js +2 -2
  156. package/dist/cli/federation-cli.js +3 -3
  157. package/dist/cli/gateway-cli/dev.js +5 -5
  158. package/dist/cli/gateway-cli/register.js +3 -3
  159. package/dist/cli/gateway-cli/run.js +3 -3
  160. package/dist/cli/hooks-cli.js +6 -6
  161. package/dist/cli/memory-cli.js +7 -7
  162. package/dist/cli/node-cli/daemon.js +1 -1
  163. package/dist/cli/nodes-cli/register.status.js +1 -1
  164. package/dist/cli/nodes-cli/rpc.js +1 -1
  165. package/dist/cli/nodes-media-utils.js +2 -2
  166. package/dist/cli/plugins-cli.js +3 -3
  167. package/dist/cli/program/message/helpers.js +1 -1
  168. package/dist/cli/program/register.agent.js +1 -1
  169. package/dist/cli/program/register.status-health-sessions.js +1 -1
  170. package/dist/cli/program/register.wallet.js +1 -1
  171. package/dist/cli/run-main.js +1 -1
  172. package/dist/cli/secrets-cli.js +3 -3
  173. package/dist/cli/tui-cli.js +1 -1
  174. package/dist/cli/update-cli/status.js +1 -1
  175. package/dist/cli/update-cli/update-command.js +3 -3
  176. package/dist/cli/windows-argv.js +2 -2
  177. package/dist/commands/agent/attempt.js +1 -1
  178. package/dist/commands/agent/delivery.js +2 -2
  179. package/dist/commands/agent.js +9 -9
  180. package/dist/commands/agents.commands.add.js +1 -1
  181. package/dist/commands/agents.commands.delete.js +1 -1
  182. package/dist/commands/channels/add.js +2 -2
  183. package/dist/commands/channels/list.js +2 -2
  184. package/dist/commands/channels/status.js +1 -1
  185. package/dist/commands/configure.daemon.js +1 -1
  186. package/dist/commands/configure.wizard.js +1 -1
  187. package/dist/commands/dashboard-link.js +3 -3
  188. package/dist/commands/dashboard.js +2 -2
  189. package/dist/commands/docs.js +1 -1
  190. package/dist/commands/doctor-config-flow.js +2 -2
  191. package/dist/commands/doctor-format.js +1 -1
  192. package/dist/commands/doctor-gateway-daemon-flow.js +5 -5
  193. package/dist/commands/doctor-gateway-services.js +2 -2
  194. package/dist/commands/doctor-install.js +5 -5
  195. package/dist/commands/doctor-memory-search.js +2 -2
  196. package/dist/commands/doctor-platform-notes.js +2 -2
  197. package/dist/commands/doctor-sandbox.js +2 -2
  198. package/dist/commands/doctor-security.js +1 -1
  199. package/dist/commands/doctor-state-integrity.js +23 -23
  200. package/dist/commands/doctor-workspace.js +3 -3
  201. package/dist/commands/doctor.js +4 -4
  202. package/dist/commands/gateway-status.js +2 -2
  203. package/dist/commands/hosted-dashboard-probe.js +2 -2
  204. package/dist/commands/managed-up.js +2 -2
  205. package/dist/commands/message.js +1 -1
  206. package/dist/commands/models/list.probe.js +3 -3
  207. package/dist/commands/models/list.status-command.js +3 -3
  208. package/dist/commands/onboard-auth.credentials.js +3 -3
  209. package/dist/commands/onboard-channels.js +1 -1
  210. package/dist/commands/onboard-helpers.js +1 -1
  211. package/dist/commands/onboard-non-interactive/local/daemon-install.js +2 -2
  212. package/dist/commands/onboard-non-interactive/local.js +1 -1
  213. package/dist/commands/onboard-skills.js +1 -1
  214. package/dist/commands/onboarding/plugin-install.js +3 -3
  215. package/dist/commands/openai-model-default.js +1 -1
  216. package/dist/commands/sessions-cleanup.js +2 -2
  217. package/dist/commands/signal-install.js +6 -6
  218. package/dist/commands/status-all/channels.js +3 -3
  219. package/dist/commands/status-all/diagnosis.js +1 -1
  220. package/dist/commands/status-all/format.js +1 -1
  221. package/dist/commands/status-all.js +8 -8
  222. package/dist/commands/status.command.js +4 -4
  223. package/dist/commands/status.gateway-probe.js +1 -1
  224. package/dist/commands/status.scan.js +3 -3
  225. package/dist/commands/status.summary.js +1 -1
  226. package/dist/commands/wallet.js +51 -50
  227. package/dist/config/cache-utils.js +2 -2
  228. package/dist/config/includes.js +5 -5
  229. package/dist/config/io.js +2 -2
  230. package/dist/config/paths.js +3 -3
  231. package/dist/config/sat-runtime-ids.js +3 -3
  232. package/dist/config/sessions/disk-budget.js +6 -6
  233. package/dist/config/sessions/paths.js +2 -2
  234. package/dist/config/sessions/store.js +17 -17
  235. package/dist/config/sessions/transcript.js +4 -4
  236. package/dist/config/talk.js +2 -2
  237. package/dist/control-ui/assets/{app-JBrTSsNu.js → app-CHqTx3P_.js} +4 -4
  238. package/dist/control-ui/assets/chat-model-ref-BbrdMKjQ.js +2 -0
  239. package/dist/control-ui/assets/{index-H-2DWAnH.js → index-CFHfNlLv.js} +3 -3
  240. package/dist/control-ui/assets/{providers-C9hLw4o6.js → providers-DqFL6WrJ.js} +2 -2
  241. package/dist/control-ui/index.html +1 -1
  242. package/dist/cron/isolated-agent/delivery-dispatch.js +2 -2
  243. package/dist/cron/isolated-agent/delivery-target.js +1 -1
  244. package/dist/cron/isolated-agent/run.js +5 -5
  245. package/dist/cron/service/store.js +2 -2
  246. package/dist/cron/store.js +6 -6
  247. package/dist/daemon/service-audit.js +2 -2
  248. package/dist/daemon/systemd-system.js +10 -10
  249. package/dist/discord/monitor/agent-components.js +9 -9
  250. package/dist/discord/monitor/gateway-plugin.js +1 -1
  251. package/dist/discord/monitor/listeners.js +2 -2
  252. package/dist/discord/monitor/message-handler.js +1 -1
  253. package/dist/discord/monitor/message-handler.preflight.js +8 -8
  254. package/dist/discord/monitor/message-handler.process.js +5 -5
  255. package/dist/discord/monitor/native-command.js +9 -9
  256. package/dist/discord/monitor/provider.js +2 -2
  257. package/dist/discord/monitor/reply-delivery.js +1 -1
  258. package/dist/discord/monitor/thread-bindings.state.js +2 -2
  259. package/dist/discord/send.outbound.js +1 -1
  260. package/dist/discord/voice/command.js +1 -1
  261. package/dist/extensionAPI.js +1 -1
  262. package/dist/extensions/sat-mining/src/rpc-read.js +7 -3
  263. package/dist/extensions/sat-mining/src/sat-bond-layout.js +9 -9
  264. package/dist/extensions/sat-mining/src/solana-submit.js +2 -2
  265. package/dist/federation/auto-connect.js +1 -1
  266. package/dist/federation/marketplace-capability-adapter.js +1 -1
  267. package/dist/federation/marketplace-delivery.js +1 -1
  268. package/dist/federation/marketplace-direct-payment.js +1 -1
  269. package/dist/federation/marketplace-escrow.js +2 -2
  270. package/dist/federation/settlement-evidence.js +1 -1
  271. package/dist/gateway/a2a-http.js +1 -1
  272. package/dist/gateway/call.js +2 -2
  273. package/dist/gateway/client.js +3 -3
  274. package/dist/gateway/control-ui-boot-check.js +7 -7
  275. package/dist/gateway/control-ui-login.js +7 -7
  276. package/dist/gateway/control-ui.js +10 -10
  277. package/dist/gateway/federation-http.js +3 -3
  278. package/dist/gateway/federation-marketplace.js +1 -1
  279. package/dist/gateway/hooks-mapping.js +4 -4
  280. package/dist/gateway/hooks.js +1 -1
  281. package/dist/gateway/openai-http.js +1 -1
  282. package/dist/gateway/openresponses-http.js +1 -1
  283. package/dist/gateway/server/health-state.js +1 -1
  284. package/dist/gateway/server/hooks.js +2 -2
  285. package/dist/gateway/server/ws-connection/message-handler.js +6 -6
  286. package/dist/gateway/server-channels.js +1 -1
  287. package/dist/gateway/server-cron.js +3 -3
  288. package/dist/gateway/server-discovery.js +2 -2
  289. package/dist/gateway/server-http.js +17 -17
  290. package/dist/gateway/server-methods/agent.js +4 -4
  291. package/dist/gateway/server-methods/agents.js +1 -1
  292. package/dist/gateway/server-methods/channels.js +1 -1
  293. package/dist/gateway/server-methods/chat.js +6 -6
  294. package/dist/gateway/server-methods/commands.js +1 -1
  295. package/dist/gateway/server-methods/devices.js +1 -1
  296. package/dist/gateway/server-methods/doctor.js +2 -2
  297. package/dist/gateway/server-methods/hooks.js +1 -1
  298. package/dist/gateway/server-methods/models.js +1 -1
  299. package/dist/gateway/server-methods/nodes.js +2 -2
  300. package/dist/gateway/server-methods/send.js +4 -4
  301. package/dist/gateway/server-methods/services.js +1 -1
  302. package/dist/gateway/server-methods/sessions.js +12 -12
  303. package/dist/gateway/server-methods/skills.js +2 -2
  304. package/dist/gateway/server-methods/system.js +1 -1
  305. package/dist/gateway/server-methods/tts.js +2 -2
  306. package/dist/gateway/server-methods/usage.js +2 -2
  307. package/dist/gateway/server-node-events.js +5 -5
  308. package/dist/gateway/server-reload-handlers.js +3 -3
  309. package/dist/gateway/server-restart-sentinel.js +3 -3
  310. package/dist/gateway/server.impl.js +19 -19
  311. package/dist/gateway/session-compaction-checkpoints.js +4 -4
  312. package/dist/gateway/session-utils.fs.js +24 -24
  313. package/dist/gateway/session-utils.js +6 -6
  314. package/dist/gateway/sessions-patch.js +2 -2
  315. package/dist/gateway/tools-invoke-http.js +2 -2
  316. package/dist/hooks/bundled-dir.js +4 -4
  317. package/dist/hooks/gmail-setup-utils.js +6 -6
  318. package/dist/hooks/import-url.js +2 -2
  319. package/dist/hooks/loader.js +5 -5
  320. package/dist/hooks/workspace.js +7 -7
  321. package/dist/imessage/monitor/deliver.js +1 -1
  322. package/dist/imessage/monitor/inbound-processing.js +4 -4
  323. package/dist/imessage/monitor/monitor-provider.js +2 -2
  324. package/dist/imessage/send.js +2 -2
  325. package/dist/index.js +1 -1
  326. package/dist/infra/archive.js +17 -17
  327. package/dist/infra/boundary-file-read.js +2 -2
  328. package/dist/infra/boundary-path.js +15 -15
  329. package/dist/infra/brew.js +2 -2
  330. package/dist/infra/control-ui-assets.js +14 -14
  331. package/dist/infra/device-auth-store.js +8 -8
  332. package/dist/infra/device-identity.js +8 -8
  333. package/dist/infra/dotenv.js +2 -2
  334. package/dist/infra/exec-approvals.js +9 -9
  335. package/dist/infra/exec-command-resolution.js +4 -4
  336. package/dist/infra/exec-safe-bin-trust.js +2 -2
  337. package/dist/infra/fased-root.js +5 -5
  338. package/dist/infra/fs-safe.js +14 -14
  339. package/dist/infra/gateway-lock.js +11 -11
  340. package/dist/infra/git-commit.js +5 -5
  341. package/dist/infra/git-root.js +4 -4
  342. package/dist/infra/heartbeat-runner.js +8 -8
  343. package/dist/infra/hosted-runtime-artifact.js +3 -3
  344. package/dist/infra/is-main.js +2 -2
  345. package/dist/infra/json-file.js +7 -7
  346. package/dist/infra/outbound/channel-resolution.js +1 -1
  347. package/dist/infra/outbound/deliver.js +3 -3
  348. package/dist/infra/outbound/delivery-queue.js +16 -16
  349. package/dist/infra/outbound/message-action-params.js +2 -2
  350. package/dist/infra/outbound/message-action-runner.js +4 -4
  351. package/dist/infra/outbound/message.js +3 -3
  352. package/dist/infra/outbound/outbound-session.js +1 -1
  353. package/dist/infra/outbound/payloads.js +1 -1
  354. package/dist/infra/path-env.js +3 -3
  355. package/dist/infra/ports-lsof.js +4 -4
  356. package/dist/infra/provider-usage.auth.js +3 -3
  357. package/dist/infra/safe-open-sync.js +2 -2
  358. package/dist/infra/session-cost-usage.js +9 -9
  359. package/dist/infra/session-maintenance-warning.js +1 -1
  360. package/dist/infra/shell-env.js +2 -2
  361. package/dist/infra/skills-remote.js +1 -1
  362. package/dist/infra/state-migrations.fs.js +6 -6
  363. package/dist/infra/state-migrations.js +23 -23
  364. package/dist/infra/tmp-fased-dir.js +6 -6
  365. package/dist/infra/update-runner.js +1 -1
  366. package/dist/infra/widearea-dns.js +3 -3
  367. package/dist/infra/wsl.js +2 -2
  368. package/dist/light-update-status.js +11 -11
  369. package/dist/line/accounts.js +2 -2
  370. package/dist/line/bot-handlers.js +2 -2
  371. package/dist/line/bot-message-context.js +2 -2
  372. package/dist/line/download.js +3 -3
  373. package/dist/line/monitor.js +3 -3
  374. package/dist/line/webhook-node.js +1 -1
  375. package/dist/llm-slug-generator.js +1 -1
  376. package/dist/logging/config.js +3 -3
  377. package/dist/logging/logger.js +7 -7
  378. package/dist/managed/federation.js +3 -3
  379. package/dist/managed/tunnel.js +3 -3
  380. package/dist/media/fetch.js +1 -1
  381. package/dist/media/input-files.js +2 -2
  382. package/dist/media/store.js +14 -14
  383. package/dist/media-understanding/attachments.js +4 -4
  384. package/dist/media-understanding/providers/google/inline-data.js +1 -1
  385. package/dist/media-understanding/providers/shared.js +1 -1
  386. package/dist/media-understanding/runner.js +3 -3
  387. package/dist/memory/embeddings.js +2 -2
  388. package/dist/memory/internal.js +10 -10
  389. package/dist/memory/manager-sync-ops.js +7 -7
  390. package/dist/memory/repair-executor.js +17 -17
  391. package/dist/node-host/invoke-system-run-plan.js +8 -8
  392. package/dist/node-host/invoke.js +2 -2
  393. package/dist/node-host/runner.js +5 -5
  394. package/dist/pairing/pairing-store.js +3 -3
  395. package/dist/plugin-sdk/{accounts-Bz_2QZSt.js → accounts-DzLdrOVC.js} +1 -1
  396. package/dist/plugin-sdk/{actions-CysoQjk1.js → actions-PhofTgnO.js} +4 -4
  397. package/dist/plugin-sdk/{active-listener-C5ALSs7Y.js → active-listener-C8a74qPO.js} +1 -1
  398. package/dist/plugin-sdk/{allow-list-yqasgPpz.js → allow-list-BYeKk0Sy.js} +2 -2
  399. package/dist/plugin-sdk/{audio-preflight-CKgOmu0p.js → audio-preflight-CARAVcz-.js} +51 -49
  400. package/dist/plugin-sdk/{audit-BFnu5TVB.js → audit-ByK45Q1d.js} +1 -1
  401. package/dist/plugin-sdk/{channel-access-BiWxa3LR.js → channel-access-BEin0yA4.js} +1 -1
  402. package/dist/plugin-sdk/{channel-access-configure-gJvqbbXB.js → channel-access-configure-Di_DoR-Q.js} +1 -1
  403. package/dist/plugin-sdk/{channel-adapters.discord-g8Do3f5N.js → channel-adapters.discord-IOZP8Cv5.js} +1 -1
  404. package/dist/plugin-sdk/channel-plugin-common.d.ts +2 -2
  405. package/dist/plugin-sdk/channel-plugin-common.js +8 -8
  406. package/dist/plugin-sdk/{chunk-CuJIMshx.js → chunk-CwN3c1Fq.js} +1 -1
  407. package/dist/plugin-sdk/{chunk-items-CNyHcNiG.js → chunk-items-DH7ooQBZ.js} +1 -1
  408. package/dist/plugin-sdk/command-status.js +51 -49
  409. package/dist/plugin-sdk/{commands-registry-DwQIFJmL.js → commands-registry-Bea-V_lR.js} +2 -2
  410. package/dist/plugin-sdk/{common-C90EHP1w.js → common-BJPuBxmx.js} +1 -1
  411. package/dist/plugin-sdk/{config-DKNrb8oT.js → config-BxOWD3gF.js} +61 -6
  412. package/dist/plugin-sdk/{pi-embedded-runner-XtyJMQqg.js → config-schema-ChJcPn7x.js} +4818 -445
  413. package/dist/plugin-sdk/device-pair.d.ts +1 -1
  414. package/dist/plugin-sdk/device-pair.js +3 -3
  415. package/dist/plugin-sdk/{device-pairing-J1IH1jFl.js → device-pairing-D2Yq-_U6.js} +1 -1
  416. package/dist/plugin-sdk/{diagnostic-C16gioN6.js → diagnostic-Dfn1iERm.js} +4 -4
  417. package/dist/plugin-sdk/{directory-live-DK_83362.js → directory-live-ClwN5KKq.js} +1 -1
  418. package/dist/plugin-sdk/{directory-live-G7AN8y8N.js → directory-live-DatqU-eS.js} +1 -1
  419. package/dist/plugin-sdk/discord.d.ts +4 -4
  420. package/dist/plugin-sdk/discord.js +36 -37
  421. package/dist/plugin-sdk/{draft-stream-controls-DGYBMJYc.js → draft-stream-controls-D4Tb_iS_.js} +1 -1
  422. package/dist/plugin-sdk/{fetch-RV7QDF43.js → fetch-Cu-ahkie.js} +2 -2
  423. package/dist/plugin-sdk/{fetch-guard-CxXvFYq5.js → fetch-guard-BuYrl6q2.js} +3 -3
  424. package/dist/plugin-sdk/{filesystem-manager-CeSmCA_A.js → filesystem-manager-B9DDPgfU.js} +2 -2
  425. package/dist/plugin-sdk/{fs-safe-DztQeyQe.js → fs-safe-BG-VzVkL.js} +1 -1
  426. package/dist/plugin-sdk/{guilds-n7MMnX1c.js → guilds-BeT3iHHJ.js} +1 -1
  427. package/dist/plugin-sdk/{handle-action-DkfMckah.js → handle-action-Bk-L2J84.js} +29 -29
  428. package/dist/plugin-sdk/{helpers-C1pcZJsv.js → helpers-0E444CR0.js} +74 -2
  429. package/dist/plugin-sdk/{image-ops-BSQmb-17.js → image-ops-BYc-Ol7C.js} +1 -1
  430. package/dist/plugin-sdk/index.d.ts +20 -16
  431. package/dist/plugin-sdk/index.js +63 -4294
  432. package/dist/plugin-sdk/{internal-CC6TMTtc.js → internal-qo16nNU1.js} +1 -1
  433. package/dist/plugin-sdk/json-store.js +6 -6
  434. package/dist/plugin-sdk/{login-YbYyMkkE.js → login-B_At7IVI.js} +3 -3
  435. package/dist/plugin-sdk/{login-qr-DvJw8_2g.js → login-qr-BlSQ8QJF.js} +6 -6
  436. package/dist/plugin-sdk/{manager-DQ1dH8OM.js → manager-VNI6sxbG.js} +11 -11
  437. package/dist/plugin-sdk/{markdown-tables-DrB-IM8r.js → markdown-tables-CpNefu6e.js} +1 -1
  438. package/dist/plugin-sdk/{media-D8pWjqEt.js → media-QBCmvhBQ.js} +4 -4
  439. package/dist/plugin-sdk/{monitor-dqvs6ijC.js → monitor-BhHlerHI.js} +59 -57
  440. package/dist/plugin-sdk/{monitor-B8dLCpFA.js → monitor-C9UczH5N.js} +67 -67
  441. package/dist/plugin-sdk/{openresponses-http-S64mJyy8.js → openresponses-http-CtuFHD5w.js} +51 -49
  442. package/dist/plugin-sdk/{optional-runtime-dependency-Bt_3Yigu.js → optional-runtime-dependency-BaVO1F3i.js} +1 -1
  443. package/dist/plugin-sdk/{outbound-B5ukMdUv.js → outbound-CWrcAWpE.js} +9 -9
  444. package/dist/plugin-sdk/{outbound-attachment-C9oadpUP.js → outbound-attachment-Dhi2Q-_f.js} +2 -2
  445. package/dist/plugin-sdk/{pairing-message-DfIyssV_.d.ts → pairing-message-6XVXW554.d.ts} +1 -1
  446. package/dist/plugin-sdk/{pairing-message-B787pcJI.js → pairing-message-D01_6FkJ.js} +1 -1
  447. package/dist/plugin-sdk/{pairing-store-BdOcH_GA.js → pairing-store-DADXOv-J.js} +2 -2
  448. package/dist/plugin-sdk/{pi-model-discovery-DQdXL_-F.js → pi-model-discovery-D9-CQFS2.js} +1 -1
  449. package/dist/plugin-sdk/{pi-model-discovery-runtime-IwiWDCQ3.js → pi-model-discovery-runtime-DhNNXQgq.js} +5 -5
  450. package/dist/plugin-sdk/{probe-CJ6lN-jD.js → probe-Cyb-DGA3.js} +3 -3
  451. package/dist/plugin-sdk/{probe-CvXWxzag.js → probe-D8JAILir.js} +2 -2
  452. package/dist/plugin-sdk/{probe-DO4M1Qd1.js → probe-Dlk0Jxpw.js} +2 -2
  453. package/dist/plugin-sdk/provider-web-search-config-contract.d.ts +1 -1
  454. package/dist/plugin-sdk/{pw-ai-BFHYmEIx.js → pw-ai-CQG7vp-Y.js} +11 -11
  455. package/dist/plugin-sdk/{qmd-manager-D2LMB27z.js → qmd-manager-DCUE21Kj.js} +5 -5
  456. package/dist/plugin-sdk/{query-expansion-BM7lmqaP.js → query-expansion-Zr9qQixm.js} +3 -3
  457. package/dist/plugin-sdk/{redact-sensitive-url-B0RJQqO7.js → redact-sensitive-url-dPvnFFsK.js} +1 -0
  458. package/dist/plugin-sdk/{replies-BPFt4O-j.js → replies-C_FeIOF4.js} +4 -4
  459. package/dist/plugin-sdk/{resolve-channels-sscr14hU.js → resolve-channels-ChWKWtA9.js} +2 -2
  460. package/dist/plugin-sdk/{probe-DbhD54Aw.js → resolve-channels-zEnvugag.js} +4 -3
  461. package/dist/plugin-sdk/{resolve-outbound-target-BP_JscKT.js → resolve-outbound-target-DD8edEdz.js} +2 -2
  462. package/dist/plugin-sdk/{resolve-route-wp5xq4Ws.js → resolve-route-BPkfG5Pg.js} +1 -1
  463. package/dist/plugin-sdk/{resolve-users-C1sjzEsV.js → resolve-users-BTvjQuui.js} +1 -1
  464. package/dist/plugin-sdk/{resolve-users-B63RqPIO.js → resolve-users-CTzoruIZ.js} +2 -2
  465. package/dist/plugin-sdk/{retry-policy-BTH89onl.js → retry-policy-C0YsRX_6.js} +2 -2
  466. package/dist/plugin-sdk/{runtime-BUpqjZNM.js → runtime-CyTWeylK.js} +5 -5
  467. package/dist/plugin-sdk/{runtime-dependency-B5Fut2tT.js → runtime-dependency-D6tYtvtU.js} +5 -5
  468. package/dist/plugin-sdk/{sandbox-paths-fc-HFGJr.js → sandbox-paths-lj7_EVuA.js} +1 -1
  469. package/dist/plugin-sdk/sat-runtime.d.ts +2 -2
  470. package/dist/plugin-sdk/sat-runtime.js +14 -14
  471. package/dist/plugin-sdk/{send-CRI83FPV.js → send-BedQ8ekw.js} +14 -14
  472. package/dist/plugin-sdk/{send-DUp9GIX8.js → send-BtFuV6zU.js} +9 -9
  473. package/dist/plugin-sdk/{send-DWB5HFdb.js → send-CNxLDNQ9.js} +9 -9
  474. package/dist/plugin-sdk/{send-DGUAXb2b.js → send-FcEJfLTd.js} +6 -6
  475. package/dist/plugin-sdk/{send-zn5KBXIN.js → send-Qckp3h4k.js} +10 -10
  476. package/dist/plugin-sdk/{session-BLyxz03u.js → session-C3Ul4abD.js} +4 -4
  477. package/dist/plugin-sdk/{skill-commands-DCnCOVR_.js → skill-commands-C2CnUTPX.js} +4 -4
  478. package/dist/plugin-sdk/{slack-actions-Dwy-8Zg7.js → slack-actions-CLyEd8FK.js} +25 -25
  479. package/dist/plugin-sdk/{slack-DcXn5HVj.js → slack-bSeSOI9d.js} +72 -71
  480. package/dist/plugin-sdk/slack.d.ts +4 -4
  481. package/dist/plugin-sdk/slack.js +17 -18
  482. package/dist/plugin-sdk/{ssrf-D_4q0mKh.js → ssrf-BZG8Ztod.js} +1 -1
  483. package/dist/plugin-sdk/{sticker-cache-C3YATyKD.js → sticker-cache-DBnS3hHh.js} +4 -4
  484. package/dist/plugin-sdk/{tables-DX84FwPB.js → tables-L5mXZ5y_.js} +2 -2
  485. package/dist/plugin-sdk/{targets-BgSHco9b.js → targets-eG595pY0.js} +2 -2
  486. package/dist/plugin-sdk/{telegram-actions-Dd_iEzYH.js → telegram-actions-D0Kyqy_e.js} +56 -54
  487. package/dist/plugin-sdk/telegram.d.ts +4 -4
  488. package/dist/plugin-sdk/telegram.js +15 -16
  489. package/dist/plugin-sdk/{thread-bindings.lifecycle-DjpMLjhY.js → thread-bindings.lifecycle-C_5BEWmL.js} +3 -3
  490. package/dist/plugin-sdk/{thread-bindings.state-DYYR9qeT.js → thread-bindings.state-DRZAbcUu.js} +4 -4
  491. package/dist/plugin-sdk/{tmp-fased-dir-Bcp1DTSV.d.ts → tmp-fased-dir-BpMLNd4L.d.ts} +1 -1
  492. package/dist/plugin-sdk/{types-BTkcYtOt.d.ts → types-0CsXVmg8.d.ts} +2 -2
  493. package/dist/plugin-sdk/{types-CMoLtViq.d.ts → types-DMLEeE52.d.ts} +1 -1
  494. package/dist/plugin-sdk/{wallet-status-D9UVH6k9.js → wallet-status-2yrXvqSS.js} +7 -7
  495. package/dist/plugin-sdk/{web-BgTy1WeG.js → web-CSRe4zy2.js} +60 -58
  496. package/dist/plugin-sdk/{whatsapp-actions-DISRDbu1.js → whatsapp-actions-CkLkpg8M.js} +23 -23
  497. package/dist/plugin-sdk/{whatsapp-heartbeat-KM3lYpt-.js → whatsapp-heartbeat-DuAE9_88.js} +3 -3
  498. package/dist/plugin-sdk/whatsapp.d.ts +9 -9
  499. package/dist/plugin-sdk/whatsapp.js +18 -19
  500. package/dist/plugin-sdk/{ws-CxmRDbD9.js → ws-CocpWGhl.js} +1 -1
  501. package/dist/plugin-sdk/{wsl-Cw-xOsqF.js → wsl-CXVwPntb.js} +3 -3
  502. package/dist/plugin-sdk/{zod-schema.providers-core-CIzCjXH9.d.ts → zod-schema.providers-core-FaYR6KdD.d.ts} +61 -61
  503. package/dist/plugins/bundled-dir.js +3 -3
  504. package/dist/plugins/config-state.js +1 -0
  505. package/dist/plugins/discovery.js +11 -11
  506. package/dist/plugins/loader.js +13 -13
  507. package/dist/plugins/manifest-registry.js +2 -2
  508. package/dist/plugins/manifest.js +4 -4
  509. package/dist/plugins/path-safety.js +3 -3
  510. package/dist/plugins/providers.js +1 -1
  511. package/dist/plugins/runtime/index.js +12 -12
  512. package/dist/plugins/status-cache.js +9 -9
  513. package/dist/plugins/status.js +1 -1
  514. package/dist/plugins/tools.js +1 -1
  515. package/dist/plugins/update.js +3 -3
  516. package/dist/plugins/web-search-install-catalog.js +3 -3
  517. package/dist/plugins/web-search-providers.runtime.js +1 -1
  518. package/dist/process/command-queue.js +1 -1
  519. package/dist/providers/refresh.js +2 -2
  520. package/dist/providers/registry.js +53 -2
  521. package/dist/secrets/apply.js +16 -16
  522. package/dist/secrets/audit.js +11 -11
  523. package/dist/secrets/shared.js +9 -9
  524. package/dist/security/audit-channel.js +1 -1
  525. package/dist/security/audit-extra.async.js +3 -3
  526. package/dist/security/audit-extra.sync.js +2 -2
  527. package/dist/security/audit.js +4 -4
  528. package/dist/security/dm-policy-shared.js +1 -1
  529. package/dist/security/scan-paths.js +2 -2
  530. package/dist/shared/config-eval.js +2 -2
  531. package/dist/shared/model-thinking.js +4 -1
  532. package/dist/shared/net/redact-sensitive-url.js +1 -0
  533. package/dist/shared/pid-alive.js +2 -2
  534. package/dist/signal/client.js +1 -1
  535. package/dist/signal/index.js +1 -1
  536. package/dist/signal/monitor/access-policy.js +1 -1
  537. package/dist/signal/monitor/event-handler.js +6 -6
  538. package/dist/signal/monitor.js +4 -4
  539. package/dist/signal/send.js +3 -3
  540. package/dist/slack/monitor/auth.js +1 -1
  541. package/dist/slack/monitor/context.js +1 -1
  542. package/dist/slack/monitor/dm-auth.js +1 -1
  543. package/dist/slack/monitor/message-handler/prepare.js +4 -4
  544. package/dist/slack/monitor/provider.js +3 -3
  545. package/dist/slack/monitor/replies.js +1 -1
  546. package/dist/slack/monitor/slash.js +1 -1
  547. package/dist/slack/send.js +1 -1
  548. package/dist/tasks/standing-orders.js +5 -5
  549. package/dist/tasks/task-flow-registry.js +5 -5
  550. package/dist/tasks/task-registry.js +5 -5
  551. package/dist/tasks/workflow-definitions.js +6 -6
  552. package/dist/telegram/bot/helpers.js +2 -2
  553. package/dist/telegram/bot-handlers.js +6 -6
  554. package/dist/telegram/bot-message-context.js +6 -6
  555. package/dist/telegram/bot-message-dispatch.js +2 -2
  556. package/dist/telegram/bot-native-commands.js +4 -4
  557. package/dist/telegram/bot.js +1 -1
  558. package/dist/telegram/dm-access.js +1 -1
  559. package/dist/telegram/group-access.js +1 -1
  560. package/dist/telegram/monitor.js +2 -2
  561. package/dist/telegram/send.js +2 -2
  562. package/dist/telegram/token.js +5 -5
  563. package/dist/telegram/webhook.js +1 -1
  564. package/dist/tts/tts-core.js +1 -1
  565. package/dist/utils.js +5 -5
  566. package/dist/video-generation/dashscope-compatible.js +1 -1
  567. package/dist/wallet/local-socket-signer-broker.js +18 -18
  568. package/dist/wallet/providers/embedded-keystore-adapter.js +6 -6
  569. package/dist/wallet/providers/local-socket-signer-adapter.js +5 -5
  570. package/dist/wallet/wallet-approval-auth.js +5 -5
  571. package/dist/wallet/wallet-audit-log.js +5 -5
  572. package/dist/wallet/wallet-canary.js +1 -1
  573. package/dist/wallet/wallet-custody.js +25 -25
  574. package/dist/wallet/wallet-inbound-events.js +7 -7
  575. package/dist/wallet/wallet-observability.js +5 -5
  576. package/dist/wallet/wallet-policy.js +11 -11
  577. package/dist/wallet/wallet-provider-registry.js +7 -7
  578. package/dist/wallet/wallet-provider-resolver.js +1 -1
  579. package/dist/wallet/wallet-runtime-config.js +3 -3
  580. package/dist/wallet/wallet-secrets-store.js +22 -22
  581. package/dist/wallet/wallet-send-approvals.js +10 -10
  582. package/dist/wallet/wallet-settlement-links.js +5 -5
  583. package/dist/wallet/wallet-status.js +2 -2
  584. package/dist/web/accounts.js +3 -3
  585. package/dist/web/auth-store.js +18 -18
  586. package/dist/web/auto-reply/deliver-reply.js +2 -2
  587. package/dist/web/auto-reply/heartbeat-runner.js +3 -3
  588. package/dist/web/auto-reply/monitor/group-gating.js +1 -1
  589. package/dist/web/auto-reply/monitor/process-message.js +4 -4
  590. package/dist/web/auto-reply/monitor.js +4 -4
  591. package/dist/web/inbound/access-control.js +3 -3
  592. package/dist/web/inbound/monitor.js +2 -2
  593. package/dist/web/media.js +2 -2
  594. package/dist/web/outbound.js +3 -3
  595. package/dist/web/session.js +4 -4
  596. package/dist/wizard/host-security-capability.js +2 -2
  597. package/dist/wizard/onboarding.federation.js +1 -1
  598. package/dist/wizard/onboarding.finalize.js +7 -7
  599. package/dist/wizard/onboarding.host-security.js +7 -7
  600. package/dist/wizard/onboarding.js +8 -8
  601. package/dist/wizard/onboarding.wallet.js +45 -45
  602. package/extensions/acpx/package.json +1 -1
  603. package/extensions/bluebubbles/package.json +1 -1
  604. package/extensions/copilot-proxy/package.json +1 -1
  605. package/extensions/diagnostics-otel/package.json +1 -1
  606. package/extensions/fased-federation/package.json +1 -1
  607. package/extensions/google-gemini-cli-auth/package.json +1 -1
  608. package/extensions/imessage/package.json +1 -1
  609. package/extensions/irc/package.json +1 -1
  610. package/extensions/line/package.json +1 -1
  611. package/extensions/llm-task/package.json +1 -1
  612. package/extensions/lobster/package.json +1 -1
  613. package/extensions/matrix/CHANGELOG.md +12 -0
  614. package/extensions/matrix/package.json +1 -1
  615. package/extensions/mattermost/package.json +1 -1
  616. package/extensions/memory-core/package.json +2 -2
  617. package/extensions/memory-lancedb/package.json +1 -1
  618. package/extensions/minimax-portal-auth/package.json +1 -1
  619. package/extensions/msteams/CHANGELOG.md +12 -0
  620. package/extensions/msteams/package.json +1 -1
  621. package/extensions/nextcloud-talk/package.json +1 -1
  622. package/extensions/nostr/CHANGELOG.md +12 -0
  623. package/extensions/nostr/package.json +1 -1
  624. package/extensions/open-prose/package.json +1 -1
  625. package/extensions/sat-mining/index.ts +13 -1
  626. package/extensions/sat-mining/package.json +1 -1
  627. package/extensions/sat-mining/src/epoch-service.ts +16 -0
  628. package/extensions/sat-mining/src/round-watcher.ts +21 -0
  629. package/extensions/sat-mining/src/rpc-read.ts +9 -2
  630. package/extensions/sat-mining/src/runtime.ts +5 -1
  631. package/extensions/signal/package.json +1 -1
  632. package/extensions/synology-chat/package.json +1 -1
  633. package/extensions/tlon/package.json +1 -1
  634. package/extensions/twitch/CHANGELOG.md +12 -0
  635. package/extensions/twitch/package.json +1 -1
  636. package/extensions/voice-call/CHANGELOG.md +12 -0
  637. package/extensions/voice-call/package.json +1 -1
  638. package/extensions/zalo/CHANGELOG.md +12 -0
  639. package/extensions/zalo/package.json +1 -1
  640. package/extensions/zalouser/CHANGELOG.md +12 -0
  641. package/extensions/zalouser/package.json +1 -1
  642. package/package.json +1 -1
  643. package/dist/control-ui/assets/chat-model-ref-DV2P__mw.js +0 -2
  644. package/dist/plugin-sdk/links-D5ecKoG9.js +0 -74
  645. package/dist/plugin-sdk/media-payload-DpYEcV-X.js +0 -18
  646. package/dist/plugin-sdk/resolve-channels-B-dUtZYa.js +0 -4
  647. package/dist/plugin-sdk/resolve-utils-DrvLA82C.js +0 -136
  648. /package/dist/plugin-sdk/{blocks-input-DdQwSVtP.js → blocks-input-Dcitfh7h.js} +0 -0
  649. /package/dist/plugin-sdk/{channel-activity-B7MIaDei.js → channel-activity-Cg1xRoc2.js} +0 -0
  650. /package/dist/plugin-sdk/{channel-core-CMPoGCik.js → channel-core-BOkyXXLa.js} +0 -0
  651. /package/dist/plugin-sdk/{client-BTUzO_8g.js → client-D2N7hqVu.js} +0 -0
  652. /package/dist/plugin-sdk/{command-poll-backoff-CBq0jVRw.js → command-poll-backoff-NAePk3eL.js} +0 -0
  653. /package/dist/plugin-sdk/{date-time-Bbp5JvNw.js → date-time-CE3Uer3C.js} +0 -0
  654. /package/dist/plugin-sdk/{diagnostic-session-state-B-9PL5r7.js → diagnostic-session-state-HO94DMou.js} +0 -0
  655. /package/dist/plugin-sdk/{draft-stream-loop-DZ1OAyye.js → draft-stream-loop-CKyHn8IX.js} +0 -0
  656. /package/dist/plugin-sdk/{fetch-headers-DvXyXtoI.js → fetch-headers-my7hgV2G.js} +0 -0
  657. /package/dist/plugin-sdk/{fetch-timeout-jOIu9Xud.js → fetch-timeout-l_6RdoMw.js} +0 -0
  658. /package/dist/plugin-sdk/{gateway-registry-C-MTEdvG.js → gateway-registry-DFsoY6C0.js} +0 -0
  659. /package/dist/plugin-sdk/{github-copilot-token-Dgug856m.js → github-copilot-token-CUK__1s1.js} +0 -0
  660. /package/dist/plugin-sdk/{inbound-context-BNCTzgjG.js → inbound-context-BFnIdcqI.js} +0 -0
  661. /package/dist/plugin-sdk/{ip-BkeyFRJr.js → ip-C70a-YlD.js} +0 -0
  662. /package/dist/plugin-sdk/{memory-search-DHSeU4pJ.js → memory-search-C3C0bD2H.js} +0 -0
  663. /package/dist/plugin-sdk/{pairing-token-HQpaqod5.js → pairing-token-N_6Jbt1L.js} +0 -0
  664. /package/dist/plugin-sdk/{path-alias-guards-BlIJ0AmG.js → path-alias-guards-Dg3gU-MA.js} +0 -0
  665. /package/dist/plugin-sdk/{paths-B88DQEK8.js → paths-CTZ2RS_E.js} +0 -0
  666. /package/dist/plugin-sdk/{polls-Dy1NsYKT.js → polls-DQrR-qT3.js} +0 -0
  667. /package/dist/plugin-sdk/{proxy-R5TjOIFS.js → proxy-7xs_rsnV.js} +0 -0
  668. /package/dist/plugin-sdk/{qmd-scope-C9tRnohc.js → qmd-scope-D1sSG_Rx.js} +0 -0
  669. /package/dist/plugin-sdk/{redact-CwCz68Mi.js → redact-Bm8vu_ju.js} +0 -0
  670. /package/dist/plugin-sdk/{redact-identifier-CDvAeiFm.js → redact-identifier-Q3tkvxhm.js} +0 -0
  671. /package/dist/plugin-sdk/{render-K7NwXvVu.js → render-Bwu_WxwA.js} +0 -0
  672. /package/dist/plugin-sdk/{reply-prefix-CbPHNXlm.js → reply-prefix-Bqzm6DC1.js} +0 -0
  673. /package/dist/plugin-sdk/{reply-reference-CWEIswqw.js → reply-reference-BkbK_DWT.js} +0 -0
  674. /package/dist/plugin-sdk/{retry-DycQ4ymF.js → retry-DstNBhDW.js} +0 -0
  675. /package/dist/plugin-sdk/{run-with-concurrency-CLARJMM7.js → run-with-concurrency-BsDJWzgM.js} +0 -0
  676. /package/dist/plugin-sdk/{secure-random-C2EhANj2.js → secure-random-Bl-AVLVb.js} +0 -0
  677. /package/dist/plugin-sdk/{shared-V35XNAbz.js → shared-clhhbWN3.js} +0 -0
  678. /package/dist/plugin-sdk/{tailscale-status-BGBRraZW.js → tailscale-status-ClsquRGs.js} +0 -0
  679. /package/dist/plugin-sdk/{target-errors-C0yNDbGS.js → target-errors-C_SVKoEv.js} +0 -0
  680. /package/dist/plugin-sdk/{targets-CuTZl1mO.js → targets-BDvvnlph.js} +0 -0
  681. /package/dist/plugin-sdk/{tokens-Do_JU4Rh.js → tokens-BvtlOzVP.js} +0 -0
  682. /package/dist/plugin-sdk/{tool-loop-detection-P5u2k0_f.js → tool-loop-detection-CWphm1k_.js} +0 -0
  683. /package/dist/plugin-sdk/{transcript-events-NZiMKWBK.js → transcript-events-BJQWUdmU.js} +0 -0
  684. /package/dist/plugin-sdk/{ui-KGr1WRXC.js → ui-e020ouhJ.js} +0 -0
  685. /package/dist/plugin-sdk/{with-timeout-Dl513q34.js → with-timeout-BYrRAYFV.js} +0 -0
@@ -1,7 +1,7 @@
1
1
  import { logVerbose } from "../globals.js";
2
2
  import { upsertChannelPairingRequest } from "../pairing/pairing-store.js";
3
- import { resolveSenderAllowMatch } from "./bot-access.js";
4
3
  import { buildPairingReply } from "../pairing/pairing-messages.js";
4
+ import { resolveSenderAllowMatch } from "./bot-access.js";
5
5
  import { withTelegramApiErrorLogging } from "./api-logging.js";
6
6
 
7
7
  //#region src/telegram/dm-access.ts
@@ -1,6 +1,6 @@
1
+ import { resolveOpenProviderRuntimeGroupPolicy } from "../config/runtime-group-policy.js";
1
2
  import { firstDefined } from "../channels/allow-from.js";
2
3
  import { isSenderAllowed } from "./bot-access.js";
3
- import { resolveOpenProviderRuntimeGroupPolicy } from "../config/runtime-group-policy.js";
4
4
 
5
5
  //#region src/telegram/group-access.ts
6
6
  const evaluateTelegramGroupBaseAccess = (params) => {
@@ -3,10 +3,10 @@ import { resolveAgentMaxConcurrent } from "../config/agent-limits.js";
3
3
  import { loadConfig } from "../config/io.js";
4
4
  import "../config/config.js";
5
5
  import { resolveTelegramAccount } from "./accounts.js";
6
+ import { waitForAbortSignal } from "../infra/abort-signal.js";
7
+ import { computeBackoff, sleepWithAbort } from "../infra/backoff.js";
6
8
  import { formatDurationPrecise } from "../infra/format-time/format-duration.js";
7
9
  import { registerUnhandledRejectionHandler } from "../infra/unhandled-rejections.js";
8
- import { computeBackoff, sleepWithAbort } from "../infra/backoff.js";
9
- import { waitForAbortSignal } from "../infra/abort-signal.js";
10
10
  import { withTelegramApiErrorLogging } from "./api-logging.js";
11
11
  import { isRecoverableTelegramNetworkError } from "./network-errors.js";
12
12
  import { makeProxyFetch } from "./proxy.js";
@@ -5,14 +5,14 @@ import { formatErrorMessage, formatUncaughtError } from "../infra/errors.js";
5
5
  import { loadConfig } from "../config/io.js";
6
6
  import "../config/config.js";
7
7
  import { resolveTelegramAccount } from "./accounts.js";
8
+ import { normalizeTelegramChatId, normalizeTelegramLookupTarget, parseTelegramTarget } from "./targets.js";
8
9
  import { mediaKindFromMime } from "../media/constants.js";
9
10
  import { isGifMedia } from "../media/mime.js";
10
11
  import { resolveMarkdownTableMode } from "../config/markdown-tables.js";
11
12
  import { loadWebMedia } from "../web/media.js";
12
- import { normalizeTelegramChatId, normalizeTelegramLookupTarget, parseTelegramTarget } from "./targets.js";
13
+ import { recordChannelActivity } from "../infra/channel-activity.js";
13
14
  import { normalizePollInput } from "../polls.js";
14
15
  import { buildTelegramThreadParams } from "./bot/helpers.js";
15
- import { recordChannelActivity } from "../infra/channel-activity.js";
16
16
  import { isDiagnosticFlagEnabled } from "../infra/diagnostic-flags.js";
17
17
  import { createTelegramRetryRunner } from "../infra/retry-policy.js";
18
18
  import { withTelegramApiErrorLogging } from "./api-logging.js";
@@ -1,6 +1,6 @@
1
1
  import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "../routing/account-id.js";
2
2
  import "../routing/session-key.js";
3
- import fs from "node:fs";
3
+ import syncFs from "node:fs";
4
4
 
5
5
  //#region src/telegram/token.ts
6
6
  function resolveTelegramToken(cfg, opts = {}) {
@@ -21,7 +21,7 @@ function resolveTelegramToken(cfg, opts = {}) {
21
21
  const accountCfg = resolveAccountCfg(accountId !== DEFAULT_ACCOUNT_ID ? accountId : DEFAULT_ACCOUNT_ID);
22
22
  const accountTokenFile = accountCfg?.tokenFile?.trim();
23
23
  if (accountTokenFile) {
24
- if (!fs.existsSync(accountTokenFile)) {
24
+ if (!syncFs.existsSync(accountTokenFile)) {
25
25
  opts.logMissingFile?.(`channels.telegram.accounts.${accountId}.tokenFile not found: ${accountTokenFile}`);
26
26
  return {
27
27
  token: "",
@@ -29,7 +29,7 @@ function resolveTelegramToken(cfg, opts = {}) {
29
29
  };
30
30
  }
31
31
  try {
32
- const token = fs.readFileSync(accountTokenFile, "utf-8").trim();
32
+ const token = syncFs.readFileSync(accountTokenFile, "utf-8").trim();
33
33
  if (token) {
34
34
  return {
35
35
  token,
@@ -58,7 +58,7 @@ function resolveTelegramToken(cfg, opts = {}) {
58
58
  const allowEnv = accountId === DEFAULT_ACCOUNT_ID;
59
59
  const tokenFile = telegramCfg?.tokenFile?.trim();
60
60
  if (tokenFile && allowEnv) {
61
- if (!fs.existsSync(tokenFile)) {
61
+ if (!syncFs.existsSync(tokenFile)) {
62
62
  opts.logMissingFile?.(`channels.telegram.tokenFile not found: ${tokenFile}`);
63
63
  return {
64
64
  token: "",
@@ -66,7 +66,7 @@ function resolveTelegramToken(cfg, opts = {}) {
66
66
  };
67
67
  }
68
68
  try {
69
- const token = fs.readFileSync(tokenFile, "utf-8").trim();
69
+ const token = syncFs.readFileSync(tokenFile, "utf-8").trim();
70
70
  if (token) {
71
71
  return {
72
72
  token,
@@ -1,8 +1,8 @@
1
1
  import { defaultRuntime } from "../runtime.js";
2
2
  import { formatErrorMessage } from "../infra/errors.js";
3
3
  import { isDiagnosticsEnabled } from "../infra/diagnostic-events.js";
4
- import { readJsonBodyWithLimit } from "../infra/http-body.js";
5
4
  import { logWebhookError, logWebhookProcessed, logWebhookReceived, startDiagnosticHeartbeat, stopDiagnosticHeartbeat } from "../logging/diagnostic.js";
5
+ import { readJsonBodyWithLimit } from "../infra/http-body.js";
6
6
  import { withTelegramApiErrorLogging } from "./api-logging.js";
7
7
  import { resolveTelegramAllowedUpdates } from "./allowed-updates.js";
8
8
  import { createTelegramBot } from "./bot.js";
@@ -1,7 +1,7 @@
1
1
  import { getApiKeyForModel, requireApiKey } from "../agents/model-auth.js";
2
2
  import { buildModelAliasIndex, resolveDefaultModelForAgent, resolveModelRefFromString } from "../agents/model-selection.js";
3
- import { resolveModel } from "../agents/pi-embedded-runner/model.js";
4
3
  import { importOptionalRuntimeDependency } from "../infra/optional-runtime-dependency.js";
4
+ import { resolveModel } from "../agents/pi-embedded-runner/model.js";
5
5
  import { rmSync } from "node:fs";
6
6
  import { completeSimple } from "@mariozechner/pi-ai/compat";
7
7
 
package/dist/utils.js CHANGED
@@ -2,20 +2,20 @@ import { expandHomePrefix, resolveEffectiveHomeDir, resolveRequiredHomeDir } fro
2
2
  import { resolveOAuthDir } from "./config/paths.js";
3
3
  import { logVerbose, shouldLogVerbose } from "./globals.js";
4
4
  import { isPlainObject } from "./infra/plain-object.js";
5
- import fs from "node:fs";
5
+ import syncFs from "node:fs";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
8
8
 
9
9
  //#region src/utils.ts
10
10
  async function ensureDir(dir) {
11
- await fs.promises.mkdir(dir, { recursive: true });
11
+ await syncFs.promises.mkdir(dir, { recursive: true });
12
12
  }
13
13
  /**
14
14
  * Check if a file or directory exists at the given path.
15
15
  */
16
16
  async function pathExists(targetPath) {
17
17
  try {
18
- await fs.promises.access(targetPath);
18
+ await syncFs.promises.access(targetPath);
19
19
  return true;
20
20
  } catch {
21
21
  return false;
@@ -129,7 +129,7 @@ function readLidReverseMapping(lid, opts) {
129
129
  for (const dir of mappingDirs) {
130
130
  const mappingPath = path.join(dir, mappingFilename);
131
131
  try {
132
- const data = fs.readFileSync(mappingPath, "utf8");
132
+ const data = syncFs.readFileSync(mappingPath, "utf8");
133
133
  const phone = JSON.parse(data);
134
134
  if (phone === null || phone === undefined) {
135
135
  continue;
@@ -250,7 +250,7 @@ function resolveConfigDir(env = process.env, homedir = os.homedir) {
250
250
  }
251
251
  const newDir = path.join(resolveRequiredHomeDir(env, homedir), ".fased");
252
252
  try {
253
- const hasNew = fs.existsSync(newDir);
253
+ const hasNew = syncFs.existsSync(newDir);
254
254
  if (hasNew) {
255
255
  return newDir;
256
256
  }
@@ -1,5 +1,5 @@
1
- import { redactSensitiveUrl } from "../shared/net/redact-sensitive-url.js";
2
1
  import { fetchWithTimeout } from "../utils/fetch-timeout.js";
2
+ import { redactSensitiveUrl } from "../shared/net/redact-sensitive-url.js";
3
3
  import { assertOkOrThrowHttpError } from "../media-understanding/providers/shared.js";
4
4
 
5
5
  //#region src/video-generation/dashscope-compatible.ts
@@ -1,8 +1,8 @@
1
- import { parseLocalSocketSignerRequest, parseLocalSocketSignerResponseEnvelope } from "./local-socket-signer-protocol.js";
2
- import { redactWalletDiagnosticText, walletDiagnosticErrorMessage } from "./wallet-redaction.js";
3
1
  import { resolveLocalSignerBackendSocketPath, resolveLocalSignerSidecarPaths, resolveLocalSignerSocketPath } from "./wallet-runtime-config.js";
2
+ import { redactWalletDiagnosticText, walletDiagnosticErrorMessage } from "./wallet-redaction.js";
3
+ import { parseLocalSocketSignerRequest, parseLocalSocketSignerResponseEnvelope } from "./local-socket-signer-protocol.js";
4
4
  import { requestJsonlSocket } from "../infra/jsonl-socket.js";
5
- import fs from "node:fs";
5
+ import syncFs from "node:fs";
6
6
  import path from "node:path";
7
7
  import net from "node:net";
8
8
 
@@ -34,15 +34,15 @@ function appendAuditLine(auditLog, entry, fileMode) {
34
34
  return;
35
35
  }
36
36
  try {
37
- fs.mkdirSync(path.dirname(auditLog), {
37
+ syncFs.mkdirSync(path.dirname(auditLog), {
38
38
  recursive: true,
39
39
  mode: fileMode === 432 ? 504 : 448
40
40
  });
41
- fs.appendFileSync(auditLog, `${JSON.stringify(entry)}\n`, {
41
+ syncFs.appendFileSync(auditLog, `${JSON.stringify(entry)}\n`, {
42
42
  encoding: "utf8",
43
43
  mode: 384
44
44
  });
45
- fs.chmodSync(auditLog, fileMode);
45
+ syncFs.chmodSync(auditLog, fileMode);
46
46
  } catch {}
47
47
  }
48
48
  function writeJsonLine(socket, payload) {
@@ -138,12 +138,12 @@ function handleConnection(socket, options) {
138
138
  });
139
139
  }
140
140
  function ensurePidLock(pidFile, fileMode) {
141
- fs.mkdirSync(path.dirname(pidFile), {
141
+ syncFs.mkdirSync(path.dirname(pidFile), {
142
142
  recursive: true,
143
143
  mode: 448
144
144
  });
145
- if (fs.existsSync(pidFile)) {
146
- const raw = fs.readFileSync(pidFile, "utf8").trim();
145
+ if (syncFs.existsSync(pidFile)) {
146
+ const raw = syncFs.readFileSync(pidFile, "utf8").trim();
147
147
  const pid = Number.parseInt(raw, 10);
148
148
  if (Number.isFinite(pid) && pid > 1) {
149
149
  try {
@@ -151,20 +151,20 @@ function ensurePidLock(pidFile, fileMode) {
151
151
  throw new Error(`signer broker already running (pid=${pid})`);
152
152
  } catch (err) {
153
153
  if (!(err instanceof Error) || !String(err.message).includes("already running")) {
154
- fs.rmSync(pidFile, { force: true });
154
+ syncFs.rmSync(pidFile, { force: true });
155
155
  } else {
156
156
  throw err;
157
157
  }
158
158
  }
159
159
  } else {
160
- fs.rmSync(pidFile, { force: true });
160
+ syncFs.rmSync(pidFile, { force: true });
161
161
  }
162
162
  }
163
- fs.writeFileSync(pidFile, `${process.pid}\n`, {
163
+ syncFs.writeFileSync(pidFile, `${process.pid}\n`, {
164
164
  encoding: "utf8",
165
165
  mode: fileMode
166
166
  });
167
- fs.chmodSync(pidFile, fileMode);
167
+ syncFs.chmodSync(pidFile, fileMode);
168
168
  }
169
169
  async function startLocalSocketSignerBroker(params) {
170
170
  const env = process.env;
@@ -183,11 +183,11 @@ async function startLocalSocketSignerBroker(params) {
183
183
  readOnly,
184
184
  fileMode
185
185
  };
186
- fs.mkdirSync(path.dirname(socketPath), {
186
+ syncFs.mkdirSync(path.dirname(socketPath), {
187
187
  recursive: true,
188
188
  mode: fileMode === 432 ? 504 : 448
189
189
  });
190
- fs.rmSync(socketPath, { force: true });
190
+ syncFs.rmSync(socketPath, { force: true });
191
191
  ensurePidLock(pidFile, fileMode);
192
192
  const server = net.createServer((socket) => {
193
193
  handleConnection(socket, options);
@@ -196,13 +196,13 @@ async function startLocalSocketSignerBroker(params) {
196
196
  server.once("error", reject);
197
197
  server.listen(socketPath, () => resolve());
198
198
  });
199
- fs.chmodSync(socketPath, fileMode);
199
+ syncFs.chmodSync(socketPath, fileMode);
200
200
  const close = async () => {
201
201
  await new Promise((resolve) => {
202
202
  server.close(() => resolve());
203
203
  });
204
- fs.rmSync(socketPath, { force: true });
205
- fs.rmSync(pidFile, { force: true });
204
+ syncFs.rmSync(socketPath, { force: true });
205
+ syncFs.rmSync(pidFile, { force: true });
206
206
  };
207
207
  const shutdown = () => {
208
208
  void close().finally(() => process.exit(0));
@@ -1,9 +1,9 @@
1
1
  import { fetchSolanaMintInfoViaRpc } from "../solana-assets.js";
2
- import { buildCreateAssociatedTokenAccountIdempotentInstruction, buildTransferCheckedInstruction, deriveAssociatedTokenAddress, toTransactionInstruction } from "../solana-spl-transfer.js";
3
2
  import { WalletProviderError } from "../wallet-provider-adapter.js";
3
+ import { buildCreateAssociatedTokenAccountIdempotentInstruction, buildTransferCheckedInstruction, deriveAssociatedTokenAddress, toTransactionInstruction } from "../solana-spl-transfer.js";
4
4
  import { walletDiagnosticErrorString } from "../wallet-redaction.js";
5
5
  import { createRequire } from "node:module";
6
- import fs from "node:fs";
6
+ import syncFs from "node:fs";
7
7
  import { createDecipheriv, randomUUID, scryptSync } from "node:crypto";
8
8
 
9
9
  //#region src/wallet/providers/embedded-keystore-adapter.ts
@@ -118,7 +118,7 @@ var EmbeddedKeystoreAdapter = class {
118
118
  details: "missing embedded keystore config (FASED_WALLET_KEYSTORE_PATH, FASED_WALLET_PASSPHRASE, FASED_WALLET_[EMBEDDED_KEYSTORE_]RPC_URL)"
119
119
  };
120
120
  }
121
- if (!fs.existsSync(this.keystorePath)) {
121
+ if (!syncFs.existsSync(this.keystorePath)) {
122
122
  return {
123
123
  ok: false,
124
124
  provider: this.id,
@@ -128,7 +128,7 @@ var EmbeddedKeystoreAdapter = class {
128
128
  };
129
129
  }
130
130
  try {
131
- const raw = await fs.promises.readFile(this.keystorePath, "utf8");
131
+ const raw = await syncFs.promises.readFile(this.keystorePath, "utf8");
132
132
  if (detectKeystoreType(raw) !== "solana-envelope") {
133
133
  throw new Error("keystore file is not a Solana keystore envelope");
134
134
  }
@@ -165,7 +165,7 @@ var EmbeddedKeystoreAdapter = class {
165
165
  return result;
166
166
  }
167
167
  try {
168
- const raw = await fs.promises.readFile(this.keystorePath, "utf8");
168
+ const raw = await syncFs.promises.readFile(this.keystorePath, "utf8");
169
169
  const type = detectKeystoreType(raw);
170
170
  if (type === "solana-envelope") {
171
171
  if (this.supportsChain("solana")) {
@@ -375,7 +375,7 @@ var EmbeddedKeystoreAdapter = class {
375
375
  });
376
376
  }
377
377
  this.solanaKeypairPromise ??= (async () => {
378
- const raw = await fs.promises.readFile(this.keystorePath, "utf8");
378
+ const raw = await syncFs.promises.readFile(this.keystorePath, "utf8");
379
379
  const envelope = parseSolanaKeystoreEnvelope(raw);
380
380
  if (!envelope) {
381
381
  throw new WalletProviderError({
@@ -1,10 +1,10 @@
1
+ import { ensureWalletStateDir } from "../wallet-runtime-config.js";
1
2
  import { fetchSolanaMintInfoViaRpc } from "../solana-assets.js";
2
- import { parseLocalSocketSignerResponseEnvelope, validateLocalSocketSignerResult } from "../local-socket-signer-protocol.js";
3
- import { buildCreateAssociatedTokenAccountIdempotentInstruction, buildTransferCheckedInstruction, deriveAssociatedTokenAddress } from "../solana-spl-transfer.js";
4
3
  import { WalletProviderError } from "../wallet-provider-adapter.js";
4
+ import { buildCreateAssociatedTokenAccountIdempotentInstruction, buildTransferCheckedInstruction, deriveAssociatedTokenAddress } from "../solana-spl-transfer.js";
5
5
  import { redactWalletDiagnosticText, walletDiagnosticErrorMessage, walletDiagnosticErrorString } from "../wallet-redaction.js";
6
- import { ensureWalletStateDir } from "../wallet-runtime-config.js";
7
- import fs from "node:fs";
6
+ import { parseLocalSocketSignerResponseEnvelope, validateLocalSocketSignerResult } from "../local-socket-signer-protocol.js";
7
+ import syncFs from "node:fs";
8
8
  import path from "node:path";
9
9
  import net from "node:net";
10
10
 
@@ -29,7 +29,7 @@ function signerTimeoutFor(payload) {
29
29
  function assertSecureLocalSignerSocket(socketPath) {
30
30
  let stat;
31
31
  try {
32
- stat = fs.lstatSync(socketPath);
32
+ stat = syncFs.lstatSync(socketPath);
33
33
  } catch (err) {
34
34
  throw new WalletProviderError({
35
35
  code: "wallet_provider_unavailable",
@@ -1,5 +1,5 @@
1
1
  import { ensureWalletStateDir } from "./wallet-runtime-config.js";
2
- import fs from "node:fs";
2
+ import syncFs from "node:fs";
3
3
  import path from "node:path";
4
4
  import { createHash, createPublicKey, randomBytes, timingSafeEqual, verify } from "node:crypto";
5
5
 
@@ -163,7 +163,7 @@ function normalizeState(input) {
163
163
  }
164
164
  function loadState(env = process.env) {
165
165
  const statePath = resolveStatePath(env);
166
- if (!fs.existsSync(statePath)) {
166
+ if (!syncFs.existsSync(statePath)) {
167
167
  return {
168
168
  version: 2,
169
169
  passkeys: [],
@@ -172,7 +172,7 @@ function loadState(env = process.env) {
172
172
  };
173
173
  }
174
174
  try {
175
- const raw = fs.readFileSync(statePath, "utf8");
175
+ const raw = syncFs.readFileSync(statePath, "utf8");
176
176
  return normalizeState(JSON.parse(raw));
177
177
  } catch {
178
178
  return {
@@ -185,12 +185,12 @@ function loadState(env = process.env) {
185
185
  }
186
186
  function saveState(state, env = process.env) {
187
187
  const statePath = resolveStatePath(env);
188
- fs.writeFileSync(statePath, `${JSON.stringify(state, null, 2)}\n`, {
188
+ syncFs.writeFileSync(statePath, `${JSON.stringify(state, null, 2)}\n`, {
189
189
  encoding: "utf8",
190
190
  mode: 384
191
191
  });
192
192
  try {
193
- fs.chmodSync(statePath, 384);
193
+ syncFs.chmodSync(statePath, 384);
194
194
  } catch {}
195
195
  }
196
196
  function pruneState(state) {
@@ -1,5 +1,5 @@
1
1
  import { ensureWalletStateDir } from "./wallet-runtime-config.js";
2
- import fs from "node:fs";
2
+ import syncFs from "node:fs";
3
3
  import { randomBytes } from "node:crypto";
4
4
 
5
5
  //#region src/wallet/wallet-audit-log.ts
@@ -15,22 +15,22 @@ function appendWalletAuditEntry(params) {
15
15
  actor: params.actor?.trim() || "system",
16
16
  details: params.details ?? {}
17
17
  };
18
- fs.appendFileSync(paths.auditLogPath, `${JSON.stringify(entry)}\n`, {
18
+ syncFs.appendFileSync(paths.auditLogPath, `${JSON.stringify(entry)}\n`, {
19
19
  encoding: "utf8",
20
20
  mode: 384
21
21
  });
22
22
  try {
23
- fs.chmodSync(paths.auditLogPath, 384);
23
+ syncFs.chmodSync(paths.auditLogPath, 384);
24
24
  } catch {}
25
25
  return entry;
26
26
  }
27
27
  function readWalletAuditEntries(params) {
28
28
  const paths = ensureWalletStateDir(params?.env ?? process.env);
29
- if (!fs.existsSync(paths.auditLogPath)) {
29
+ if (!syncFs.existsSync(paths.auditLogPath)) {
30
30
  return [];
31
31
  }
32
32
  const limit = Math.max(1, Math.min(500, params?.limit ?? 100));
33
- const raw = fs.readFileSync(paths.auditLogPath, "utf8");
33
+ const raw = syncFs.readFileSync(paths.auditLogPath, "utf8");
34
34
  const lines = raw.split("\n").map((line) => line.trim()).filter(Boolean);
35
35
  const out = [];
36
36
  for (let i = lines.length - 1; i >= 0; i -= 1) {
@@ -1,5 +1,5 @@
1
- import { redactWalletDiagnosticText, walletDiagnosticErrorString } from "./wallet-redaction.js";
2
1
  import { readWalletProviderRegistry } from "./wallet-provider-registry.js";
2
+ import { redactWalletDiagnosticText, walletDiagnosticErrorString } from "./wallet-redaction.js";
3
3
  import { createWalletProviderAdapter } from "./wallet-provider-resolver.js";
4
4
  import { readWalletAuditEntries } from "./wallet-audit-log.js";
5
5
  import { getWalletSettlementLinkByRequestId } from "./wallet-settlement-links.js";
@@ -1,12 +1,12 @@
1
- import { tryResolveSatRuntimeIds } from "../config/sat-runtime-ids.js";
2
- import { walletDiagnosticErrorMessage } from "./wallet-redaction.js";
3
1
  import { ensureWalletStateDir, resolveWalletRuntimeConfig } from "./wallet-runtime-config.js";
4
- import { lockLocalSignerCustody, unlockLocalSignerCustody } from "./local-socket-signer-custody.js";
5
- import { consumeWalletApprovalGrant, resolveWalletApprovalAuthMode } from "./wallet-approval-auth.js";
6
2
  import { readWalletProviderRegistry, resolveWalletUserRole } from "./wallet-provider-registry.js";
3
+ import { tryResolveSatRuntimeIds } from "../config/sat-runtime-ids.js";
7
4
  import { applyWalletPolicyConfig, resolveWalletRolePolicyProfile } from "./wallet-policy.js";
5
+ import { walletDiagnosticErrorMessage } from "./wallet-redaction.js";
8
6
  import { resolveWalletProviderId } from "./wallet-provider-resolver.js";
9
- import fs from "node:fs";
7
+ import { consumeWalletApprovalGrant, resolveWalletApprovalAuthMode } from "./wallet-approval-auth.js";
8
+ import { lockLocalSignerCustody, unlockLocalSignerCustody } from "./local-socket-signer-custody.js";
9
+ import syncFs from "node:fs";
10
10
  import path from "node:path";
11
11
  import { createHash, randomBytes, timingSafeEqual } from "node:crypto";
12
12
 
@@ -164,33 +164,33 @@ function resolveCustodyShareStatePath(walletId, env = process.env) {
164
164
  }
165
165
  function locateCustodyStatePath(walletId, env = process.env) {
166
166
  const scopedPath = resolveCustodyStatePath(walletId, env);
167
- if (fs.existsSync(scopedPath)) {
167
+ if (syncFs.existsSync(scopedPath)) {
168
168
  return scopedPath;
169
169
  }
170
170
  const legacyPath = resolveLegacyCustodyStatePath(env);
171
- return fs.existsSync(legacyPath) ? legacyPath : scopedPath;
171
+ return syncFs.existsSync(legacyPath) ? legacyPath : scopedPath;
172
172
  }
173
173
  function locateCustodyShareStatePath(walletId, env = process.env) {
174
174
  const scopedPath = resolveCustodyShareStatePath(walletId, env);
175
- if (fs.existsSync(scopedPath)) {
175
+ if (syncFs.existsSync(scopedPath)) {
176
176
  return scopedPath;
177
177
  }
178
178
  const legacyPath = resolveLegacyCustodyShareStatePath(env);
179
- return fs.existsSync(legacyPath) ? legacyPath : scopedPath;
179
+ return syncFs.existsSync(legacyPath) ? legacyPath : scopedPath;
180
180
  }
181
181
  function listCustodyStateTargets(env = process.env) {
182
182
  const walletPaths = ensureWalletStateDir(env);
183
183
  const custodyRoot = path.join(walletPaths.rootDir, "custody");
184
184
  const targets = new Set();
185
- if (fs.existsSync(custodyRoot)) {
186
- for (const entry of fs.readdirSync(custodyRoot, { withFileTypes: true })) {
185
+ if (syncFs.existsSync(custodyRoot)) {
186
+ for (const entry of syncFs.readdirSync(custodyRoot, { withFileTypes: true })) {
187
187
  if (entry.isDirectory() && entry.name.trim()) {
188
188
  targets.add(entry.name.trim());
189
189
  }
190
190
  }
191
191
  }
192
192
  const out = [...targets];
193
- if (fs.existsSync(resolveLegacyCustodyStatePath(env)) || out.length === 0) {
193
+ if (syncFs.existsSync(resolveLegacyCustodyStatePath(env)) || out.length === 0) {
194
194
  out.push(undefined);
195
195
  }
196
196
  return out;
@@ -525,11 +525,11 @@ function resolveWalletCustodyScope(params) {
525
525
  }
526
526
  function loadShareState(walletId, env = process.env) {
527
527
  const filePath = locateCustodyShareStatePath(walletId, env);
528
- if (!fs.existsSync(filePath)) {
528
+ if (!syncFs.existsSync(filePath)) {
529
529
  return null;
530
530
  }
531
531
  try {
532
- const parsed = JSON.parse(fs.readFileSync(filePath, "utf8"));
532
+ const parsed = JSON.parse(syncFs.readFileSync(filePath, "utf8"));
533
533
  if (parsed.version === 1 && parsed.scheme === "xor-3of3-v1" && typeof parsed.secretBytes === "number" && parsed.secretBytes > 0 && typeof parsed.hotShare === "string" && typeof parsed.coldShare === "string" && typeof parsed.deviceShareHash === "string" && typeof parsed.secretChecksum === "string" && typeof parsed.createdAt === "string" && typeof parsed.updatedAt === "string") {
534
534
  const hot = decodeBase64Share(parsed.hotShare);
535
535
  const cold = decodeBase64Share(parsed.coldShare);
@@ -596,16 +596,16 @@ function loadShareState(walletId, env = process.env) {
596
596
  }
597
597
  function saveShareState(state, walletId, env = process.env) {
598
598
  const filePath = resolveCustodyShareStatePath(walletId, env);
599
- fs.mkdirSync(path.dirname(filePath), {
599
+ syncFs.mkdirSync(path.dirname(filePath), {
600
600
  recursive: true,
601
601
  mode: 448
602
602
  });
603
- fs.writeFileSync(filePath, `${JSON.stringify(state, null, 2)}\n`, {
603
+ syncFs.writeFileSync(filePath, `${JSON.stringify(state, null, 2)}\n`, {
604
604
  encoding: "utf8",
605
605
  mode: 384
606
606
  });
607
607
  try {
608
- fs.chmodSync(filePath, 384);
608
+ syncFs.chmodSync(filePath, 384);
609
609
  } catch {}
610
610
  }
611
611
  function deleteWalletCustodyCeremony(params) {
@@ -620,11 +620,11 @@ function deleteWalletCustodyCeremony(params) {
620
620
  role: "vault"
621
621
  };
622
622
  const statePath = locateCustodyShareStatePath(scope.walletId, env);
623
- const existed = fs.existsSync(statePath);
623
+ const existed = syncFs.existsSync(statePath);
624
624
  if (existed) {
625
- fs.rmSync(statePath, { force: true });
625
+ syncFs.rmSync(statePath, { force: true });
626
626
  try {
627
- fs.rmdirSync(path.dirname(statePath));
627
+ syncFs.rmdirSync(path.dirname(statePath));
628
628
  } catch {}
629
629
  }
630
630
  return {
@@ -1015,14 +1015,14 @@ function revokeWalletCustodyDevice(params) {
1015
1015
  }
1016
1016
  function loadState(walletId, env = process.env) {
1017
1017
  const filePath = locateCustodyStatePath(walletId, env);
1018
- if (!fs.existsSync(filePath)) {
1018
+ if (!syncFs.existsSync(filePath)) {
1019
1019
  return {
1020
1020
  version: 1,
1021
1021
  unlockSessions: []
1022
1022
  };
1023
1023
  }
1024
1024
  try {
1025
- const parsed = JSON.parse(fs.readFileSync(filePath, "utf8"));
1025
+ const parsed = JSON.parse(syncFs.readFileSync(filePath, "utf8"));
1026
1026
  if (parsed.version !== 1 || !Array.isArray(parsed.unlockSessions)) {
1027
1027
  return {
1028
1028
  version: 1,
@@ -1065,16 +1065,16 @@ function loadState(walletId, env = process.env) {
1065
1065
  }
1066
1066
  function saveState(state, walletId, env = process.env) {
1067
1067
  const filePath = resolveCustodyStatePath(walletId, env);
1068
- fs.mkdirSync(path.dirname(filePath), {
1068
+ syncFs.mkdirSync(path.dirname(filePath), {
1069
1069
  recursive: true,
1070
1070
  mode: 448
1071
1071
  });
1072
- fs.writeFileSync(filePath, `${JSON.stringify(state, null, 2)}\n`, {
1072
+ syncFs.writeFileSync(filePath, `${JSON.stringify(state, null, 2)}\n`, {
1073
1073
  encoding: "utf8",
1074
1074
  mode: 384
1075
1075
  });
1076
1076
  try {
1077
- fs.chmodSync(filePath, 384);
1077
+ syncFs.chmodSync(filePath, 384);
1078
1078
  } catch {}
1079
1079
  }
1080
1080
  function pruneState(state) {
@@ -1,10 +1,10 @@
1
- import { walletDiagnosticErrorString } from "./wallet-redaction.js";
2
1
  import { ensureWalletStateDir } from "./wallet-runtime-config.js";
3
2
  import { readWalletProviderRegistry, resolveWalletSelection } from "./wallet-provider-registry.js";
3
+ import { buildWalletProviderCapabilityMatrix, providerSupportsChainOperation } from "./wallet-provider-capabilities.js";
4
+ import { walletDiagnosticErrorString } from "./wallet-redaction.js";
4
5
  import { createWalletProviderAdapter, resolveWalletProviderId } from "./wallet-provider-resolver.js";
5
6
  import { appendWalletAuditEntry, readWalletAuditEntries } from "./wallet-audit-log.js";
6
- import { buildWalletProviderCapabilityMatrix, providerSupportsChainOperation } from "./wallet-provider-capabilities.js";
7
- import fs from "node:fs";
7
+ import syncFs from "node:fs";
8
8
  import path from "node:path";
9
9
  import { randomBytes } from "node:crypto";
10
10
 
@@ -174,11 +174,11 @@ function normalizeLedger(raw) {
174
174
  }
175
175
  function readLedger(env = process.env) {
176
176
  const filePath = inboundLedgerPath(env);
177
- if (!fs.existsSync(filePath)) {
177
+ if (!syncFs.existsSync(filePath)) {
178
178
  return defaultLedger();
179
179
  }
180
180
  try {
181
- const parsed = JSON.parse(fs.readFileSync(filePath, "utf8"));
181
+ const parsed = JSON.parse(syncFs.readFileSync(filePath, "utf8"));
182
182
  return normalizeLedger(parsed);
183
183
  } catch {
184
184
  return defaultLedger();
@@ -191,12 +191,12 @@ function writeLedger(ledger, env = process.env) {
191
191
  version: 1,
192
192
  updatedAt: nowIso()
193
193
  };
194
- fs.writeFileSync(filePath, `${JSON.stringify(payload, null, 2)}\n`, {
194
+ syncFs.writeFileSync(filePath, `${JSON.stringify(payload, null, 2)}\n`, {
195
195
  encoding: "utf8",
196
196
  mode: 384
197
197
  });
198
198
  try {
199
- fs.chmodSync(filePath, 384);
199
+ syncFs.chmodSync(filePath, 384);
200
200
  } catch {}
201
201
  }
202
202
  function findWalletById(env, walletId) {
@@ -1,5 +1,5 @@
1
1
  import { ensureWalletStateDir } from "./wallet-runtime-config.js";
2
- import fs from "node:fs";
2
+ import syncFs from "node:fs";
3
3
 
4
4
  //#region src/wallet/wallet-observability.ts
5
5
  const OBSERVABILITY_FILENAME = "observability.v1.json";
@@ -37,11 +37,11 @@ function sanitizeBucket(input) {
37
37
  }
38
38
  function readSnapshot(env) {
39
39
  const file = observabilityPath(env);
40
- if (!fs.existsSync(file)) {
40
+ if (!syncFs.existsSync(file)) {
41
41
  return makeDefaultSnapshot();
42
42
  }
43
43
  try {
44
- const parsed = JSON.parse(fs.readFileSync(file, "utf8"));
44
+ const parsed = JSON.parse(syncFs.readFileSync(file, "utf8"));
45
45
  if (parsed?.version !== 1) {
46
46
  return makeDefaultSnapshot();
47
47
  }
@@ -60,12 +60,12 @@ function readSnapshot(env) {
60
60
  }
61
61
  function writeSnapshot(env, snapshot) {
62
62
  const file = observabilityPath(env);
63
- fs.writeFileSync(file, `${JSON.stringify(snapshot, null, 2)}\n`, {
63
+ syncFs.writeFileSync(file, `${JSON.stringify(snapshot, null, 2)}\n`, {
64
64
  mode: 384,
65
65
  encoding: "utf8"
66
66
  });
67
67
  try {
68
- fs.chmodSync(file, 384);
68
+ syncFs.chmodSync(file, 384);
69
69
  } catch {}
70
70
  }
71
71
  function incrementWalletObservabilityCounter(params) {