Skip to content

Conversation

@BrantalikP
Copy link
Contributor

@BrantalikP BrantalikP commented Dec 4, 2025

Description

Enable EIP1559 for mobile

Notes for QA

Related Issue

Resolve #16372

Screenshots:

IMG_76A6E37F0D0E-1

IMG_64928BE0B8DB-1

Simulator Screenshot - iPhone 11 - 2025-12-07 at 14 41 01

πŸ”πŸ–₯️ Suite web test results: View in Currents

πŸ”πŸ–₯️ Suite desktop test results: View in Currents

πŸ”πŸ–₯️ Suite native android test results: View in Currents

@BrantalikP BrantalikP added the mobile Suite Lite issues and PRs label Dec 4, 2025
@BrantalikP BrantalikP force-pushed the feat/native/evm-priority-fees branch from ff612aa to 87ca729 Compare December 5, 2025 09:11
@trezor-bot
Copy link
Contributor

trezor-bot bot commented Dec 5, 2025

βœ… Previously successful run of [Test] PR Suite Web e2e tests workflow has been found.
⏭️ Skipping tests for this run.
πŸ’‘ If you are unsure about your latest changes, please rerun the workflow manually. (Use the Re-run all jobs option)

@BrantalikP BrantalikP force-pushed the feat/native/evm-priority-fees branch 3 times, most recently from e32b080 to 9697e62 Compare December 7, 2025 12:56
@trezor-bot
Copy link
Contributor

trezor-bot bot commented Dec 7, 2025

βœ… Previously successful run of [Test] PR Suite Desktop e2e tests workflow has been found.
⏭️ Skipping tests for this run.
πŸ’‘ If you are unsure about your latest changes, please rerun the workflow manually. (Use the Re-run all jobs option)

@BrantalikP BrantalikP force-pushed the feat/native/evm-priority-fees branch 4 times, most recently from 117e4dd to b8050d4 Compare December 8, 2025 15:48
@BrantalikP BrantalikP force-pushed the feat/native/evm-priority-fees branch from b8050d4 to 9736b84 Compare December 9, 2025 08:53
return formatDuration(networkFeeInfo.blockTime * feeLevel.blocks * 60);
const networkType = symbol ? getNetworkType(symbol) : null;

const multiplier = networkType === 'bitcoin' ? 60 : 1;
Copy link
Member

Choose a reason for hiding this comment

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

please explain multiplier by a comment

@BrantalikP BrantalikP force-pushed the feat/native/evm-priority-fees branch 8 times, most recently from d230002 to d220f38 Compare December 10, 2025 10:10
@BrantalikP BrantalikP force-pushed the feat/native/evm-priority-fees branch from d220f38 to 422d2ef Compare December 10, 2025 10:27
Copy link
Contributor

@TomasBoda TomasBoda left a comment

Choose a reason for hiding this comment

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

Is it intended behavior that when I click on Send max (e.g. $150) and set a custom fee (e.g. $60), the send amount is reduced to $90? I would expect an error message in the fee component that says You don't have enough funds to cover this fee, but maybe I'm mistaken.

Image

Copy link
Contributor

@TomasBoda TomasBoda left a comment

Choose a reason for hiding this comment

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

During transaction signing and confirming on Trezor, the send amount and fee amount changed after a few seconds on the mobile screen. I guess there is some recalculation happening, but I believe it shouldn't. Because after this change, Trezor and mobile app were showing different amounts.

I'll try to replicate.

Image

Copy link
Contributor

@TomasBoda TomasBoda left a comment

Choose a reason for hiding this comment

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

Minor detail (you may dismiss if not relevant):

In case of Max fee per gas is lower than Max priority fee per gas, both input fields are invalid and both show analogous errors. Wouldn't it be better to show just one error banner below the form? cc @matous-jemelka @shenkys

Also, shouldn't the Confirm custom fee button be in disabled state in case of any erros?

Simulator Screenshot - iPhone 17 Pro - 2025-12-10 at 14 08 55


const defaultProps = {
selectedFeeLevel: 'normal' as NativeSupportedFeeLevel,
selectedFeeLevel: 'normal' as FeeLevelLabel,
Copy link
Contributor

Choose a reason for hiding this comment

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

Nitpick:

Suggested change
selectedFeeLevel: 'normal' as FeeLevelLabel,
selectedFeeLevel: 'normal' as const,

it('should render fee options list when selected fee level is not custom', async () => {
const { getByTestId } = await renderFeesContent({
selectedFeeLevel: 'normal' as NativeSupportedFeeLevel,
selectedFeeLevel: 'normal' as FeeLevelLabel,
Copy link
Contributor

Choose a reason for hiding this comment

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

Is type casting needed here? (similarly in cases below)

onChangeText={handleFieldChangeValue(FEE_LIMIT_FIELD_NAME, integerTransformer)}
/>
)}
{isEip1559Fee ? (
Copy link
Contributor

Choose a reason for hiding this comment

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

This component is not yet large and complex, but I'd consider creating two new components - one for EIP1559, one for the else branch for better maintainability in the future.

(or at least for the EIP1559 logic)

Comment on lines +32 to +38
(
feeLevel: FeeLevelLabel,
customFeePerUnit?: string,
customFeeLimit?: string,
customMaxFeePerGas?: string,
customMaxPriorityFeePerGas?: string,
) => {
Copy link
Contributor

Choose a reason for hiding this comment

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

Consider passing the props as object, especially when you created the new CustomFeeParams object (almost identical). Also it is more readable when the function is called on other places.

networkFeeInfo,
symbol: account?.symbol,
minimalFeeLimit,
translate,
Copy link
Contributor

Choose a reason for hiding this comment

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

Why is translate needed here?

@tomasklim
Copy link
Member

Please show more decimals for base fee. We need to fix it also for desktop 😬
Screenshot 2025-12-10 at 18 10 33

@BrantalikP BrantalikP marked this pull request as ready for review December 10, 2025 17:11
@BrantalikP BrantalikP requested a review from a team as a code owner December 10, 2025 17:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

mobile Suite Lite issues and PRs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

EIP1559: Mobile - Ethereum priority fee

4 participants