tenzro-wallet 0.2.5 → 0.2.6
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.
- package/README.md +10 -5
- package/dist/ports/attested-clock/attested-clock.d.ts +4 -3
- package/dist/ports/attested-clock/attested-clock.d.ts.map +1 -1
- package/dist/ports/attested-clock/attested-clock.js +4 -3
- package/dist/ports/attested-clock/attested-clock.js.map +1 -1
- package/dist/ports/bridge-fee/bridge-fee.d.ts +10 -15
- package/dist/ports/bridge-fee/bridge-fee.d.ts.map +1 -1
- package/dist/ports/bridge-fee/bridge-fee.js +7 -10
- package/dist/ports/bridge-fee/bridge-fee.js.map +1 -1
- package/dist/ports/ivms101/adapter.d.ts.map +1 -1
- package/dist/ports/ivms101/adapter.js +6 -1
- package/dist/ports/ivms101/adapter.js.map +1 -1
- package/dist/ports/ivms101/ivms101.d.ts +12 -8
- package/dist/ports/ivms101/ivms101.d.ts.map +1 -1
- package/dist/ports/ivms101/ivms101.js +5 -6
- package/dist/ports/ivms101/ivms101.js.map +1 -1
- package/dist/ports/signed-agent-card/signed-agent-card.d.ts +4 -3
- package/dist/ports/signed-agent-card/signed-agent-card.d.ts.map +1 -1
- package/dist/ports/signed-agent-card/signed-agent-card.js +4 -3
- package/dist/ports/signed-agent-card/signed-agent-card.js.map +1 -1
- package/dist/ports/urwa/urwa.d.ts +4 -3
- package/dist/ports/urwa/urwa.d.ts.map +1 -1
- package/dist/ports/urwa/urwa.js +4 -3
- package/dist/ports/urwa/urwa.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -11,7 +11,9 @@ The official wallet for [Tenzro Network](https://tenzro.com) — a browser-clean
|
|
|
11
11
|
- **First-class Canton / DAML support.** Three surfaces for regulated-finance flows (`cantonInternalSurface` for single-party flows, `cantonExternalSurface` for multi-party flows across synchronizers, `cantonOnboardingSurface` for external-party onboarding) backed by `CantonValidatorPort` + `CantonIdentityPort` + `LedgerApiAdapter` (Canton JSON Ledger API v2). The kernel signs Canton `prepare` / `execute` submissions through its passkey-quorum custody, computes the prepared-transaction hash and topology-bundle hash itself, and surfaces every Canton flow alongside EVM / SVM / native flows in the same router.
|
|
12
12
|
- **Agent payments built-in** — AP2 (Google), x402 (Coinbase), Visa TAP, Mastercard Agent Pay, OpenAI ACP, ERC-8004 trustless agent identity, ERC-7802 cross-chain mint/burn.
|
|
13
13
|
- **Capital markets + multi-party workflows** — Capital Intents (open / quote / assign / execute / verify / compensate / settle), reserve attestations + attested mints, saga workflows with AP2 / x402 / MPP / Stripe SPT / Visa TAP / Mastercard Agent Pay mandate binding.
|
|
14
|
-
- **EVM primitives, first-class** — EIP-7702 (Pectra Type-4) delegation, Permit2 SignatureTransfer with optional ERC-7683-witness binding, Secure-Mint registry (1:1 reserve invariant for tokenized RWAs), ERC-7683 cross-chain intents.
|
|
14
|
+
- **EVM primitives, first-class** — EIP-7702 (Pectra Type-4) delegation, Permit2 SignatureTransfer with optional ERC-7683-witness binding, Secure-Mint registry (1:1 reserve invariant for tokenized RWAs), ERC-7683 cross-chain intents with optional `BridgeFeeHint` so one signed order is fungible across the 6 supported bridges.
|
|
15
|
+
- **Bridge fee in TNZO + Chainlink-backed oracle.** `BridgeFeeAdapter` lets the wallet quote destination-native bridge fees in TNZO, surface per-adapter sponsorship-pool state, sponsor a previously-quoted envelope, and read the caller's own Compute Unit consumption + per-method counters. The operator's node enables a live Chainlink-backed oracle when configured; otherwise quotes fall back to the governance-set rate table. Admin-only paths (rate registration, refill-threshold tuning, cross-tenant analytics) gated by `X-Tenzro-Admin-Token`.
|
|
16
|
+
- **Compliance + identity primitives.** `UrwaAdapter` (ERC-7943 uRWA kill-switch + frozen-tokens reads for the signing UI; admin-token-gated mutations), `Ivms101Adapter` (FATF Travel Rule IVMS101 v1.1.0 envelope canonical-hash binding), `AttestedClockAdapter` (TEE-attested timestamp envelope for saga step deadlines + AP2 mandate validity windows + parametric-insurance trigger windows), `SignedAgentCardAdapter` (A2A v1.0 SignedAgentCard canonical-hash for issuer-signed agent cards), `WormholeNttAdapter` (NTT chain catalog + transceiver registry).
|
|
15
17
|
- **Eight-vendor bridge router** — LI.FI, Chainlink CCIP, LayerZero V2, Wormhole, deBridge, Canton HTLC, Hyperlane V3 (sovereign Tenzro-ISM), Axelar GMP (Cosmos / Move / Stellar / XRPL). The kernel never picks a vendor for you; it surfaces all available quotes.
|
|
16
18
|
- **Chain-agnostic discovery (CAIP)** — CAIP-2 / CAIP-10 / CAIP-19 per the submitted `tenzro` CASA namespace (`ChainAgnostic/namespaces#184`), so every dApp connect + agent handshake returns unambiguous chain + account + asset labels.
|
|
17
19
|
- **Babylon BTC-secured staking, surfaced.** Read-side surface for staking dashboards (list finality providers, sum BTC delegations, list delegations) plus validator-operator write paths so a validator host can use the wallet kernel as the EOTS signing surface.
|
|
@@ -95,6 +97,10 @@ Six independent VM surfaces — Tenzro native, EVM-on-Tenzro, SVM-on-Tenzro, Can
|
|
|
95
97
|
| Discovery port | `CaipAdapter` — `caip2()` / `caip10(address)` / `caip19({ kind, token_id?, collection_id?, nft_token_id? })` per the submitted `tenzro` CASA namespace. |
|
|
96
98
|
| Shared-security port | `BabylonAdapter` — read surface for staking dashboards (`listFinalityProviders` / `totalStakeForProvider` / `listDelegations`) + validator-operator write paths (`registerFinalityProvider` / `submitFinalitySignature`) so a validator host can use the wallet kernel as the signing surface. |
|
|
97
99
|
| Distributed-training port | `TrainingAdapter(read[, write])` — read + write surface for the Tenzro Train protocol layer. Read methods inspect active runs, sealed receipts, and Confidential-tier sealed-shard manifests. Write methods (gated on a `TrainingClient`) post tasks, enroll trainers (with `ConfidentialEnrollment` for Phase 4 TEE-attested enrollment), submit outer gradients, finalize rounds, install sealed-shard manifests. |
|
|
100
|
+
| Bridge-fee + Chainlink port | `BridgeFeeAdapter` — cross-chain bridge fees in TNZO. `quote()` for destination-native fees, `listSponsorshipPools()` for per-adapter vault state, `sponsor()` against a previously-quoted envelope, `getAnalytics()` for subject self-read of CU consumption + per-method counters. Admin-only paths (`setRate()`, `setRefillThreshold()`, `listAnalytics()`) gated by `X-Tenzro-Admin-Token`. Read paths consult the operator's configured Chainlink-backed fee oracle when enabled; otherwise fall back to the governance-set rate table. Per-tenant rate-limiting + Compute Unit attribution applies — the read paths require a `chainlink`-scoped API key on the node. |
|
|
101
|
+
| Compliance + identity ports | `UrwaAdapter` (ERC-7943 — `isKillSwitched` / `getFrozenTokens` reads for the signing UI; admin-token-gated `setFrozenTokens` / `triggerKillSwitch` / `clearKillSwitch` mutations), `Ivms101Adapter` (FATF Travel Rule IVMS101 v1.1.0 envelope canonical-hash for cross-border transfer binding), `SignedAgentCardAdapter` (A2A v1.0 SignedAgentCard canonical-hash for issuer-signed agent cards), `AttestedClockAdapter` (TEE-attested timestamp envelope for saga step deadlines + obligation expiries + AP2 mandate validity windows + parametric-insurance trigger windows). |
|
|
102
|
+
| Wormhole NTT port | `WormholeNttAdapter` — Native Token Transfers chain catalog + multi-transceiver registry (Wormhole / Axelar / LayerZero / custom). Surfaces NTT chain reach so the signing UI shows which destination chains an NTT-deployed token can reach. |
|
|
103
|
+
| ERC-7683 `BridgeFeeHint` | Optional addition to `TenzroOrderData` that makes a single user-signed order fungible across the 6 supported bridges. The TNZO ceiling bounds the solver's destination-native fee commitment; the wallet UI surfaces the ceiling to the signer. |
|
|
98
104
|
| Surfaces | `tenzroNativeSurface`, `evmOnTenzroSurface`, `svmOnTenzroSurface`, `cantonInternalSurface`, `cantonExternalSurface`, `cantonOnboardingSurface`. |
|
|
99
105
|
| Router | `routeIntent()` — chooses the right surface (or bridge) for an intent and returns a typed plan. |
|
|
100
106
|
| Balance aggregator | `BalanceAggregator` — single-pass cross-surface balance read. |
|
|
@@ -128,10 +134,9 @@ Testnet-functional today against the live Tenzro testnet at `rpc.tenzro.network`
|
|
|
128
134
|
| M7 | Settlement (Visa TAP, Mastercard Agent Pay, x402) | Settle-side shipped (`payVisaTap`, `payMastercard`, `payX402`); issuance-side hooks declared, SDK-pending |
|
|
129
135
|
| M8 | Bridge router | Eight per-vendor adapters live (`lifi`, `ccip`, `layerzero`, `wormhole`, `debridge`, `canton`, `hyperlane`, `axelar`); SDK-shipped — all forward to the same `client.bridge` with `vendor:BridgeAdapterId` multiplexing |
|
|
130
136
|
| M9 | TDIP integration (delegate sets, recovery flows) | Kernel orchestrators shipped |
|
|
131
|
-
| M10 | Capital markets + workflows + EVM primitives + extended cross-chain reach + CAIP discovery | Ports + nine adapters shipped against `tenzro-sdk@^0.4.
|
|
132
|
-
| M11 | Babylon Bitcoin staking + Tenzro Train protocol port (Phase 4 Confidential-tier) | Babylon port (read + validator-write surface) + Training port (`TrainingAdapter(read)` for monitoring, `TrainingAdapter(read, write)` for full custodial enrollment + sealed-shard manifest install) against `tenzro-sdk@^0.4.
|
|
133
|
-
| M12 |
|
|
134
|
-
| M13 | Canton multi-tenant isolation (Stage 1) | `CantonClient` extended with `allocateParty`, `grantUserRights`, `listUserRights`, `getMyAnalytics`, `listApiKeyAnalytics` against `tenzro-sdk@^0.4.3`. The Tenzro node binds each API key to a Canton User Management Service user id at issuance; canton-scoped calls auto-forward `actAs` as the bound user's `primaryParty`. Canton's AuthService enforces per-user CanActAs server-side; per-tenant call counters persist in RocksDB (`CF_CANTON_ANALYTICS`). |
|
|
137
|
+
| M10 | Capital markets + workflows + EVM primitives + extended cross-chain reach + CAIP discovery | Ports + nine adapters shipped against `tenzro-sdk@^0.4.1` |
|
|
138
|
+
| M11 | Babylon Bitcoin staking + Tenzro Train protocol port (Phase 4 Confidential-tier) | Babylon port (read + validator-write surface) + Training port (`TrainingAdapter(read)` for monitoring, `TrainingAdapter(read, write)` for full custodial enrollment + sealed-shard manifest install) against `tenzro-sdk@^0.4.1` |
|
|
139
|
+
| M12 | Cross-chain bridge fee in TNZO + Chainlink-backed oracle + ERC-7683 `BridgeFeeHint` + ERC-7943 uRWA compliance + FATF IVMS101 + A2A SignedAgentCard + TEE-attested clock + Wormhole NTT | Six new ports + adapters (`BridgeFeeAdapter`, `UrwaAdapter`, `Ivms101Adapter`, `AttestedClockAdapter`, `SignedAgentCardAdapter`, `WormholeNttAdapter`) plus `BridgeFeeHint` on `Erc7683` against `tenzro-sdk@^0.4.7`. Per-tenant Compute Unit attribution + GCRA rate-limit on `chainlink`-scoped methods at the node layer. |
|
|
135
140
|
|
|
136
141
|
**407 unit tests** pass; 5 env-gated integration smokes exercise the live testnet end-to-end.
|
|
137
142
|
|
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
* AttestedClockPort — TEE-attested timestamp envelope.
|
|
3
3
|
*
|
|
4
4
|
* Wallet usage: long-running operations (saga step deadlines,
|
|
5
|
-
* obligation expiries, AP2 mandate validity windows
|
|
5
|
+
* obligation expiries, AP2 mandate validity windows, parametric
|
|
6
|
+
* insurance trigger windows, margin-call grace periods) need a
|
|
6
7
|
* tamper-resistant timestamp. The wallet asks the node for an
|
|
7
|
-
* attested-clock envelope, surfaces
|
|
8
|
-
*
|
|
8
|
+
* attested-clock envelope, surfaces `wallMs` to the user, and binds
|
|
9
|
+
* the envelope into the operation it's signing.
|
|
9
10
|
*/
|
|
10
11
|
export interface AttestedTimestamp {
|
|
11
12
|
readonly wallMs: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attested-clock.d.ts","sourceRoot":"","sources":["../../../src/ports/attested-clock/attested-clock.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"attested-clock.d.ts","sourceRoot":"","sources":["../../../src/ports/attested-clock/attested-clock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACnC"}
|
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
* AttestedClockPort — TEE-attested timestamp envelope.
|
|
3
3
|
*
|
|
4
4
|
* Wallet usage: long-running operations (saga step deadlines,
|
|
5
|
-
* obligation expiries, AP2 mandate validity windows
|
|
5
|
+
* obligation expiries, AP2 mandate validity windows, parametric
|
|
6
|
+
* insurance trigger windows, margin-call grace periods) need a
|
|
6
7
|
* tamper-resistant timestamp. The wallet asks the node for an
|
|
7
|
-
* attested-clock envelope, surfaces
|
|
8
|
-
*
|
|
8
|
+
* attested-clock envelope, surfaces `wallMs` to the user, and binds
|
|
9
|
+
* the envelope into the operation it's signing.
|
|
9
10
|
*/
|
|
10
11
|
export {};
|
|
11
12
|
//# sourceMappingURL=attested-clock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attested-clock.js","sourceRoot":"","sources":["../../../src/ports/attested-clock/attested-clock.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"attested-clock.js","sourceRoot":"","sources":["../../../src/ports/attested-clock/attested-clock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
|
|
@@ -2,17 +2,14 @@
|
|
|
2
2
|
* BridgeFeePort — destination-native bridge fees paid in TNZO.
|
|
3
3
|
*
|
|
4
4
|
* Wallet usage:
|
|
5
|
-
* 1. Quote:
|
|
6
|
-
* destination-native bridge fee,
|
|
7
|
-
* 2. Sponsor:
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* 3. Analytics: the wallet UI shows the user their own per-key
|
|
11
|
-
* Compute Unit consumption + call counters.
|
|
5
|
+
* 1. Quote: ask the node for the TNZO-denominated cost of a
|
|
6
|
+
* destination-native bridge fee, surface it to the signer.
|
|
7
|
+
* 2. Sponsor: debit TNZO from the user, credit the per-adapter
|
|
8
|
+
* sponsorship-pool vault.
|
|
9
|
+
* 3. Analytics: subject self-read of CU consumption + counters.
|
|
12
10
|
*
|
|
13
|
-
* Admin paths (`setRate`, `setRefillThreshold`) are
|
|
14
|
-
* gated by `X-Tenzro-Admin-Token
|
|
15
|
-
* the host is running in operator mode.
|
|
11
|
+
* Admin paths (`setRate`, `setRefillThreshold`, `listAnalytics`) are
|
|
12
|
+
* operator-only and gated by `X-Tenzro-Admin-Token` at the node layer.
|
|
16
13
|
*/
|
|
17
14
|
export interface QuoteBridgeFeeRequest {
|
|
18
15
|
readonly adapter: string;
|
|
@@ -25,10 +22,6 @@ export interface BridgeFeeQuote {
|
|
|
25
22
|
readonly nativeFeeSmallestUnit: string;
|
|
26
23
|
readonly tnzoAmountWei: string;
|
|
27
24
|
readonly oracleBacking: string;
|
|
28
|
-
readonly quoteIdHex?: string;
|
|
29
|
-
readonly issuedAtMs?: number;
|
|
30
|
-
readonly validUntilMs?: number;
|
|
31
|
-
readonly rateQ18Hex?: string;
|
|
32
25
|
}
|
|
33
26
|
export interface BridgeSponsorshipPool {
|
|
34
27
|
readonly adapter: string;
|
|
@@ -73,6 +66,7 @@ export interface BridgeKeyAnalytics {
|
|
|
73
66
|
readonly errorsTotal: number;
|
|
74
67
|
readonly callsByMethod: Readonly<Record<string, number>>;
|
|
75
68
|
readonly errorsByMethod: Readonly<Record<string, number>>;
|
|
69
|
+
/** Compute Units consumed (sum of per-method weights on success). */
|
|
76
70
|
readonly cuConsumedTotal: number;
|
|
77
71
|
readonly firstSeenAt?: number;
|
|
78
72
|
readonly lastCalledAt?: number;
|
|
@@ -84,9 +78,10 @@ export interface BridgeFeePort {
|
|
|
84
78
|
sponsor(req: SponsorBridgeFeeRequest): Promise<BridgeSponsorshipReceipt>;
|
|
85
79
|
/** Subject self-read of the caller's own analytics. */
|
|
86
80
|
getAnalytics(): Promise<BridgeKeyAnalytics>;
|
|
87
|
-
/** Admin-
|
|
81
|
+
/** Admin-token-gated. */
|
|
88
82
|
setRate(req: SetBridgeFeeRateRequest): Promise<unknown>;
|
|
89
83
|
setRefillThreshold(adapter: string, refillThresholdBps: number): Promise<unknown>;
|
|
84
|
+
/** Admin-token-gated cross-tenant read. */
|
|
90
85
|
listAnalytics(keyId?: string): Promise<readonly BridgeKeyAnalytics[]>;
|
|
91
86
|
}
|
|
92
87
|
//# sourceMappingURL=bridge-fee.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-fee.d.ts","sourceRoot":"","sources":["../../../src/ports/bridge-fee/bridge-fee.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"bridge-fee.d.ts","sourceRoot":"","sources":["../../../src/ports/bridge-fee/bridge-fee.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,17 +2,14 @@
|
|
|
2
2
|
* BridgeFeePort — destination-native bridge fees paid in TNZO.
|
|
3
3
|
*
|
|
4
4
|
* Wallet usage:
|
|
5
|
-
* 1. Quote:
|
|
6
|
-
* destination-native bridge fee,
|
|
7
|
-
* 2. Sponsor:
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* 3. Analytics: the wallet UI shows the user their own per-key
|
|
11
|
-
* Compute Unit consumption + call counters.
|
|
5
|
+
* 1. Quote: ask the node for the TNZO-denominated cost of a
|
|
6
|
+
* destination-native bridge fee, surface it to the signer.
|
|
7
|
+
* 2. Sponsor: debit TNZO from the user, credit the per-adapter
|
|
8
|
+
* sponsorship-pool vault.
|
|
9
|
+
* 3. Analytics: subject self-read of CU consumption + counters.
|
|
12
10
|
*
|
|
13
|
-
* Admin paths (`setRate`, `setRefillThreshold`) are
|
|
14
|
-
* gated by `X-Tenzro-Admin-Token
|
|
15
|
-
* the host is running in operator mode.
|
|
11
|
+
* Admin paths (`setRate`, `setRefillThreshold`, `listAnalytics`) are
|
|
12
|
+
* operator-only and gated by `X-Tenzro-Admin-Token` at the node layer.
|
|
16
13
|
*/
|
|
17
14
|
export {};
|
|
18
15
|
//# sourceMappingURL=bridge-fee.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-fee.js","sourceRoot":"","sources":["../../../src/ports/bridge-fee/bridge-fee.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"bridge-fee.js","sourceRoot":"","sources":["../../../src/ports/bridge-fee/bridge-fee.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/ports/ivms101/adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EACjB,WAAW,EACZ,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;AAErE,qBAAa,cAAe,YAAW,WAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,iBAAiB;IAEhD,aAAa,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/ports/ivms101/adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EACjB,WAAW,EACZ,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;AAErE,qBAAa,cAAe,YAAW,WAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,iBAAiB;IAEhD,aAAa,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAWzE"}
|
|
@@ -9,7 +9,12 @@ export class Ivms101Adapter {
|
|
|
9
9
|
async canonicalHash(req) {
|
|
10
10
|
const r = await this.client.canonicalHash(req.payload);
|
|
11
11
|
return {
|
|
12
|
-
|
|
12
|
+
envelopeHashHex: r.envelope_hash_hex,
|
|
13
|
+
specVersion: r.spec_version,
|
|
14
|
+
originatingVaspDid: r.originating_vasp_did,
|
|
15
|
+
beneficiaryVaspDid: r.beneficiary_vasp_did,
|
|
16
|
+
assetCaip19: r.asset_caip19,
|
|
17
|
+
amountSmallestUnit: r.amount_smallest_unit,
|
|
13
18
|
};
|
|
14
19
|
}
|
|
15
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/ports/ivms101/adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAWH,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,MAAyB;QAAzB,WAAM,GAAN,MAAM,CAAmB;IAAG,CAAC;IAE1D,KAAK,CAAC,aAAa,CAAC,GAAuB;QACzC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvD,OAAO;YACL,
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/ports/ivms101/adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAWH,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,MAAyB;QAAzB,WAAM,GAAN,MAAM,CAAmB;IAAG,CAAC;IAE1D,KAAK,CAAC,aAAa,CAAC,GAAuB;QACzC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvD,OAAO;YACL,eAAe,EAAE,CAAC,CAAC,iBAAiB;YACpC,WAAW,EAAE,CAAC,CAAC,YAAY;YAC3B,kBAAkB,EAAE,CAAC,CAAC,oBAAoB;YAC1C,kBAAkB,EAAE,CAAC,CAAC,oBAAoB;YAC1C,WAAW,EAAE,CAAC,CAAC,YAAY;YAC3B,kBAAkB,EAAE,CAAC,CAAC,oBAAoB;SAC3C,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1,19 +1,23 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Ivms101Port — FATF Travel Rule IVMS101 v1.1.0 canonical envelope.
|
|
3
3
|
*
|
|
4
|
-
* Wallet usage: cross-border transfers that fall under the FATF
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* signing.
|
|
4
|
+
* Wallet usage: cross-border transfers that fall under the FATF Travel
|
|
5
|
+
* Rule (typically >$1000 equivalent crossing VASP boundaries) require an
|
|
6
|
+
* IVMS101 KYC payload attached to the transfer. The wallet computes the
|
|
7
|
+
* canonical hash of the payload, binds it to the transfer envelope,
|
|
8
|
+
* and surfaces the hash to the user before signing.
|
|
10
9
|
*/
|
|
11
10
|
export interface Ivms101HashRequest {
|
|
12
|
-
/** Canonical IVMS101 v1.1.0 JSON payload. */
|
|
11
|
+
/** Canonical IVMS101 v1.1.0 JSON payload (envelope shape). */
|
|
13
12
|
readonly payload: Record<string, unknown>;
|
|
14
13
|
}
|
|
15
14
|
export interface Ivms101HashResult {
|
|
16
|
-
readonly
|
|
15
|
+
readonly envelopeHashHex: string;
|
|
16
|
+
readonly specVersion: string;
|
|
17
|
+
readonly originatingVaspDid: string | null;
|
|
18
|
+
readonly beneficiaryVaspDid: string | null;
|
|
19
|
+
readonly assetCaip19: string;
|
|
20
|
+
readonly amountSmallestUnit: string;
|
|
17
21
|
}
|
|
18
22
|
export interface Ivms101Port {
|
|
19
23
|
canonicalHash(req: Ivms101HashRequest): Promise<Ivms101HashResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ivms101.d.ts","sourceRoot":"","sources":["../../../src/ports/ivms101/ivms101.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ivms101.d.ts","sourceRoot":"","sources":["../../../src/ports/ivms101/ivms101.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,WAAW,kBAAkB;IACjC,8DAA8D;IAC9D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,WAAW;IAC1B,aAAa,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACpE"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Ivms101Port — FATF Travel Rule IVMS101 v1.1.0 canonical envelope.
|
|
3
3
|
*
|
|
4
|
-
* Wallet usage: cross-border transfers that fall under the FATF
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* signing.
|
|
4
|
+
* Wallet usage: cross-border transfers that fall under the FATF Travel
|
|
5
|
+
* Rule (typically >$1000 equivalent crossing VASP boundaries) require an
|
|
6
|
+
* IVMS101 KYC payload attached to the transfer. The wallet computes the
|
|
7
|
+
* canonical hash of the payload, binds it to the transfer envelope,
|
|
8
|
+
* and surfaces the hash to the user before signing.
|
|
10
9
|
*/
|
|
11
10
|
export {};
|
|
12
11
|
//# sourceMappingURL=ivms101.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ivms101.js","sourceRoot":"","sources":["../../../src/ports/ivms101/ivms101.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ivms101.js","sourceRoot":"","sources":["../../../src/ports/ivms101/ivms101.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
* SignedAgentCardPort — A2A v1.0 Signed Agent Card.
|
|
3
3
|
*
|
|
4
4
|
* Wallet usage: when an agent publishes its Agent Card under a domain
|
|
5
|
-
* the agent owns, it signs the canonical hash of the card with
|
|
6
|
-
* JWS key. Relying parties recompute the hash and verify the
|
|
7
|
-
* before trusting the card's claims (skills, endpoints,
|
|
5
|
+
* the agent owns, it signs the canonical SHA-256 hash of the card with
|
|
6
|
+
* its JWS key. Relying parties recompute the hash and verify the
|
|
7
|
+
* signature before trusting the card's claims (skills, endpoints,
|
|
8
|
+
* identity).
|
|
8
9
|
*/
|
|
9
10
|
export interface AgentCard {
|
|
10
11
|
readonly name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signed-agent-card.d.ts","sourceRoot":"","sources":["../../../src/ports/signed-agent-card/signed-agent-card.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"signed-agent-card.d.ts","sourceRoot":"","sources":["../../../src/ports/signed-agent-card/signed-agent-card.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC;IACrC,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAC9D"}
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
* SignedAgentCardPort — A2A v1.0 Signed Agent Card.
|
|
3
3
|
*
|
|
4
4
|
* Wallet usage: when an agent publishes its Agent Card under a domain
|
|
5
|
-
* the agent owns, it signs the canonical hash of the card with
|
|
6
|
-
* JWS key. Relying parties recompute the hash and verify the
|
|
7
|
-
* before trusting the card's claims (skills, endpoints,
|
|
5
|
+
* the agent owns, it signs the canonical SHA-256 hash of the card with
|
|
6
|
+
* its JWS key. Relying parties recompute the hash and verify the
|
|
7
|
+
* signature before trusting the card's claims (skills, endpoints,
|
|
8
|
+
* identity).
|
|
8
9
|
*/
|
|
9
10
|
export {};
|
|
10
11
|
//# sourceMappingURL=signed-agent-card.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signed-agent-card.js","sourceRoot":"","sources":["../../../src/ports/signed-agent-card/signed-agent-card.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"signed-agent-card.js","sourceRoot":"","sources":["../../../src/ports/signed-agent-card/signed-agent-card.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* UrwaPort — ERC-7943 (uRWA) compliance surface for tokenized RWAs.
|
|
3
3
|
*
|
|
4
|
-
* Wallet usage:
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* Wallet usage: surfaces compliance status (kill-switch active,
|
|
5
|
+
* frozen-tokens record) to the user before they sign any transfer
|
|
6
|
+
* of an affected asset. Mutations are admin-token-gated at the
|
|
7
|
+
* node layer.
|
|
7
8
|
*/
|
|
8
9
|
export interface UrwaKillSwitchState {
|
|
9
10
|
readonly tokenIdHex: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"urwa.d.ts","sourceRoot":"","sources":["../../../src/ports/urwa/urwa.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"urwa.d.ts","sourceRoot":"","sources":["../../../src/ports/urwa/urwa.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACrD,QAAQ,CAAC,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAChE;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,QAAQ;IACvB,kEAAkE;IAClE,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjE,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnF,mCAAmC;IACnC,eAAe,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACxE,iBAAiB,CAAC,GAAG,EAAE,4BAA4B,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACvF,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACrE"}
|
package/dist/ports/urwa/urwa.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* UrwaPort — ERC-7943 (uRWA) compliance surface for tokenized RWAs.
|
|
3
3
|
*
|
|
4
|
-
* Wallet usage:
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* Wallet usage: surfaces compliance status (kill-switch active,
|
|
5
|
+
* frozen-tokens record) to the user before they sign any transfer
|
|
6
|
+
* of an affected asset. Mutations are admin-token-gated at the
|
|
7
|
+
* node layer.
|
|
7
8
|
*/
|
|
8
9
|
export {};
|
|
9
10
|
//# sourceMappingURL=urwa.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"urwa.js","sourceRoot":"","sources":["../../../src/ports/urwa/urwa.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"urwa.js","sourceRoot":"","sources":["../../../src/ports/urwa/urwa.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tenzro-wallet",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.6",
|
|
4
4
|
"description": "Tenzro Wallet kernel — one identity, four VM surfaces (Tenzro native, EVM, SVM, Canton). Passkey-quorum custody, post-quantum signing, agent-payment ports, capital intents + multi-party workflows, EVM primitives (EIP-7702 / Permit2 / Secure-Mint / ERC-7683 + BridgeFeeHint), eight-vendor bridge router, cross-chain bridge fee in TNZO + Chainlink-backed oracle + per-tenant analytics, CAIP discovery, Babylon Bitcoin staking, Tenzro Train protocol port (Phase 4 Confidential-tier), ERC-7943 uRWA compliance, FATF Travel Rule (IVMS101), TEE-attested clock, A2A v1.0 SignedAgentCard, Wormhole NTT.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|