Skip to content

feat: add ethauth option for dapp client connect (0xsequence#963) #321

Open
Dargon789 wants to merge 34 commits intoDargon789:vercel-dargon789-forgefrom
0xsequence:master
Open

feat: add ethauth option for dapp client connect (0xsequence#963) #321
Dargon789 wants to merge 34 commits intoDargon789:vercel-dargon789-forgefrom
0xsequence:master

Conversation

@Dargon789
Copy link
Owner

No description provided.

taylanpince and others added 30 commits January 20, 2026 18:22
Bumps [next](https://github.com/vercel/next.js) from 15.5.9 to 15.5.10.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](vercel/next.js@v15.5.9...v15.5.10)

---
updated-dependencies:
- dependency-name: next
  dependency-version: 15.5.10
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: VojtechVitek <139342+VojtechVitek@users.noreply.github.com>
* Add env injection for core and wdk

* wdk: use injected timer for auth key retry delay
* feat: add ethauth option for dapp client connect

* Update tests
* [AUTOMATED] Update: proto/clients/indexer*.gen.ts

* [AUTOMATED] Update: proto/clients/indexer*.gen.ts

* [AUTOMATED] Update: proto/clients/indexer*.gen.ts

* [AUTOMATED] Update: proto/clients/indexer*.gen.ts

* [AUTOMATED] Update: proto/clients/indexer*.gen.ts

* [AUTOMATED] Update: proto/clients/indexer*.gen.ts

* [AUTOMATED] Update: proto/clients/indexer*.gen.ts

* [AUTOMATED] Update: proto/clients/indexer*.gen.ts

* [AUTOMATED] Update: proto/clients/indexer*.gen.ts

---------

Co-authored-by: marino39 <722509+marino39@users.noreply.github.com>
Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com>
Co-authored-by: xiam <385670+xiam@users.noreply.github.com>
* fix(relayer): wrap feeOptions calldata for simulation

* fix(relayer): request FeeOptions as wallet (match wallet-webapp-v3)

* fix(relayer): restore AbiFunction import
…967)

* Use multicall3 to aggregate queued payload checking across N signers

* Adding contracts object to Network type to store per network contract configs for common contracts like ensUniversalResolver and multicall3

* Parallelzing fetched queued payloads and adding fallback for when multicall3 batching either fails or is not configured on the network

* Add includeTestnets option to RecoverySettings, default: false so fetchingQueuedPayloads can skip testnets to reduce requests
* Updating happy-dom, vitest, prettier, and syncpack dev dependencies

* Updating turbo repo

* Updating lefthook

* Updating rimraf

* Updating @types/node

* Updating dotenv

* Updating nodemon and esbuild for primitives-cli
…ages/indexer (#969)

* Move indexer clients to packages/services/indexer and remove old packages/indexer

* Disable noUncheckedIndexedAccess for indexer package
@codesandbox
Copy link

codesandbox bot commented Mar 4, 2026

Review or Edit in CodeSandbox

Open the branch in Web EditorVS CodeInsiders

Open Preview

@bolt-new-by-stackblitz
Copy link

Review PR in StackBlitz Codeflow Run & review this pull request in StackBlitz Codeflow.

Copy link

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @Dargon789, your pull request is larger than the review limit of 150000 diff characters

@snyk-io
Copy link

snyk-io bot commented Mar 4, 2026

Snyk checks have passed. No issues have been found so far.

Status Scanner Critical High Medium Low Total (0)
🔚 Open Source Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@Dargon789 Dargon789 enabled auto-merge (squash) March 4, 2026 05:51
@gemini-code-assist
Copy link

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request introduces ETHAuth support for dapp client connections, allowing for secure and flexible authentication. It also includes significant refactoring to abstract environment dependencies, improving the wallet development kit's adaptability across different JavaScript environments. Key services like the relayer and recovery modules have received functional and performance enhancements, including batching capabilities and refined precondition checks. The development workflow is also improved with new pre-commit hooks for code quality and comprehensive dependency updates across the monorepo.

Highlights

  • ETHAuth Support: Added an ETHAuth option for dapp client connections, enabling persistence and retrieval of ETHAuth proofs.
  • Environment Abstraction: Introduced CoreEnv and WdkEnv types to abstract environment-specific features like fetch, crypto, indexedDB, and timers, improving SSR compatibility and testability.
  • Relayer Enhancements: Refined relayer precondition handling, added a 'to' address parameter to feeOptions, and improved type safety across relayer implementations.
  • Passkey Signer Improvements: Enhanced the Passkey signer to accept WebAuthnLike for custom WebAuthn implementations and introduced a PasskeyProvider abstraction for better extensibility.
  • Recovery Module Optimization: Optimized the recovery module to utilize Multicall3 for batching totalQueuedPayloads calls, reducing network overhead, and added an option to include testnets in recovery settings.
  • Build and Linting Workflow: Integrated lint and typecheck commands into pre-commit hooks via lefthook.yml and updated ESLint configurations across several packages.
  • Dependency Updates: Updated various core dependencies and development tools, including next, lefthook, prettier, rimraf, syncpack, turbo, vitest, and @types/node to their latest versions.
  • Indexer Gateway Schema Update: Updated the IndexerGateway client and schema types, introducing new data structures and client interface methods.
  • Network Configuration Expansion: Expanded network configurations in @0xsequence/wallet-primitives to include new chains (e.g., Etherlink Shadownet, HyperEVM, Sonic, Berachain) and Multicall3 addresses.
Changelog
  • .changeset/all-rings-bow.md
    • ethauth support
  • .changeset/brave-papayas-join.md
    • New chains, minor fixes
  • .changeset/bright-pots-hope.md
    • Beta release with dapp connector fixes
  • .changeset/chilly-hands-carry.md
    • New chains, relayer rpc fix
  • .changeset/crisp-zoos-retire.md
    • dapp-client updates
  • .changeset/four-beds-stare.md
    • multicall3 optimization
  • .changeset/free-tips-switch.md
    • 3.0.0 beta
  • .changeset/modern-views-write.md
    • Final RC before 3.0.0
  • .changeset/nine-areas-fall.md
    • Userdata service updates
  • .changeset/smart-cups-exist.md
    • Relayer fee options fix
  • packages/services/api/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19.
  • packages/services/builder/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19.
  • packages/services/guard/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19.
  • packages/services/identity-instrument/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19.
  • packages/services/indexer/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19.
  • packages/services/marketplace/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19.
  • packages/services/metadata/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19.
  • packages/services/relayer/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19, including updated dependencies.
  • packages/services/userdata/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19.
  • packages/utils/abi/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19.
  • packages/wallet/core/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19, including updated dependencies.
  • packages/wallet/dapp-client/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19, including updated dependencies.
  • packages/wallet/primitives/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19.
  • packages/wallet/wdk/CHANGELOG.md
    • Updated changelog with beta releases from 3.0.0-beta.10 to 3.0.0-beta.19, including updated dependencies.
Ignored Files
  • Ignored by pattern: .github/workflows/** (1)
    • .github/workflows/tests.yml
Activity
  • The pull request was created by Dargon789.
  • Multiple new changeset files were added, indicating a series of incremental updates and fixes leading up to a beta release.
  • Core dependencies and development tools were updated to their latest versions.
  • ESLint configurations were added or updated across several packages.
  • Logic for handling environment-specific features (like fetch, crypto, indexedDB) was introduced or refined.
  • Relayer and DappClient functionalities were enhanced, suggesting active development and refinement of core wallet features.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a comprehensive update across numerous @0xsequence packages, primarily focusing on a 3.0.0-beta.19 release candidate. Key changes include version bumps for all affected packages, updates to next and @types/node dependencies, and the addition of lint and typecheck commands to pre-commit hooks. Many packages now include new eslint.config.js files and have been refactored to use ES module imports (.js extensions). Significant updates were made to the packages/services/indexer due to a webrpc-gen upgrade, resulting in numerous API and type definition changes, including new fields for token balances and transaction history, and the introduction of queryKey for React Query integration. The packages/services/relayer received updates to its feeOptions method signature, improved type safety for precondition checks, and optimized Recovery.fetchQueuedPayloads to use Multicall3 for batching. The packages/wallet/core package now includes environment resolution utilities (env.ts) and updates to passkey handling to support custom WebAuthn implementations. The packages/wallet/dapp-client introduces ETHAuth proof persistence and caching for signed calls. The packages/wallet/primitives package adds new chain IDs, refines network contract definitions to include multicall3 addresses, and improves JSON serialization for attestations and configurations. Finally, packages/wallet/wdk integrates the new environment utilities, updates passkey handling to use a provider pattern, and enhances cron job management. A review comment highlighted that the files property in packages/wallet/core/eslint.config.js was commented out, causing the @typescript-eslint/no-explicit-any rule to be disabled globally instead of just for test files, which was suggested to be corrected for better type safety.

@Dargon789
Copy link
Owner Author

@Mergifyio update

@mergify
Copy link

mergify bot commented Mar 4, 2026

update

☑️ Nothing to do, the required conditions are not met

Details
  • -conflict [📌 update requirement]
  • #commits-behind > 0 [📌 update requirement]
  • -closed [📌 update requirement]
  • queue-position = -1 [📌 update requirement]

@Dargon789 Dargon789 disabled auto-merge March 4, 2026 06:41
@vercel
Copy link

vercel bot commented Mar 4, 2026

@taylanpince is attempting to deploy a commit to the Foundry development Team on Vercel.

A member of the Team first needs to authorize it.

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.

8 participants