Skip to content

Feature / Railgun integration - #2567

Draft
jordan-enev wants to merge 15 commits into
v2from
feature/railgun-integration
Draft

Feature / Railgun integration#2567
jordan-enev wants to merge 15 commits into
v2from
feature/railgun-integration

Conversation

@jordan-enev

Copy link
Copy Markdown
Member

No description provided.

Adds RailgunController: manages a dedicated Railgun (0zk) seed, builds
the Kohaku SDK's Host adapters (keystore/storage/provider/network),
and initializes a RailgunPlugin against Sepolia for shielded balance
sync. KeystoreController.persistTempSeed/#addSeed now return the
created seed's id/label/hdPathTemplate so callers can persist it.
Shield builds calls for the normal sign/broadcast pipeline. Unshield
and private transfer broadcast via a Pimlico ERC-4337 bundler using a
disposable, one-time key instead of the Ambire account.
- Replace ethers provider shim with a hand-written adapter, fixing a
  field-name bug (input vs data) that broke UTXO tree verification
- Move wrappedBaseTokenAddress init after WASM is ready
- Disable POI (not supported on Sepolia)
- Switch unshield/transfer broadcasts to withStatus (dispatchAndWait's
  10s timeout was too short for real broadcasts)
- Always re-sync balances after a broadcast attempt
- Fix Pimlico bundler URL (numeric chain id)
- Add optional disposable-signer test env var for the EIP-7702 investigation
…agnostic in order to demistify why native unshield doesn't work.
… Innocence.

Derive the 0zk identity from the account's recovery phrase instead of a random keystore seed, and expose it as one chain-agnostic address. Replace the hardcoded Sepolia chain with a per-chain plugin registry over ProvidersController, and enable POI.
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