@fased/fased 0.1.62 → 0.1.64

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 (341) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.md +38 -30
  3. package/config/dependency-ownership.json +1 -1
  4. package/config/signer-policies/README.md +49 -0
  5. package/config/signer-policies/agent.json.template +32 -0
  6. package/config/signer-policies/mining.json.template +69 -0
  7. package/config/signer-policies/network.json.template +5 -0
  8. package/config/signer-policies/vault.json.template +70 -0
  9. package/config/signer-protocol-v2.json +76 -0
  10. package/config/typescript-noemit-baseline.json +680 -0
  11. package/dist/agents/auth-profiles/store.js +267 -31
  12. package/dist/agents/bash-tools.exec.js +10 -4
  13. package/dist/agents/current-model-catalog.js +3 -3
  14. package/dist/agents/memory-search.js +7 -1
  15. package/dist/agents/model-catalog-access.js +1 -2
  16. package/dist/agents/model-catalog-snapshot.js +1 -1
  17. package/dist/agents/model-catalog-source.js +1 -1
  18. package/dist/agents/model-metadata.js +1 -1
  19. package/dist/agents/model-selection.js +2 -28
  20. package/dist/agents/models-config.providers.js +6 -6
  21. package/dist/agents/pi-embedded-runner/compact.js +15 -7
  22. package/dist/agents/pi-embedded-runner/model.js +1 -1
  23. package/dist/agents/pi-embedded-runner/run/attempt.js +24 -13
  24. package/dist/agents/pi-embedded-runner/run.js +2 -0
  25. package/dist/agents/pi-embedded-runner/tool-split.js +40 -2
  26. package/dist/agents/pi-tool-definition-adapter.js +16 -1
  27. package/dist/agents/pi-tools.js +2 -1
  28. package/dist/agents/sandbox/config.js +1 -1
  29. package/dist/agents/sandbox/context.js +27 -2
  30. package/dist/agents/skills/env-overrides.js +38 -28
  31. package/dist/agents/skills/trust.js +93 -0
  32. package/dist/agents/skills/workspace.js +128 -0
  33. package/dist/agents/skills-clawhub.js +36 -11
  34. package/dist/agents/skills-marketplace-scan.js +49 -0
  35. package/dist/agents/tools/marketplace-offer-draft-tool.js +1 -1
  36. package/dist/agents/tools/mining-tool.js +1 -1
  37. package/dist/agents/tools/session-status-tool.js +1 -1
  38. package/dist/agents/tools/wallet-action-tool.js +172 -36
  39. package/dist/agents/tools/wallet-skill-policy.js +65 -23
  40. package/dist/agents/tools/wallet-tool.js +7 -11
  41. package/dist/auto-reply/reply/directive-handling.fast-lane.js +2 -1
  42. package/dist/auto-reply/reply/directive-handling.impl.js +2 -1
  43. package/dist/auto-reply/reply/directive-handling.model.js +2 -1
  44. package/dist/auto-reply/reply/directive-handling.persist.js +2 -2
  45. package/dist/auto-reply/reply/get-reply-directives-apply.js +2 -0
  46. package/dist/auto-reply/reply/get-reply-inline-actions.js +25 -1
  47. package/dist/auto-reply/reply/model-selection.js +7 -4
  48. package/dist/auto-reply/reply/session-reset-model.js +4 -4
  49. package/dist/brand.js +1 -1
  50. package/dist/build-info.json +3 -3
  51. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  52. package/dist/channel-web.js +2 -2
  53. package/dist/cli/gateway-cli/run.js +8 -0
  54. package/dist/cli/program/command-registry.js +1 -1
  55. package/dist/cli/program/register.onboard.js +2 -3
  56. package/dist/cli/program/register.wallet.js +16 -123
  57. package/dist/cli/providers-cli.js +1 -1
  58. package/dist/cli/sat-cli.js +129 -2
  59. package/dist/cli/update-cli/update-command.js +260 -11
  60. package/dist/commands/auth-choice.apply.api-providers.js +3 -3
  61. package/dist/commands/doctor-config-flow.js +1 -1
  62. package/dist/commands/doctor-legacy-config.js +2 -13
  63. package/dist/commands/model-picker.js +6 -6
  64. package/dist/commands/models/auth.js +1 -1
  65. package/dist/commands/onboard-auth.config-gateways.js +1 -1
  66. package/dist/commands/onboard-auth.credentials.js +32 -8
  67. package/dist/commands/onboard-non-interactive/local/wallet-config.js +28 -27
  68. package/dist/commands/onboard-non-interactive/local.js +5 -1
  69. package/dist/commands/wallet.js +568 -1911
  70. package/dist/config/config.js +2 -2
  71. package/dist/config/io.js +64 -2
  72. package/dist/config/schema.help.js +8 -7
  73. package/dist/config/schema.labels.js +5 -4
  74. package/dist/config/zod-schema.agent-runtime.js +1 -0
  75. package/dist/config/zod-schema.js +5 -0
  76. package/dist/control-ui/assets/{app-DLil9VO1.js → app-bR-fO5ty.js} +1511 -1555
  77. package/dist/control-ui/assets/{config-CU5Zi8Dh.js → config-LeImukCW.js} +10 -10
  78. package/dist/control-ui/assets/{federation-D10Q4eP_.js → federation-DgA9e-Pn.js} +364 -422
  79. package/dist/control-ui/assets/{index-DdE_NIXo.js → index-ckCxHwjy.js} +3 -3
  80. package/dist/control-ui/assets/{mining-BdhMn18r.js → mining-BgHFh0ei.js} +134 -114
  81. package/dist/control-ui/assets/mining-commit-DFpB_4JN.js +2 -0
  82. package/dist/control-ui/assets/{open-external-url-DwSiwMPl.js → open-external-url-ulF1B-sA.js} +3 -3
  83. package/dist/control-ui/assets/{providers-QMn4w2_f.js → providers-CIx9fxc6.js} +2 -2
  84. package/dist/control-ui/assets/{wallet-C2g294QT.js → wallet-DvStR_AT.js} +259 -377
  85. package/dist/control-ui/index.html +1 -1
  86. package/dist/control-ui/version.json +1 -1
  87. package/dist/daemon/systemd-system.js +56 -50
  88. package/dist/extensions/sat-mining/src/protocol-contract.js +43 -3
  89. package/dist/extensions/sat-mining/src/rpc-read.js +235 -67
  90. package/dist/extensions/sat-mining/src/sat-bond-layout.js +5 -2
  91. package/dist/extensions/sat-mining/src/signer-codec-manifest.js +406 -0
  92. package/dist/extensions/sat-mining/src/solana-submit.js +1038 -397
  93. package/dist/extensions/sat-mining/src/submission-ledger.js +349 -0
  94. package/dist/federation/auto-connect.js +98 -8
  95. package/dist/federation/marketplace-capability-adapter.js +33 -7
  96. package/dist/federation/marketplace-delivery-outbox.js +196 -0
  97. package/dist/federation/marketplace-delivery.js +351 -215
  98. package/dist/federation/marketplace-direct-payment.js +272 -141
  99. package/dist/federation/marketplace-escrow.js +607 -249
  100. package/dist/federation/marketplace-settlement-ledger.js +352 -0
  101. package/dist/federation/offers.js +9 -7
  102. package/dist/federation/peer-auth-v2.js +529 -0
  103. package/dist/gateway/a2a-http.js +425 -96
  104. package/dist/gateway/a2a-settlement.js +259 -153
  105. package/dist/gateway/a2a-task-store.js +524 -0
  106. package/dist/gateway/auth.js +38 -2
  107. package/dist/gateway/config-reload.js +46 -33
  108. package/dist/gateway/durable-capacity.js +31 -0
  109. package/dist/gateway/federation-http.js +540 -135
  110. package/dist/gateway/federation-marketplace-run-store.js +397 -0
  111. package/dist/gateway/federation-marketplace.js +535 -230
  112. package/dist/gateway/mutating-admin-rpc-rate-limit.js +5 -0
  113. package/dist/gateway/security-path.js +1 -1
  114. package/dist/gateway/server-http.js +1084 -1205
  115. package/dist/gateway/server-methods/models.js +1 -1
  116. package/dist/gateway/server-methods/secrets.js +40 -0
  117. package/dist/gateway/server-methods.js +1 -2
  118. package/dist/gateway/server-reload-handlers.js +196 -66
  119. package/dist/gateway/server-runtime-config.js +1 -1
  120. package/dist/gateway/server-secrets-runtime.js +288 -0
  121. package/dist/gateway/server.impl.js +73 -42
  122. package/dist/gateway/sessions-patch.js +3 -5
  123. package/dist/index.js +4 -2
  124. package/dist/infra/fasedhub.js +64 -1
  125. package/dist/infra/local-source-paired-update.js +538 -0
  126. package/dist/infra/restart.js +41 -10
  127. package/dist/infra/update-runner.js +96 -0
  128. package/dist/light-update-status.js +11 -11
  129. package/dist/memory/backend-config.js +2 -1
  130. package/dist/memory/session-files.js +16 -2
  131. package/dist/plugin-sdk/{accounts-DxblobYM.js → accounts-Brn3-uWN.js} +1 -1
  132. package/dist/plugin-sdk/{actions-D4UNimWa.js → actions-DRu135h0.js} +2 -2
  133. package/dist/plugin-sdk/{active-listener-CFuy106s.js → active-listener-B_NMtgPL.js} +1 -1
  134. package/dist/plugin-sdk/{audio-preflight-Bwi2Oq03.js → audio-preflight-BYxAt775.js} +27 -27
  135. package/dist/plugin-sdk/{audit-Cs0K7LBp.js → audit-C5d2z5U1.js} +1 -1
  136. package/dist/plugin-sdk/{channel-access-D5aHoTY8.js → channel-access-CcFRdRPO.js} +1 -1
  137. package/dist/plugin-sdk/{channel-access-configure-Dvch9mMQ.js → channel-access-configure-DaI5wevh.js} +1 -1
  138. package/dist/plugin-sdk/channel-plugin-common.d.ts +3 -3
  139. package/dist/plugin-sdk/channel-plugin-common.js +4 -4
  140. package/dist/plugin-sdk/{chunk-B0FUGc5A.js → chunk-CyoyqpbG.js} +1 -1
  141. package/dist/plugin-sdk/{chunk-items-DzT4L4Ty.js → chunk-items-DIRHG2gJ.js} +1 -1
  142. package/dist/plugin-sdk/command-status.d.ts +2 -2
  143. package/dist/plugin-sdk/command-status.js +27 -27
  144. package/dist/plugin-sdk/{commands-registry-DmDRhRAU.js → commands-registry-BfqdEWdF.js} +2 -2
  145. package/dist/plugin-sdk/{common-CfUOowOp.js → common-HCcXU-NR.js} +1 -1
  146. package/dist/plugin-sdk/{config-mxULv0fQ.js → config-DlWVeLFB.js} +7113 -6877
  147. package/dist/plugin-sdk/{config-schema-BrkmtFxB.js → config-schema-BOT7kHb6.js} +6779 -3696
  148. package/dist/plugin-sdk/device-pair.d.ts +1 -1
  149. package/dist/plugin-sdk/discord.d.ts +6 -6
  150. package/dist/plugin-sdk/discord.js +19 -19
  151. package/dist/plugin-sdk/file-lock.js +35 -4
  152. package/dist/plugin-sdk/{filesystem-manager-ZoHU8oA7.js → filesystem-manager-DoI8IBNF.js} +1 -1
  153. package/dist/plugin-sdk/{group-mentions-BHRff6j8.d.ts → group-mentions-q3hUTCt7.d.ts} +1 -1
  154. package/dist/plugin-sdk/{handle-action-DbVCF9HZ.js → handle-action-hvwapMKg.js} +13 -13
  155. package/dist/plugin-sdk/{helpers-BXbdgs5H.js → helpers-DMBU4oTo.js} +1 -1
  156. package/dist/plugin-sdk/{image-ops-D7jPxaph.js → image-ops-DQi0n_Tt.js} +1 -1
  157. package/dist/plugin-sdk/index.d.ts +21 -39
  158. package/dist/plugin-sdk/index.js +29 -29
  159. package/dist/plugin-sdk/{login-BRxww6nv.js → login-Ca583Okc.js} +3 -3
  160. package/dist/plugin-sdk/{login-qr-DJXsk9XH.js → login-qr-CGciBSNP.js} +3 -3
  161. package/dist/plugin-sdk/{manager-Y2S_5IlI.js → manager-BegWxNYX.js} +4 -4
  162. package/dist/plugin-sdk/{markdown-tables-DHLFQqaF.js → markdown-tables-DCOXEUfZ.js} +1 -1
  163. package/dist/plugin-sdk/{media-Czo4carg.js → media-CAdQF5TG.js} +47 -47
  164. package/dist/plugin-sdk/{memory-search-DTjIMw8J.js → memory-search-CrFPOeTH.js} +4 -1
  165. package/dist/plugin-sdk/{monitor-M_ta2lMc.js → monitor-BCFDaqJ-.js} +31 -31
  166. package/dist/plugin-sdk/{monitor-wYVncM9w.js → monitor-BgbjRiPM.js} +32 -32
  167. package/dist/plugin-sdk/{openresponses-http-B2GmeSt4.js → openresponses-http-DFf87SMM.js} +27 -27
  168. package/dist/plugin-sdk/{optional-runtime-dependency-DdMbxS24.js → optional-runtime-dependency-0dznm3ZO.js} +1 -1
  169. package/dist/plugin-sdk/{outbound-Db8mRN6P.js → outbound-BgVDdHxx.js} +6 -6
  170. package/dist/plugin-sdk/{outbound-attachment-BqFjcypb.js → outbound-attachment-QqTnIhZL.js} +2 -2
  171. package/dist/plugin-sdk/{pairing-message-B3bHYGaw.d.ts → pairing-message-CS-9BHug.d.ts} +2 -2
  172. package/dist/plugin-sdk/{pairing-message-B3GC_7CD.js → pairing-message-D0CoLHRJ.js} +1 -1
  173. package/dist/plugin-sdk/{pairing-store-CQikgIbw.js → pairing-store-BChahgI2.js} +2 -2
  174. package/dist/plugin-sdk/{pi-model-discovery-CY3m5zJP.js → pi-model-discovery-BX_JLcEJ.js} +1 -1
  175. package/dist/plugin-sdk/{pi-model-discovery-runtime-DSh1T2pn.js → pi-model-discovery-runtime-DxTMz_XF.js} +2 -2
  176. package/dist/plugin-sdk/provider-web-search-config-contract.d.ts +2 -2
  177. package/dist/plugin-sdk/{pw-ai-AFUqn-tQ.js → pw-ai-natjh3rm.js} +3 -3
  178. package/dist/plugin-sdk/{qmd-manager-DSyx77KY.js → qmd-manager-CgRaTxUq.js} +1 -1
  179. package/dist/plugin-sdk/{query-expansion-CAI2kKLQ.js → query-expansion-BG3FgzF7.js} +14 -3
  180. package/dist/plugin-sdk/{replies-Fzh9PhXl.js → replies-ChYo5ZQM.js} +2 -2
  181. package/dist/plugin-sdk/{resolve-outbound-target-KpF3co6T.js → resolve-outbound-target-D-KGgHJZ.js} +1 -1
  182. package/dist/plugin-sdk/{resolve-route-CDl74O19.js → resolve-route-C8tvQm8Z.js} +1 -1
  183. package/dist/plugin-sdk/{retry-policy-D4uiqUOG.js → retry-policy-C6SjKjQA.js} +1 -1
  184. package/dist/plugin-sdk/{runtime-Bb6KRnCC.js → runtime-2B9_WKoI.js} +8 -3
  185. package/dist/plugin-sdk/{runtime-dependency-DLDmB94f.js → runtime-dependency-DczkvPxn.js} +2 -2
  186. package/dist/plugin-sdk/sat-runtime.d.ts +549 -309
  187. package/dist/plugin-sdk/sat-runtime.js +29 -29
  188. package/dist/plugin-sdk/{send-C4k4JuJN.js → send-B6KkGKZD.js} +6 -6
  189. package/dist/plugin-sdk/{send-D-uDKGIq.js → send-CFzGKJXo.js} +6 -6
  190. package/dist/plugin-sdk/{send-Du8ykP1k.js → send-DCO441U7.js} +8 -8
  191. package/dist/plugin-sdk/{send-5nFktR1n.js → send-gDoGA-7e.js} +5 -5
  192. package/dist/plugin-sdk/{send-Bfzf11VY.js → send-q9HXrSwK.js} +7 -7
  193. package/dist/plugin-sdk/{session-CS-Td9EM.js → session-DHD4ZKyG.js} +2 -2
  194. package/dist/plugin-sdk/{skill-commands-CFAlXWHk.js → skill-commands-FKEPLS7T.js} +201 -26
  195. package/dist/plugin-sdk/{slack-CxE1mfzj.js → slack-BUTt8cxK.js} +39 -39
  196. package/dist/plugin-sdk/{slack-actions-BcMkNv1Z.js → slack-actions-DhbMcp8M.js} +11 -11
  197. package/dist/plugin-sdk/slack.d.ts +6 -6
  198. package/dist/plugin-sdk/slack.js +9 -9
  199. package/dist/plugin-sdk/{sticker-cache-CGzGWu00.js → sticker-cache-D0wHVqjt.js} +3 -3
  200. package/dist/plugin-sdk/{tables-bFXyRpkx.js → tables-B3jr0Pvq.js} +1 -1
  201. package/dist/plugin-sdk/{targets-DH7a9lKB.js → targets-CtSbTxYX.js} +1 -1
  202. package/dist/plugin-sdk/{telegram-actions-DaEcYQ8r.js → telegram-actions-CC_qN4v0.js} +30 -30
  203. package/dist/plugin-sdk/telegram.d.ts +6 -6
  204. package/dist/plugin-sdk/telegram.js +8 -8
  205. package/dist/plugin-sdk/{thread-bindings.lifecycle-CgOvvdw8.js → thread-bindings.lifecycle-QbkNl-m6.js} +3 -3
  206. package/dist/plugin-sdk/{thread-bindings.state-CQpk44Hq.js → thread-bindings.state-D9hg_M1c.js} +2 -2
  207. package/dist/plugin-sdk/tmp-fased-dir-xOTGlzBE.d.ts +486 -0
  208. package/dist/plugin-sdk/{types-vcJrC_uv.d.ts → types-C3avNytw.d.ts} +3 -4
  209. package/dist/plugin-sdk/{types-DyhXnYUr.d.ts → types-D0kDG8l0.d.ts} +3 -2
  210. package/dist/plugin-sdk/{types-DFAW-n1J.d.ts → types-DWfbSAaM.d.ts} +2 -2
  211. package/dist/plugin-sdk/{types.plugin-_fbu40Re.d.ts → types.plugin-BcSBq42x.d.ts} +8 -3
  212. package/dist/plugin-sdk/{web-CInY-lCv.js → web-BXsJ1vqe.js} +32 -32
  213. package/dist/plugin-sdk/{whatsapp-actions-BtSc2CBv.js → whatsapp-actions-Bj_rOncr.js} +13 -13
  214. package/dist/plugin-sdk/{whatsapp-heartbeat-Bg9TuYzl.js → whatsapp-heartbeat-B1WHkJIg.js} +2 -2
  215. package/dist/plugin-sdk/whatsapp.d.ts +13 -13
  216. package/dist/plugin-sdk/whatsapp.js +12 -12
  217. package/dist/plugin-sdk/{wsl-C4DGFkOd.js → wsl-J-HscWxS.js} +3 -3
  218. package/dist/plugin-sdk/{zod-schema.providers-core-BEbNizPe.d.ts → zod-schema.providers-core-CIzCjXH9.d.ts} +61 -61
  219. package/dist/providers/refresh.js +1 -1
  220. package/dist/providers/registry.js +1 -1
  221. package/dist/secrets/apply.js +1 -1
  222. package/dist/secrets/runtime.js +1 -1
  223. package/dist/wallet/external-submission-ledger.js +376 -0
  224. package/dist/wallet/legacy-embedded-keystore.js +40 -0
  225. package/dist/wallet/local-socket-signer-archive.js +30 -0
  226. package/dist/wallet/local-socket-signer-lifecycle.js +97 -0
  227. package/dist/wallet/local-socket-signer-policy.js +166 -0
  228. package/dist/wallet/local-socket-signer-protocol.js +561 -118
  229. package/dist/wallet/native-signer-wallet-id.js +25 -0
  230. package/dist/wallet/providers/alchemy-adapter.js +3 -0
  231. package/dist/wallet/providers/local-socket-signer-adapter.js +380 -105
  232. package/dist/wallet/providers/turnkey-adapter.js +292 -34
  233. package/dist/wallet/providers/wallet-standard-adapter.js +100 -0
  234. package/dist/wallet/signer-network-admin.js +184 -0
  235. package/dist/wallet/signer-protocol-v2.generated.js +90 -0
  236. package/dist/wallet/solana-bond-signing.js +157 -69
  237. package/dist/wallet/solana-reviewed-transaction.js +375 -0
  238. package/dist/wallet/solana-swap.js +520 -64
  239. package/dist/wallet/solana-transaction-inspection.js +106 -4
  240. package/dist/wallet/solana-trigger.js +658 -320
  241. package/dist/wallet/turnkey-reviewed-state.js +370 -0
  242. package/dist/wallet/wallet-approval-auth.js +17 -28
  243. package/dist/wallet/wallet-atomic-state.js +53 -0
  244. package/dist/wallet/wallet-canary.js +0 -1
  245. package/dist/wallet/wallet-inbound-events.js +16 -11
  246. package/dist/wallet/wallet-policy-simulation.js +1 -1
  247. package/dist/wallet/wallet-policy.js +90 -36
  248. package/dist/wallet/wallet-provider-capabilities.js +28 -4
  249. package/dist/wallet/wallet-provider-registry.js +57 -44
  250. package/dist/wallet/wallet-provider-resolver.js +62 -63
  251. package/dist/wallet/wallet-runtime-config.js +28 -41
  252. package/dist/wallet/wallet-secrets-store.js +22 -0
  253. package/dist/wallet/wallet-send-approvals.js +1891 -589
  254. package/dist/wallet/wallet-send-execution-ledger.js +292 -0
  255. package/dist/wallet/wallet-settlement-links.js +14 -13
  256. package/dist/wallet/wallet-standard-review.js +353 -0
  257. package/dist/wallet/wallet-status.js +0 -9
  258. package/dist/wallet/wallet-task-ledger.js +16 -2
  259. package/dist/web/auto-reply/heartbeat-runner.js +1 -1
  260. package/dist/web/auto-reply/monitor.js +2 -2
  261. package/dist/wizard/host-security-capability.js +14 -23
  262. package/dist/wizard/onboarding.finalize.js +63 -184
  263. package/dist/wizard/onboarding.host-security.js +117 -1367
  264. package/dist/wizard/onboarding.js +172 -217
  265. package/dist/wizard/onboarding.wallet.js +232 -785
  266. package/extensions/acpx/package.json +1 -1
  267. package/extensions/bluebubbles/package.json +1 -1
  268. package/extensions/copilot-proxy/package.json +1 -1
  269. package/extensions/diagnostics-otel/package.json +1 -1
  270. package/extensions/fased-federation/package.json +1 -1
  271. package/extensions/google-gemini-cli-auth/package.json +1 -1
  272. package/extensions/imessage/package.json +1 -1
  273. package/extensions/irc/package.json +1 -1
  274. package/extensions/line/package.json +1 -1
  275. package/extensions/llm-task/package.json +1 -1
  276. package/extensions/lobster/package.json +1 -1
  277. package/extensions/matrix/CHANGELOG.md +12 -0
  278. package/extensions/matrix/package.json +1 -1
  279. package/extensions/mattermost/package.json +1 -1
  280. package/extensions/memory-core/package.json +2 -2
  281. package/extensions/memory-lancedb/package.json +1 -1
  282. package/extensions/minimax-portal-auth/package.json +1 -1
  283. package/extensions/msteams/CHANGELOG.md +12 -0
  284. package/extensions/msteams/package.json +1 -1
  285. package/extensions/nextcloud-talk/package.json +1 -1
  286. package/extensions/nostr/CHANGELOG.md +12 -0
  287. package/extensions/nostr/package.json +1 -1
  288. package/extensions/open-prose/package.json +1 -1
  289. package/extensions/sat-mining/index.ts +498 -153
  290. package/extensions/sat-mining/package.json +1 -1
  291. package/extensions/sat-mining/signer-codec-schema.v1.json +374 -0
  292. package/extensions/sat-mining/src/audit-store.ts +50 -5
  293. package/extensions/sat-mining/src/claim-service.ts +85 -14
  294. package/extensions/sat-mining/src/config.ts +9 -0
  295. package/extensions/sat-mining/src/cycle-progress.ts +16 -8
  296. package/extensions/sat-mining/src/epoch-service.ts +9 -5
  297. package/extensions/sat-mining/src/gateway-runner.ts +21 -1
  298. package/extensions/sat-mining/src/protocol-contract.ts +45 -1
  299. package/extensions/sat-mining/src/recovery-service.ts +312 -0
  300. package/extensions/sat-mining/src/round-watcher.ts +391 -81
  301. package/extensions/sat-mining/src/rpc-read.ts +330 -89
  302. package/extensions/sat-mining/src/runtime.ts +14 -0
  303. package/extensions/sat-mining/src/sat-bond-layout.ts +6 -0
  304. package/extensions/sat-mining/src/signer-codec-manifest.ts +429 -0
  305. package/extensions/sat-mining/src/solana-submit.ts +1199 -428
  306. package/extensions/sat-mining/src/submission-ledger.ts +433 -0
  307. package/extensions/signal/package.json +1 -1
  308. package/extensions/synology-chat/package.json +1 -1
  309. package/extensions/tlon/package.json +1 -1
  310. package/extensions/twitch/CHANGELOG.md +12 -0
  311. package/extensions/twitch/package.json +1 -1
  312. package/extensions/voice-call/CHANGELOG.md +12 -0
  313. package/extensions/voice-call/package.json +1 -1
  314. package/extensions/zalo/CHANGELOG.md +12 -0
  315. package/extensions/zalo/package.json +1 -1
  316. package/extensions/zalouser/CHANGELOG.md +12 -0
  317. package/extensions/zalouser/package.json +1 -1
  318. package/install.sh +4955 -0
  319. package/package.json +23 -5
  320. package/scripts/fased-host-updater.mjs +1421 -0
  321. package/scripts/fased-host-updaterctl.mjs +186 -0
  322. package/scripts/fased-managed-service.sh +36 -0
  323. package/scripts/fased-managed-updater.mjs +3065 -156
  324. package/scripts/fased-signer-enroll-hosting.sh +275 -0
  325. package/scripts/fased-signer-network-hosting.sh +143 -0
  326. package/scripts/fased-signer-owner-policy.mjs +1430 -0
  327. package/scripts/fased-signer-policy-hosting.sh +50 -0
  328. package/scripts/fased-signer-policy-local.sh +26 -0
  329. package/scripts/hosted-release-manifest.mjs +185 -0
  330. package/scripts/install-fased-signerd.sh +183 -108
  331. package/scripts/install-managed-runtime.mjs +212 -10
  332. package/scripts/managed-runtime-layout.mjs +75 -3
  333. package/scripts/migrate-hosted-signer-v2.mjs +58 -0
  334. package/scripts/start-managed.sh +169 -360
  335. package/dist/control-ui/assets/mining-commit-R-6nu87p.js +0 -2
  336. package/dist/plugin-sdk/tmp-fased-dir-CS6zsYEE.d.ts +0 -77
  337. package/dist/wallet/local-socket-signer-broker.js +0 -224
  338. package/dist/wallet/local-socket-signer-custody.js +0 -42
  339. package/dist/wallet/providers/embedded-keystore-adapter.js +0 -402
  340. package/dist/wallet/providers/privy-adapter.js +0 -80
  341. package/dist/wallet/wallet-custody.js +0 -1836
package/CHANGELOG.md CHANGED
@@ -4,6 +4,38 @@ This changelog starts with the public Fased Agent release line. Required
4
4
  third-party and copied-code notices are kept in [LICENSE](./LICENSE) and
5
5
  [THIRD_PARTY_NOTICES.md](./THIRD_PARTY_NOTICES.md).
6
6
 
7
+ ## 0.1.64
8
+
9
+ - Make protocol-v2 `fased-signerd` authoritative for native key creation,
10
+ import, rotation, encrypted state, fail-closed wallet policy, durable caps,
11
+ idempotency, and ambiguous-broadcast reconciliation.
12
+ - Replace the maintained Hosting broker and Gateway sudo path with an
13
+ independent root-managed signer service, separate application/control
14
+ sockets, verified release identity, and transactional update/rollback.
15
+ - Add typed SOL, SPL, SAT Mining, Vault bond, and federation operations with
16
+ signer-owned semantic validation; Jupiter swaps and Trigger mutations remain
17
+ preview-only pending live qualification.
18
+ - Move reviewed WebAuthn challenges into the signer, add Wallet Standard
19
+ hardware and Turnkey provider flows, and keep new native wallets receive-only
20
+ until an exact positive policy hash is acknowledged.
21
+ - Add bounded signer, A2A, Marketplace, skill, and memory state with capacity
22
+ warnings, replay-safe retention, and complete-state archive/restore guidance.
23
+ - Document clean Linux/macOS installs, Windows 10/11 through WSL2 Ubuntu,
24
+ independent VPS Hosting custody, Local-only Docker, wallet activation,
25
+ Mining, Vault, updates, and recovery.
26
+
27
+ ## 0.1.63
28
+
29
+ - Fix maintained Hosting first-wallet setup by launching the packaged signer
30
+ broker through the lazy wallet CLI entry instead of importing optional
31
+ channel dependencies from the minimal hosted runtime.
32
+ - Validate packaged signer-broker startup during hosted artifact creation and
33
+ recognize the secured `0660` app-facing broker socket used by the isolated
34
+ VPS signer account while retaining `0600` for single-user installs.
35
+ - Clarify that Windows runs Fased inside WSL2 Ubuntu, with PowerShell used only
36
+ to install or manage WSL2, and document the public Docker image as a
37
+ local-only path; maintained VPS hosting remains non-Docker.
38
+
7
39
  ## 0.1.62
8
40
 
9
41
  - Install a version-matched, checksum-verified local wallet signer automatically
package/README.md CHANGED
@@ -52,6 +52,19 @@ Use this on your own machine:
52
52
  shell.
53
53
  - **Linux:** run the command in your distro terminal.
54
54
 
55
+ Windows requires Windows 11 or Windows 10 version 2004/build 19041 or newer.
56
+ Open PowerShell **as Administrator** only to install WSL2:
57
+
58
+ ```powershell
59
+ wsl --install -d Ubuntu
60
+ ```
61
+
62
+ Restart Windows if requested, open the **Ubuntu** application, create the Linux
63
+ username/password on first launch, and run the Fased command below in that
64
+ Ubuntu shell. Do not run the Fased installer in PowerShell, Command Prompt, Git
65
+ Bash, or native Windows Node.js. Fased wallet signing requires Unix sockets and
66
+ therefore runs through WSL2 on Windows.
67
+
55
68
  ```bash
56
69
  curl -fsSL https://raw.githubusercontent.com/fased-ai/fased/main/install.sh | bash -s -- --local
57
70
  ```
@@ -125,28 +138,23 @@ First SSH into the fresh VPS using the login your VPS provider gives you, often
125
138
  ssh root@YOUR_PUBLIC_VPS_IP
126
139
  ```
127
140
 
128
- Then run this on the VPS:
141
+ Then follow the [pre-execution verified VPS bootstrap](https://docs.fased.ai/install/vps#3-install-fased-and-connect-through-tailscale).
142
+ It downloads the exact tagged `install.sh` release asset and its attestation
143
+ bundle, verifies repository/tag/workflow/GitHub-runner provenance with
144
+ `gh attestation verify`, and only then runs the script as root. Do not pipe a
145
+ moving or unverified script directly into a root shell.
129
146
 
130
- ```bash
131
- curl -fsSL https://raw.githubusercontent.com/fased-ai/fased/main/install.sh | bash -s -- --hosting
132
- ```
133
-
134
- The Fased installer bootstraps the repository itself. A fresh VPS does not need
135
- `git clone` first; the installer installs missing system tools, Node, and Git
136
- when the OS package manager supports auto-install. Hosted installs may use the
137
- published runtime package internally and skip the slow source build.
147
+ The Fased installer bootstraps the attested hosted runtime itself. A fresh VPS
148
+ does not need `git clone`; the installer installs the supported system tools and
149
+ Node when the OS package manager supports auto-install, then activates the
150
+ exact tagged runtime instead of building an app-owned source checkout.
138
151
  If a minimal VPS image does not have `curl`, use the OS tab in the install docs
139
152
  to install only the downloader first, then rerun the same hosted command.
140
153
 
141
- Current installers try a clean fast-forward update from Git before building. If
142
- you already started from an older installer and it stopped before creating the
143
- `app` runtime, update the bootstrap checkout once and rerun:
144
-
145
- ```bash
146
- cd ~/fased
147
- git pull --ff-only origin main
148
- ./install.sh --hosting
149
- ```
154
+ If an earlier install stopped before creating the `app` runtime, repeat the
155
+ same verified tagged bootstrap from the provider root console. Use the
156
+ documented `--repair-hosting` path for an existing installation; do not repair
157
+ Hosting from a moving `main` checkout.
150
158
 
151
159
  If you SSH into a fresh VPS as `root`, the installer creates a non-root `app`
152
160
  user, copies/clones the repo to `/home/app/fased`, and continues there. The
@@ -312,11 +320,11 @@ model servers and model weights are not bundled. See
312
320
  [Core And Optional Components](./docs/install/components.md).
313
321
 
314
322
  Fresh dashboard, Gateway, and Fased Network setup do not require the native
315
- wallet signer. If you later choose the local signer wallet path, Fased builds
316
- `fased-signerd` locally when Go is available. Otherwise provide an explicit
317
- signer binary with `FASED_WALLET_LOCAL_SIGNER_BIN`, or an explicit signer asset
318
- source with `FASED_LOCAL_SIGNER_VERSION` / `FASED_LOCAL_SIGNER_BASE_URL`.
319
- Generated signer binaries are never committed to Git.
323
+ wallet signer. When you create the first signer-owned wallet, Fased downloads
324
+ the version-matched `fased-signerd` asset and verifies both its SHA-256 checksum
325
+ and GitHub release attestation. Normal users do not need Go. A source build is a
326
+ developer-only opt-in with `FASED_BUILD_NATIVE_SIGNER_FROM_SOURCE=1`; Fased does
327
+ not silently replace a failed release verification with a local build.
320
328
 
321
329
  After install, open the dashboard, configure **Agent > Models**, send a first
322
330
  browser chat, then add channels, skills, services, wallets, mining, and tasks
@@ -455,11 +463,9 @@ your own machine:
455
463
  curl -fsSL https://raw.githubusercontent.com/fased-ai/fased/main/install.sh | bash -s -- --local
456
464
  ```
457
465
 
458
- Use the VPS Hosting profile only on the server that will run Fased all the time:
459
-
460
- ```bash
461
- curl -fsSL https://raw.githubusercontent.com/fased-ai/fased/main/install.sh | bash -s -- --hosting
462
- ```
466
+ Use the VPS Hosting profile only on the server that will run Fased all the time,
467
+ and use the [pre-execution verified tagged bootstrap](https://docs.fased.ai/install/vps#3-install-fased-and-connect-through-tailscale)
468
+ before executing root code.
463
469
 
464
470
  The commands below are for contributors working from the source checkout. Do
465
471
  not use plain `npm install` to install Fased from source.
@@ -508,8 +514,10 @@ The root intentionally contains both product code and build/deploy control files
508
514
  - `test/`: test fixtures and integration helpers
509
515
  - `token/`: SAT/token technical materials
510
516
  - `Dockerfile`, `docker-compose.yml`, `docker-setup.sh`, and
511
- `setup-podman.sh`: primary container entrypoints
512
- - `deploy/`: secondary container, Fly, Render, and hosting configuration files
517
+ `setup-podman.sh`: Local Docker entrypoints plus an experimental Gateway-only
518
+ Podman helper
519
+ - `deploy/`: sandbox/container assets and archived Fly/Render reference
520
+ manifests; VPS Hosting uses `install.sh --hosting`, not those manifests
513
521
 
514
522
  Root config files should stay at repository root unless the owning toolchain,
515
523
  docs publisher, installer, and CI path are updated together.
@@ -48,7 +48,7 @@
48
48
  "label": "Wallet And Mining Core",
49
49
  "delivery": "core",
50
50
  "target": "keep",
51
- "dependencies": ["@solana/web3.js"]
51
+ "dependencies": ["@solana/web3.js", "@turnkey/sdk-server"]
52
52
  },
53
53
  {
54
54
  "id": "fased-network",
@@ -0,0 +1,49 @@
1
+ # Native signer owner-policy templates
2
+
3
+ These files are deliberately inactive templates. Every `REPLACE_WITH_...` value
4
+ is invalid, so an unreviewed template cannot unlock a wallet. Copy one template
5
+ to a new owner-only file, set `walletId` to the canonical signer wallet ID
6
+ returned by native setup (lowercase with separators normalized to underscores,
7
+ not the friendly Gateway/registry ID; the template value is only the
8
+ conventional role name), replace every placeholder with an exact address or a
9
+ canonical positive raw-unit cap, review every line, then set the file to mode
10
+ `0600` before running
11
+ `fased-signer-policy --initial-install`.
12
+
13
+ Fresh signer-owned wallets remain at their version-1 deny-all policy until that
14
+ owner-confirmed command succeeds. Merely installing Fased or copying a template
15
+ does not enable signing.
16
+
17
+ Every policy that permits an on-chain operation must include a
18
+ `solana:native` asset whose `maxPerTx` and `maxDaily` are each at least
19
+ `5000000` lamports. The native signer reserves that fixed, signer-controlled
20
+ ceiling atomically for network fees and explicitly validated rent; for a native
21
+ SOL transfer, the principal and this reserve must fit inside the same cap.
22
+ Existing custom policies below that minimum intentionally become locked after
23
+ the signer-v2 upgrade. Review the new limit and install a new version explicitly
24
+ with `fased-signer-policy`; installation and update never widen it automatically.
25
+
26
+ - Agent permits only typed native SOL and exact-mint SPL transfers to listed
27
+ destination owners. The signer derives the canonical source and destination
28
+ token accounts. When the destination account is absent, it may add exactly
29
+ one idempotent Associated Token Account instruction and charges the fixed
30
+ signer-controlled native fee/rent reservation against the same atomic policy
31
+ decision. The policy must therefore grant the Associated Token program, the
32
+ exact token program, the mint, destination owner, positive token caps, and a
33
+ positive `solana:native` cap. No caller-selected token account or arbitrary
34
+ account-creation instruction is accepted.
35
+ - Mining permits program-bound typed SAT mining actions. The native signer
36
+ forces generic SOL/SAT transfers through reviewed authorization for a Mining
37
+ wallet; it never treats them as autonomous mining actions. Exact SAT codecs
38
+ that genuinely use associated-token-account instructions retain that program
39
+ grant.
40
+ - Vault operations always require signer-owned reviewed authorization. The
41
+ starter omits Jupiter and Trigger permissions. Treat both as preview in this
42
+ release: do not add them to a production policy until an exact generated
43
+ RouteV2/Trigger codec and a live Jupiter qualification are published for the
44
+ same release. The signer also rejects their execution by default; normal
45
+ installers never enable the qualification-only live switch.
46
+
47
+ Receiving SOL or SAT does not require a signing permission. Do not add a
48
+ receive-only address as a destination unless the signer should also be allowed
49
+ to send to it.
@@ -0,0 +1,32 @@
1
+ {
2
+ "walletId": "agent",
3
+ "role": "agent",
4
+ "operations": [
5
+ "solana.nativeTransfer",
6
+ "solana.splTransferChecked"
7
+ ],
8
+ "programs": [
9
+ "11111111111111111111111111111111",
10
+ "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
11
+ "MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr",
12
+ "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
13
+ ],
14
+ "assets": [
15
+ {
16
+ "asset": "solana:native",
17
+ "destinations": [
18
+ "REPLACE_WITH_APPROVED_SOL_RECIPIENT"
19
+ ],
20
+ "maxPerTx": "REPLACE_WITH_POSITIVE_LAMPORTS_PER_TX",
21
+ "maxDaily": "REPLACE_WITH_POSITIVE_LAMPORTS_PER_UTC_DAY"
22
+ },
23
+ {
24
+ "asset": "solana:spl:REPLACE_WITH_SAT_MINT",
25
+ "destinations": [
26
+ "REPLACE_WITH_APPROVED_SAT_RECIPIENT_OWNER"
27
+ ],
28
+ "maxPerTx": "REPLACE_WITH_POSITIVE_SAT_RAW_UNITS_PER_TX",
29
+ "maxDaily": "REPLACE_WITH_POSITIVE_SAT_RAW_UNITS_PER_UTC_DAY"
30
+ }
31
+ ]
32
+ }
@@ -0,0 +1,69 @@
1
+ {
2
+ "walletId": "mining",
3
+ "role": "mining",
4
+ "operations": [
5
+ "sat.cleanupBatch@REPLACE_WITH_SAT_PROGRAM_ID",
6
+ "sat.claimCycleRewards@REPLACE_WITH_SAT_PROGRAM_ID",
7
+ "sat.claimCycleRewardsBatch@REPLACE_WITH_SAT_PROGRAM_ID",
8
+ "sat.commitCycle@REPLACE_WITH_SAT_PROGRAM_ID",
9
+ "sat.depositMinerCapital@REPLACE_WITH_SAT_PROGRAM_ID",
10
+ "sat.initMinerCapital@REPLACE_WITH_SAT_PROGRAM_ID",
11
+ "sat.revealCycle@REPLACE_WITH_SAT_PROGRAM_ID",
12
+ "sat.setActiveCommit@REPLACE_WITH_SAT_PROGRAM_ID",
13
+ "sat.withdrawMinerCapital@REPLACE_WITH_SAT_PROGRAM_ID",
14
+ "solana.nativeTransfer",
15
+ "solana.splTransferChecked"
16
+ ],
17
+ "programs": [
18
+ "11111111111111111111111111111111",
19
+ "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
20
+ "REPLACE_WITH_CLAIM_VERIFICATION_PROGRAM_ID",
21
+ "REPLACE_WITH_SAT_PROGRAM_ID",
22
+ "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
23
+ ],
24
+ "assets": [
25
+ {
26
+ "asset": "sat:action",
27
+ "destinations": [
28
+ "REPLACE_WITH_MINING_WALLET_PUBLIC_KEY",
29
+ "REPLACE_WITH_MINER_CAPITAL_PDA",
30
+ "REPLACE_WITH_SAT_PROGRAM_ID"
31
+ ],
32
+ "maxPerTx": "REPLACE_WITH_POSITIVE_TYPED_ACTIONS_PER_TX",
33
+ "maxDaily": "REPLACE_WITH_POSITIVE_TYPED_ACTIONS_PER_UTC_DAY"
34
+ },
35
+ {
36
+ "asset": "sat:capital:lamports",
37
+ "destinations": [
38
+ "REPLACE_WITH_MINER_CAPITAL_PDA"
39
+ ],
40
+ "maxPerTx": "REPLACE_WITH_POSITIVE_ACTIVE_CAPITAL_LAMPORTS_PER_TX",
41
+ "maxDaily": "REPLACE_WITH_POSITIVE_ACTIVE_CAPITAL_LAMPORTS_PER_UTC_DAY"
42
+ },
43
+ {
44
+ "asset": "sat:mint:REPLACE_WITH_SAT_MINT",
45
+ "destinations": [
46
+ "REPLACE_WITH_MINING_WALLET_PUBLIC_KEY"
47
+ ],
48
+ "maxPerTx": "REPLACE_WITH_POSITIVE_REWARD_ACTIONS_PER_TX",
49
+ "maxDaily": "REPLACE_WITH_POSITIVE_REWARD_ACTIONS_PER_UTC_DAY"
50
+ },
51
+ {
52
+ "asset": "solana:native",
53
+ "destinations": [
54
+ "REPLACE_WITH_APPROVED_REVIEWED_SOL_RECIPIENT",
55
+ "REPLACE_WITH_MINER_CAPITAL_PDA"
56
+ ],
57
+ "maxPerTx": "REPLACE_WITH_POSITIVE_LAMPORTS_PER_TX",
58
+ "maxDaily": "REPLACE_WITH_POSITIVE_LAMPORTS_PER_UTC_DAY"
59
+ },
60
+ {
61
+ "asset": "solana:spl:REPLACE_WITH_SAT_MINT",
62
+ "destinations": [
63
+ "REPLACE_WITH_APPROVED_REVIEWED_SAT_RECIPIENT_OWNER"
64
+ ],
65
+ "maxPerTx": "REPLACE_WITH_POSITIVE_SAT_RAW_UNITS_PER_TX",
66
+ "maxDaily": "REPLACE_WITH_POSITIVE_SAT_RAW_UNITS_PER_UTC_DAY"
67
+ }
68
+ ]
69
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "primaryRpcUrl": "https://REPLACE_WITH_PRIMARY_SOLANA_RPC",
4
+ "fallbackRpcUrl": "https://REPLACE_WITH_INDEPENDENT_FALLBACK_RPC"
5
+ }
@@ -0,0 +1,70 @@
1
+ {
2
+ "walletId": "vault",
3
+ "role": "vault",
4
+ "operations": [
5
+ "federation.bondChallenge",
6
+ "solana.nativeTransfer",
7
+ "solana.splTransferChecked",
8
+ "vaultBond.cancelBondUnlock@REPLACE_WITH_SAT_BOND_PROGRAM_ID",
9
+ "vaultBond.claimBondStakingRewards@REPLACE_WITH_SAT_BOND_PROGRAM_ID",
10
+ "vaultBond.claimUnallocatedStakingRewards@REPLACE_WITH_SAT_BOND_PROGRAM_ID",
11
+ "vaultBond.finalizeBondUnlock@REPLACE_WITH_SAT_BOND_PROGRAM_ID",
12
+ "vaultBond.increaseBondPosition@REPLACE_WITH_SAT_BOND_PROGRAM_ID",
13
+ "vaultBond.openBondPosition@REPLACE_WITH_SAT_BOND_PROGRAM_ID",
14
+ "vaultBond.requestBondUnlock@REPLACE_WITH_SAT_BOND_PROGRAM_ID",
15
+ "vaultBond.syncBondStakingPosition@REPLACE_WITH_SAT_BOND_PROGRAM_ID",
16
+ "vaultBond.syncBondStakingRewards@REPLACE_WITH_SAT_BOND_PROGRAM_ID"
17
+ ],
18
+ "programs": [
19
+ "11111111111111111111111111111111",
20
+ "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
21
+ "REPLACE_WITH_SAT_BOND_PROGRAM_ID",
22
+ "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
23
+ "domain:fased:federation-bond-challenge-v1"
24
+ ],
25
+ "assets": [
26
+ {
27
+ "asset": "federation:bond-challenge",
28
+ "destinations": [
29
+ "REPLACE_WITH_VAULT_WALLET_PUBLIC_KEY"
30
+ ],
31
+ "maxPerTx": "1",
32
+ "maxDaily": "REPLACE_WITH_POSITIVE_FEDERATION_CHALLENGES_PER_UTC_DAY"
33
+ },
34
+ {
35
+ "asset": "sat:action",
36
+ "destinations": [
37
+ "REPLACE_WITH_SAT_BOND_PROGRAM_ID"
38
+ ],
39
+ "maxPerTx": "REPLACE_WITH_POSITIVE_REVIEWED_BOND_ACTIONS_PER_TX",
40
+ "maxDaily": "REPLACE_WITH_POSITIVE_REVIEWED_BOND_ACTIONS_PER_UTC_DAY"
41
+ },
42
+ {
43
+ "asset": "sat:mint:REPLACE_WITH_SAT_MINT",
44
+ "destinations": [
45
+ "REPLACE_WITH_VAULT_WALLET_PUBLIC_KEY",
46
+ "REPLACE_WITH_APPROVED_REVIEWED_SAT_RECIPIENT_OWNER",
47
+ "REPLACE_WITH_SAT_BOND_PROGRAM_ID"
48
+ ],
49
+ "maxPerTx": "REPLACE_WITH_POSITIVE_REWARD_ACTIONS_PER_TX",
50
+ "maxDaily": "REPLACE_WITH_POSITIVE_REWARD_ACTIONS_PER_UTC_DAY"
51
+ },
52
+ {
53
+ "asset": "solana:native",
54
+ "destinations": [
55
+ "REPLACE_WITH_APPROVED_REVIEWED_SOL_RECIPIENT"
56
+ ],
57
+ "maxPerTx": "REPLACE_WITH_POSITIVE_LAMPORTS_PER_TX",
58
+ "maxDaily": "REPLACE_WITH_POSITIVE_LAMPORTS_PER_UTC_DAY"
59
+ },
60
+ {
61
+ "asset": "solana:spl:REPLACE_WITH_SAT_MINT",
62
+ "destinations": [
63
+ "REPLACE_WITH_APPROVED_REVIEWED_SAT_RECIPIENT_OWNER",
64
+ "REPLACE_WITH_BOND_POSITION_PDA"
65
+ ],
66
+ "maxPerTx": "REPLACE_WITH_POSITIVE_SAT_RAW_UNITS_PER_TX",
67
+ "maxDaily": "REPLACE_WITH_POSITIVE_SAT_RAW_UNITS_PER_UTC_DAY"
68
+ }
69
+ ]
70
+ }
@@ -0,0 +1,76 @@
1
+ {
2
+ "protocol": { "current": 2, "min": 2, "max": 2 },
3
+ "nativeFeeReservationLamports": 5000000,
4
+ "intentTypes": [
5
+ "solana.nativeTransfer",
6
+ "solana.splTransferChecked",
7
+ "solana.satAction",
8
+ "solana.vaultBondAction",
9
+ "federation.bondChallenge",
10
+ "solana.jupiter.swap",
11
+ "solana.jupiter.trigger.create",
12
+ "solana.jupiter.trigger.cancel"
13
+ ],
14
+ "operationStates": ["reserved", "broadcast", "confirmed", "failed", "unknown"],
15
+ "features": [
16
+ "failClosedPolicies",
17
+ "policyHashes",
18
+ "applicationPolicyTightening",
19
+ "vaultReviewedOnly",
20
+ "durableCaps",
21
+ "atomicMultiAssetCaps",
22
+ "signerControlledNativeFeeCaps",
23
+ "atomicIdempotency",
24
+ "ambiguousBroadcastReconciliation",
25
+ "signerOwnedKeys",
26
+ "signerOwnedSuccessorRotation",
27
+ "permanentRetiredWalletPolicies",
28
+ "signerOwnedRPC",
29
+ "typedSolanaTransactions",
30
+ "typedA2aPaymentMemos",
31
+ "typedA2aRefundMemos",
32
+ "idempotentAssociatedTokenCreation",
33
+ "typedSATActions",
34
+ "typedVaultBondActions",
35
+ "domainSeparatedFederationBondChallenges",
36
+ "federationBondChallengeWrapperV2",
37
+ "signerOwnedWebAuthn",
38
+ "signerOwnedWebAuthnCredentialRevocation",
39
+ "singleUseReviewedAuthorization",
40
+ "typedJupiterSemantics",
41
+ "signerOwnedReviewPrepareExecute",
42
+ "exactPreparedTransactions",
43
+ "legacyOnlyJupiterTransactions",
44
+ "reviewedVaultBondActions",
45
+ "reviewedFederationBondChallenges",
46
+ "signerOwnedStateRecheck",
47
+ "durableReviewAuthorization",
48
+ "signerOwnedJupiterTriggerV2",
49
+ "signerOwnedJupiterTriggerHistory",
50
+ "jupiterTriggerSecretsNeverCrossSocket",
51
+ "jupiterTriggerDurablePhases"
52
+ ],
53
+ "clientRequiredFeatures": [
54
+ "failClosedPolicies",
55
+ "policyHashes",
56
+ "applicationPolicyTightening",
57
+ "durableCaps",
58
+ "atomicMultiAssetCaps",
59
+ "signerControlledNativeFeeCaps",
60
+ "atomicIdempotency",
61
+ "ambiguousBroadcastReconciliation",
62
+ "signerOwnedKeys",
63
+ "signerOwnedRPC",
64
+ "typedSolanaTransactions",
65
+ "typedA2aPaymentMemos",
66
+ "typedA2aRefundMemos",
67
+ "signerOwnedWebAuthn",
68
+ "singleUseReviewedAuthorization",
69
+ "typedJupiterSemantics",
70
+ "signerOwnedJupiterTriggerV2",
71
+ "signerOwnedJupiterTriggerHistory",
72
+ "signerOwnedReviewPrepareExecute",
73
+ "exactPreparedTransactions",
74
+ "legacyOnlyJupiterTransactions"
75
+ ]
76
+ }