Skip to content

feat(evm-wallet-experiment): Add delegator exos#882

Draft
grypez wants to merge 4 commits intomainfrom
grypez/gator-exo
Draft

feat(evm-wallet-experiment): Add delegator exos#882
grypez wants to merge 4 commits intomainfrom
grypez/gator-exo

Conversation

@grypez
Copy link
Copy Markdown
Contributor

@grypez grypez commented Mar 19, 2026

WIP

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Mar 19, 2026

Coverage Report

Status Category Percentage Covered / Total
🔵 Lines 77.87%
⬇️ -0.26%
8326 / 10691
🔵 Statements 77.66%
⬇️ -0.29%
8459 / 10891
🔵 Functions 75.31%
⬇️ -0.23%
1956 / 2597
🔵 Branches 76.32%
⬇️ -0.30%
3552 / 4654
File Coverage
File Stmts Branches Functions Lines Uncovered Lines
Changed Files
packages/evm-wallet-experiment/src/constants.ts 96.55%
🟰 ±0%
90%
🟰 ±0%
75%
🟰 ±0%
100%
🟰 ±0%
3
packages/evm-wallet-experiment/src/index.ts 100%
🟰 ±0%
100%
🟰 ±0%
100%
🟰 ±0%
100%
🟰 ±0%
packages/evm-wallet-experiment/src/types.ts 88.88%
⬇️ -2.42%
0%
🟰 ±0%
25%
⬇️ -8.33%
88.88%
⬇️ -2.42%
28, 37, 332
packages/evm-wallet-experiment/src/lib/caveats.ts 100%
🟰 ±0%
100%
🟰 ±0%
100%
🟰 ±0%
100%
🟰 ±0%
packages/evm-wallet-experiment/src/lib/delegation-grant.ts 70.73% 66.66% 66.66% 72.5% 20, 35, 98, 132-144, 197-209, 213-224, 260-266
packages/evm-wallet-experiment/src/lib/delegation-twin.ts 92.15% 93.33% 84.61% 92.15% 71, 95, 103, 145
packages/evm-wallet-experiment/src/lib/method-catalog.ts 90% 50% 75% 100% 11
packages/evm-wallet-experiment/src/vats/coordinator-vat.ts 84.26%
⬇️ -3.95%
77.64%
⬇️ -2.42%
87.62%
⬇️ -5.78%
84.35%
⬇️ -3.80%
52, 76-78, 116-161, 447-449, 476-479, 507, 563-565, 654-656, 676, 680, 873, 876, 912-914, 922, 937-941, 1104-1106, 1160-1162, 1168, 1183-1185, 1265, 1289-1292, 1301-1303, 1336-1339, 1358-1360, 1388-1391, 1403-1405, 1464, 1477, 1484, 1491, 1555-1557, 1686, 1708-1711, 1784, 1836-1837, 1873, 1978, 2048, 2084-2086, 2100-2102, 2132-2135, 2152, 2165-2262, 2278, 2384-2390, 2479, 2553, 2571, 2656, 2673-2676, 2721-2724, 2729, 2743, 2788-2789, 2831, 2839, 2842-2844, 2860, 2880, 2977-2978, 2992-2995, 3030, 3039
packages/evm-wallet-experiment/src/vats/delegation-vat.ts 78.46%
⬇️ -14.13%
77.77%
⬇️ -4.58%
80%
⬇️ -12.30%
79.68%
⬇️ -14.65%
27, 118, 176, 201, 215-231
Generated in workflow #4145 for commit 42376f0 by the Vitest Coverage Report Action

grypez and others added 4 commits April 1, 2026 08:52
Represent delegations as discoverable exo objects ("twins") so an agent
can call E(twin).transfer(to, amount) instead of manually building
Execution structs. Adds a method catalog, grant builder, twin factory
with cumulative spend tracking, and wires them into the delegation and
coordinator vats.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…wins

Build typed method guards from METHOD_CATALOG entries and pass them to
makeDiscoverableExo, enabling arg-count/type validation at the exo boundary.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
… caveat

Integrate with the delegation framework's AllowedCalldataEnforcer to pin
the first argument (recipient/spender) of transfer/approve at both the
on-chain enforcer level and the local exo interface guard.

- Add `allowedCalldata` to CaveatTypeValues and CaveatSpec
- Add `encodeAllowedCalldata` helper and deployed enforcer address
- Wire optional `recipient`/`spender` through grant builders
- Twin derives address restriction from caveatSpecs, not a standalone field

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@grypez grypez force-pushed the grypez/gator-exo branch from 6823dad to 42376f0 Compare April 1, 2026 13:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant