@waiaas/daemon 2.11.0-rc → 2.11.0-rc.13

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 (224) hide show
  1. package/dist/api/middleware/resolve-asset.d.ts +26 -0
  2. package/dist/api/middleware/resolve-asset.d.ts.map +1 -0
  3. package/dist/api/middleware/resolve-asset.js +81 -0
  4. package/dist/api/middleware/resolve-asset.js.map +1 -0
  5. package/dist/api/routes/actions.d.ts +4 -0
  6. package/dist/api/routes/actions.d.ts.map +1 -1
  7. package/dist/api/routes/actions.js +120 -0
  8. package/dist/api/routes/actions.js.map +1 -1
  9. package/dist/api/routes/admin-auth.d.ts.map +1 -1
  10. package/dist/api/routes/admin-auth.js +4 -1
  11. package/dist/api/routes/admin-auth.js.map +1 -1
  12. package/dist/api/routes/admin-credentials.d.ts +20 -0
  13. package/dist/api/routes/admin-credentials.d.ts.map +1 -0
  14. package/dist/api/routes/admin-credentials.js +115 -0
  15. package/dist/api/routes/admin-credentials.js.map +1 -0
  16. package/dist/api/routes/admin-settings.d.ts.map +1 -1
  17. package/dist/api/routes/admin-settings.js +70 -1
  18. package/dist/api/routes/admin-settings.js.map +1 -1
  19. package/dist/api/routes/admin-wallets.d.ts.map +1 -1
  20. package/dist/api/routes/admin-wallets.js +27 -14
  21. package/dist/api/routes/admin-wallets.js.map +1 -1
  22. package/dist/api/routes/connect-info.d.ts +2 -0
  23. package/dist/api/routes/connect-info.d.ts.map +1 -1
  24. package/dist/api/routes/connect-info.js +32 -1
  25. package/dist/api/routes/connect-info.js.map +1 -1
  26. package/dist/api/routes/credentials.d.ts +20 -0
  27. package/dist/api/routes/credentials.d.ts.map +1 -0
  28. package/dist/api/routes/credentials.js +120 -0
  29. package/dist/api/routes/credentials.js.map +1 -0
  30. package/dist/api/routes/defi-positions.d.ts.map +1 -1
  31. package/dist/api/routes/defi-positions.js +10 -0
  32. package/dist/api/routes/defi-positions.js.map +1 -1
  33. package/dist/api/routes/external-actions.d.ts +19 -0
  34. package/dist/api/routes/external-actions.d.ts.map +1 -0
  35. package/dist/api/routes/external-actions.js +199 -0
  36. package/dist/api/routes/external-actions.js.map +1 -0
  37. package/dist/api/routes/incoming.d.ts.map +1 -1
  38. package/dist/api/routes/incoming.js +2 -1
  39. package/dist/api/routes/incoming.js.map +1 -1
  40. package/dist/api/routes/index.d.ts +3 -0
  41. package/dist/api/routes/index.d.ts.map +1 -1
  42. package/dist/api/routes/index.js +3 -0
  43. package/dist/api/routes/index.js.map +1 -1
  44. package/dist/api/routes/nfts.js +24 -4
  45. package/dist/api/routes/nfts.js.map +1 -1
  46. package/dist/api/routes/openapi-schemas.d.ts +321 -139
  47. package/dist/api/routes/openapi-schemas.d.ts.map +1 -1
  48. package/dist/api/routes/openapi-schemas.js +24 -0
  49. package/dist/api/routes/openapi-schemas.js.map +1 -1
  50. package/dist/api/routes/rpc-proxy.d.ts +55 -0
  51. package/dist/api/routes/rpc-proxy.d.ts.map +1 -0
  52. package/dist/api/routes/rpc-proxy.js +285 -0
  53. package/dist/api/routes/rpc-proxy.js.map +1 -0
  54. package/dist/api/routes/staking.d.ts.map +1 -1
  55. package/dist/api/routes/staking.js +15 -0
  56. package/dist/api/routes/staking.js.map +1 -1
  57. package/dist/api/routes/tokens.d.ts.map +1 -1
  58. package/dist/api/routes/tokens.js +8 -1
  59. package/dist/api/routes/tokens.js.map +1 -1
  60. package/dist/api/routes/transactions.d.ts +35 -0
  61. package/dist/api/routes/transactions.d.ts.map +1 -1
  62. package/dist/api/routes/transactions.js +220 -20
  63. package/dist/api/routes/transactions.js.map +1 -1
  64. package/dist/api/routes/wallet.d.ts.map +1 -1
  65. package/dist/api/routes/wallet.js +18 -4
  66. package/dist/api/routes/wallet.js.map +1 -1
  67. package/dist/api/server.d.ts +2 -0
  68. package/dist/api/server.d.ts.map +1 -1
  69. package/dist/api/server.js +52 -1
  70. package/dist/api/server.js.map +1 -1
  71. package/dist/infrastructure/action/action-provider-registry.d.ts.map +1 -1
  72. package/dist/infrastructure/action/action-provider-registry.js +12 -0
  73. package/dist/infrastructure/action/action-provider-registry.js.map +1 -1
  74. package/dist/infrastructure/credential/credential-crypto.d.ts +43 -0
  75. package/dist/infrastructure/credential/credential-crypto.d.ts.map +1 -0
  76. package/dist/infrastructure/credential/credential-crypto.js +64 -0
  77. package/dist/infrastructure/credential/credential-crypto.js.map +1 -0
  78. package/dist/infrastructure/credential/credential-vault.d.ts +42 -0
  79. package/dist/infrastructure/credential/credential-vault.d.ts.map +1 -0
  80. package/dist/infrastructure/credential/credential-vault.js +235 -0
  81. package/dist/infrastructure/credential/credential-vault.js.map +1 -0
  82. package/dist/infrastructure/credential/index.d.ts +6 -0
  83. package/dist/infrastructure/credential/index.d.ts.map +1 -0
  84. package/dist/infrastructure/credential/index.js +6 -0
  85. package/dist/infrastructure/credential/index.js.map +1 -0
  86. package/dist/infrastructure/database/migrate.d.ts +1 -1
  87. package/dist/infrastructure/database/migrate.d.ts.map +1 -1
  88. package/dist/infrastructure/database/migrate.js +191 -6
  89. package/dist/infrastructure/database/migrate.js.map +1 -1
  90. package/dist/infrastructure/database/schema.d.ts +281 -1
  91. package/dist/infrastructure/database/schema.d.ts.map +1 -1
  92. package/dist/infrastructure/database/schema.js +34 -3
  93. package/dist/infrastructure/database/schema.js.map +1 -1
  94. package/dist/infrastructure/keystore/re-encrypt.d.ts +9 -0
  95. package/dist/infrastructure/keystore/re-encrypt.d.ts.map +1 -1
  96. package/dist/infrastructure/keystore/re-encrypt.js +47 -1
  97. package/dist/infrastructure/keystore/re-encrypt.js.map +1 -1
  98. package/dist/infrastructure/settings/index.d.ts +2 -2
  99. package/dist/infrastructure/settings/index.d.ts.map +1 -1
  100. package/dist/infrastructure/settings/index.js +1 -1
  101. package/dist/infrastructure/settings/index.js.map +1 -1
  102. package/dist/infrastructure/settings/setting-keys.d.ts +16 -2
  103. package/dist/infrastructure/settings/setting-keys.d.ts.map +1 -1
  104. package/dist/infrastructure/settings/setting-keys.js +296 -206
  105. package/dist/infrastructure/settings/setting-keys.js.map +1 -1
  106. package/dist/lifecycle/daemon.d.ts.map +1 -1
  107. package/dist/lifecycle/daemon.js +31 -0
  108. package/dist/lifecycle/daemon.js.map +1 -1
  109. package/dist/notifications/templates/message-templates.d.ts.map +1 -1
  110. package/dist/notifications/templates/message-templates.js +5 -6
  111. package/dist/notifications/templates/message-templates.js.map +1 -1
  112. package/dist/pipeline/database-policy-engine.d.ts +36 -0
  113. package/dist/pipeline/database-policy-engine.d.ts.map +1 -1
  114. package/dist/pipeline/database-policy-engine.js +185 -0
  115. package/dist/pipeline/database-policy-engine.js.map +1 -1
  116. package/dist/pipeline/external-action-pipeline.d.ts +64 -0
  117. package/dist/pipeline/external-action-pipeline.d.ts.map +1 -0
  118. package/dist/pipeline/external-action-pipeline.js +427 -0
  119. package/dist/pipeline/external-action-pipeline.js.map +1 -0
  120. package/dist/pipeline/pipeline.d.ts +4 -0
  121. package/dist/pipeline/pipeline.d.ts.map +1 -1
  122. package/dist/pipeline/resolve-effective-amount-usd.d.ts.map +1 -1
  123. package/dist/pipeline/resolve-effective-amount-usd.js +2 -1
  124. package/dist/pipeline/resolve-effective-amount-usd.js.map +1 -1
  125. package/dist/pipeline/stages.d.ts.map +1 -1
  126. package/dist/pipeline/stages.js +59 -10
  127. package/dist/pipeline/stages.js.map +1 -1
  128. package/dist/rpc-proxy/completion-waiter.d.ts +35 -0
  129. package/dist/rpc-proxy/completion-waiter.d.ts.map +1 -0
  130. package/dist/rpc-proxy/completion-waiter.js +72 -0
  131. package/dist/rpc-proxy/completion-waiter.js.map +1 -0
  132. package/dist/rpc-proxy/dispatcher.d.ts +37 -0
  133. package/dist/rpc-proxy/dispatcher.d.ts.map +1 -0
  134. package/dist/rpc-proxy/dispatcher.js +54 -0
  135. package/dist/rpc-proxy/dispatcher.js.map +1 -0
  136. package/dist/rpc-proxy/index.d.ts +15 -0
  137. package/dist/rpc-proxy/index.d.ts.map +1 -0
  138. package/dist/rpc-proxy/index.js +15 -0
  139. package/dist/rpc-proxy/index.js.map +1 -0
  140. package/dist/rpc-proxy/json-rpc.d.ts +78 -0
  141. package/dist/rpc-proxy/json-rpc.d.ts.map +1 -0
  142. package/dist/rpc-proxy/json-rpc.js +123 -0
  143. package/dist/rpc-proxy/json-rpc.js.map +1 -0
  144. package/dist/rpc-proxy/method-handlers.d.ts +54 -0
  145. package/dist/rpc-proxy/method-handlers.d.ts.map +1 -0
  146. package/dist/rpc-proxy/method-handlers.js +171 -0
  147. package/dist/rpc-proxy/method-handlers.js.map +1 -0
  148. package/dist/rpc-proxy/nonce-tracker.d.ts +39 -0
  149. package/dist/rpc-proxy/nonce-tracker.d.ts.map +1 -0
  150. package/dist/rpc-proxy/nonce-tracker.js +80 -0
  151. package/dist/rpc-proxy/nonce-tracker.js.map +1 -0
  152. package/dist/rpc-proxy/passthrough.d.ts +37 -0
  153. package/dist/rpc-proxy/passthrough.d.ts.map +1 -0
  154. package/dist/rpc-proxy/passthrough.js +86 -0
  155. package/dist/rpc-proxy/passthrough.js.map +1 -0
  156. package/dist/rpc-proxy/sync-pipeline.d.ts +40 -0
  157. package/dist/rpc-proxy/sync-pipeline.d.ts.map +1 -0
  158. package/dist/rpc-proxy/sync-pipeline.js +74 -0
  159. package/dist/rpc-proxy/sync-pipeline.js.map +1 -0
  160. package/dist/rpc-proxy/tx-adapter.d.ts +79 -0
  161. package/dist/rpc-proxy/tx-adapter.d.ts.map +1 -0
  162. package/dist/rpc-proxy/tx-adapter.js +117 -0
  163. package/dist/rpc-proxy/tx-adapter.js.map +1 -0
  164. package/dist/services/async-polling-service.d.ts.map +1 -1
  165. package/dist/services/async-polling-service.js +95 -2
  166. package/dist/services/async-polling-service.js.map +1 -1
  167. package/dist/signing/bootstrap.d.ts +12 -0
  168. package/dist/signing/bootstrap.d.ts.map +1 -0
  169. package/dist/signing/bootstrap.js +15 -0
  170. package/dist/signing/bootstrap.js.map +1 -0
  171. package/dist/signing/capabilities/ecdsa-signer.d.ts +7 -0
  172. package/dist/signing/capabilities/ecdsa-signer.d.ts.map +1 -0
  173. package/dist/signing/capabilities/ecdsa-signer.js +42 -0
  174. package/dist/signing/capabilities/ecdsa-signer.js.map +1 -0
  175. package/dist/signing/capabilities/ed25519-signer.d.ts +7 -0
  176. package/dist/signing/capabilities/ed25519-signer.d.ts.map +1 -0
  177. package/dist/signing/capabilities/ed25519-signer.js +39 -0
  178. package/dist/signing/capabilities/ed25519-signer.js.map +1 -0
  179. package/dist/signing/capabilities/eip712-signer.d.ts +7 -0
  180. package/dist/signing/capabilities/eip712-signer.d.ts.map +1 -0
  181. package/dist/signing/capabilities/eip712-signer.js +35 -0
  182. package/dist/signing/capabilities/eip712-signer.js.map +1 -0
  183. package/dist/signing/capabilities/erc8128-signer.d.ts +7 -0
  184. package/dist/signing/capabilities/erc8128-signer.d.ts.map +1 -0
  185. package/dist/signing/capabilities/erc8128-signer.js +55 -0
  186. package/dist/signing/capabilities/erc8128-signer.js.map +1 -0
  187. package/dist/signing/capabilities/hmac-signer.d.ts +7 -0
  188. package/dist/signing/capabilities/hmac-signer.d.ts.map +1 -0
  189. package/dist/signing/capabilities/hmac-signer.js +32 -0
  190. package/dist/signing/capabilities/hmac-signer.js.map +1 -0
  191. package/dist/signing/capabilities/index.d.ts +13 -0
  192. package/dist/signing/capabilities/index.d.ts.map +1 -0
  193. package/dist/signing/capabilities/index.js +13 -0
  194. package/dist/signing/capabilities/index.js.map +1 -0
  195. package/dist/signing/capabilities/personal-signer.d.ts +7 -0
  196. package/dist/signing/capabilities/personal-signer.d.ts.map +1 -0
  197. package/dist/signing/capabilities/personal-signer.js +35 -0
  198. package/dist/signing/capabilities/personal-signer.js.map +1 -0
  199. package/dist/signing/capabilities/rsa-pss-signer.d.ts +7 -0
  200. package/dist/signing/capabilities/rsa-pss-signer.d.ts.map +1 -0
  201. package/dist/signing/capabilities/rsa-pss-signer.js +35 -0
  202. package/dist/signing/capabilities/rsa-pss-signer.js.map +1 -0
  203. package/dist/signing/index.d.ts +13 -0
  204. package/dist/signing/index.d.ts.map +1 -0
  205. package/dist/signing/index.js +5 -0
  206. package/dist/signing/index.js.map +1 -0
  207. package/dist/signing/registry.d.ts +36 -0
  208. package/dist/signing/registry.d.ts.map +1 -0
  209. package/dist/signing/registry.js +27 -0
  210. package/dist/signing/registry.js.map +1 -0
  211. package/dist/signing/signing-error.d.ts +22 -0
  212. package/dist/signing/signing-error.d.ts.map +1 -0
  213. package/dist/signing/signing-error.js +17 -0
  214. package/dist/signing/signing-error.js.map +1 -0
  215. package/dist/signing/types.d.ts +91 -0
  216. package/dist/signing/types.d.ts.map +1 -0
  217. package/dist/signing/types.js +2 -0
  218. package/dist/signing/types.js.map +1 -0
  219. package/package.json +6 -5
  220. package/public/admin/assets/index-COymjGTe.js +3 -0
  221. package/public/admin/assets/index-CTHU1J8K.css +1 -0
  222. package/public/admin/index.html +4 -2
  223. package/public/admin/assets/index-BpDnuS0k.css +0 -1
  224. package/public/admin/assets/index-By5VUJ-B.js +0 -3
@@ -0,0 +1,35 @@
1
+ /**
2
+ * RSA-PSS signer capability.
3
+ *
4
+ * Uses node:crypto for RSA-PSS signing with SHA-256.
5
+ *
6
+ * @since v31.12
7
+ */
8
+ import { sign as cryptoSign, constants } from 'node:crypto';
9
+ import { SigningError } from '../signing-error.js';
10
+ export class RsaPssSignerCapability {
11
+ scheme = 'rsa-pss';
12
+ canSign(params) {
13
+ if (params.scheme !== 'rsa-pss')
14
+ return false;
15
+ const p = params;
16
+ return typeof p.privateKey === 'string' && p.privateKey.length > 0;
17
+ }
18
+ async sign(params) {
19
+ const p = params;
20
+ try {
21
+ const saltLength = p.saltLength ?? 32;
22
+ const sigBuffer = cryptoSign('sha256', Buffer.from(p.data), {
23
+ key: p.privateKey,
24
+ padding: constants.RSA_PKCS1_PSS_PADDING,
25
+ saltLength,
26
+ });
27
+ const signature = sigBuffer.toString('base64');
28
+ return { signature };
29
+ }
30
+ catch (err) {
31
+ throw new SigningError(`RSA-PSS signing failed: ${err.message}`, 'rsa-pss', 'SIGNING_FAILED', err);
32
+ }
33
+ }
34
+ }
35
+ //# sourceMappingURL=rsa-pss-signer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rsa-pss-signer.js","sourceRoot":"","sources":["../../../src/signing/capabilities/rsa-pss-signer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE5D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,MAAM,OAAO,sBAAsB;IACxB,MAAM,GAAG,SAAkB,CAAC;IAErC,OAAO,CAAC,MAAqB;QAC3B,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QAC9C,MAAM,CAAC,GAAG,MAA6B,CAAC;QACxC,OAAO,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAqB;QAC9B,MAAM,CAAC,GAAG,MAA6B,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;gBAC1D,GAAG,EAAE,CAAC,CAAC,UAAU;gBACjB,OAAO,EAAE,SAAS,CAAC,qBAAqB;gBACxC,UAAU;aACX,CAAC,CAAC;YACH,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC/C,OAAO,EAAE,SAAS,EAAE,CAAC;QACvB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,YAAY,CACpB,2BAA4B,GAAa,CAAC,OAAO,EAAE,EACnD,SAAS,EACT,gBAAgB,EAChB,GAAY,CACb,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Signing module - ISignerCapability types, error, and 7 capability implementations.
3
+ *
4
+ * @since v31.12
5
+ */
6
+ export type { ISignerCapability, SigningParams, SigningResult, Eip712SigningParams, PersonalSigningParams, HmacSigningParams, RsaPssSigningParams, EcdsaSecp256k1SigningParams, Ed25519SigningParams, Erc8128SigningParams, } from './types.js';
7
+ export { SigningError } from './signing-error.js';
8
+ export type { SigningErrorCode } from './signing-error.js';
9
+ export { Eip712SignerCapability, PersonalSignCapability, Erc8128SignerCapability, HmacSignerCapability, RsaPssSignerCapability, EcdsaSignBytesCapability, Ed25519SignBytesCapability, } from './capabilities/index.js';
10
+ export { SignerCapabilityRegistry } from './registry.js';
11
+ export type { ISignerCapabilityRegistry } from './registry.js';
12
+ export { bootstrapSignerCapabilities } from './bootstrap.js';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signing/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,YAAY,EACV,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,2BAA2B,EAC3B,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,YAAY,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAE/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { SigningError } from './signing-error.js';
2
+ export { Eip712SignerCapability, PersonalSignCapability, Erc8128SignerCapability, HmacSignerCapability, RsaPssSignerCapability, EcdsaSignBytesCapability, Ed25519SignBytesCapability, } from './capabilities/index.js';
3
+ export { SignerCapabilityRegistry } from './registry.js';
4
+ export { bootstrapSignerCapabilities } from './bootstrap.js';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/signing/index.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * SignerCapabilityRegistry - central registry for signing capabilities.
3
+ *
4
+ * Maps signingScheme strings to ISignerCapability implementations.
5
+ * Used by the External Action pipeline to auto-select the correct signer.
6
+ *
7
+ * SSoT: doc-81 D2.5 (External Action Framework design).
8
+ *
9
+ * @since v31.12
10
+ */
11
+ import type { SigningScheme, SignedDataAction, SignedHttpAction } from '@waiaas/core';
12
+ import type { ISignerCapability } from './types.js';
13
+ /**
14
+ * Interface for the signer capability registry (doc-81 D2.5).
15
+ */
16
+ export interface ISignerCapabilityRegistry {
17
+ /** Register a capability. Last registration for a scheme wins. */
18
+ register(capability: ISignerCapability): void;
19
+ /** Get capability by scheme, or undefined if not registered. */
20
+ get(scheme: SigningScheme): ISignerCapability | undefined;
21
+ /** Resolve the action's signingScheme to a registered capability. Throws if not found. */
22
+ resolve(action: SignedDataAction | SignedHttpAction): ISignerCapability;
23
+ /** List all registered scheme names. */
24
+ listSchemes(): readonly SigningScheme[];
25
+ }
26
+ /**
27
+ * Default implementation of ISignerCapabilityRegistry.
28
+ */
29
+ export declare class SignerCapabilityRegistry implements ISignerCapabilityRegistry {
30
+ private readonly capabilities;
31
+ register(capability: ISignerCapability): void;
32
+ get(scheme: SigningScheme): ISignerCapability | undefined;
33
+ resolve(action: SignedDataAction | SignedHttpAction): ISignerCapability;
34
+ listSchemes(): readonly SigningScheme[];
35
+ }
36
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/signing/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEtF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,kEAAkE;IAClE,QAAQ,CAAC,UAAU,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAC9C,gEAAgE;IAChE,GAAG,CAAC,MAAM,EAAE,aAAa,GAAG,iBAAiB,GAAG,SAAS,CAAC;IAC1D,0FAA0F;IAC1F,OAAO,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,GAAG,iBAAiB,CAAC;IACxE,wCAAwC;IACxC,WAAW,IAAI,SAAS,aAAa,EAAE,CAAC;CACzC;AAED;;GAEG;AACH,qBAAa,wBAAyB,YAAW,yBAAyB;IACxE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+C;IAE5E,QAAQ,CAAC,UAAU,EAAE,iBAAiB,GAAG,IAAI;IAI7C,GAAG,CAAC,MAAM,EAAE,aAAa,GAAG,iBAAiB,GAAG,SAAS;IAIzD,OAAO,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,GAAG,iBAAiB;IAWvE,WAAW,IAAI,SAAS,aAAa,EAAE;CAGxC"}
@@ -0,0 +1,27 @@
1
+ import { WAIaaSError } from '@waiaas/core';
2
+ /**
3
+ * Default implementation of ISignerCapabilityRegistry.
4
+ */
5
+ export class SignerCapabilityRegistry {
6
+ capabilities = new Map();
7
+ register(capability) {
8
+ this.capabilities.set(capability.scheme, capability);
9
+ }
10
+ get(scheme) {
11
+ return this.capabilities.get(scheme);
12
+ }
13
+ resolve(action) {
14
+ const cap = this.capabilities.get(action.signingScheme);
15
+ if (!cap) {
16
+ throw new WAIaaSError('CAPABILITY_NOT_FOUND', {
17
+ message: `No signer capability registered for scheme: ${action.signingScheme}`,
18
+ details: { signingScheme: action.signingScheme, kind: action.kind },
19
+ });
20
+ }
21
+ return cap;
22
+ }
23
+ listSchemes() {
24
+ return Array.from(this.capabilities.keys());
25
+ }
26
+ }
27
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/signing/registry.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAiB3C;;GAEG;AACH,MAAM,OAAO,wBAAwB;IAClB,YAAY,GAAG,IAAI,GAAG,EAAoC,CAAC;IAE5E,QAAQ,CAAC,UAA6B;QACpC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACvD,CAAC;IAED,GAAG,CAAC,MAAqB;QACvB,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,CAAC,MAA2C;QACjD,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACxD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,WAAW,CAAC,sBAAsB,EAAE;gBAC5C,OAAO,EAAE,+CAA+C,MAAM,CAAC,aAAa,EAAE;gBAC9E,OAAO,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;aACpE,CAAC,CAAC;QACL,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,WAAW;QACT,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9C,CAAC;CACF"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * SigningError class for signer capability errors.
3
+ *
4
+ * SSoT: doc-81 D2.3 (External Action Framework design).
5
+ *
6
+ * @since v31.12
7
+ */
8
+ import type { SigningScheme } from '@waiaas/core';
9
+ /** Error codes specific to signing operations. */
10
+ export type SigningErrorCode = 'INVALID_KEY' | 'INVALID_PARAMS' | 'CREDENTIAL_MISSING' | 'SIGNING_FAILED' | 'KEY_NOT_SUPPORTED' | 'CAPABILITY_NOT_FOUND';
11
+ /**
12
+ * Error thrown by ISignerCapability implementations.
13
+ * Extends Error (not WAIaaSError) per doc-81 design -- converted to WAIaaSError at Stage 5.
14
+ */
15
+ export declare class SigningError extends Error {
16
+ readonly scheme: SigningScheme;
17
+ readonly code: SigningErrorCode;
18
+ readonly cause?: Error | undefined;
19
+ readonly name = "SigningError";
20
+ constructor(message: string, scheme: SigningScheme, code: SigningErrorCode, cause?: Error | undefined);
21
+ }
22
+ //# sourceMappingURL=signing-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signing-error.d.ts","sourceRoot":"","sources":["../../src/signing/signing-error.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,kDAAkD;AAClD,MAAM,MAAM,gBAAgB,GACxB,aAAa,GACb,gBAAgB,GAChB,oBAAoB,GACpB,gBAAgB,GAChB,mBAAmB,GACnB,sBAAsB,CAAC;AAE3B;;;GAGG;AACH,qBAAa,YAAa,SAAQ,KAAK;aAKnB,MAAM,EAAE,aAAa;aACrB,IAAI,EAAE,gBAAgB;aACb,KAAK,CAAC,EAAE,KAAK;IANxC,SAAkB,IAAI,kBAAkB;gBAGtC,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,gBAAgB,EACb,KAAK,CAAC,EAAE,KAAK,YAAA;CAIzC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Error thrown by ISignerCapability implementations.
3
+ * Extends Error (not WAIaaSError) per doc-81 design -- converted to WAIaaSError at Stage 5.
4
+ */
5
+ export class SigningError extends Error {
6
+ scheme;
7
+ code;
8
+ cause;
9
+ name = 'SigningError';
10
+ constructor(message, scheme, code, cause) {
11
+ super(message);
12
+ this.scheme = scheme;
13
+ this.code = code;
14
+ this.cause = cause;
15
+ }
16
+ }
17
+ //# sourceMappingURL=signing-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signing-error.js","sourceRoot":"","sources":["../../src/signing/signing-error.ts"],"names":[],"mappings":"AAkBA;;;GAGG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAK;IAKnB;IACA;IACS;IANT,IAAI,GAAG,cAAc,CAAC;IAExC,YACE,OAAe,EACC,MAAqB,EACrB,IAAsB,EACb,KAAa;QAEtC,KAAK,CAAC,OAAO,CAAC,CAAC;QAJC,WAAM,GAAN,MAAM,CAAe;QACrB,SAAI,GAAJ,IAAI,CAAkB;QACb,UAAK,GAAL,KAAK,CAAQ;IAGxC,CAAC;CACF"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * ISignerCapability interface and SigningParams 7-variant discriminated union.
3
+ *
4
+ * SSoT: doc-81 D2.1~D2.2 (External Action Framework design).
5
+ *
6
+ * @since v31.12
7
+ */
8
+ import type { SigningScheme } from '@waiaas/core';
9
+ /** Result of a signing operation. */
10
+ export interface SigningResult {
11
+ /** The signature output (hex string, base64 string, or raw bytes). */
12
+ signature: string | Uint8Array;
13
+ /** Optional metadata (e.g., headers for ERC-8128). */
14
+ metadata?: Record<string, unknown>;
15
+ }
16
+ /**
17
+ * Capability interface for a single signing scheme.
18
+ * Each implementation handles one specific signing algorithm.
19
+ */
20
+ export interface ISignerCapability {
21
+ /** The signing scheme this capability handles. */
22
+ readonly scheme: SigningScheme;
23
+ /** Check if this capability can handle the given params. */
24
+ canSign(params: SigningParams): boolean;
25
+ /** Perform the signing operation. */
26
+ sign(params: SigningParams): Promise<SigningResult>;
27
+ }
28
+ /** EIP-712 typed data signing params. */
29
+ export interface Eip712SigningParams {
30
+ scheme: 'eip712';
31
+ privateKey: `0x${string}`;
32
+ domain: Record<string, unknown>;
33
+ types: Record<string, Array<{
34
+ name: string;
35
+ type: string;
36
+ }>>;
37
+ primaryType: string;
38
+ value: Record<string, unknown>;
39
+ }
40
+ /** personal_sign (EIP-191) params. */
41
+ export interface PersonalSigningParams {
42
+ scheme: 'personal';
43
+ privateKey: `0x${string}`;
44
+ message: string;
45
+ }
46
+ /** HMAC-SHA256 signing params. */
47
+ export interface HmacSigningParams {
48
+ scheme: 'hmac-sha256';
49
+ secret: string;
50
+ data: string;
51
+ encoding?: 'hex' | 'base64';
52
+ }
53
+ /** RSA-PSS signing params. */
54
+ export interface RsaPssSigningParams {
55
+ scheme: 'rsa-pss';
56
+ privateKey: string;
57
+ data: string;
58
+ saltLength?: number;
59
+ }
60
+ /** ECDSA secp256k1 raw signing params. */
61
+ export interface EcdsaSecp256k1SigningParams {
62
+ scheme: 'ecdsa-secp256k1';
63
+ privateKey: `0x${string}`;
64
+ data: string;
65
+ /** If true (default), hash data with keccak256 before signing. */
66
+ hashData?: boolean;
67
+ }
68
+ /** Ed25519 signing params. */
69
+ export interface Ed25519SigningParams {
70
+ scheme: 'ed25519';
71
+ privateKey: Uint8Array;
72
+ data: Uint8Array;
73
+ }
74
+ /** ERC-8128 HTTP message signing params. */
75
+ export interface Erc8128SigningParams {
76
+ scheme: 'erc8128';
77
+ privateKey: `0x${string}`;
78
+ chainId: number;
79
+ address: string;
80
+ method: string;
81
+ url: string;
82
+ headers: Record<string, string>;
83
+ body?: string;
84
+ coveredComponents?: string[];
85
+ preset?: 'minimal' | 'standard' | 'strict';
86
+ ttlSec?: number;
87
+ nonce?: string | false;
88
+ }
89
+ /** Discriminated union of all 7 signing param variants. */
90
+ export type SigningParams = Eip712SigningParams | PersonalSigningParams | HmacSigningParams | RsaPssSigningParams | EcdsaSecp256k1SigningParams | Ed25519SigningParams | Erc8128SigningParams;
91
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/signing/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/signing/types.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@waiaas/daemon",
3
- "version": "2.11.0-rc",
3
+ "version": "2.11.0-rc.13",
4
4
  "description": "WAIaaS daemon - self-hosted wallet service for AI agents",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -48,10 +48,11 @@
48
48
  "uuidv7": "^1.0.2",
49
49
  "viem": "^2.21.0",
50
50
  "zod": "^3.24.0",
51
- "@waiaas/adapter-evm": "2.11.0-rc",
52
- "@waiaas/actions": "2.11.0-rc",
53
- "@waiaas/adapter-solana": "2.11.0-rc",
54
- "@waiaas/core": "2.11.0-rc"
51
+ "zod-to-json-schema": "^3.25.1",
52
+ "@waiaas/actions": "2.11.0-rc.13",
53
+ "@waiaas/adapter-evm": "2.11.0-rc.13",
54
+ "@waiaas/core": "2.11.0-rc.13",
55
+ "@waiaas/adapter-solana": "2.11.0-rc.13"
55
56
  },
56
57
  "devDependencies": {
57
58
  "@types/better-sqlite3": "^7.6.0",