@usesigil/kit 0.15.0 → 0.17.0

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 (627) hide show
  1. package/README.md +56 -0
  2. package/dist/advanced-analytics.d.ts +3 -2
  3. package/dist/advanced-analytics.d.ts.map +1 -1
  4. package/dist/advanced-analytics.js +9 -42
  5. package/dist/advanced-analytics.js.map +1 -1
  6. package/dist/agent-bootstrap.d.ts +117 -0
  7. package/dist/agent-bootstrap.d.ts.map +1 -0
  8. package/dist/agent-bootstrap.js +211 -0
  9. package/dist/agent-bootstrap.js.map +1 -0
  10. package/dist/agent-errors.d.ts +20 -4
  11. package/dist/agent-errors.d.ts.map +1 -1
  12. package/dist/agent-errors.js +947 -377
  13. package/dist/agent-errors.js.map +1 -1
  14. package/dist/audit-log.d.ts +101 -0
  15. package/dist/audit-log.d.ts.map +1 -0
  16. package/dist/audit-log.js +145 -0
  17. package/dist/audit-log.js.map +1 -0
  18. package/dist/build-unsigned.d.ts +152 -0
  19. package/dist/build-unsigned.d.ts.map +1 -0
  20. package/dist/build-unsigned.js +152 -0
  21. package/dist/build-unsigned.js.map +1 -0
  22. package/dist/caip2-network.d.ts +171 -0
  23. package/dist/caip2-network.d.ts.map +1 -0
  24. package/dist/caip2-network.js +202 -0
  25. package/dist/caip2-network.js.map +1 -0
  26. package/dist/canonical-encode.d.ts +59 -0
  27. package/dist/canonical-encode.d.ts.map +1 -0
  28. package/dist/canonical-encode.js +141 -0
  29. package/dist/canonical-encode.js.map +1 -0
  30. package/dist/cosign-helper.d.ts +264 -0
  31. package/dist/cosign-helper.d.ts.map +1 -0
  32. package/dist/cosign-helper.js +147 -0
  33. package/dist/cosign-helper.js.map +1 -0
  34. package/dist/create-vault.d.ts +102 -1
  35. package/dist/create-vault.d.ts.map +1 -1
  36. package/dist/create-vault.js +108 -9
  37. package/dist/create-vault.js.map +1 -1
  38. package/dist/dashboard/close-vault.d.ts +110 -0
  39. package/dist/dashboard/close-vault.d.ts.map +1 -0
  40. package/dist/dashboard/close-vault.js +165 -0
  41. package/dist/dashboard/close-vault.js.map +1 -0
  42. package/dist/dashboard/errors.d.ts +37 -0
  43. package/dist/dashboard/errors.d.ts.map +1 -1
  44. package/dist/dashboard/errors.js +81 -1
  45. package/dist/dashboard/errors.js.map +1 -1
  46. package/dist/dashboard/from-json.d.ts.map +1 -1
  47. package/dist/dashboard/from-json.js +1 -2
  48. package/dist/dashboard/from-json.js.map +1 -1
  49. package/dist/dashboard/index.d.ts +204 -31
  50. package/dist/dashboard/index.d.ts.map +1 -1
  51. package/dist/dashboard/index.js +290 -49
  52. package/dist/dashboard/index.js.map +1 -1
  53. package/dist/dashboard/mutations.d.ts +160 -10
  54. package/dist/dashboard/mutations.d.ts.map +1 -1
  55. package/dist/dashboard/mutations.js +584 -66
  56. package/dist/dashboard/mutations.js.map +1 -1
  57. package/dist/dashboard/post-assertion-validation.d.ts +88 -0
  58. package/dist/dashboard/post-assertion-validation.d.ts.map +1 -0
  59. package/dist/dashboard/post-assertion-validation.js +312 -0
  60. package/dist/dashboard/post-assertion-validation.js.map +1 -0
  61. package/dist/dashboard/reads.d.ts +92 -1
  62. package/dist/dashboard/reads.d.ts.map +1 -1
  63. package/dist/dashboard/reads.js +244 -26
  64. package/dist/dashboard/reads.js.map +1 -1
  65. package/dist/dashboard/types.d.ts +172 -21
  66. package/dist/dashboard/types.d.ts.map +1 -1
  67. package/dist/errors/agent-errors.generated.d.ts +21 -0
  68. package/dist/errors/agent-errors.generated.d.ts.map +1 -0
  69. package/dist/errors/agent-errors.generated.js +133 -0
  70. package/dist/errors/agent-errors.generated.js.map +1 -0
  71. package/dist/errors/codes.d.ts +21 -2
  72. package/dist/errors/codes.d.ts.map +1 -1
  73. package/dist/errors/codes.js +20 -1
  74. package/dist/errors/codes.js.map +1 -1
  75. package/dist/errors/context.d.ts +9 -1
  76. package/dist/errors/context.d.ts.map +1 -1
  77. package/dist/event-analytics.d.ts +1 -3
  78. package/dist/event-analytics.d.ts.map +1 -1
  79. package/dist/event-analytics.js +28 -81
  80. package/dist/event-analytics.js.map +1 -1
  81. package/dist/events.d.ts.map +1 -1
  82. package/dist/events.js +23 -13
  83. package/dist/events.js.map +1 -1
  84. package/dist/generated/accounts/agentSpendOverlay.d.ts +60 -0
  85. package/dist/generated/accounts/agentSpendOverlay.d.ts.map +1 -1
  86. package/dist/generated/accounts/agentSpendOverlay.js +6 -2
  87. package/dist/generated/accounts/agentSpendOverlay.js.map +1 -1
  88. package/dist/generated/accounts/agentVault.d.ts +168 -4
  89. package/dist/generated/accounts/agentVault.d.ts.map +1 -1
  90. package/dist/generated/accounts/agentVault.js +11 -3
  91. package/dist/generated/accounts/agentVault.js.map +1 -1
  92. package/dist/generated/accounts/auditLogRejected.d.ts +66 -0
  93. package/dist/generated/accounts/auditLogRejected.d.ts.map +1 -0
  94. package/dist/generated/accounts/auditLogRejected.js +68 -0
  95. package/dist/generated/accounts/auditLogRejected.js.map +1 -0
  96. package/dist/generated/accounts/auditLogSuccess.d.ts +78 -0
  97. package/dist/generated/accounts/auditLogSuccess.d.ts.map +1 -0
  98. package/dist/generated/accounts/auditLogSuccess.js +68 -0
  99. package/dist/generated/accounts/auditLogSuccess.js.map +1 -0
  100. package/dist/generated/accounts/index.d.ts +4 -4
  101. package/dist/generated/accounts/index.d.ts.map +1 -1
  102. package/dist/generated/accounts/index.js +4 -4
  103. package/dist/generated/accounts/index.js.map +1 -1
  104. package/dist/generated/accounts/pendingAgentGrant.d.ts +199 -0
  105. package/dist/generated/accounts/pendingAgentGrant.d.ts.map +1 -0
  106. package/dist/generated/accounts/pendingAgentGrant.js +75 -0
  107. package/dist/generated/accounts/pendingAgentGrant.js.map +1 -0
  108. package/dist/generated/accounts/pendingAgentPermissionsUpdate.d.ts +76 -0
  109. package/dist/generated/accounts/pendingAgentPermissionsUpdate.d.ts.map +1 -1
  110. package/dist/generated/accounts/pendingAgentPermissionsUpdate.js +9 -1
  111. package/dist/generated/accounts/pendingAgentPermissionsUpdate.js.map +1 -1
  112. package/dist/generated/accounts/pendingOwnershipTransfer.d.ts +131 -0
  113. package/dist/generated/accounts/pendingOwnershipTransfer.d.ts.map +1 -0
  114. package/dist/generated/accounts/pendingOwnershipTransfer.js +76 -0
  115. package/dist/generated/accounts/pendingOwnershipTransfer.js.map +1 -0
  116. package/dist/generated/accounts/pendingPolicyUpdate.d.ts +220 -4
  117. package/dist/generated/accounts/pendingPolicyUpdate.d.ts.map +1 -1
  118. package/dist/generated/accounts/pendingPolicyUpdate.js +25 -5
  119. package/dist/generated/accounts/pendingPolicyUpdate.js.map +1 -1
  120. package/dist/generated/accounts/policyConfig.d.ts +495 -34
  121. package/dist/generated/accounts/policyConfig.d.ts.map +1 -1
  122. package/dist/generated/accounts/policyConfig.js +34 -7
  123. package/dist/generated/accounts/policyConfig.js.map +1 -1
  124. package/dist/generated/accounts/postExecutionAssertions.d.ts +2 -2
  125. package/dist/generated/accounts/postExecutionAssertions.d.ts.map +1 -1
  126. package/dist/generated/accounts/postExecutionAssertions.js +3 -3
  127. package/dist/generated/accounts/sessionAuthority.d.ts +154 -12
  128. package/dist/generated/accounts/sessionAuthority.d.ts.map +1 -1
  129. package/dist/generated/accounts/sessionAuthority.js +12 -10
  130. package/dist/generated/accounts/sessionAuthority.js.map +1 -1
  131. package/dist/generated/accounts/spendTracker.d.ts +83 -3
  132. package/dist/generated/accounts/spendTracker.d.ts.map +1 -1
  133. package/dist/generated/accounts/spendTracker.js +14 -2
  134. package/dist/generated/accounts/spendTracker.js.map +1 -1
  135. package/dist/generated/errors/sigil.d.ts +160 -100
  136. package/dist/generated/errors/sigil.d.ts.map +1 -1
  137. package/dist/generated/errors/sigil.js +214 -124
  138. package/dist/generated/errors/sigil.js.map +1 -1
  139. package/dist/generated/event-discriminators.d.ts.map +1 -1
  140. package/dist/generated/event-discriminators.js +11 -13
  141. package/dist/generated/event-discriminators.js.map +1 -1
  142. package/dist/generated/instructions/acceptOwnershipTransfer.d.ts +142 -0
  143. package/dist/generated/instructions/acceptOwnershipTransfer.d.ts.map +1 -0
  144. package/dist/generated/instructions/acceptOwnershipTransfer.js +171 -0
  145. package/dist/generated/instructions/acceptOwnershipTransfer.js.map +1 -0
  146. package/dist/generated/instructions/acceptOwnershipTransferMultisig.d.ts +142 -0
  147. package/dist/generated/instructions/acceptOwnershipTransferMultisig.d.ts.map +1 -0
  148. package/dist/generated/instructions/acceptOwnershipTransferMultisig.js +171 -0
  149. package/dist/generated/instructions/acceptOwnershipTransferMultisig.js.map +1 -0
  150. package/dist/generated/instructions/applyAgentGrant.d.ts +100 -0
  151. package/dist/generated/instructions/applyAgentGrant.d.ts.map +1 -0
  152. package/dist/generated/instructions/{applyConstraintsUpdate.js → applyAgentGrant.js} +66 -42
  153. package/dist/generated/instructions/applyAgentGrant.js.map +1 -0
  154. package/dist/generated/instructions/applyAgentPermissionsUpdate.d.ts +31 -8
  155. package/dist/generated/instructions/applyAgentPermissionsUpdate.d.ts.map +1 -1
  156. package/dist/generated/instructions/applyAgentPermissionsUpdate.js +38 -2
  157. package/dist/generated/instructions/applyAgentPermissionsUpdate.js.map +1 -1
  158. package/dist/generated/instructions/applyPendingPolicy.d.ts +18 -7
  159. package/dist/generated/instructions/applyPendingPolicy.d.ts.map +1 -1
  160. package/dist/generated/instructions/applyPendingPolicy.js +38 -2
  161. package/dist/generated/instructions/applyPendingPolicy.js.map +1 -1
  162. package/dist/generated/instructions/cancelAgentGrant.d.ts +106 -0
  163. package/dist/generated/instructions/cancelAgentGrant.d.ts.map +1 -0
  164. package/dist/generated/instructions/{allocatePendingConstraintsPda.js → cancelAgentGrant.js} +54 -42
  165. package/dist/generated/instructions/cancelAgentGrant.js.map +1 -0
  166. package/dist/generated/instructions/cancelOwnershipTransfer.d.ts +121 -0
  167. package/dist/generated/instructions/cancelOwnershipTransfer.d.ts.map +1 -0
  168. package/dist/generated/instructions/{queueCloseConstraints.js → cancelOwnershipTransfer.js} +58 -44
  169. package/dist/generated/instructions/cancelOwnershipTransfer.js.map +1 -0
  170. package/dist/generated/instructions/closePostAssertions.d.ts +6 -1
  171. package/dist/generated/instructions/closePostAssertions.d.ts.map +1 -1
  172. package/dist/generated/instructions/closePostAssertions.js +11 -3
  173. package/dist/generated/instructions/closePostAssertions.js.map +1 -1
  174. package/dist/generated/instructions/closeVault.d.ts +40 -8
  175. package/dist/generated/instructions/closeVault.d.ts.map +1 -1
  176. package/dist/generated/instructions/closeVault.js +40 -2
  177. package/dist/generated/instructions/closeVault.js.map +1 -1
  178. package/dist/generated/instructions/createPostAssertions.d.ts +4 -0
  179. package/dist/generated/instructions/createPostAssertions.d.ts.map +1 -1
  180. package/dist/generated/instructions/createPostAssertions.js +2 -0
  181. package/dist/generated/instructions/createPostAssertions.js.map +1 -1
  182. package/dist/generated/instructions/depositFunds.d.ts +21 -10
  183. package/dist/generated/instructions/depositFunds.d.ts.map +1 -1
  184. package/dist/generated/instructions/depositFunds.js +37 -2
  185. package/dist/generated/instructions/depositFunds.js.map +1 -1
  186. package/dist/generated/instructions/finalizeSession.d.ts +49 -7
  187. package/dist/generated/instructions/finalizeSession.d.ts.map +1 -1
  188. package/dist/generated/instructions/finalizeSession.js +59 -2
  189. package/dist/generated/instructions/finalizeSession.js.map +1 -1
  190. package/dist/generated/instructions/freezeVault.d.ts +39 -5
  191. package/dist/generated/instructions/freezeVault.d.ts.map +1 -1
  192. package/dist/generated/instructions/freezeVault.js +77 -5
  193. package/dist/generated/instructions/freezeVault.js.map +1 -1
  194. package/dist/generated/instructions/index.d.ts +10 -14
  195. package/dist/generated/instructions/index.d.ts.map +1 -1
  196. package/dist/generated/instructions/index.js +10 -14
  197. package/dist/generated/instructions/index.js.map +1 -1
  198. package/dist/generated/instructions/initializeVault.d.ts +79 -13
  199. package/dist/generated/instructions/initializeVault.d.ts.map +1 -1
  200. package/dist/generated/instructions/initializeVault.js +57 -5
  201. package/dist/generated/instructions/initializeVault.js.map +1 -1
  202. package/dist/generated/instructions/initiateOwnershipTransfer.d.ts +106 -0
  203. package/dist/generated/instructions/initiateOwnershipTransfer.d.ts.map +1 -0
  204. package/dist/generated/instructions/initiateOwnershipTransfer.js +181 -0
  205. package/dist/generated/instructions/initiateOwnershipTransfer.js.map +1 -0
  206. package/dist/generated/instructions/pauseAgent.d.ts +49 -5
  207. package/dist/generated/instructions/pauseAgent.d.ts.map +1 -1
  208. package/dist/generated/instructions/pauseAgent.js +80 -5
  209. package/dist/generated/instructions/pauseAgent.js.map +1 -1
  210. package/dist/generated/instructions/promoteGraylistDestination.d.ts +56 -0
  211. package/dist/generated/instructions/promoteGraylistDestination.d.ts.map +1 -0
  212. package/dist/generated/instructions/{createInstructionConstraints.js → promoteGraylistDestination.js} +23 -40
  213. package/dist/generated/instructions/promoteGraylistDestination.js.map +1 -0
  214. package/dist/generated/instructions/queueAgentGrant.d.ts +113 -0
  215. package/dist/generated/instructions/queueAgentGrant.d.ts.map +1 -0
  216. package/dist/generated/instructions/queueAgentGrant.js +181 -0
  217. package/dist/generated/instructions/queueAgentGrant.js.map +1 -0
  218. package/dist/generated/instructions/queueAgentPermissionsUpdate.d.ts +8 -0
  219. package/dist/generated/instructions/queueAgentPermissionsUpdate.d.ts.map +1 -1
  220. package/dist/generated/instructions/queueAgentPermissionsUpdate.js +4 -0
  221. package/dist/generated/instructions/queueAgentPermissionsUpdate.js.map +1 -1
  222. package/dist/generated/instructions/queuePolicyUpdate.d.ts +40 -8
  223. package/dist/generated/instructions/queuePolicyUpdate.d.ts.map +1 -1
  224. package/dist/generated/instructions/queuePolicyUpdate.js +21 -5
  225. package/dist/generated/instructions/queuePolicyUpdate.js.map +1 -1
  226. package/dist/generated/instructions/reactivateVault.d.ts +71 -5
  227. package/dist/generated/instructions/reactivateVault.d.ts.map +1 -1
  228. package/dist/generated/instructions/reactivateVault.js +80 -5
  229. package/dist/generated/instructions/reactivateVault.js.map +1 -1
  230. package/dist/generated/instructions/recordAgentViolation.d.ts +89 -0
  231. package/dist/generated/instructions/recordAgentViolation.d.ts.map +1 -0
  232. package/dist/generated/instructions/recordAgentViolation.js +152 -0
  233. package/dist/generated/instructions/recordAgentViolation.js.map +1 -0
  234. package/dist/generated/instructions/registerAgent.d.ts +84 -6
  235. package/dist/generated/instructions/registerAgent.d.ts.map +1 -1
  236. package/dist/generated/instructions/registerAgent.js +81 -4
  237. package/dist/generated/instructions/registerAgent.js.map +1 -1
  238. package/dist/generated/instructions/revokeAgent.d.ts +49 -6
  239. package/dist/generated/instructions/revokeAgent.d.ts.map +1 -1
  240. package/dist/generated/instructions/revokeAgent.js +81 -4
  241. package/dist/generated/instructions/revokeAgent.js.map +1 -1
  242. package/dist/generated/instructions/setObserveOnly.d.ts +56 -0
  243. package/dist/generated/instructions/setObserveOnly.d.ts.map +1 -0
  244. package/dist/generated/instructions/setObserveOnly.js +111 -0
  245. package/dist/generated/instructions/setObserveOnly.js.map +1 -0
  246. package/dist/generated/instructions/unpauseAgent.d.ts +46 -5
  247. package/dist/generated/instructions/unpauseAgent.d.ts.map +1 -1
  248. package/dist/generated/instructions/unpauseAgent.js +80 -5
  249. package/dist/generated/instructions/unpauseAgent.js.map +1 -1
  250. package/dist/generated/instructions/validateAndAuthorize.d.ts +29 -0
  251. package/dist/generated/instructions/validateAndAuthorize.d.ts.map +1 -1
  252. package/dist/generated/instructions/validateAndAuthorize.js +4 -0
  253. package/dist/generated/instructions/validateAndAuthorize.js.map +1 -1
  254. package/dist/generated/instructions/withdrawFunds.d.ts +53 -11
  255. package/dist/generated/instructions/withdrawFunds.d.ts.map +1 -1
  256. package/dist/generated/instructions/withdrawFunds.js +51 -2
  257. package/dist/generated/instructions/withdrawFunds.js.map +1 -1
  258. package/dist/generated/programs/sigil.d.ts +79 -95
  259. package/dist/generated/programs/sigil.d.ts.map +1 -1
  260. package/dist/generated/programs/sigil.js +139 -187
  261. package/dist/generated/programs/sigil.js.map +1 -1
  262. package/dist/generated/types/actionAuthorized.d.ts +0 -2
  263. package/dist/generated/types/actionAuthorized.d.ts.map +1 -1
  264. package/dist/generated/types/actionAuthorized.js +0 -2
  265. package/dist/generated/types/actionAuthorized.js.map +1 -1
  266. package/dist/generated/types/agentAutoRevoked.d.ts +31 -0
  267. package/dist/generated/types/agentAutoRevoked.d.ts.map +1 -0
  268. package/dist/generated/types/{pdaAllocated.js → agentAutoRevoked.js} +12 -10
  269. package/dist/generated/types/agentAutoRevoked.js.map +1 -0
  270. package/dist/generated/types/agentEntry.d.ts +48 -0
  271. package/dist/generated/types/agentEntry.d.ts.map +1 -1
  272. package/dist/generated/types/agentEntry.js +4 -2
  273. package/dist/generated/types/agentEntry.js.map +1 -1
  274. package/dist/generated/types/agentGrantApplied.d.ts +38 -0
  275. package/dist/generated/types/agentGrantApplied.d.ts.map +1 -0
  276. package/dist/generated/types/agentGrantApplied.js +34 -0
  277. package/dist/generated/types/agentGrantApplied.js.map +1 -0
  278. package/dist/generated/types/agentGrantCancelled.d.ts +33 -0
  279. package/dist/generated/types/agentGrantCancelled.d.ts.map +1 -0
  280. package/dist/generated/types/agentGrantCancelled.js +28 -0
  281. package/dist/generated/types/agentGrantCancelled.js.map +1 -0
  282. package/dist/generated/types/agentGrantQueued.d.ts +38 -0
  283. package/dist/generated/types/agentGrantQueued.d.ts.map +1 -0
  284. package/dist/generated/types/agentGrantQueued.js +32 -0
  285. package/dist/generated/types/agentGrantQueued.js.map +1 -0
  286. package/dist/generated/types/auditEntry.d.ts +120 -0
  287. package/dist/generated/types/auditEntry.d.ts.map +1 -0
  288. package/dist/generated/types/auditEntry.js +34 -0
  289. package/dist/generated/types/auditEntry.js.map +1 -0
  290. package/dist/generated/types/destinationGraylistEntry.d.ts +32 -0
  291. package/dist/generated/types/destinationGraylistEntry.d.ts.map +1 -0
  292. package/dist/generated/types/destinationGraylistEntry.js +24 -0
  293. package/dist/generated/types/destinationGraylistEntry.js.map +1 -0
  294. package/dist/generated/types/graylistEntered.d.ts +31 -0
  295. package/dist/generated/types/graylistEntered.d.ts.map +1 -0
  296. package/dist/generated/types/graylistEntered.js +30 -0
  297. package/dist/generated/types/graylistEntered.js.map +1 -0
  298. package/dist/generated/types/graylistPromoted.d.ts +29 -0
  299. package/dist/generated/types/graylistPromoted.d.ts.map +1 -0
  300. package/dist/generated/types/graylistPromoted.js +28 -0
  301. package/dist/generated/types/graylistPromoted.js.map +1 -0
  302. package/dist/generated/types/index.d.ts +13 -21
  303. package/dist/generated/types/index.d.ts.map +1 -1
  304. package/dist/generated/types/index.js +13 -21
  305. package/dist/generated/types/index.js.map +1 -1
  306. package/dist/generated/types/observeOnlyChanged.d.ts +33 -0
  307. package/dist/generated/types/observeOnlyChanged.d.ts.map +1 -0
  308. package/dist/generated/types/observeOnlyChanged.js +32 -0
  309. package/dist/generated/types/observeOnlyChanged.js.map +1 -0
  310. package/dist/generated/types/ownershipTransferAccepted.d.ts +32 -0
  311. package/dist/generated/types/ownershipTransferAccepted.d.ts.map +1 -0
  312. package/dist/generated/types/ownershipTransferAccepted.js +30 -0
  313. package/dist/generated/types/ownershipTransferAccepted.js.map +1 -0
  314. package/dist/generated/types/ownershipTransferCancelled.d.ts +29 -0
  315. package/dist/generated/types/ownershipTransferCancelled.d.ts.map +1 -0
  316. package/dist/generated/types/ownershipTransferCancelled.js +28 -0
  317. package/dist/generated/types/ownershipTransferCancelled.js.map +1 -0
  318. package/dist/generated/types/ownershipTransferInitiated.d.ts +33 -0
  319. package/dist/generated/types/ownershipTransferInitiated.d.ts.map +1 -0
  320. package/dist/generated/types/ownershipTransferInitiated.js +30 -0
  321. package/dist/generated/types/ownershipTransferInitiated.js.map +1 -0
  322. package/dist/generated/types/perRecipientCounter.d.ts +61 -0
  323. package/dist/generated/types/perRecipientCounter.d.ts.map +1 -0
  324. package/dist/generated/types/perRecipientCounter.js +26 -0
  325. package/dist/generated/types/perRecipientCounter.js.map +1 -0
  326. package/dist/generated/types/postAssertionEntry.d.ts +14 -7
  327. package/dist/generated/types/postAssertionEntry.d.ts.map +1 -1
  328. package/dist/generated/types/postAssertionEntry.js +5 -7
  329. package/dist/generated/types/postAssertionEntry.js.map +1 -1
  330. package/dist/generated/types/postAssertionEntryZC.d.ts +53 -22
  331. package/dist/generated/types/postAssertionEntryZC.d.ts.map +1 -1
  332. package/dist/generated/types/postAssertionEntryZC.js +4 -6
  333. package/dist/generated/types/postAssertionEntryZC.js.map +1 -1
  334. package/dist/generated/types/sessionFinalized.d.ts +0 -4
  335. package/dist/generated/types/sessionFinalized.d.ts.map +1 -1
  336. package/dist/generated/types/sessionFinalized.js +0 -2
  337. package/dist/generated/types/sessionFinalized.js.map +1 -1
  338. package/dist/generated/types/vaultFrozen.d.ts +26 -0
  339. package/dist/generated/types/vaultFrozen.d.ts.map +1 -1
  340. package/dist/generated/types/vaultFrozen.js +5 -1
  341. package/dist/generated/types/vaultFrozen.js.map +1 -1
  342. package/dist/index.d.ts +35 -6
  343. package/dist/index.d.ts.map +1 -1
  344. package/dist/index.js +81 -7
  345. package/dist/index.js.map +1 -1
  346. package/dist/inscribe.d.ts +0 -4
  347. package/dist/inscribe.d.ts.map +1 -1
  348. package/dist/inscribe.js +0 -1
  349. package/dist/inscribe.js.map +1 -1
  350. package/dist/inspector.d.ts +0 -23
  351. package/dist/inspector.d.ts.map +1 -1
  352. package/dist/inspector.js +0 -52
  353. package/dist/inspector.js.map +1 -1
  354. package/dist/kit-adapter.d.ts +1 -1
  355. package/dist/kit-adapter.d.ts.map +1 -1
  356. package/dist/kit-adapter.js +1 -1
  357. package/dist/kit-adapter.js.map +1 -1
  358. package/dist/logger.d.ts +48 -0
  359. package/dist/logger.d.ts.map +1 -1
  360. package/dist/logger.js +36 -0
  361. package/dist/logger.js.map +1 -1
  362. package/dist/multisig-detection.d.ts +83 -0
  363. package/dist/multisig-detection.d.ts.map +1 -0
  364. package/dist/multisig-detection.js +128 -0
  365. package/dist/multisig-detection.js.map +1 -0
  366. package/dist/owner-transaction.d.ts +8 -0
  367. package/dist/owner-transaction.d.ts.map +1 -1
  368. package/dist/owner-transaction.js +1 -0
  369. package/dist/owner-transaction.js.map +1 -1
  370. package/dist/ownership-transfer.d.ts +79 -0
  371. package/dist/ownership-transfer.d.ts.map +1 -0
  372. package/dist/ownership-transfer.js +66 -0
  373. package/dist/ownership-transfer.js.map +1 -0
  374. package/dist/policy/compute-cosign-digest.d.ts +193 -0
  375. package/dist/policy/compute-cosign-digest.d.ts.map +1 -0
  376. package/dist/policy/compute-cosign-digest.js +318 -0
  377. package/dist/policy/compute-cosign-digest.js.map +1 -0
  378. package/dist/policy/compute-policy-preview-digest.d.ts +258 -0
  379. package/dist/policy/compute-policy-preview-digest.d.ts.map +1 -0
  380. package/dist/policy/compute-policy-preview-digest.js +351 -0
  381. package/dist/policy/compute-policy-preview-digest.js.map +1 -0
  382. package/dist/policy-attestation.d.ts +51 -0
  383. package/dist/policy-attestation.d.ts.map +1 -0
  384. package/dist/policy-attestation.js +43 -0
  385. package/dist/policy-attestation.js.map +1 -0
  386. package/dist/presets.d.ts +1 -7
  387. package/dist/presets.d.ts.map +1 -1
  388. package/dist/presets.js +0 -5
  389. package/dist/presets.js.map +1 -1
  390. package/dist/preview-create-vault.d.ts +280 -0
  391. package/dist/preview-create-vault.d.ts.map +1 -0
  392. package/dist/preview-create-vault.js +498 -0
  393. package/dist/preview-create-vault.js.map +1 -0
  394. package/dist/resolve-accounts.d.ts +75 -10
  395. package/dist/resolve-accounts.d.ts.map +1 -1
  396. package/dist/resolve-accounts.js +68 -32
  397. package/dist/resolve-accounts.js.map +1 -1
  398. package/dist/rpc-helpers.d.ts +29 -3
  399. package/dist/rpc-helpers.d.ts.map +1 -1
  400. package/dist/rpc-helpers.js +51 -12
  401. package/dist/rpc-helpers.js.map +1 -1
  402. package/dist/seal/intent-digest.d.ts +195 -0
  403. package/dist/seal/intent-digest.d.ts.map +1 -0
  404. package/dist/seal/intent-digest.js +372 -0
  405. package/dist/seal/intent-digest.js.map +1 -0
  406. package/dist/seal.d.ts +166 -3
  407. package/dist/seal.d.ts.map +1 -1
  408. package/dist/seal.js +428 -8
  409. package/dist/seal.js.map +1 -1
  410. package/dist/security-analytics.d.ts +3 -3
  411. package/dist/security-analytics.d.ts.map +1 -1
  412. package/dist/security-analytics.js +13 -128
  413. package/dist/security-analytics.js.map +1 -1
  414. package/dist/session-mint.d.ts +72 -0
  415. package/dist/session-mint.d.ts.map +1 -0
  416. package/dist/session-mint.js +59 -0
  417. package/dist/session-mint.js.map +1 -0
  418. package/dist/sigil.d.ts +0 -4
  419. package/dist/sigil.d.ts.map +1 -1
  420. package/dist/simulation.d.ts +19 -0
  421. package/dist/simulation.d.ts.map +1 -1
  422. package/dist/simulation.js +211 -138
  423. package/dist/simulation.js.map +1 -1
  424. package/dist/squads-detection.d.ts +135 -0
  425. package/dist/squads-detection.d.ts.map +1 -0
  426. package/dist/squads-detection.js +124 -0
  427. package/dist/squads-detection.js.map +1 -0
  428. package/dist/state-resolver.d.ts +0 -16
  429. package/dist/state-resolver.d.ts.map +1 -1
  430. package/dist/state-resolver.js +162 -97
  431. package/dist/state-resolver.js.map +1 -1
  432. package/dist/testing/devnet.d.ts +40 -1
  433. package/dist/testing/devnet.d.ts.map +1 -1
  434. package/dist/testing/devnet.js +333 -45
  435. package/dist/testing/devnet.js.map +1 -1
  436. package/dist/testing/errors/expect.d.ts +137 -0
  437. package/dist/testing/errors/expect.d.ts.map +1 -0
  438. package/dist/testing/errors/expect.js +372 -0
  439. package/dist/testing/errors/expect.js.map +1 -0
  440. package/dist/testing/errors/index.d.ts +3 -0
  441. package/dist/testing/errors/index.d.ts.map +1 -0
  442. package/dist/testing/errors/index.js +8 -0
  443. package/dist/testing/errors/index.js.map +1 -0
  444. package/dist/testing/errors/names.generated.d.ts +211 -0
  445. package/dist/testing/errors/names.generated.d.ts.map +1 -0
  446. package/dist/testing/errors/names.generated.js +206 -0
  447. package/dist/testing/errors/names.generated.js.map +1 -0
  448. package/dist/testing/index.d.ts +1 -0
  449. package/dist/testing/index.d.ts.map +1 -1
  450. package/dist/testing/index.js +8 -0
  451. package/dist/testing/index.js.map +1 -1
  452. package/dist/testing/mock-rpc.d.ts +16 -0
  453. package/dist/testing/mock-rpc.d.ts.map +1 -1
  454. package/dist/testing/mock-rpc.js +27 -0
  455. package/dist/testing/mock-rpc.js.map +1 -1
  456. package/dist/testing/mock-state.d.ts +2 -0
  457. package/dist/testing/mock-state.d.ts.map +1 -1
  458. package/dist/testing/mock-state.js +45 -6
  459. package/dist/testing/mock-state.js.map +1 -1
  460. package/dist/types.d.ts +5 -15
  461. package/dist/types.d.ts.map +1 -1
  462. package/dist/types.js +11 -69
  463. package/dist/types.js.map +1 -1
  464. package/dist/vault-analytics.d.ts +0 -2
  465. package/dist/vault-analytics.d.ts.map +1 -1
  466. package/dist/vault-analytics.js +1 -9
  467. package/dist/vault-analytics.js.map +1 -1
  468. package/package.json +12 -5
  469. package/dist/dashboard/constraint-reads.d.ts +0 -50
  470. package/dist/dashboard/constraint-reads.d.ts.map +0 -1
  471. package/dist/dashboard/constraint-reads.js +0 -119
  472. package/dist/dashboard/constraint-reads.js.map +0 -1
  473. package/dist/generated/accounts/escrowDeposit.d.ts +0 -50
  474. package/dist/generated/accounts/escrowDeposit.d.ts.map +0 -1
  475. package/dist/generated/accounts/escrowDeposit.js +0 -76
  476. package/dist/generated/accounts/escrowDeposit.js.map +0 -1
  477. package/dist/generated/accounts/instructionConstraints.d.ts +0 -46
  478. package/dist/generated/accounts/instructionConstraints.d.ts.map +0 -1
  479. package/dist/generated/accounts/instructionConstraints.js +0 -73
  480. package/dist/generated/accounts/instructionConstraints.js.map +0 -1
  481. package/dist/generated/accounts/pendingCloseConstraints.d.ts +0 -37
  482. package/dist/generated/accounts/pendingCloseConstraints.d.ts.map +0 -1
  483. package/dist/generated/accounts/pendingCloseConstraints.js +0 -66
  484. package/dist/generated/accounts/pendingCloseConstraints.js.map +0 -1
  485. package/dist/generated/accounts/pendingConstraintsUpdate.d.ts +0 -62
  486. package/dist/generated/accounts/pendingConstraintsUpdate.d.ts.map +0 -1
  487. package/dist/generated/accounts/pendingConstraintsUpdate.js +0 -75
  488. package/dist/generated/accounts/pendingConstraintsUpdate.js.map +0 -1
  489. package/dist/generated/instructions/allocateConstraintsPda.d.ts +0 -62
  490. package/dist/generated/instructions/allocateConstraintsPda.d.ts.map +0 -1
  491. package/dist/generated/instructions/allocateConstraintsPda.js +0 -134
  492. package/dist/generated/instructions/allocateConstraintsPda.js.map +0 -1
  493. package/dist/generated/instructions/allocatePendingConstraintsPda.d.ts +0 -66
  494. package/dist/generated/instructions/allocatePendingConstraintsPda.d.ts.map +0 -1
  495. package/dist/generated/instructions/allocatePendingConstraintsPda.js.map +0 -1
  496. package/dist/generated/instructions/applyCloseConstraints.d.ts +0 -59
  497. package/dist/generated/instructions/applyCloseConstraints.d.ts.map +0 -1
  498. package/dist/generated/instructions/applyCloseConstraints.js +0 -143
  499. package/dist/generated/instructions/applyCloseConstraints.js.map +0 -1
  500. package/dist/generated/instructions/applyConstraintsUpdate.d.ts +0 -62
  501. package/dist/generated/instructions/applyConstraintsUpdate.d.ts.map +0 -1
  502. package/dist/generated/instructions/applyConstraintsUpdate.js.map +0 -1
  503. package/dist/generated/instructions/cancelCloseConstraints.d.ts +0 -51
  504. package/dist/generated/instructions/cancelCloseConstraints.d.ts.map +0 -1
  505. package/dist/generated/instructions/cancelCloseConstraints.js +0 -115
  506. package/dist/generated/instructions/cancelCloseConstraints.js.map +0 -1
  507. package/dist/generated/instructions/cancelConstraintsUpdate.d.ts +0 -51
  508. package/dist/generated/instructions/cancelConstraintsUpdate.d.ts.map +0 -1
  509. package/dist/generated/instructions/cancelConstraintsUpdate.js +0 -115
  510. package/dist/generated/instructions/cancelConstraintsUpdate.js.map +0 -1
  511. package/dist/generated/instructions/closeSettledEscrow.d.ts +0 -72
  512. package/dist/generated/instructions/closeSettledEscrow.d.ts.map +0 -1
  513. package/dist/generated/instructions/closeSettledEscrow.js +0 -127
  514. package/dist/generated/instructions/closeSettledEscrow.js.map +0 -1
  515. package/dist/generated/instructions/createEscrow.d.ts +0 -131
  516. package/dist/generated/instructions/createEscrow.d.ts.map +0 -1
  517. package/dist/generated/instructions/createEscrow.js +0 -272
  518. package/dist/generated/instructions/createEscrow.js.map +0 -1
  519. package/dist/generated/instructions/createInstructionConstraints.d.ts +0 -68
  520. package/dist/generated/instructions/createInstructionConstraints.d.ts.map +0 -1
  521. package/dist/generated/instructions/createInstructionConstraints.js.map +0 -1
  522. package/dist/generated/instructions/extendPda.d.ts +0 -52
  523. package/dist/generated/instructions/extendPda.d.ts.map +0 -1
  524. package/dist/generated/instructions/extendPda.js +0 -86
  525. package/dist/generated/instructions/extendPda.js.map +0 -1
  526. package/dist/generated/instructions/queueCloseConstraints.d.ts +0 -66
  527. package/dist/generated/instructions/queueCloseConstraints.d.ts.map +0 -1
  528. package/dist/generated/instructions/queueCloseConstraints.js.map +0 -1
  529. package/dist/generated/instructions/queueConstraintsUpdate.d.ts +0 -75
  530. package/dist/generated/instructions/queueConstraintsUpdate.d.ts.map +0 -1
  531. package/dist/generated/instructions/queueConstraintsUpdate.js +0 -154
  532. package/dist/generated/instructions/queueConstraintsUpdate.js.map +0 -1
  533. package/dist/generated/instructions/refundEscrow.d.ts +0 -74
  534. package/dist/generated/instructions/refundEscrow.d.ts.map +0 -1
  535. package/dist/generated/instructions/refundEscrow.js +0 -142
  536. package/dist/generated/instructions/refundEscrow.js.map +0 -1
  537. package/dist/generated/instructions/settleEscrow.d.ts +0 -80
  538. package/dist/generated/instructions/settleEscrow.d.ts.map +0 -1
  539. package/dist/generated/instructions/settleEscrow.js +0 -173
  540. package/dist/generated/instructions/settleEscrow.js.map +0 -1
  541. package/dist/generated/types/accountConstraint.d.ts +0 -18
  542. package/dist/generated/types/accountConstraint.d.ts.map +0 -1
  543. package/dist/generated/types/accountConstraint.js +0 -24
  544. package/dist/generated/types/accountConstraint.js.map +0 -1
  545. package/dist/generated/types/accountConstraintZC.d.ts +0 -18
  546. package/dist/generated/types/accountConstraintZC.d.ts.map +0 -1
  547. package/dist/generated/types/accountConstraintZC.js +0 -26
  548. package/dist/generated/types/accountConstraintZC.js.map +0 -1
  549. package/dist/generated/types/closeConstraintsApplied.d.ts +0 -20
  550. package/dist/generated/types/closeConstraintsApplied.d.ts.map +0 -1
  551. package/dist/generated/types/closeConstraintsApplied.js +0 -24
  552. package/dist/generated/types/closeConstraintsApplied.js.map +0 -1
  553. package/dist/generated/types/closeConstraintsCancelled.d.ts +0 -16
  554. package/dist/generated/types/closeConstraintsCancelled.d.ts.map +0 -1
  555. package/dist/generated/types/closeConstraintsCancelled.js +0 -18
  556. package/dist/generated/types/closeConstraintsCancelled.js.map +0 -1
  557. package/dist/generated/types/closeConstraintsQueued.d.ts +0 -20
  558. package/dist/generated/types/closeConstraintsQueued.d.ts.map +0 -1
  559. package/dist/generated/types/closeConstraintsQueued.js +0 -24
  560. package/dist/generated/types/closeConstraintsQueued.js.map +0 -1
  561. package/dist/generated/types/constraintEntry.d.ts +0 -39
  562. package/dist/generated/types/constraintEntry.d.ts.map +0 -1
  563. package/dist/generated/types/constraintEntry.js +0 -31
  564. package/dist/generated/types/constraintEntry.js.map +0 -1
  565. package/dist/generated/types/constraintEntryZC.d.ts +0 -68
  566. package/dist/generated/types/constraintEntryZC.d.ts.map +0 -1
  567. package/dist/generated/types/constraintEntryZC.js +0 -49
  568. package/dist/generated/types/constraintEntryZC.js.map +0 -1
  569. package/dist/generated/types/constraintOperator.d.ts +0 -22
  570. package/dist/generated/types/constraintOperator.d.ts.map +0 -1
  571. package/dist/generated/types/constraintOperator.js +0 -28
  572. package/dist/generated/types/constraintOperator.js.map +0 -1
  573. package/dist/generated/types/constraintsChangeApplied.d.ts +0 -30
  574. package/dist/generated/types/constraintsChangeApplied.d.ts.map +0 -1
  575. package/dist/generated/types/constraintsChangeApplied.js +0 -32
  576. package/dist/generated/types/constraintsChangeApplied.js.map +0 -1
  577. package/dist/generated/types/constraintsChangeCancelled.d.ts +0 -16
  578. package/dist/generated/types/constraintsChangeCancelled.d.ts.map +0 -1
  579. package/dist/generated/types/constraintsChangeCancelled.js +0 -18
  580. package/dist/generated/types/constraintsChangeCancelled.js.map +0 -1
  581. package/dist/generated/types/constraintsChangeQueued.d.ts +0 -30
  582. package/dist/generated/types/constraintsChangeQueued.d.ts.map +0 -1
  583. package/dist/generated/types/constraintsChangeQueued.js +0 -32
  584. package/dist/generated/types/constraintsChangeQueued.js.map +0 -1
  585. package/dist/generated/types/dataConstraint.d.ts +0 -23
  586. package/dist/generated/types/dataConstraint.d.ts.map +0 -1
  587. package/dist/generated/types/dataConstraint.js +0 -27
  588. package/dist/generated/types/dataConstraint.js.map +0 -1
  589. package/dist/generated/types/dataConstraintZC.d.ts +0 -20
  590. package/dist/generated/types/dataConstraintZC.d.ts.map +0 -1
  591. package/dist/generated/types/dataConstraintZC.js +0 -30
  592. package/dist/generated/types/dataConstraintZC.js.map +0 -1
  593. package/dist/generated/types/discriminatorFormat.d.ts +0 -25
  594. package/dist/generated/types/discriminatorFormat.d.ts.map +0 -1
  595. package/dist/generated/types/discriminatorFormat.js +0 -31
  596. package/dist/generated/types/discriminatorFormat.js.map +0 -1
  597. package/dist/generated/types/escrowCreated.d.ts +0 -30
  598. package/dist/generated/types/escrowCreated.d.ts.map +0 -1
  599. package/dist/generated/types/escrowCreated.js +0 -34
  600. package/dist/generated/types/escrowCreated.js.map +0 -1
  601. package/dist/generated/types/escrowRefunded.d.ts +0 -26
  602. package/dist/generated/types/escrowRefunded.d.ts.map +0 -1
  603. package/dist/generated/types/escrowRefunded.js +0 -30
  604. package/dist/generated/types/escrowRefunded.js.map +0 -1
  605. package/dist/generated/types/escrowSettled.d.ts +0 -26
  606. package/dist/generated/types/escrowSettled.d.ts.map +0 -1
  607. package/dist/generated/types/escrowSettled.js +0 -30
  608. package/dist/generated/types/escrowSettled.js.map +0 -1
  609. package/dist/generated/types/escrowStatus.d.ts +0 -18
  610. package/dist/generated/types/escrowStatus.d.ts.map +0 -1
  611. package/dist/generated/types/escrowStatus.js +0 -24
  612. package/dist/generated/types/escrowStatus.js.map +0 -1
  613. package/dist/generated/types/instructionConstraintsCreated.d.ts +0 -34
  614. package/dist/generated/types/instructionConstraintsCreated.d.ts.map +0 -1
  615. package/dist/generated/types/instructionConstraintsCreated.js +0 -36
  616. package/dist/generated/types/instructionConstraintsCreated.js.map +0 -1
  617. package/dist/generated/types/pdaAllocated.d.ts +0 -24
  618. package/dist/generated/types/pdaAllocated.d.ts.map +0 -1
  619. package/dist/generated/types/pdaAllocated.js.map +0 -1
  620. package/dist/generated/types/pdaExtended.d.ts +0 -24
  621. package/dist/generated/types/pdaExtended.d.ts.map +0 -1
  622. package/dist/generated/types/pdaExtended.js +0 -28
  623. package/dist/generated/types/pdaExtended.js.map +0 -1
  624. package/dist/integrations/protocol-handler.d.ts +0 -59
  625. package/dist/integrations/protocol-handler.d.ts.map +0 -1
  626. package/dist/integrations/protocol-handler.js +0 -9
  627. package/dist/integrations/protocol-handler.js.map +0 -1
@@ -42,8 +42,25 @@ export interface CreateVaultOptions {
42
42
  developerFeeRate?: number;
43
43
  protocols?: Address[];
44
44
  protocolMode?: number;
45
- maxLeverageBps?: number;
45
+ /**
46
+ * Per-protocol daily caps in USD base units (6-decimal). Index-aligned
47
+ * with `protocols`. Required when `protocolMode === 1` (ALLOWLIST) AND
48
+ * caps are desired. Must satisfy `protocolCaps.length === protocols.length`
49
+ * — the on-chain program rejects mismatched lengths with
50
+ * `ProtocolCapsMismatch`. A value of `0n` for an entry means no cap for
51
+ * that protocol (global cap still applies). Default: empty array (no
52
+ * per-protocol caps; only the global cap enforces).
53
+ */
54
+ protocolCaps?: bigint[];
46
55
  maxSlippageBps?: number;
56
+ /**
57
+ * Phase 2 TA-19: observe-only mode at vault creation. When `true`, all
58
+ * `validate_and_authorize` calls reject with `ObserveOnlyModeBlocksExecute`.
59
+ * Used to stand up a vault that baselines agent behaviour before the owner
60
+ * opens the execute path. Default: `false` (full execute permitted, gated
61
+ * by policy).
62
+ */
63
+ observeOnly?: boolean;
47
64
  /**
48
65
  * Timelock duration in seconds for owner-initiated policy changes.
49
66
  * Required since v0.9.0 — previously defaulted silently to 0 (no
@@ -63,6 +80,90 @@ export interface CreateVaultOptions {
63
80
  timelockDuration: number;
64
81
  allowedDestinations?: Address[];
65
82
  vaultId?: bigint;
83
+ /**
84
+ * PEN-CROSS-2 (Phase 2 close-up): the slot to bind into the TA-19 digest.
85
+ * If omitted, `createVault` reads `rpc.getSlot()` — that's what production
86
+ * callers should do so the digest matches the slot the on-chain handler
87
+ * captures at execution.
88
+ *
89
+ * Tests / fixtures that don't care about replay protection (PDA derivation
90
+ * smoke tests) can pass a fixed bigint here to avoid mocking `getSlot`.
91
+ */
92
+ createdAtSlot?: bigint;
93
+ /**
94
+ * TA-05 (Phase 3): 24-bit UTC operating-hours bitmask. Bit `n` (0..=23)
95
+ * set → spending allowed during UTC hour `n`. Default `0x00FFFFFF` (all
96
+ * 24h enabled — equivalent to "no operating-hours constraint").
97
+ *
98
+ * Upper 8 bits MUST be zero; on-chain handler rejects otherwise with
99
+ * `ErrOutsideOperatingHours` (6084). Bound by TA-19 at canonical
100
+ * digest position 15.
101
+ *
102
+ * Production callers narrowing for market-hours / business-hours
103
+ * vaults should pass an explicit mask (e.g. `0x0001E000` for 13-17 UTC).
104
+ */
105
+ operatingHours?: number;
106
+ /**
107
+ * TA-07 (Phase 3): if true, NEW destinations added via
108
+ * queue_policy_update skip the 24h graylist friction. Default false —
109
+ * the owner pays the friction cost by default. Bound by TA-19 at
110
+ * canonical digest position 16.
111
+ */
112
+ autoPromoteGrays?: boolean;
113
+ /**
114
+ * TA-17 (Phase 3): consecutive-failure threshold after which an
115
+ * agent's capability is auto-revoked. Range 3..=20 (on-chain reject
116
+ * out-of-range with `InvalidPermissions`). Default 5.
117
+ *
118
+ * Only on-chain policy-violation codes 6083-6100 count — external
119
+ * causes (CU exhaustion, nonce desync, auth) do NOT increment.
120
+ * Bound by TA-19 at canonical digest position 17.
121
+ */
122
+ autoRevokeThreshold?: number;
123
+ /**
124
+ * TA-12 (Phase 5 post-execution invariant): hard stable balance floor in
125
+ * USD base units (6 decimals). The combined USDC + USDT vault balance is
126
+ * asserted >= this value at finalize_session AND at agent_transfer's
127
+ * post-CPI re-read. Default 0 = no floor enforcement.
128
+ *
129
+ * Lowering this on a live vault is an elevated mutation per TA-09 and
130
+ * requires cosign (closed by G3 audit fix).
131
+ *
132
+ * Bound by TA-19 at canonical digest position 18.
133
+ */
134
+ stableBalanceFloor?: bigint;
135
+ /**
136
+ * TA-14 (Phase 5 post-execution invariant): per-recipient daily cap in
137
+ * USD base units (6 decimals). Each unique recipient's rolling 24h
138
+ * outflow is asserted <= this value at finalize. Per-recipient slots
139
+ * are bounded at 10 with age-based eviction (no LRU churn).
140
+ *
141
+ * Default 0 = no per-recipient cap (global daily cap still applies).
142
+ * Raising this on a live vault is elevated per TA-09 (closed by G3).
143
+ *
144
+ * Bound by TA-19 at canonical digest position 19.
145
+ */
146
+ perRecipientDailyCapUsd?: bigint;
147
+ /**
148
+ * G6 (audit 2026-05-18 cosign opt-in): owner's opt-in to TA-09 cosign
149
+ * enforcement on elevated mutations. Default `false` (low-friction —
150
+ * owner signature alone authorizes elevated mutations).
151
+ *
152
+ * When `true`, future calls to `queue_policy_update` with elevated
153
+ * mutations require a non-default `cosignSession` pubkey + a
154
+ * corresponding signer in `remaining_accounts`. Use this for solo-key
155
+ * owners who want Sigil-native per-mutation co-signature. Vaults whose
156
+ * owner is a Squads V4 multisig PDA (`detectSquadsV4Owner` returns
157
+ * `isSquadsMultisig: true`) typically leave this `false` because
158
+ * multisig at the Solana layer already enforces multi-signer auth.
159
+ *
160
+ * Disabling cosign on a live vault where this is `true` is itself an
161
+ * elevated mutation (one-way ratchet — `queue_policy_update` requires
162
+ * cosign to flip true → false).
163
+ *
164
+ * Bound by TA-19 at canonical digest position 20.
165
+ */
166
+ cosignRequired?: boolean;
66
167
  }
67
168
  export interface CreateVaultResult {
68
169
  vaultAddress: Address;
@@ -1 +1 @@
1
- {"version":3,"file":"create-vault.d.ts","sourceRoot":"","sources":["../src/create-vault.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,OAAO,EACP,GAAG,EACH,YAAY,EACZ,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAUpD,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,YAAY,CAAC;AAGpB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAW9D,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;IACvB,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC9B,KAAK,EAAE,iBAAiB,CAAC;IACzB,KAAK,EAAE,iBAAiB,CAAC;IACzB,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B;;;;;;;;;;;OAWG;IACH,gBAAgB,EAAE,YAAY,CAAC;IAC/B;;;;;;;;OAQG;IACH,mBAAmB,EAAE,YAAY,CAAC;IAClC,qBAAqB,CAAC,EAAE,YAAY,CAAC;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;;;;;;;;OAeG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,OAAO,EAAE,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IACvB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,iBAAiB,EAAE,WAAW,CAAC;IAC/B,eAAe,EAAE,WAAW,CAAC;CAC9B;AAID,wBAAsB,WAAW,CAC/B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CAqJ5B;AAID,MAAM,WAAW,yBAA0B,SAAQ,kBAAkB;IACnE,wDAAwD;IACxD,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,kEAAkE;IAClE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,cAAc,CAAC,EAAE,qBAAqB,CAAC;CACxC;AAED,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IACjE,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,wBAAwB,CAAC,CAoBnC"}
1
+ {"version":3,"file":"create-vault.d.ts","sourceRoot":"","sources":["../src/create-vault.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,OAAO,EACP,GAAG,EACH,YAAY,EACZ,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAUpD,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,YAAY,CAAC;AAIpB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAW9D,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;IACvB,OAAO,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC9B,KAAK,EAAE,iBAAiB,CAAC;IACzB,KAAK,EAAE,iBAAiB,CAAC;IACzB,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B;;;;;;;;;;;OAWG;IACH,gBAAgB,EAAE,YAAY,CAAC;IAC/B;;;;;;;;OAQG;IACH,mBAAmB,EAAE,YAAY,CAAC;IAClC,qBAAqB,CAAC,EAAE,YAAY,CAAC;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;;;;OAeG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,OAAO,EAAE,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;;OAWG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;;;OAQG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B;;;;;;;;;;OAUG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;;;;;;;OAUG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC;;;;;;;;;;;;;;;;;;OAkBG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IACvB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,iBAAiB,EAAE,WAAW,CAAC;IAC/B,eAAe,EAAE,WAAW,CAAC;CAC9B;AAID,wBAAsB,WAAW,CAC/B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CAkQ5B;AAID,MAAM,WAAW,yBAA0B,SAAQ,kBAAkB;IACnE,wDAAwD;IACxD,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,kEAAkE;IAClE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,cAAc,CAAC,EAAE,qBAAqB,CAAC;CACxC;AAED,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IACjE,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,wBAAwB,CAAC,CAoBnC"}
@@ -5,10 +5,11 @@
5
5
  * transaction composition, signing, and sending.
6
6
  */
7
7
  import { getInitializeVaultInstructionAsync } from "./generated/instructions/initializeVault.js";
8
- import { getRegisterAgentInstruction } from "./generated/instructions/registerAgent.js";
8
+ import { getRegisterAgentInstructionAsync } from "./generated/instructions/registerAgent.js";
9
9
  import { getVaultPDA, getPolicyPDA, getAgentOverlayPDA, } from "./resolve-accounts.js";
10
10
  import { findNextVaultId } from "./inscribe.js";
11
11
  import { FULL_PERMISSIONS, toInstruction, } from "./types.js";
12
+ import { computePolicyPreviewDigest } from "./policy/compute-policy-preview-digest.js";
12
13
  import { buildOwnerTransaction } from "./owner-transaction.js";
13
14
  import { signAndEncode, sendAndConfirmTransaction } from "./rpc-helpers.js";
14
15
  import { SigilSdkDomainError } from "./errors/sdk.js";
@@ -88,13 +89,98 @@ export async function createVault(options) {
88
89
  // - maxTransactionSizeUsd defaults to dailySpendingCapUsd (caller's
89
90
  // explicit cap becomes the per-tx ceiling unless narrower)
90
91
  // - feeDestination defaults to the owner's key (same principal)
91
- // - protocols=[] + protocolMode=0 means "all protocols allowed"
92
- // this is a policy decision, not a silent reduction
92
+ // - protocolMode defaults to ALLOWLIST (1) the ONLY mode the V2 program
93
+ // accepts. Phase 2 Option A deleted the permissive ALL (0) / DENYLIST
94
+ // modes; `initialize_vault.rs:125` hard-rejects any mode != 1. The old
95
+ // default of 0 ("all protocols allowed") built an init the deployed
96
+ // program reverts on, so it is corrected here.
93
97
  const maxTransactionSizeUsd = options.maxTransactionSizeUsd ?? options.dailySpendingCapUsd;
94
98
  const feeDestination = options.feeDestination ?? options.owner.address;
95
99
  const protocols = options.protocols ?? [];
96
- const protocolMode = options.protocolMode ?? 0;
100
+ const protocolMode = options.protocolMode ?? 1;
97
101
  // Step 4: Build initializeVault instruction
102
+ //
103
+ // `protocolCaps`: forward caller-supplied caps if provided; otherwise
104
+ // default to all-zeros (no per-protocol caps, global cap still applies).
105
+ // The on-chain program enforces `protocol_caps.len() == protocols.len()`
106
+ // when `protocol_caps` is non-empty, so empty + zeros are equivalent in
107
+ // effect; the empty path saves a Vec allocation on-chain.
108
+ const protocolCaps = options.protocolCaps !== undefined
109
+ ? options.protocolCaps
110
+ : protocols.map(() => 0n);
111
+ const allowedDestinations = options.allowedDestinations ?? [];
112
+ const observeOnly = options.observeOnly ?? false;
113
+ // F-11 (initialize_vault.rs:190): an ACTIVE (non-observe_only) vault MUST
114
+ // carry at least one protocol OR destination on its allowlist, else the
115
+ // program rejects with `ActiveVaultRequiresAllowlist` (6073) — a vault that
116
+ // allows nothing is silently inert. Fail fast in the SDK with an actionable
117
+ // message rather than letting the owner-signed init revert on-chain.
118
+ if (!observeOnly &&
119
+ protocols.length === 0 &&
120
+ allowedDestinations.length === 0) {
121
+ throw new SigilSdkDomainError(SIGIL_ERROR__SDK__INVALID_PARAMS, "createVault: an active (non-observeOnly) vault must allowlist at least " +
122
+ "one protocol or destination — otherwise the on-chain program rejects " +
123
+ "it as inert (ActiveVaultRequiresAllowlist, 6073). Pass `protocols` " +
124
+ "and/or `allowedDestinations`, or set `observeOnly: true`.", {
125
+ context: {
126
+ field: "protocols/allowedDestinations",
127
+ received: { protocolMode, protocols: 0, allowedDestinations: 0 },
128
+ },
129
+ });
130
+ }
131
+ // PEN-CROSS-2 (Phase 2 close-up): the on-chain `initialize_vault` handler
132
+ // captures `Clock::get()?.slot` at handler entry and binds it into the
133
+ // canonical digest. The SDK must encode that same slot in the digest the
134
+ // owner signs. We use the RPC's current slot — typically off by 0-1 from
135
+ // the slot the handler executes in. If a slot rollover lands between
136
+ // `getSlot()` and execution, the user sees a recoverable
137
+ // `PolicyPreviewMismatch` and the SDK consumer retries with a fresh slot.
138
+ //
139
+ // Callers can override `createdAtSlot` for tests / fixtures that don't have
140
+ // a live RPC. Production submission paths should let this RPC-fetch run.
141
+ const createdAtSlot = options.createdAtSlot ??
142
+ (await options.rpc.getSlot({ commitment: "confirmed" }).send());
143
+ // Phase 2 TA-19: compute the canonical policy-preview digest off-chain.
144
+ // The on-chain `initialize_vault` handler recomputes this from the resulting
145
+ // policy state and rejects with `PolicyPreviewMismatch` if they differ.
146
+ // session_expiry_seconds is always 0 at init (uses default); has_constraints
147
+ // + has_post_assertions are always 0 at init (constraints are created later).
148
+ const previewDigest = computePolicyPreviewDigest({
149
+ dailySpendingCapUsd: options.dailySpendingCapUsd,
150
+ maxTransactionSizeUsd,
151
+ maxSlippageBps: options.maxSlippageBps ?? 100,
152
+ // PEN-CROSS-6: developer_fee_rate is bound by the digest. Mirror the
153
+ // same default the ix arg uses below to keep digest and storage in sync.
154
+ developerFeeRate: options.developerFeeRate ?? 0,
155
+ protocolMode,
156
+ protocols,
157
+ destinationMode: 0, // Phase 2 Option A: RESTRICTED is the only valid value
158
+ allowedDestinations,
159
+ timelockDuration: BigInt(options.timelockDuration),
160
+ sessionExpirySeconds: 0n,
161
+ observeOnly,
162
+ hasPostAssertions: 0,
163
+ // PEN-CROSS-2: defends against close+reinit replay.
164
+ createdAtSlot,
165
+ // TA-05 (Phase 3): default to all-24h enabled when caller doesn't
166
+ // narrow. Owner-facing config surface for narrowing lives at the
167
+ // dashboard-side mutation (not exposed via createVault yet).
168
+ operatingHours: options.operatingHours ?? 0x00ffffff,
169
+ // TA-07 (Phase 3): default to enforce 24h friction (auto_promote off).
170
+ autoPromoteGrays: options.autoPromoteGrays ?? false,
171
+ // TA-17 (Phase 3): default auto-revoke threshold of 5 — matches the
172
+ // on-chain default constant. Range 3..=20 enforced by the handler.
173
+ autoRevokeThreshold: options.autoRevokeThreshold ?? 5,
174
+ // TA-12 (Phase 5): stable balance floor — hard reserve under which spending
175
+ // is rejected at finalize. Default 0 = no floor enforcement. Bound by digest.
176
+ stableBalanceFloor: options.stableBalanceFloor ?? 0n,
177
+ // TA-14 (Phase 5): per-recipient daily cap. Default 0 = unlimited per recipient
178
+ // (still bounded by the global daily cap). Bound by digest.
179
+ perRecipientDailyCapUsd: options.perRecipientDailyCapUsd ?? 0n,
180
+ // G6 (audit 2026-05-18 cosign opt-in): default false (low-friction).
181
+ // Owners explicitly opt in by passing true. Bound by TA-19 at position 20.
182
+ cosignRequired: options.cosignRequired ?? false,
183
+ });
98
184
  const initializeVaultIx = await getInitializeVaultInstructionAsync({
99
185
  owner: options.owner,
100
186
  agentSpendOverlay: agentOverlayAddress,
@@ -104,17 +190,30 @@ export async function createVault(options) {
104
190
  maxTransactionSizeUsd,
105
191
  protocolMode,
106
192
  protocols,
107
- maxLeverageBps: options.maxLeverageBps ?? 0,
108
193
  developerFeeRate: options.developerFeeRate ?? 0,
109
194
  maxSlippageBps: options.maxSlippageBps ?? 100,
110
195
  timelockDuration: options.timelockDuration,
111
- allowedDestinations: options.allowedDestinations ?? [],
112
- protocolCaps: protocols.map(() => 0n),
196
+ allowedDestinations,
197
+ protocolCaps,
198
+ observeOnly,
199
+ operatingHours: options.operatingHours ?? 0x00ffffff,
200
+ autoPromoteGrays: options.autoPromoteGrays ?? false,
201
+ autoRevokeThreshold: options.autoRevokeThreshold ?? 5,
202
+ stableBalanceFloor: options.stableBalanceFloor ?? 0n,
203
+ perRecipientDailyCapUsd: options.perRecipientDailyCapUsd ?? 0n,
204
+ // G6 (audit 2026-05-18 cosign opt-in): default false at construction.
205
+ // The arg + the digest above are computed against the same value so
206
+ // the on-chain `initialize_vault` digest assertion passes.
207
+ cosignRequired: options.cosignRequired ?? false,
208
+ previewDigest,
113
209
  });
114
- // Step 5: Build registerAgent instruction
115
- const registerAgentIx = getRegisterAgentInstruction({
210
+ // Step 5: Build registerAgent instruction.
211
+ // PEN-CROSS-5 (Phase 4 absorption): policy now required for
212
+ // policy_version bump.
213
+ const registerAgentIx = await getRegisterAgentInstructionAsync({
116
214
  owner: options.owner,
117
215
  vault: vaultAddress,
216
+ policy: policyAddress,
118
217
  agentSpendOverlay: agentOverlayAddress,
119
218
  agent: options.agent.address,
120
219
  capability: Number(options.permissions ?? FULL_PERMISSIONS),
@@ -1 +1 @@
1
- {"version":3,"file":"create-vault.js","sourceRoot":"","sources":["../src/create-vault.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,OAAO,EAAE,kCAAkC,EAAE,MAAM,6CAA6C,CAAC;AACjG,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AACxF,OAAO,EACL,WAAW,EACX,YAAY,EACZ,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EACL,gBAAgB,EAChB,aAAa,GAGd,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EACL,uCAAuC,EACvC,oCAAoC,EACpC,gCAAgC,GACjC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAsEhF,+EAA+E;AAE/E,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAA2B;IAE3B,yBAAyB;IACzB,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACpD,MAAM,IAAI,mBAAmB,CAC3B,uCAAuC,EACvC,0CAA0C;YACxC,+EAA+E,EACjF;YACE,OAAO,EAAE;gBACP,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;gBAC5B,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;aAC7B;SACF,CACF,CAAC;IACJ,CAAC;IAED,mEAAmE;IACnE,qEAAqE;IACrE,2CAA2C;IAC3C,IACE,OAAO,OAAO,CAAC,gBAAgB,KAAK,WAAW;QAC/C,OAAO,OAAO,CAAC,gBAAgB,KAAK,QAAQ,EAC5C,CAAC;QACD,MAAM,IAAI,mBAAmB,CAC3B,gCAAgC,EAChC,gEAAgE;YAC9D,oEAAoE;YACpE,mDAAmD,EACrD,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,CAC3C,CAAC;IACJ,CAAC;IACD,IACE,OAAO,OAAO,CAAC,mBAAmB,KAAK,WAAW;QAClD,OAAO,OAAO,CAAC,mBAAmB,KAAK,QAAQ,EAC/C,CAAC;QACD,MAAM,IAAI,mBAAmB,CAC3B,gCAAgC,EAChC,mEAAmE;YACjE,4DAA4D;YAC5D,qBAAqB,EACvB,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,CAC9C,CAAC;IACJ,CAAC;IACD,IACE,OAAO,OAAO,CAAC,gBAAgB,KAAK,WAAW;QAC/C,OAAO,OAAO,CAAC,gBAAgB,KAAK,QAAQ,EAC5C,CAAC;QACD,MAAM,IAAI,mBAAmB,CAC3B,gCAAgC,EAChC,gEAAgE;YAC9D,6DAA6D;YAC7D,qCAAqC,EACvC,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,CAC3C,CAAC;IACJ,CAAC;IAED,qEAAqE;IACrE,mEAAmE;IACnE,uCAAuC;IACvC,yBAAyB,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC,mBAAmB;QAC1C,iBAAiB,EAAE,EAAE;QACrB,WAAW,EAAE,OAAO,CAAC,gBAAgB;KACtC,CAAC,CAAC;IAEH,oDAAoD;IACpD,EAAE;IACF,oEAAoE;IACpE,uEAAuE;IACvE,uEAAuE;IACvE,2EAA2E;IAC3E,0EAA0E;IAC1E,8DAA8D;IAC9D,yDAAyD;IACzD,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC;QAChC,IAAI,GAAG,GAAG,EAAE,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC;YACzB,MAAM,IAAI,mBAAmB,CAC3B,oCAAoC,EACpC,sBAAsB,GAAG,8CAA8C;gBACrE,8DAA8D;gBAC9D,uEAAuE;gBACvE,uEAAuE,CAC1E,CAAC;QACJ,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,MAAM,OAAO,GACX,OAAO,CAAC,OAAO;QACf,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAE9D,sBAAsB;IACtB,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACzE,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,CAAC;IACzD,MAAM,CAAC,mBAAmB,CAAC,GAAG,MAAM,kBAAkB,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IAExE,8DAA8D;IAC9D,EAAE;IACF,wEAAwE;IACxE,oEAAoE;IACpE,uDAAuD;IACvD,sEAAsE;IACtE,+DAA+D;IAC/D,kEAAkE;IAClE,oEAAoE;IACpE,wDAAwD;IACxD,MAAM,qBAAqB,GACzB,OAAO,CAAC,qBAAqB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAC/D,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;IACvE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;IAC1C,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,CAAC,CAAC;IAE/C,4CAA4C;IAC5C,MAAM,iBAAiB,GAAG,MAAM,kCAAkC,CAAC;QACjE,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,iBAAiB,EAAE,mBAAmB;QACtC,cAAc;QACd,OAAO;QACP,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,qBAAqB;QACrB,YAAY;QACZ,SAAS;QACT,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,CAAC;QAC3C,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,CAAC;QAC/C,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,GAAG;QAC7C,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,IAAI,EAAE;QACtD,YAAY,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;KACtC,CAAC,CAAC;IAEH,0CAA0C;IAC1C,MAAM,eAAe,GAAG,2BAA2B,CAAC;QAClD,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,YAAY;QACnB,iBAAiB,EAAE,mBAAmB;QACtC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;QAC5B,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,IAAI,gBAAgB,CAAC;QAC3D,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;KAC3C,CAAC,CAAC;IAEH,OAAO;QACL,YAAY;QACZ,OAAO;QACP,aAAa;QACb,mBAAmB;QACnB,iBAAiB,EAAE,aAAa,CAAC,iBAAiB,CAAC;QACnD,eAAe,EAAE,aAAa,CAAC,eAAe,CAAC;KAChD,CAAC;AACJ,CAAC;AAkBD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,OAAkC;IAElC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;IAE1C,MAAM,OAAO,GAAG,MAAM,qBAAqB,CAAC;QAC1C,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,YAAY,EAAE,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,eAAe,CAAC;QAChE,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;KAC3D,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IACxE,MAAM,SAAS,GAAG,MAAM,yBAAyB,CAC/C,OAAO,CAAC,GAAG,EACX,OAAO,EACP,OAAO,CAAC,cAAc,CACvB,CAAC;IAEF,OAAO,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"create-vault.js","sourceRoot":"","sources":["../src/create-vault.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * close-vault helpers — pending-PDA enumeration for the close_vault path.
3
+ *
4
+ * Companion to the `close_vault` drain logic in
5
+ * `programs/sigil/src/instructions/close_vault.rs`: enumerates the pending
6
+ * PDAs (pending_owner, pending_agent_grant) the handler drains.
7
+ *
8
+ * Why this lives in its own file
9
+ * ─────────────────────────────
10
+ * The user-facing `closeVault` builder lives in `mutations.ts` (a
11
+ * generously-sized file). CH-3 is concurrently editing `mutations.ts`,
12
+ * so CH-2 keeps its surface minimal here: pure PDA enumeration helpers
13
+ * plus the canonical drain order. CH-3 imports
14
+ * {@link enumerateExistingPendingPdasForClose} (or the individual
15
+ * derivation helpers) when wiring the new account into the
16
+ * `remainingAccounts` list.
17
+ *
18
+ * On-chain ordering invariant
19
+ * ───────────────────────────
20
+ * close_vault.rs (HEAD 321a8fb3 + CH-2):
21
+ *
22
+ * 1. `pending_policy` [b"pending_policy", vault] — MUST be slot 0 when present (close_vault.rs unconditionally reads `remaining_accounts.first()`)
23
+ * 2. `pending_agent_perms` [b"pending_agent_perms", vault, agent] — one per registered agent
24
+ * 3. `pending_owner` [b"pending_owner", vault]
25
+ * 4. `pending_agent_grant` [b"pending_agent_grant", vault]
26
+ *
27
+ * (M1-04b: the pending_close_constraints + pending_constraints drains were
28
+ * removed — the constraints engine is gone, those PDAs can never exist.)
29
+ *
30
+ * The Rust drain loops use `start_idx` (= 1 if `policy.has_pending_policy`,
31
+ * else 0) — a single static offset, not an incrementing cursor. So drains
32
+ * 2-4 all scan the same trailing window and match by pubkey. The order of
33
+ * items 2-4 in `remaining_accounts` does not matter functionally, but
34
+ * {@link CLOSE_VAULT_PENDING_PDA_ORDER} pins the canonical layout for
35
+ * review-grep + future audit symmetry.
36
+ *
37
+ * Behavior on RPC failure
38
+ * ───────────────────────
39
+ * {@link enumerateExistingPendingPdasForClose} treats RPC `getAccountInfo`
40
+ * failures as "absent": the close TX still goes through, the on-chain
41
+ * handler silently skips any drain block whose PDA isn't passed (since
42
+ * `lamports() > 0` is the guard). This matches the existing
43
+ * `mutations.ts::closeVault` behavior for `pending_policy` +
44
+ * `pending_agent_perms`. A transient RPC
45
+ * outage therefore degrades to "rent stays orphaned, vault still closes"
46
+ * — never to "close TX rejects".
47
+ */
48
+ import { type Address, type Rpc, type SolanaRpcApi, AccountRole } from "../kit-adapter.js";
49
+ /**
50
+ * Canonical layout pins for `close_vault` remaining_accounts.
51
+ *
52
+ * Mirrors the drain blocks in `programs/sigil/src/instructions/close_vault.rs`
53
+ * (HEAD 321a8fb3 + CH-2). The Rust loops match by pubkey within
54
+ * `remaining_accounts.iter().skip(start_idx)` so items 2-6 are
55
+ * positionally interchangeable, but callers SHOULD append in this order
56
+ * to keep audit-trail diffs reviewable.
57
+ */
58
+ export declare const CLOSE_VAULT_PENDING_PDA_ORDER: readonly ["pending_policy", "pending_agent_perms", "pending_owner", "pending_agent_grant"];
59
+ /**
60
+ * Derive the `PendingOwnershipTransfer` PDA for a vault.
61
+ * Seeds: `[b"pending_owner", vault]`
62
+ *
63
+ * Drained by `close_vault.rs:187-203` (SFH-01 fix, audit 2026-05-19).
64
+ */
65
+ export declare function findPendingOwnerPda(vault: Address, programAddress?: Address): Promise<Address>;
66
+ /**
67
+ * Derive the `PendingAgentGrant` PDA for a vault.
68
+ * Seeds: `[b"pending_agent_grant", vault]`
69
+ *
70
+ * Drained by `close_vault.rs:215-231` (SFH-01 fix, audit 2026-05-19).
71
+ */
72
+ export declare function findPendingAgentGrantPda(vault: Address, programAddress?: Address): Promise<Address>;
73
+ /**
74
+ * One entry in the close_vault remaining_accounts list — wraps a single
75
+ * pending PDA pubkey alongside the role bit the on-chain drain block
76
+ * requires (always `WRITABLE`, since the lamports + assign + resize
77
+ * mutations need write access).
78
+ */
79
+ export interface CloseVaultPendingAccount {
80
+ /** Stable identifier for logs / audit diffs. Mirrors
81
+ * {@link CLOSE_VAULT_PENDING_PDA_ORDER}. */
82
+ readonly kind: (typeof CLOSE_VAULT_PENDING_PDA_ORDER)[number];
83
+ /** PDA address. */
84
+ readonly address: Address;
85
+ /** Always WRITABLE — the drain block transfers lamports + reassigns. */
86
+ readonly role: AccountRole.WRITABLE;
87
+ }
88
+ /**
89
+ * Enumerate the **SFH-01** pending PDAs (pending_owner, pending_agent_grant)
90
+ * that currently hold rent on-chain for a given vault.
91
+ *
92
+ * This helper is the load-bearing piece of the close-vault drain companion:
93
+ * the `closeVault` builder in `mutations.ts` appends the returned entries to
94
+ * the existing `pending_policy` + `pending_agent_perms` list to ensure every
95
+ * drainable PDA is covered.
96
+ *
97
+ * Failure mode: RPC errors on individual PDAs are logged via the Sigil
98
+ * module logger and treated as "absent" — the close TX still proceeds,
99
+ * but the missed PDA's rent stays orphaned (same compromise as the
100
+ * existing `mutations.ts::closeVault` handles for the other drains).
101
+ *
102
+ * HH-1 close (audit 2026-05-23): the optional `onRpcError` callback lets
103
+ * callers (e.g. `mutations.ts::closeVault`) escalate the visibility of
104
+ * an enumeration failure beyond the module logger — emit an
105
+ * ERROR-level log line with vault context, throw, or display a UI
106
+ * warning. Without the callback the existing best-effort drain
107
+ * semantic is preserved (warn-and-continue).
108
+ */
109
+ export declare function enumerateExistingPendingPdasForClose(rpc: Rpc<SolanaRpcApi>, vault: Address, programAddress?: Address, onRpcError?: (kind: CloseVaultPendingAccount["kind"], address: Address, cause: unknown) => void): Promise<readonly CloseVaultPendingAccount[]>;
110
+ //# sourceMappingURL=close-vault.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"close-vault.d.ts","sourceRoot":"","sources":["../../src/dashboard/close-vault.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,GAAG,EACR,KAAK,YAAY,EACjB,WAAW,EAGZ,MAAM,mBAAmB,CAAC;AAa3B;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B,4FAKhC,CAAC;AAIX;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,OAAO,EACd,cAAc,GAAE,OAA+B,GAC9C,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,OAAO,EACd,cAAc,GAAE,OAA+B,GAC9C,OAAO,CAAC,OAAO,CAAC,CAOlB;AAID;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACvC;gDAC4C;IAC5C,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,6BAA6B,CAAC,CAAC,MAAM,CAAC,CAAC;IAC9D,mBAAmB;IACnB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,wEAAwE;IACxE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC;CACrC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,oCAAoC,CACxD,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,EACtB,KAAK,EAAE,OAAO,EACd,cAAc,GAAE,OAA+B,EAC/C,UAAU,CAAC,EAAE,CACX,IAAI,EAAE,wBAAwB,CAAC,MAAM,CAAC,EACtC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,OAAO,KACX,IAAI,GACR,OAAO,CAAC,SAAS,wBAAwB,EAAE,CAAC,CAwD9C"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * close-vault helpers — pending-PDA enumeration for the close_vault path.
3
+ *
4
+ * Companion to the `close_vault` drain logic in
5
+ * `programs/sigil/src/instructions/close_vault.rs`: enumerates the pending
6
+ * PDAs (pending_owner, pending_agent_grant) the handler drains.
7
+ *
8
+ * Why this lives in its own file
9
+ * ─────────────────────────────
10
+ * The user-facing `closeVault` builder lives in `mutations.ts` (a
11
+ * generously-sized file). CH-3 is concurrently editing `mutations.ts`,
12
+ * so CH-2 keeps its surface minimal here: pure PDA enumeration helpers
13
+ * plus the canonical drain order. CH-3 imports
14
+ * {@link enumerateExistingPendingPdasForClose} (or the individual
15
+ * derivation helpers) when wiring the new account into the
16
+ * `remainingAccounts` list.
17
+ *
18
+ * On-chain ordering invariant
19
+ * ───────────────────────────
20
+ * close_vault.rs (HEAD 321a8fb3 + CH-2):
21
+ *
22
+ * 1. `pending_policy` [b"pending_policy", vault] — MUST be slot 0 when present (close_vault.rs unconditionally reads `remaining_accounts.first()`)
23
+ * 2. `pending_agent_perms` [b"pending_agent_perms", vault, agent] — one per registered agent
24
+ * 3. `pending_owner` [b"pending_owner", vault]
25
+ * 4. `pending_agent_grant` [b"pending_agent_grant", vault]
26
+ *
27
+ * (M1-04b: the pending_close_constraints + pending_constraints drains were
28
+ * removed — the constraints engine is gone, those PDAs can never exist.)
29
+ *
30
+ * The Rust drain loops use `start_idx` (= 1 if `policy.has_pending_policy`,
31
+ * else 0) — a single static offset, not an incrementing cursor. So drains
32
+ * 2-4 all scan the same trailing window and match by pubkey. The order of
33
+ * items 2-4 in `remaining_accounts` does not matter functionally, but
34
+ * {@link CLOSE_VAULT_PENDING_PDA_ORDER} pins the canonical layout for
35
+ * review-grep + future audit symmetry.
36
+ *
37
+ * Behavior on RPC failure
38
+ * ───────────────────────
39
+ * {@link enumerateExistingPendingPdasForClose} treats RPC `getAccountInfo`
40
+ * failures as "absent": the close TX still goes through, the on-chain
41
+ * handler silently skips any drain block whose PDA isn't passed (since
42
+ * `lamports() > 0` is the guard). This matches the existing
43
+ * `mutations.ts::closeVault` behavior for `pending_policy` +
44
+ * `pending_agent_perms`. A transient RPC
45
+ * outage therefore degrades to "rent stays orphaned, vault still closes"
46
+ * — never to "close TX rejects".
47
+ */
48
+ import { AccountRole, getProgramDerivedAddress, getAddressEncoder, } from "../kit-adapter.js";
49
+ import { SIGIL_PROGRAM_ADDRESS } from "../generated/programs/sigil.js";
50
+ import { getSigilModuleLogger } from "../logger.js";
51
+ import { redactCause } from "../network-errors.js";
52
+ // ─── Seed constants ──────────────────────────────────────────────────────
53
+ const PENDING_OWNER_SEED = new TextEncoder().encode("pending_owner");
54
+ const PENDING_AGENT_GRANT_SEED = new TextEncoder().encode("pending_agent_grant");
55
+ /**
56
+ * Canonical layout pins for `close_vault` remaining_accounts.
57
+ *
58
+ * Mirrors the drain blocks in `programs/sigil/src/instructions/close_vault.rs`
59
+ * (HEAD 321a8fb3 + CH-2). The Rust loops match by pubkey within
60
+ * `remaining_accounts.iter().skip(start_idx)` so items 2-6 are
61
+ * positionally interchangeable, but callers SHOULD append in this order
62
+ * to keep audit-trail diffs reviewable.
63
+ */
64
+ export const CLOSE_VAULT_PENDING_PDA_ORDER = [
65
+ "pending_policy",
66
+ "pending_agent_perms", // one per registered agent
67
+ "pending_owner",
68
+ "pending_agent_grant",
69
+ ];
70
+ // ─── PDA derivation ──────────────────────────────────────────────────────
71
+ /**
72
+ * Derive the `PendingOwnershipTransfer` PDA for a vault.
73
+ * Seeds: `[b"pending_owner", vault]`
74
+ *
75
+ * Drained by `close_vault.rs:187-203` (SFH-01 fix, audit 2026-05-19).
76
+ */
77
+ export async function findPendingOwnerPda(vault, programAddress = SIGIL_PROGRAM_ADDRESS) {
78
+ const encoder = getAddressEncoder();
79
+ const [pda] = await getProgramDerivedAddress({
80
+ programAddress,
81
+ seeds: [PENDING_OWNER_SEED, encoder.encode(vault)],
82
+ });
83
+ return pda;
84
+ }
85
+ /**
86
+ * Derive the `PendingAgentGrant` PDA for a vault.
87
+ * Seeds: `[b"pending_agent_grant", vault]`
88
+ *
89
+ * Drained by `close_vault.rs:215-231` (SFH-01 fix, audit 2026-05-19).
90
+ */
91
+ export async function findPendingAgentGrantPda(vault, programAddress = SIGIL_PROGRAM_ADDRESS) {
92
+ const encoder = getAddressEncoder();
93
+ const [pda] = await getProgramDerivedAddress({
94
+ programAddress,
95
+ seeds: [PENDING_AGENT_GRANT_SEED, encoder.encode(vault)],
96
+ });
97
+ return pda;
98
+ }
99
+ /**
100
+ * Enumerate the **SFH-01** pending PDAs (pending_owner, pending_agent_grant)
101
+ * that currently hold rent on-chain for a given vault.
102
+ *
103
+ * This helper is the load-bearing piece of the close-vault drain companion:
104
+ * the `closeVault` builder in `mutations.ts` appends the returned entries to
105
+ * the existing `pending_policy` + `pending_agent_perms` list to ensure every
106
+ * drainable PDA is covered.
107
+ *
108
+ * Failure mode: RPC errors on individual PDAs are logged via the Sigil
109
+ * module logger and treated as "absent" — the close TX still proceeds,
110
+ * but the missed PDA's rent stays orphaned (same compromise as the
111
+ * existing `mutations.ts::closeVault` handles for the other drains).
112
+ *
113
+ * HH-1 close (audit 2026-05-23): the optional `onRpcError` callback lets
114
+ * callers (e.g. `mutations.ts::closeVault`) escalate the visibility of
115
+ * an enumeration failure beyond the module logger — emit an
116
+ * ERROR-level log line with vault context, throw, or display a UI
117
+ * warning. Without the callback the existing best-effort drain
118
+ * semantic is preserved (warn-and-continue).
119
+ */
120
+ export async function enumerateExistingPendingPdasForClose(rpc, vault, programAddress = SIGIL_PROGRAM_ADDRESS, onRpcError) {
121
+ const [pendingOwnerPda, pendingAgentGrantPda] = await Promise.all([
122
+ findPendingOwnerPda(vault, programAddress),
123
+ findPendingAgentGrantPda(vault, programAddress),
124
+ ]);
125
+ const candidates = [
126
+ { kind: "pending_owner", address: pendingOwnerPda },
127
+ { kind: "pending_agent_grant", address: pendingAgentGrantPda },
128
+ ];
129
+ const checks = await Promise.all(candidates.map(async ({ kind, address }) => {
130
+ try {
131
+ const info = await rpc
132
+ .getAccountInfo(address, { encoding: "base64" })
133
+ .send();
134
+ return info?.value
135
+ ? {
136
+ kind,
137
+ address,
138
+ role: AccountRole.WRITABLE,
139
+ }
140
+ : null;
141
+ }
142
+ catch (err) {
143
+ const cause = redactCause(err);
144
+ getSigilModuleLogger().warn(`[close_vault] existence check failed for ${kind} ${address} — treating as absent: ${cause.message ?? cause.name ?? cause.code ?? "unknown"}`);
145
+ // HH-1 close (audit 2026-05-23): give callers a chance to
146
+ // escalate the RPC failure (e.g. emit error-level log with
147
+ // vault context, throw to abort close, surface in UI). The
148
+ // existing module logger is preserved as the default low-floor
149
+ // signal.
150
+ if (onRpcError !== undefined) {
151
+ try {
152
+ onRpcError(kind, address, err);
153
+ }
154
+ catch {
155
+ // Caller's callback must not break the enumeration —
156
+ // swallow silently. Errors from the callback itself are
157
+ // a programming bug in the caller.
158
+ }
159
+ }
160
+ return null;
161
+ }
162
+ }));
163
+ return checks.filter((entry) => entry !== null);
164
+ }
165
+ //# sourceMappingURL=close-vault.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"close-vault.js","sourceRoot":"","sources":["../../src/dashboard/close-vault.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,43 @@ type AccountNotFoundCode = (typeof ACCOUNT_NOT_FOUND_CODES)[number];
42
42
  * dead code and should be removed in a follow-up.
43
43
  */
44
44
  export declare function isAccountNotFoundError(err: unknown): err is SolanaError<AccountNotFoundCode>;
45
+ /**
46
+ * Is this code an Anchor on-chain program error? Shipped as public
47
+ * helper for consumers that want to route specific 6000-range codes to
48
+ * custom UI (e.g., the constraint-violation banner). Prefer
49
+ * `categorizeError()` if you just need the category.
50
+ */
51
+ export declare function isOnChainReverted(code: number): boolean;
52
+ /**
53
+ * The four UX categories a `DxError` falls into for FE routing. Stable
54
+ * string keys; FE components switch on these directly.
55
+ */
56
+ export type DxErrorCategory = "user" | "network" | "program" | "unknown";
57
+ /**
58
+ * Friendly category for a `DxError` (FE↔BE contract §6.3 helper).
59
+ *
60
+ * Returns one of:
61
+ * - `"program"` — Anchor on-chain error (6000-6104 post M1-04). Tx
62
+ * reached the program and was rejected by program logic.
63
+ * - `"user"` — SDK / dashboard logic error (7000-7099). Client-side
64
+ * validation failure the user can fix.
65
+ * - `"network"` — RPC / network error (7100-7199). Transport layer;
66
+ * generally retryable.
67
+ * - `"unknown"` — everything else, including the `DX_ERROR_CODE_UNMAPPED`
68
+ * (7999) sentinel.
69
+ *
70
+ * Named `categorizeDxError` (NOT `categorizeError`) to avoid collision
71
+ * with the pre-existing `categorizeError(err: AgentError): SigilErrorCategory`
72
+ * at `src/agent-errors.ts` — which serves a different purpose (detailed
73
+ * discriminated-union classification of AgentError contexts). The two
74
+ * coexist; consumers use `categorizeDxError` when working with DxError
75
+ * (the normalized FE-facing shape) and `categorizeError` when working
76
+ * with raw AgentError (the SDK-internal shape).
77
+ *
78
+ * FE should use this helper instead of hard-coding range checks — range
79
+ * layout may evolve; this function is the canonical classifier.
80
+ */
81
+ export declare function categorizeDxError(e: Pick<DxError, "code">): DxErrorCategory;
45
82
  /** Normalize any error into a DxError with code, message, and recovery actions. */
46
83
  export declare function toDxError(err: unknown, context?: string): DxError;
47
84
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/dashboard/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAML,KAAK,WAAW,EACjB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AA8F1C,+EAA+E;AAC/E,eAAO,MAAM,sBAAsB,OAAO,CAAC;AA8B3C;;;;;;;;;;GAUG;AACH,QAAA,MAAM,uBAAuB,yCAKnB,CAAC;AAEX,KAAK,mBAAmB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE;;;;;;;;;;;;;GAaG;AAOH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,OAAO,GACX,GAAG,IAAI,WAAW,CAAC,mBAAmB,CAAC,CAwBzC;AAID,mFAAmF;AACnF,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAsBjE"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/dashboard/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAML,KAAK,WAAW,EACjB,MAAM,gBAAgB,CAAC;AAQxB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AA8F1C,+EAA+E;AAC/E,eAAO,MAAM,sBAAsB,OAAO,CAAC;AA8B3C;;;;;;;;;;GAUG;AACH,QAAA,MAAM,uBAAuB,yCAKnB,CAAC;AAEX,KAAK,mBAAmB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE;;;;;;;;;;;;;GAaG;AAOH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,OAAO,GACX,GAAG,IAAI,WAAW,CAAC,mBAAmB,CAAC,CAwBzC;AAqCD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAMvD;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,eAAe,CAO3E;AAID,mFAAmF;AACnF,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAwBjE"}