Repository navigation
chore: bump eip712sign to v0.0.16 for Trezor signing - #826
Merged
Merged
Conversation
v0.0.15 (base/usbwallet v0.1.1) adds --trezor: full EIP-712 typed data with the message hash shown on the device (firmware 2.9.1+). The task-signing-tool uses it for Trezor signing (base/task-signing-tool#196).
Collaborator
✅ Heimdall Review Status
|
v0.0.16 picks up base/usbwallet v0.1.2, which sends the EIP-712 domain chainId to the Trezor correctly (v0.0.15 sent 0, so Trezor signatures did not recover).
0xth4nh
marked this pull request as ready for review
October 23, 2026 14:48
eip712sign v0.0.15+ depends on base/usbwallet v0.1.1+, whose Linux build uses hidapi's hidraw backend and includes libudev.h. The Ubuntu runner does not have it, so go install github.com/base/eip712sign failed in Install dependencies.
awilliams1-cb
approved these changes
Oct 23, 2026
jackchuma
reviewed
Oct 23, 2026
jackchuma
left a comment
Contributor
There was a problem hiding this comment.
Automated review
Reviewed 6ad4d00 against main. 1 finding posted inline.
Residual risk: the Ledger signing path moves across five eip712sign releases, including the switch from geth usbwallet to the base/usbwallet fork. The only hardware test so far is the planned manual Ledger signature, still unchecked in the PR description. Hold the merge until that's done.
🤖 Reply generated with Toshi
jackchuma
approved these changes
Oct 23, 2026
awilliams1-cb
approved these changes
Oct 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Bumps the
eip712signthatmake depsinstalls from v0.0.11 to v0.0.16.v0.0.15 added
--trezor, and v0.0.16 fixes it by picking up base/usbwallet v0.1.2 (base/usbwallet#7): v0.1.1 sent the EIP-712 domainchainIdto the device as 0. It sends the full typed data to the Trezor, which shows every SafeTx field and asks the signer to confirm the message hash (base/usbwallet#3, Trezor firmware 2.9.1+). The task signing tool uses it for Trezor signing in base/task-signing-tool#196. Without this bump,make depsreinstalls v0.0.11 on every validation and the tool reports that eip712sign is too old for Trezor.Ledger impact
The Ledger path also moves to v0.0.16. Since v0.0.11, eip712sign switched from geth's
usbwalletto the base/usbwallet fork (v0.0.12), and added EIP-712 typed data / EIP-191 input. The--ledger --hd-paths ... --data <0x1901...>call and theData:/Signer:/Signature:output the tool parses are unchanged.Not changed: the incident pause tooling (
active/evm/script/common/pause/PauseSigning.mk) keeps its own v0.0.11 pin.CI
eip712sign v0.0.15+ depends on base/usbwallet v0.1.1+, whose Linux build uses hidapi's
hidrawbackend and includeslibudev.h.validate-common-scripts.ymlnow installslibudev-devbeforemake deps; without it,go install github.com/base/eip712signfails on the Ubuntu runner. Linux signers need the same package locally.Testing
test/e2ebranch carries the same bump (now v0.0.16). With task-signing-tool35bbc12: Trezor validation passes and signing reaches the device step through eip712sign v0.0.15 ("No Trezor found" without a device). eip712sign v0.0.15 computes the validated domain and message hashes from the tool's typed data.