Skip to content

feat(fees): add fee header support#1414

Merged
glevco merged 2 commits intomasterfrom
feat/fee-header-dag-builder
Oct 3, 2025
Merged

feat(fees): add fee header support#1414
glevco merged 2 commits intomasterfrom
feat/fee-header-dag-builder

Conversation

@glevco
Copy link
Contributor

@glevco glevco commented Sep 16, 2025

Depends on #1412

Motivation

Add support for FeeHeader on txs via feature activation.

Acceptance Criteria

  • Add FeeHeader as an allowed header on transactions.
  • Increase the get_maximum_number_of_headers from 1 to 2.
    • A new verification is added to prevent duplicate headers.
  • Remove the ENABLE_FEE_TOKEN setting. It's replaced by ENABLE_NANO_CONTRACTS, since these features will be activated together.
    • Both the TokenVersion.FEE and the FeeHeader are now gated behind the nano feature activation.
  • Update DAGBuilder to support:
    • Fee-based token creation txs.
    • Txs with a FeeHeader.

Checklist

  • If you are requesting a merge into master, confirm this code is production-ready and can be included in future releases as soon as it gets merged

@glevco glevco self-assigned this Sep 16, 2025
@glevco glevco requested review from raul-oliveira and removed request for jansegre September 16, 2025 21:35
@glevco glevco force-pushed the feat/fee-header-dag-builder branch from a4c1e68 to 008c46d Compare September 16, 2025 21:36
@glevco glevco changed the title feat(fees): add fee header support on dag builder feat(fees): add fee header support Sep 16, 2025
@glevco glevco moved this from Todo to In Progress (Done) in Hathor Network Sep 16, 2025
@codecov
Copy link

codecov bot commented Sep 16, 2025

Codecov Report

❌ Patch coverage is 92.00000% with 6 lines in your changes missing coverage. Please review.
✅ Project coverage is 85.91%. Comparing base (72d74b4) to head (7b51f99).
⚠️ Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
hathor/dag_builder/builder.py 83.33% 2 Missing and 2 partials ⚠️
hathor/dag_builder/default_filler.py 87.50% 0 Missing and 1 partial ⚠️
hathor/dag_builder/vertex_exporter.py 96.55% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1414      +/-   ##
==========================================
+ Coverage   85.90%   85.91%   +0.01%     
==========================================
  Files         434      434              
  Lines       33615    33673      +58     
  Branches     5270     5280      +10     
==========================================
+ Hits        28877    28931      +54     
- Misses       3692     3697       +5     
+ Partials     1046     1045       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jansegre jansegre mentioned this pull request Sep 17, 2025
2 tasks
@glevco glevco force-pushed the feat/fee-header-dag-builder branch from 008c46d to 76694c9 Compare September 17, 2025 14:58
@raul-oliveira raul-oliveira force-pushed the raul-oliveira/fee-header branch 2 times, most recently from eeddb0f to a8a1f30 Compare September 19, 2025 16:29
@raul-oliveira raul-oliveira force-pushed the feat/fee-header-dag-builder branch from 76694c9 to d0ad86d Compare September 19, 2025 16:42
@raul-oliveira raul-oliveira force-pushed the raul-oliveira/fee-header branch from a8a1f30 to bbde9c6 Compare September 19, 2025 17:12
@raul-oliveira raul-oliveira force-pushed the feat/fee-header-dag-builder branch 2 times, most recently from 02df9b2 to a04c0a1 Compare September 19, 2025 17:22
@raul-oliveira raul-oliveira changed the title feat(fees): add fee header support feat(dynamic-transaction-model): add fee header support to dag builder Sep 19, 2025
@raul-oliveira raul-oliveira force-pushed the raul-oliveira/fee-header branch from bbde9c6 to 07654f8 Compare September 19, 2025 21:02
@raul-oliveira raul-oliveira force-pushed the raul-oliveira/fee-header branch 2 times, most recently from a3fdf68 to 58868a9 Compare October 1, 2025 21:25
@raul-oliveira raul-oliveira requested a review from jansegre October 1, 2025 21:38
@raul-oliveira raul-oliveira force-pushed the feat/fee-header-dag-builder branch 2 times, most recently from 4c51478 to 8d62cf4 Compare October 1, 2025 21:47
@raul-oliveira raul-oliveira force-pushed the raul-oliveira/fee-header branch from 71bebcd to e28570f Compare October 1, 2025 22:03
@glevco glevco force-pushed the feat/fee-header-dag-builder branch 2 times, most recently from 5785f29 to 2dbc6e2 Compare October 1, 2025 22:07
@glevco glevco force-pushed the raul-oliveira/fee-header branch 2 times, most recently from 8c0e42e to 2a94214 Compare October 2, 2025 20:48
@glevco glevco force-pushed the feat/fee-header-dag-builder branch from c6c5312 to d07267e Compare October 2, 2025 20:49
@glevco glevco changed the title feat(dynamic-transaction-model): add fee header support to dag builder feat(fees): add fee header support to dag builder Oct 2, 2025
@glevco glevco changed the title feat(fees): add fee header support to dag builder feat(fees): add fee header support Oct 2, 2025
@glevco glevco force-pushed the raul-oliveira/fee-header branch from 2a94214 to 366b08c Compare October 2, 2025 20:51
@glevco glevco force-pushed the feat/fee-header-dag-builder branch from d07267e to fa6ca38 Compare October 2, 2025 20:53
@raul-oliveira raul-oliveira changed the base branch from raul-oliveira/fee-header to master October 2, 2025 22:08
@raul-oliveira raul-oliveira dismissed stale reviews from jansegre and themself October 2, 2025 22:08

The base branch was changed.

@raul-oliveira raul-oliveira force-pushed the feat/fee-header-dag-builder branch 2 times, most recently from 6e7ad3b to 7b0a57e Compare October 3, 2025 00:18
@github-actions
Copy link

github-actions bot commented Oct 3, 2025

🐰 Bencher Report

Branchfeat/fee-header-dag-builder
Testbedubuntu-22.04
Click to view all benchmark results
BenchmarkLatencyBenchmark Result
minutes (m)
(Result Δ%)
Lower Boundary
minutes (m)
(Limit %)
Upper Boundary
minutes (m)
(Limit %)
sync-v2 (up to 20000 blocks)📈 view plot
🚷 view threshold
1.98 m
(+15.18%)Baseline: 1.72 m
1.55 m
(78.14%)
2.06 m
(95.98%)
🐰 View full continuous benchmarking report in Bencher

msbrogli
msbrogli previously approved these changes Oct 3, 2025
@glevco glevco force-pushed the feat/fee-header-dag-builder branch from 7b0a57e to 28ea69a Compare October 3, 2025 15:56
Copy link
Contributor

@raul-oliveira raul-oliveira left a comment

Choose a reason for hiding this comment

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

LGTM

@glevco glevco moved this from In Review (WIP) to In Review (Done) in Hathor Network Oct 3, 2025
@glevco glevco merged commit 49a9ac1 into master Oct 3, 2025
8 checks passed
@glevco glevco deleted the feat/fee-header-dag-builder branch October 3, 2025 18:13
@github-project-automation github-project-automation bot moved this from In Review (Done) to Waiting to be deployed in Hathor Network Oct 3, 2025
@jansegre jansegre mentioned this pull request Oct 7, 2025
2 tasks
@jansegre jansegre moved this from Waiting to be deployed to Done in Hathor Network Oct 15, 2025
@jansegre jansegre mentioned this pull request Oct 16, 2025
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

4 participants