feat(7.15): ERC-7730 phase A-C compiler mirror - #114
Closed
BitHighlander wants to merge 4 commits into
Closed
BitHighlander wants to merge 4 commits into
BitHighlander wants to merge 4 commits into
Conversation
…ants Phase A of the ERC-7730 formatter plan. The device now executes tokenAmount (value, token, threshold, message, native aliases), addressName, @.from/@.to (calldata only) and signed constants, and type-checks every argument at preload. Mirror that table, including the value classes: amount and threshold are integers, token and addressName values are addresses, raw literals are integers, addresses or strings, and an alias set names at most four addresses. The registry test now asserts 812 signable formats (from 92). The device still refuses addressName and tokenAmount over bytes32/uint256 words that pack an address or an encrypted amount.
Phase B. The device executes display opcodes 2 and 3 as one run directly after the plain intent, showing each fragment and value as a numbered part. Mirror the opcodes and the run rule, and trim fragment edges: each part is its own screen, and the device escapes edge spaces. The registry test now asserts 954 signable formats.
Phase C. Mirror the device's new formatters and their argument classes: a date encoding must be the string "timestamp" or "blockheight", unit decimals a one-byte literal and the prefix a flag, an enum map at most 16 entries, an NFT collection an address, and @.value an unsigned value. The registry test now asserts 1,138 signable formats.
This was referenced Sep 26, 2026
Closed
Owner
Author
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.
Draft replacement for the A–C portion of the historical 7b companion PR keepkey#228.
Base:
release/715-stack07-phase0atce14a489fb59dc2a4818d6cff2dd2a3347cd7939.Head:
f813519c7c1163783b0e89b5cbd70536831f5e49.Paired firmware branch:
release/715-stack-07b1-erc7730-formatters.This compiles tokenAmount, addressName, interpolated intent, amount, NFT, date,
duration, unit and enum programs. The mirror applies the device's text,
decimal, array and signer-constant preload limits. Two focused mirror/device
validator cases passed locally; the full firmware native suite passed 649/649.
The three-review budget on historical firmware PR #863 is exhausted. This
smaller stacked unit has not requested a new Copilot review. The split receipt
is on the top firmware unit and will be linked here when that draft is open.