@oobe-protocol-labs/synapse-sap-sdk 0.1.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 (315) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +882 -0
  3. package/dist/cjs/constants/index.js +43 -0
  4. package/dist/cjs/constants/index.js.map +1 -0
  5. package/dist/cjs/constants/limits.js +161 -0
  6. package/dist/cjs/constants/limits.js.map +1 -0
  7. package/dist/cjs/constants/programs.js +78 -0
  8. package/dist/cjs/constants/programs.js.map +1 -0
  9. package/dist/cjs/constants/seeds.js +57 -0
  10. package/dist/cjs/constants/seeds.js.map +1 -0
  11. package/dist/cjs/core/client.js +391 -0
  12. package/dist/cjs/core/client.js.map +1 -0
  13. package/dist/cjs/core/connection.js +319 -0
  14. package/dist/cjs/core/connection.js.map +1 -0
  15. package/dist/cjs/core/index.js +24 -0
  16. package/dist/cjs/core/index.js.map +1 -0
  17. package/dist/cjs/errors/index.js +334 -0
  18. package/dist/cjs/errors/index.js.map +1 -0
  19. package/dist/cjs/events/index.js +136 -0
  20. package/dist/cjs/events/index.js.map +1 -0
  21. package/dist/cjs/idl/index.js +63 -0
  22. package/dist/cjs/idl/index.js.map +1 -0
  23. package/dist/cjs/idl/synapse_agent_sap.json +9710 -0
  24. package/dist/cjs/index.js +147 -0
  25. package/dist/cjs/index.js.map +1 -0
  26. package/dist/cjs/modules/agent.js +272 -0
  27. package/dist/cjs/modules/agent.js.map +1 -0
  28. package/dist/cjs/modules/attestation.js +147 -0
  29. package/dist/cjs/modules/attestation.js.map +1 -0
  30. package/dist/cjs/modules/base.js +128 -0
  31. package/dist/cjs/modules/base.js.map +1 -0
  32. package/dist/cjs/modules/escrow.js +246 -0
  33. package/dist/cjs/modules/escrow.js.map +1 -0
  34. package/dist/cjs/modules/feedback.js +166 -0
  35. package/dist/cjs/modules/feedback.js.map +1 -0
  36. package/dist/cjs/modules/index.js +35 -0
  37. package/dist/cjs/modules/index.js.map +1 -0
  38. package/dist/cjs/modules/indexing.js +375 -0
  39. package/dist/cjs/modules/indexing.js.map +1 -0
  40. package/dist/cjs/modules/ledger.js +234 -0
  41. package/dist/cjs/modules/ledger.js.map +1 -0
  42. package/dist/cjs/modules/tools.js +319 -0
  43. package/dist/cjs/modules/tools.js.map +1 -0
  44. package/dist/cjs/modules/vault.js +410 -0
  45. package/dist/cjs/modules/vault.js.map +1 -0
  46. package/dist/cjs/pda/index.js +377 -0
  47. package/dist/cjs/pda/index.js.map +1 -0
  48. package/dist/cjs/plugin/index.js +934 -0
  49. package/dist/cjs/plugin/index.js.map +1 -0
  50. package/dist/cjs/plugin/protocols.js +282 -0
  51. package/dist/cjs/plugin/protocols.js.map +1 -0
  52. package/dist/cjs/plugin/schemas.js +831 -0
  53. package/dist/cjs/plugin/schemas.js.map +1 -0
  54. package/dist/cjs/postgres/adapter.js +715 -0
  55. package/dist/cjs/postgres/adapter.js.map +1 -0
  56. package/dist/cjs/postgres/index.js +50 -0
  57. package/dist/cjs/postgres/index.js.map +1 -0
  58. package/dist/cjs/postgres/serializers.js +381 -0
  59. package/dist/cjs/postgres/serializers.js.map +1 -0
  60. package/dist/cjs/postgres/sync.js +221 -0
  61. package/dist/cjs/postgres/sync.js.map +1 -0
  62. package/dist/cjs/postgres/types.js +44 -0
  63. package/dist/cjs/postgres/types.js.map +1 -0
  64. package/dist/cjs/registries/builder.js +414 -0
  65. package/dist/cjs/registries/builder.js.map +1 -0
  66. package/dist/cjs/registries/discovery.js +362 -0
  67. package/dist/cjs/registries/discovery.js.map +1 -0
  68. package/dist/cjs/registries/index.js +51 -0
  69. package/dist/cjs/registries/index.js.map +1 -0
  70. package/dist/cjs/registries/session.js +433 -0
  71. package/dist/cjs/registries/session.js.map +1 -0
  72. package/dist/cjs/registries/x402.js +577 -0
  73. package/dist/cjs/registries/x402.js.map +1 -0
  74. package/dist/cjs/types/accounts.js +13 -0
  75. package/dist/cjs/types/accounts.js.map +1 -0
  76. package/dist/cjs/types/common.js +13 -0
  77. package/dist/cjs/types/common.js.map +1 -0
  78. package/dist/cjs/types/enums.js +174 -0
  79. package/dist/cjs/types/enums.js.map +1 -0
  80. package/dist/cjs/types/index.js +36 -0
  81. package/dist/cjs/types/index.js.map +1 -0
  82. package/dist/cjs/types/instructions.js +92 -0
  83. package/dist/cjs/types/instructions.js.map +1 -0
  84. package/dist/cjs/utils/hash.js +58 -0
  85. package/dist/cjs/utils/hash.js.map +1 -0
  86. package/dist/cjs/utils/index.js +27 -0
  87. package/dist/cjs/utils/index.js.map +1 -0
  88. package/dist/cjs/utils/serialization.js +105 -0
  89. package/dist/cjs/utils/serialization.js.map +1 -0
  90. package/dist/cjs/utils/validation.js +36 -0
  91. package/dist/cjs/utils/validation.js.map +1 -0
  92. package/dist/esm/constants/index.js +29 -0
  93. package/dist/esm/constants/index.js.map +1 -0
  94. package/dist/esm/constants/limits.js +158 -0
  95. package/dist/esm/constants/limits.js.map +1 -0
  96. package/dist/esm/constants/programs.js +75 -0
  97. package/dist/esm/constants/programs.js.map +1 -0
  98. package/dist/esm/constants/seeds.js +54 -0
  99. package/dist/esm/constants/seeds.js.map +1 -0
  100. package/dist/esm/core/client.js +384 -0
  101. package/dist/esm/core/client.js.map +1 -0
  102. package/dist/esm/core/connection.js +315 -0
  103. package/dist/esm/core/connection.js.map +1 -0
  104. package/dist/esm/core/index.js +19 -0
  105. package/dist/esm/core/index.js.map +1 -0
  106. package/dist/esm/errors/index.js +325 -0
  107. package/dist/esm/errors/index.js.map +1 -0
  108. package/dist/esm/events/index.js +132 -0
  109. package/dist/esm/events/index.js.map +1 -0
  110. package/dist/esm/idl/index.js +57 -0
  111. package/dist/esm/idl/index.js.map +1 -0
  112. package/dist/esm/idl/synapse_agent_sap.json +9710 -0
  113. package/dist/esm/index.js +70 -0
  114. package/dist/esm/index.js.map +1 -0
  115. package/dist/esm/modules/agent.js +268 -0
  116. package/dist/esm/modules/agent.js.map +1 -0
  117. package/dist/esm/modules/attestation.js +143 -0
  118. package/dist/esm/modules/attestation.js.map +1 -0
  119. package/dist/esm/modules/base.js +124 -0
  120. package/dist/esm/modules/base.js.map +1 -0
  121. package/dist/esm/modules/escrow.js +242 -0
  122. package/dist/esm/modules/escrow.js.map +1 -0
  123. package/dist/esm/modules/feedback.js +162 -0
  124. package/dist/esm/modules/feedback.js.map +1 -0
  125. package/dist/esm/modules/index.js +23 -0
  126. package/dist/esm/modules/index.js.map +1 -0
  127. package/dist/esm/modules/indexing.js +371 -0
  128. package/dist/esm/modules/indexing.js.map +1 -0
  129. package/dist/esm/modules/ledger.js +230 -0
  130. package/dist/esm/modules/ledger.js.map +1 -0
  131. package/dist/esm/modules/tools.js +315 -0
  132. package/dist/esm/modules/tools.js.map +1 -0
  133. package/dist/esm/modules/vault.js +406 -0
  134. package/dist/esm/modules/vault.js.map +1 -0
  135. package/dist/esm/pda/index.js +357 -0
  136. package/dist/esm/pda/index.js.map +1 -0
  137. package/dist/esm/plugin/index.js +927 -0
  138. package/dist/esm/plugin/index.js.map +1 -0
  139. package/dist/esm/plugin/protocols.js +279 -0
  140. package/dist/esm/plugin/protocols.js.map +1 -0
  141. package/dist/esm/plugin/schemas.js +828 -0
  142. package/dist/esm/plugin/schemas.js.map +1 -0
  143. package/dist/esm/postgres/adapter.js +678 -0
  144. package/dist/esm/postgres/adapter.js.map +1 -0
  145. package/dist/esm/postgres/index.js +27 -0
  146. package/dist/esm/postgres/index.js.map +1 -0
  147. package/dist/esm/postgres/serializers.js +362 -0
  148. package/dist/esm/postgres/serializers.js.map +1 -0
  149. package/dist/esm/postgres/sync.js +217 -0
  150. package/dist/esm/postgres/sync.js.map +1 -0
  151. package/dist/esm/postgres/types.js +41 -0
  152. package/dist/esm/postgres/types.js.map +1 -0
  153. package/dist/esm/registries/builder.js +410 -0
  154. package/dist/esm/registries/builder.js.map +1 -0
  155. package/dist/esm/registries/discovery.js +358 -0
  156. package/dist/esm/registries/discovery.js.map +1 -0
  157. package/dist/esm/registries/index.js +44 -0
  158. package/dist/esm/registries/index.js.map +1 -0
  159. package/dist/esm/registries/session.js +429 -0
  160. package/dist/esm/registries/session.js.map +1 -0
  161. package/dist/esm/registries/x402.js +573 -0
  162. package/dist/esm/registries/x402.js.map +1 -0
  163. package/dist/esm/types/accounts.js +12 -0
  164. package/dist/esm/types/accounts.js.map +1 -0
  165. package/dist/esm/types/common.js +12 -0
  166. package/dist/esm/types/common.js.map +1 -0
  167. package/dist/esm/types/enums.js +171 -0
  168. package/dist/esm/types/enums.js.map +1 -0
  169. package/dist/esm/types/index.js +25 -0
  170. package/dist/esm/types/index.js.map +1 -0
  171. package/dist/esm/types/instructions.js +89 -0
  172. package/dist/esm/types/instructions.js.map +1 -0
  173. package/dist/esm/utils/hash.js +53 -0
  174. package/dist/esm/utils/hash.js.map +1 -0
  175. package/dist/esm/utils/index.js +19 -0
  176. package/dist/esm/utils/index.js.map +1 -0
  177. package/dist/esm/utils/serialization.js +98 -0
  178. package/dist/esm/utils/serialization.js.map +1 -0
  179. package/dist/esm/utils/validation.js +33 -0
  180. package/dist/esm/utils/validation.js.map +1 -0
  181. package/dist/types/constants/index.d.ts +27 -0
  182. package/dist/types/constants/index.d.ts.map +1 -0
  183. package/dist/types/constants/limits.d.ts +149 -0
  184. package/dist/types/constants/limits.d.ts.map +1 -0
  185. package/dist/types/constants/programs.d.ts +69 -0
  186. package/dist/types/constants/programs.d.ts.map +1 -0
  187. package/dist/types/constants/seeds.d.ts +61 -0
  188. package/dist/types/constants/seeds.d.ts.map +1 -0
  189. package/dist/types/core/client.d.ts +323 -0
  190. package/dist/types/core/client.d.ts.map +1 -0
  191. package/dist/types/core/connection.d.ts +279 -0
  192. package/dist/types/core/connection.d.ts.map +1 -0
  193. package/dist/types/core/index.d.ts +20 -0
  194. package/dist/types/core/index.d.ts.map +1 -0
  195. package/dist/types/errors/index.d.ts +276 -0
  196. package/dist/types/errors/index.d.ts.map +1 -0
  197. package/dist/types/events/index.d.ts +248 -0
  198. package/dist/types/events/index.d.ts.map +1 -0
  199. package/dist/types/idl/index.d.ts +70 -0
  200. package/dist/types/idl/index.d.ts.map +1 -0
  201. package/dist/types/index.d.ts +68 -0
  202. package/dist/types/index.d.ts.map +1 -0
  203. package/dist/types/modules/agent.d.ts +166 -0
  204. package/dist/types/modules/agent.d.ts.map +1 -0
  205. package/dist/types/modules/attestation.d.ts +96 -0
  206. package/dist/types/modules/attestation.d.ts.map +1 -0
  207. package/dist/types/modules/base.d.ts +126 -0
  208. package/dist/types/modules/base.d.ts.map +1 -0
  209. package/dist/types/modules/escrow.d.ts +151 -0
  210. package/dist/types/modules/escrow.d.ts.map +1 -0
  211. package/dist/types/modules/feedback.d.ts +105 -0
  212. package/dist/types/modules/feedback.d.ts.map +1 -0
  213. package/dist/types/modules/index.d.ts +24 -0
  214. package/dist/types/modules/index.d.ts.map +1 -0
  215. package/dist/types/modules/indexing.d.ts +200 -0
  216. package/dist/types/modules/indexing.d.ts.map +1 -0
  217. package/dist/types/modules/ledger.d.ts +150 -0
  218. package/dist/types/modules/ledger.d.ts.map +1 -0
  219. package/dist/types/modules/tools.d.ts +182 -0
  220. package/dist/types/modules/tools.d.ts.map +1 -0
  221. package/dist/types/modules/vault.d.ts +240 -0
  222. package/dist/types/modules/vault.d.ts.map +1 -0
  223. package/dist/types/pda/index.d.ts +296 -0
  224. package/dist/types/pda/index.d.ts.map +1 -0
  225. package/dist/types/plugin/index.d.ts +171 -0
  226. package/dist/types/plugin/index.d.ts.map +1 -0
  227. package/dist/types/plugin/protocols.d.ts +152 -0
  228. package/dist/types/plugin/protocols.d.ts.map +1 -0
  229. package/dist/types/plugin/schemas.d.ts +823 -0
  230. package/dist/types/plugin/schemas.d.ts.map +1 -0
  231. package/dist/types/postgres/adapter.d.ts +355 -0
  232. package/dist/types/postgres/adapter.d.ts.map +1 -0
  233. package/dist/types/postgres/index.d.ts +24 -0
  234. package/dist/types/postgres/index.d.ts.map +1 -0
  235. package/dist/types/postgres/serializers.d.ts +30 -0
  236. package/dist/types/postgres/serializers.d.ts.map +1 -0
  237. package/dist/types/postgres/sync.d.ts +132 -0
  238. package/dist/types/postgres/sync.d.ts.map +1 -0
  239. package/dist/types/postgres/types.d.ts +167 -0
  240. package/dist/types/postgres/types.d.ts.map +1 -0
  241. package/dist/types/registries/builder.d.ts +340 -0
  242. package/dist/types/registries/builder.d.ts.map +1 -0
  243. package/dist/types/registries/discovery.d.ts +333 -0
  244. package/dist/types/registries/discovery.d.ts.map +1 -0
  245. package/dist/types/registries/index.d.ts +48 -0
  246. package/dist/types/registries/index.d.ts.map +1 -0
  247. package/dist/types/registries/session.d.ts +323 -0
  248. package/dist/types/registries/session.d.ts.map +1 -0
  249. package/dist/types/registries/x402.d.ts +463 -0
  250. package/dist/types/registries/x402.d.ts.map +1 -0
  251. package/dist/types/types/accounts.d.ts +565 -0
  252. package/dist/types/types/accounts.d.ts.map +1 -0
  253. package/dist/types/types/common.d.ts +166 -0
  254. package/dist/types/types/common.d.ts.map +1 -0
  255. package/dist/types/types/enums.d.ts +238 -0
  256. package/dist/types/types/enums.d.ts.map +1 -0
  257. package/dist/types/types/index.d.ts +28 -0
  258. package/dist/types/types/index.d.ts.map +1 -0
  259. package/dist/types/types/instructions.d.ts +366 -0
  260. package/dist/types/types/instructions.d.ts.map +1 -0
  261. package/dist/types/utils/hash.d.ts +48 -0
  262. package/dist/types/utils/hash.d.ts.map +1 -0
  263. package/dist/types/utils/index.d.ts +19 -0
  264. package/dist/types/utils/index.d.ts.map +1 -0
  265. package/dist/types/utils/serialization.d.ts +69 -0
  266. package/dist/types/utils/serialization.d.ts.map +1 -0
  267. package/dist/types/utils/validation.d.ts +29 -0
  268. package/dist/types/utils/validation.d.ts.map +1 -0
  269. package/package.json +178 -0
  270. package/src/constants/index.ts +44 -0
  271. package/src/constants/limits.ts +165 -0
  272. package/src/constants/programs.ts +83 -0
  273. package/src/constants/seeds.ts +66 -0
  274. package/src/core/client.ts +416 -0
  275. package/src/core/connection.ts +409 -0
  276. package/src/core/index.ts +20 -0
  277. package/src/errors/index.ts +346 -0
  278. package/src/events/index.ts +335 -0
  279. package/src/idl/index.ts +76 -0
  280. package/src/idl/synapse_agent_sap.json +9710 -0
  281. package/src/index.ts +253 -0
  282. package/src/modules/agent.ts +319 -0
  283. package/src/modules/attestation.ts +168 -0
  284. package/src/modules/base.ts +158 -0
  285. package/src/modules/escrow.ts +308 -0
  286. package/src/modules/feedback.ts +186 -0
  287. package/src/modules/index.ts +24 -0
  288. package/src/modules/indexing.ts +444 -0
  289. package/src/modules/ledger.ts +262 -0
  290. package/src/modules/tools.ts +411 -0
  291. package/src/modules/vault.ts +533 -0
  292. package/src/pda/index.ts +512 -0
  293. package/src/plugin/index.ts +1202 -0
  294. package/src/plugin/protocols.ts +404 -0
  295. package/src/plugin/schemas.ts +909 -0
  296. package/src/postgres/adapter.ts +904 -0
  297. package/src/postgres/index.ts +59 -0
  298. package/src/postgres/schema.sql +683 -0
  299. package/src/postgres/serializers.ts +485 -0
  300. package/src/postgres/sync.ts +254 -0
  301. package/src/postgres/types.ts +245 -0
  302. package/src/registries/builder.ts +607 -0
  303. package/src/registries/discovery.ts +572 -0
  304. package/src/registries/index.ts +77 -0
  305. package/src/registries/session.ts +613 -0
  306. package/src/registries/x402.ts +906 -0
  307. package/src/types/accounts.ts +618 -0
  308. package/src/types/common.ts +187 -0
  309. package/src/types/enums.ts +214 -0
  310. package/src/types/index.ts +92 -0
  311. package/src/types/instructions.ts +413 -0
  312. package/src/utils/hash.ts +57 -0
  313. package/src/utils/index.ts +19 -0
  314. package/src/utils/serialization.ts +98 -0
  315. package/src/utils/validation.ts +36 -0
@@ -0,0 +1,377 @@
1
+ "use strict";
2
+ /**
3
+ * @module pda
4
+ * @description Deterministic PDA derivation for every SAP v2 account.
5
+ *
6
+ * Each function returns `[PublicKey, bump]` and is pure — no network
7
+ * calls. All results are memoizable by the caller.
8
+ *
9
+ * Seeds mirror the Rust `#[account(seeds = [...])]` definitions exactly.
10
+ *
11
+ * @category PDA
12
+ * @since v0.1.0
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * import { deriveAgent, deriveEscrow } from "@synapse-sap/sdk/pda";
17
+ *
18
+ * const [agentPda, bump] = deriveAgent(walletPublicKey);
19
+ * const [escrowPda] = deriveEscrow(agentPda, depositor);
20
+ * ```
21
+ */
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ exports.deriveLedgerPage = exports.deriveLedger = exports.deriveAttestation = exports.deriveEscrow = exports.deriveTool = exports.deriveCheckpoint = exports.deriveVaultDelegate = exports.deriveEpochPage = exports.deriveSession = exports.deriveVault = exports.deriveToolCategoryIndex = exports.deriveProtocolIndex = exports.deriveCapabilityIndex = exports.deriveFeedback = exports.deriveAgentStats = exports.deriveAgent = exports.deriveGlobalRegistry = void 0;
24
+ const web3_js_1 = require("@solana/web3.js");
25
+ const constants_1 = require("../constants");
26
+ // ── Helpers ──────────────────────────────────────────────────────
27
+ /**
28
+ * Thin wrapper around `PublicKey.findProgramAddressSync`.
29
+ *
30
+ * @name findPda
31
+ * @description Derives a PDA from the given seed buffers and program ID.
32
+ * @param seeds - Array of seed `Buffer`s / `Uint8Array`s.
33
+ * @param programId - The program to derive against (defaults to {@link SAP_PROGRAM_ID}).
34
+ * @returns {PdaResult} The derived `[pda, bump]` tuple.
35
+ * @category PDA
36
+ * @since v0.1.0
37
+ */
38
+ const findPda = (seeds, programId = constants_1.SAP_PROGRAM_ID) => web3_js_1.PublicKey.findProgramAddressSync(seeds, programId);
39
+ /**
40
+ * Encode a seed string as a UTF-8 `Buffer`.
41
+ *
42
+ * @name toSeedBuf
43
+ * @description Converts a string seed prefix to a `Buffer` suitable for PDA derivation.
44
+ * @param s - The seed string to encode.
45
+ * @returns {Buffer} UTF-8 encoded buffer.
46
+ * @category PDA
47
+ * @since v0.1.0
48
+ */
49
+ const toSeedBuf = (s) => Buffer.from(s);
50
+ /**
51
+ * Encode an unsigned 32-bit integer as a little-endian `Buffer`.
52
+ *
53
+ * @name u32le
54
+ * @description Produces a 4-byte LE buffer for numeric PDA seed segments (e.g., epoch index, page index).
55
+ * @param n - The number to encode.
56
+ * @returns {Buffer} 4-byte little-endian buffer.
57
+ * @category PDA
58
+ * @since v0.1.0
59
+ */
60
+ const u32le = (n) => {
61
+ const buf = Buffer.alloc(4);
62
+ buf.writeUInt32LE(n, 0);
63
+ return buf;
64
+ };
65
+ // ═════════════════════════════════════════════
66
+ // Core PDAs
67
+ // ═════════════════════════════════════════════
68
+ /**
69
+ * Derive the **GlobalRegistry** PDA.
70
+ *
71
+ * Seeds: `["sap_global"]`
72
+ *
73
+ * @name deriveGlobalRegistry
74
+ * @description Returns the singleton global registry address used by the SAP program.
75
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
76
+ * @returns {PdaResult} `[pda, bump]` tuple.
77
+ * @category PDA
78
+ * @since v0.1.0
79
+ * @see GlobalRegistry account type
80
+ */
81
+ const deriveGlobalRegistry = (programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.GLOBAL)], programId);
82
+ exports.deriveGlobalRegistry = deriveGlobalRegistry;
83
+ /**
84
+ * Derive the **AgentAccount** PDA for a given wallet.
85
+ *
86
+ * Seeds: `["sap_agent", wallet]`
87
+ *
88
+ * @name deriveAgent
89
+ * @description Computes the unique agent PDA owned by `wallet`.
90
+ * @param wallet - The agent owner’s wallet `PublicKey`.
91
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
92
+ * @returns {PdaResult} `[pda, bump]` tuple.
93
+ * @category PDA
94
+ * @since v0.1.0
95
+ * @see AgentAccount
96
+ */
97
+ const deriveAgent = (wallet, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.AGENT), wallet.toBuffer()], programId);
98
+ exports.deriveAgent = deriveAgent;
99
+ /**
100
+ * Derive the **AgentStats** PDA for a given agent.
101
+ *
102
+ * Seeds: `["sap_stats", agent_pda]`
103
+ *
104
+ * @name deriveAgentStats
105
+ * @description Computes the stats account PDA associated with an agent.
106
+ * @param agentPda - The agent’s on-chain PDA.
107
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
108
+ * @returns {PdaResult} `[pda, bump]` tuple.
109
+ * @category PDA
110
+ * @since v0.1.0
111
+ * @see AgentStats
112
+ */
113
+ const deriveAgentStats = (agentPda, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.STATS), agentPda.toBuffer()], programId);
114
+ exports.deriveAgentStats = deriveAgentStats;
115
+ // ═════════════════════════════════════════════
116
+ // Feedback
117
+ // ═════════════════════════════════════════════
118
+ /**
119
+ * Derive the **Feedback** PDA for a reviewer on a specific agent.
120
+ *
121
+ * Seeds: `["sap_feedback", agent_pda, reviewer_wallet]`
122
+ *
123
+ * @name deriveFeedback
124
+ * @description Computes the feedback account PDA scoped to a reviewer–agent pair.
125
+ * @param agentPda - The target agent’s PDA.
126
+ * @param reviewer - The reviewer’s wallet `PublicKey`.
127
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
128
+ * @returns {PdaResult} `[pda, bump]` tuple.
129
+ * @category PDA
130
+ * @since v0.1.0
131
+ * @see FeedbackAccount
132
+ */
133
+ const deriveFeedback = (agentPda, reviewer, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.FEEDBACK), agentPda.toBuffer(), reviewer.toBuffer()], programId);
134
+ exports.deriveFeedback = deriveFeedback;
135
+ // ═════════════════════════════════════════════
136
+ // Indexing
137
+ // ═════════════════════════════════════════════
138
+ /**
139
+ * Derive the **CapabilityIndex** PDA for a hashed capability string.
140
+ *
141
+ * Seeds: `["sap_cap_idx", capability_hash]`
142
+ *
143
+ * @name deriveCapabilityIndex
144
+ * @description Computes the capability index PDA used to look up agents by capability.
145
+ * @param capabilityHash - SHA-256 hash of the capability string (32 bytes).
146
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
147
+ * @returns {PdaResult} `[pda, bump]` tuple.
148
+ * @category PDA
149
+ * @since v0.1.0
150
+ * @see CapabilityIndex
151
+ */
152
+ const deriveCapabilityIndex = (capabilityHash, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.CAPABILITY_INDEX), Buffer.from(capabilityHash)], programId);
153
+ exports.deriveCapabilityIndex = deriveCapabilityIndex;
154
+ /**
155
+ * Derive the **ProtocolIndex** PDA for a hashed protocol string.
156
+ *
157
+ * Seeds: `["sap_proto_idx", protocol_hash]`
158
+ *
159
+ * @name deriveProtocolIndex
160
+ * @description Computes the protocol index PDA used to look up agents by protocol.
161
+ * @param protocolHash - SHA-256 hash of the protocol string (32 bytes).
162
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
163
+ * @returns {PdaResult} `[pda, bump]` tuple.
164
+ * @category PDA
165
+ * @since v0.1.0
166
+ * @see ProtocolIndex
167
+ */
168
+ const deriveProtocolIndex = (protocolHash, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.PROTOCOL_INDEX), Buffer.from(protocolHash)], programId);
169
+ exports.deriveProtocolIndex = deriveProtocolIndex;
170
+ /**
171
+ * Derive the **ToolCategoryIndex** PDA for a tool category discriminant.
172
+ *
173
+ * Seeds: `["sap_tool_cat", category_u8]`
174
+ *
175
+ * @name deriveToolCategoryIndex
176
+ * @description Computes the tool category index PDA used to look up tools by category.
177
+ * @param category - The `u8` category discriminant (see {@link TOOL_CATEGORY_VALUES}).
178
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
179
+ * @returns {PdaResult} `[pda, bump]` tuple.
180
+ * @category PDA
181
+ * @since v0.1.0
182
+ * @see ToolCategoryIndex
183
+ */
184
+ const deriveToolCategoryIndex = (category, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.TOOL_CATEGORY), Buffer.from([category])], programId);
185
+ exports.deriveToolCategoryIndex = deriveToolCategoryIndex;
186
+ // ═════════════════════════════════════════════
187
+ // Memory Vault
188
+ // ═════════════════════════════════════════════
189
+ /**
190
+ * Derive the **MemoryVault** PDA for a given agent.
191
+ *
192
+ * Seeds: `["sap_vault", agent_pda]`
193
+ *
194
+ * @name deriveVault
195
+ * @description Computes the memory vault PDA owned by the specified agent.
196
+ * @param agentPda - The agent’s on-chain PDA.
197
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
198
+ * @returns {PdaResult} `[pda, bump]` tuple.
199
+ * @category PDA
200
+ * @since v0.1.0
201
+ * @see MemoryVault
202
+ */
203
+ const deriveVault = (agentPda, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.VAULT), agentPda.toBuffer()], programId);
204
+ exports.deriveVault = deriveVault;
205
+ /**
206
+ * Derive the **Session** PDA for a vault and session hash.
207
+ *
208
+ * Seeds: `["sap_session", vault_pda, session_hash]`
209
+ *
210
+ * @name deriveSession
211
+ * @description Computes the session PDA scoped to a vault and unique session identifier.
212
+ * @param vaultPda - The parent vault’s PDA.
213
+ * @param sessionHash - SHA-256 hash identifying the session (32 bytes).
214
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
215
+ * @returns {PdaResult} `[pda, bump]` tuple.
216
+ * @category PDA
217
+ * @since v0.1.0
218
+ * @see SessionAccount
219
+ */
220
+ const deriveSession = (vaultPda, sessionHash, programId = constants_1.SAP_PROGRAM_ID) => findPda([
221
+ toSeedBuf(constants_1.SEEDS.SESSION),
222
+ vaultPda.toBuffer(),
223
+ Buffer.from(sessionHash),
224
+ ], programId);
225
+ exports.deriveSession = deriveSession;
226
+ /**
227
+ * Derive the **EpochPage** PDA for a session at a given epoch index.
228
+ *
229
+ * Seeds: `["sap_epoch", session_pda, epoch_index_u32_le]`
230
+ *
231
+ * @name deriveEpochPage
232
+ * @description Computes the epoch page PDA for paginated memory inscriptions.
233
+ * @param sessionPda - The parent session’s PDA.
234
+ * @param epochIndex - Zero-based epoch page index.
235
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
236
+ * @returns {PdaResult} `[pda, bump]` tuple.
237
+ * @category PDA
238
+ * @since v0.1.0
239
+ * @see EpochPage
240
+ */
241
+ const deriveEpochPage = (sessionPda, epochIndex, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.EPOCH), sessionPda.toBuffer(), u32le(epochIndex)], programId);
242
+ exports.deriveEpochPage = deriveEpochPage;
243
+ /**
244
+ * Derive the **VaultDelegate** PDA for a delegate on a vault.
245
+ *
246
+ * Seeds: `["sap_delegate", vault_pda, delegate_pubkey]`
247
+ *
248
+ * @name deriveVaultDelegate
249
+ * @description Computes the delegate authorization PDA granting a wallet write access to a vault.
250
+ * @param vaultPda - The parent vault’s PDA.
251
+ * @param delegate - The delegate’s wallet `PublicKey`.
252
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
253
+ * @returns {PdaResult} `[pda, bump]` tuple.
254
+ * @category PDA
255
+ * @since v0.1.0
256
+ * @see VaultDelegate
257
+ */
258
+ const deriveVaultDelegate = (vaultPda, delegate, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.DELEGATE), vaultPda.toBuffer(), delegate.toBuffer()], programId);
259
+ exports.deriveVaultDelegate = deriveVaultDelegate;
260
+ /**
261
+ * Derive the **Checkpoint** PDA for a session at a given checkpoint index.
262
+ *
263
+ * Seeds: `["sap_checkpoint", session_pda, checkpoint_index_u32_le]`
264
+ *
265
+ * @name deriveCheckpoint
266
+ * @description Computes the checkpoint PDA storing a Merkle snapshot of session state.
267
+ * @param sessionPda - The parent session’s PDA.
268
+ * @param checkpointIndex - Zero-based checkpoint index.
269
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
270
+ * @returns {PdaResult} `[pda, bump]` tuple.
271
+ * @category PDA
272
+ * @since v0.1.0
273
+ * @see Checkpoint
274
+ */
275
+ const deriveCheckpoint = (sessionPda, checkpointIndex, programId = constants_1.SAP_PROGRAM_ID) => findPda([
276
+ toSeedBuf(constants_1.SEEDS.CHECKPOINT),
277
+ sessionPda.toBuffer(),
278
+ u32le(checkpointIndex),
279
+ ], programId);
280
+ exports.deriveCheckpoint = deriveCheckpoint;
281
+ // ═════════════════════════════════════════════
282
+ // Tools
283
+ // ═════════════════════════════════════════════
284
+ /**
285
+ * Derive the **Tool** PDA for an agent and tool name hash.
286
+ *
287
+ * Seeds: `["sap_tool", agent_pda, tool_name_hash]`
288
+ *
289
+ * @name deriveTool
290
+ * @description Computes the tool registration PDA scoped to an agent and tool identifier.
291
+ * @param agentPda - The owning agent’s PDA.
292
+ * @param toolNameHash - SHA-256 hash of the tool name (32 bytes).
293
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
294
+ * @returns {PdaResult} `[pda, bump]` tuple.
295
+ * @category PDA
296
+ * @since v0.1.0
297
+ * @see ToolAccount
298
+ */
299
+ const deriveTool = (agentPda, toolNameHash, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.TOOL), agentPda.toBuffer(), Buffer.from(toolNameHash)], programId);
300
+ exports.deriveTool = deriveTool;
301
+ // ═════════════════════════════════════════════
302
+ // Escrow
303
+ // ═════════════════════════════════════════════
304
+ /**
305
+ * Derive the **Escrow** PDA for an agent–depositor pair.
306
+ *
307
+ * Seeds: `["sap_escrow", agent_pda, depositor_wallet]`
308
+ *
309
+ * @name deriveEscrow
310
+ * @description Computes the escrow PDA holding deposited funds for service payments.
311
+ * @param agentPda - The service-providing agent’s PDA.
312
+ * @param depositor - The depositor’s wallet `PublicKey`.
313
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
314
+ * @returns {PdaResult} `[pda, bump]` tuple.
315
+ * @category PDA
316
+ * @since v0.1.0
317
+ * @see EscrowAccount
318
+ */
319
+ const deriveEscrow = (agentPda, depositor, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.ESCROW), agentPda.toBuffer(), depositor.toBuffer()], programId);
320
+ exports.deriveEscrow = deriveEscrow;
321
+ // ═════════════════════════════════════════════
322
+ // Attestation
323
+ // ═════════════════════════════════════════════
324
+ /**
325
+ * Derive the **Attestation** PDA for an attester on a specific agent.
326
+ *
327
+ * Seeds: `["sap_attest", agent_pda, attester_wallet]`
328
+ *
329
+ * @name deriveAttestation
330
+ * @description Computes the attestation PDA recording a third-party’s trust assertion.
331
+ * @param agentPda - The attested agent’s PDA.
332
+ * @param attester - The attester’s wallet `PublicKey`.
333
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
334
+ * @returns {PdaResult} `[pda, bump]` tuple.
335
+ * @category PDA
336
+ * @since v0.1.0
337
+ * @see AttestationAccount
338
+ */
339
+ const deriveAttestation = (agentPda, attester, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.ATTESTATION), agentPda.toBuffer(), attester.toBuffer()], programId);
340
+ exports.deriveAttestation = deriveAttestation;
341
+ // ═════════════════════════════════════════════
342
+ // Memory Ledger
343
+ // ═════════════════════════════════════════════
344
+ /**
345
+ * Derive the **MemoryLedger** PDA for a session.
346
+ *
347
+ * Seeds: `["sap_ledger", session_pda]`
348
+ *
349
+ * @name deriveLedger
350
+ * @description Computes the ledger PDA that tracks append-only entries for a session.
351
+ * @param sessionPda - The parent session’s PDA.
352
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
353
+ * @returns {PdaResult} `[pda, bump]` tuple.
354
+ * @category PDA
355
+ * @since v0.1.0
356
+ * @see MemoryLedger
357
+ */
358
+ const deriveLedger = (sessionPda, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.LEDGER), sessionPda.toBuffer()], programId);
359
+ exports.deriveLedger = deriveLedger;
360
+ /**
361
+ * Derive the **LedgerPage** PDA for a ledger at a given page index.
362
+ *
363
+ * Seeds: `["sap_page", ledger_pda, page_index_u32_le]`
364
+ *
365
+ * @name deriveLedgerPage
366
+ * @description Computes the ledger page PDA for paginated ledger data storage.
367
+ * @param ledgerPda - The parent ledger’s PDA.
368
+ * @param pageIndex - Zero-based page index.
369
+ * @param programId - Override program ID (defaults to {@link SAP_PROGRAM_ID}).
370
+ * @returns {PdaResult} `[pda, bump]` tuple.
371
+ * @category PDA
372
+ * @since v0.1.0
373
+ * @see LedgerPage
374
+ */
375
+ const deriveLedgerPage = (ledgerPda, pageIndex, programId = constants_1.SAP_PROGRAM_ID) => findPda([toSeedBuf(constants_1.SEEDS.LEDGER_PAGE), ledgerPda.toBuffer(), u32le(pageIndex)], programId);
376
+ exports.deriveLedgerPage = deriveLedgerPage;
377
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pda/index.ts"],"names":[],"mappings":"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"}