Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
3691 commits
Select commit Hold shift + click to select a range
26b365a
Add license linter (#969)
ceyonur May 19, 2025
6ddf2ba
Remove dead code (#967)
StephenButtolph May 19, 2025
ef4d7dd
Add linters (#968)
ceyonur May 20, 2025
8ffe1b6
move atomic state pkg (#960)
ceyonur May 21, 2025
6516052
chore(github): dependabot changes (#896)
qdm12 May 22, 2025
29b8370
Atomic txs (#973)
ceyonur May 22, 2025
5c3ab68
docs: add releasing document (#902)
qdm12 May 23, 2025
de6a088
refactor peer pkg to network pkg (#976)
ceyonur May 23, 2025
aac22d9
chore(ethclient): textual alignment with geth code (#882)
qdm12 May 23, 2025
78ccd15
fix AvalancheGo version and nil configs for Granite (#982)
ceyonur May 27, 2025
2d8e3f7
Add granite configs (#987)
StephenButtolph May 27, 2025
c3fb5ec
remove request parse check in network forwarding (#977)
ceyonur May 27, 2025
bbc9475
Add comments for context for future precompile addition (#990)
meaghanfitzgerald May 29, 2025
2842101
Require min available capacity to build a block (#995)
aaronbuchwald May 30, 2025
9b8a8f8
Atomic sync pkg (#963)
ceyonur Jun 3, 2025
3d7a2c8
Atomic block extension (#981)
ceyonur Jun 4, 2025
dcb20ce
minor docs fixup (#1004)
davidjsonn Jun 6, 2025
7a1f79c
Implement updated avalanchego VM interface (#1006)
joshua-kim Jun 6, 2025
ef1fb30
move block extender to vm (#984)
ceyonur Jun 6, 2025
dab5d35
move syncers to atomic vm (#1009)
ceyonur Jun 6, 2025
2fcf45f
chore: Update libevm (#1013)
alarso16 Jun 10, 2025
4816512
chore: use squashed avalanchego commit (#1014)
alarso16 Jun 11, 2025
0058a7e
build: Update `libevm` to `v1.13.14-0.3.0.rc.1` (#1017)
alarso16 Jun 20, 2025
b0b3d39
updated link evm api (#996)
navillanueva Jun 23, 2025
2a813e3
use explicity structs and innervm calls (#1015)
ceyonur Jun 23, 2025
6b8c2c3
move atomic backend and consensus callbacks (#1011)
ceyonur Jun 23, 2025
8f7cb5b
move mempool and gossip handlers to atomic vm (#1018)
ceyonur Jun 25, 2025
475c04d
add warp tests for Coreth (#1000)
ceyonur Jun 26, 2025
d78c86e
remove subnet-evm specific warp test components (#1024)
ceyonur Jun 27, 2025
c73fe66
Remove legacy warp handlers (#999)
ceyonur Jul 1, 2025
98b19ea
move atomic api to atomic vm (#1025)
ceyonur Jul 1, 2025
abf6895
feat: enable configurable state history for pruning nodes (#1022)
alarso16 Jul 1, 2025
464bb8e
updated link for remote content used in Builder-hub docs (#1020)
navillanueva Jul 1, 2025
cfd37ff
Remove Widnows CI tests (#1028)
JonathanOppenheimer Jul 2, 2025
6b5d08f
feat: c-chain config markdown (#1027)
owenwahlgren Jul 2, 2025
36b84a7
chore: move evm config markdown (#1030)
owenwahlgren Jul 2, 2025
be170fa
cut v0.15.1 in release.md (#1032)
ceyonur Jul 3, 2025
f0ef658
fully wrap inner vm (#1031)
ceyonur Jul 7, 2025
ecbf4f3
fix(core/txpool): demote error log to warn (#1034)
alarso16 Jul 7, 2025
f5e0d73
Add block signature recovery timer (#1035)
aaronbuchwald Jul 7, 2025
9ee2cb1
eth/filters: add address limit to filters (#31876) (#1033)
ceyonur Jul 7, 2025
a8cda72
Move CI tasks to Taskfile.yml and consolidate workflow (sync with sub…
JonathanOppenheimer Jul 8, 2025
17220c9
Remove SnowmanAPI (#1039)
StephenButtolph Jul 8, 2025
dc06607
Use explicit subscriptions instead of toEngine channel (#1003)
yacovm Jul 8, 2025
87b89a6
feat: Add firewood as a database (#1029)
alarso16 Jul 9, 2025
43a7dc9
Cleanup statedb extension (#1043)
StephenButtolph Jul 10, 2025
5484384
Update interface to the latest version of avalanchego (#1045)
joshua-kim Jul 11, 2025
380bc44
refactor: re-exec loop check (#1050)
alarso16 Jul 16, 2025
ed1c605
feat: enable blockchain ops and tests (#1041)
alarso16 Jul 16, 2025
f281760
chore: Update Firewood to v0.0.9 (#1052)
alarso16 Jul 22, 2025
1168408
feat: Firewood metrics (#1061)
alarso16 Jul 22, 2025
fc2394d
style: use require in statesync tests (#1062)
alarso16 Jul 23, 2025
8fa714a
feat(plugin/evm): add parallelization support for atomic trie state s…
powerslider Jul 23, 2025
204bdcf
ci: Add line display for avalanchego version script (#1064)
alarso16 Jul 23, 2025
9c895b6
refactor: change sync interface to Wait() (#1063)
alarso16 Jul 24, 2025
c193709
Remove custom `state.StateDB` (#1053)
StephenButtolph Jul 24, 2025
ab3d465
ci: Set GitHub token to remove flake (#1066)
alarso16 Jul 24, 2025
3c018dd
fix: Exclude our test file from license linter for eth (#1070)
alarso16 Jul 24, 2025
2d64507
Replace coreth state package with libevm state package (#1056)
StephenButtolph Jul 24, 2025
6d5d722
fix: Remove race between commits and reads (#1071)
alarso16 Jul 25, 2025
2186ed3
refactor(sync): unify atomic and state sync under common interface (#…
powerslider Jul 25, 2025
d3de70a
Fix summary metrics + flaky test (#1073)
StephenButtolph Jul 25, 2025
1eac5a4
`Add64` and `Mul64` were replaced with `Add` and `Mul` respectively (…
StephenButtolph Jul 25, 2025
0255516
style: fix typo in sync client (#1077)
alarso16 Jul 28, 2025
b5a8128
Refactor atomic mempool initialization (#1080)
StephenButtolph Jul 29, 2025
310ca6c
Unify Add, AddRemoteTx, and AddLocalTx behavior (#1081)
StephenButtolph Jul 29, 2025
33f6a38
fix: Ensure Firewood does not return data on unimplemented APIs (#1059)
alarso16 Jul 29, 2025
b4c8300
feat(sync): make atomic trie sync and state trie sync follow the same…
powerslider Jul 30, 2025
4187637
Remove metrics package (#1086)
JonathanOppenheimer Aug 1, 2025
93444df
chore: update libevm version to v1.13.14-0.3.0.rc.6 (#1087)
alarso16 Aug 1, 2025
ce16f66
fix: unclear error message (#1088)
alarso16 Aug 1, 2025
ebaa8e0
Update codeowners (#1091)
StephenButtolph Aug 4, 2025
2abf999
refactor(plugin/evm): move atomic sync code back to plugin/evm (#1093)
powerslider Aug 5, 2025
764f31d
refactor(sync): add `blockSyncer` as a new syncer implementation (#1078)
alarso16 Aug 6, 2025
6d10d2c
Refactor and document the atomic mempool (#1097)
StephenButtolph Aug 7, 2025
8388bd0
fix: flake in test (#1096)
alarso16 Aug 7, 2025
63fd441
Fix mempool length handling (#1100)
StephenButtolph Aug 7, 2025
2efd661
Improve Mempool error handling to report ErrNoGas errors (#1101)
StephenButtolph Aug 7, 2025
ced05d6
Include Current transactions in the bloom filter (#1102)
StephenButtolph Aug 8, 2025
825d097
Revert the maintainer only code owners restriction (#1107)
StephenButtolph Aug 8, 2025
4f0ffa7
Do not Discard ErrMempoolFull transactions (#1103)
StephenButtolph Aug 8, 2025
25aa878
chore: prepare release for v0.15.3 (#1105)
ceyonur Aug 11, 2025
48c4c39
refactor: use Sync instead of Start and Wait (#1104)
alarso16 Aug 11, 2025
31071c7
chore: change dependabot config (#1110)
ceyonur Aug 11, 2025
a4281c0
refactor config pkg (#958)
ceyonur Aug 11, 2025
7599607
chore: remove unused sync subnet-evm workflow (#1109)
ceyonur Aug 12, 2025
d55b348
chore(sync, plugin/evm): simplify syncer configuration (#1085)
powerslider Aug 12, 2025
70a1040
Simplify atomic mempool tx signaling (#1116)
StephenButtolph Aug 13, 2025
2f6c795
Refactor atomic tx gas price calculations (#1118)
StephenButtolph Aug 13, 2025
3cee0fe
Atomic vm tests (#1112)
ceyonur Aug 14, 2025
cfa7f33
fix: license header file (#1122)
alarso16 Aug 14, 2025
05bc022
chore: more license fixes (#1123)
alarso16 Aug 15, 2025
ab13015
prepare for v0.15.4 (#1124)
ceyonur Aug 18, 2025
9817cf1
Vm test helpers (#1125)
ceyonur Aug 18, 2025
7d59ff4
ci: Enable extra linters (#1117)
alarso16 Aug 19, 2025
b44c5c0
perf: upgrade Firewood (#1134)
alarso16 Aug 20, 2025
eb3b44d
style: Unused linters (#1132)
alarso16 Aug 20, 2025
ca84247
chore: remove nonexistent test flakes (#1135)
RodrigoVillar Aug 21, 2025
215620b
Remove `predicate` package (#1128)
JonathanOppenheimer Aug 21, 2025
3b2ab68
style: revive lint (#1136)
alarso16 Aug 25, 2025
76d25a3
update releasing README.md with version prep instructions (#1108)
JonathanOppenheimer Aug 25, 2025
4c549bf
feat(sync/vm): parallelize syncer execution with errgroup (#1131)
powerslider Aug 25, 2025
3263334
chore(all): use upstream protocol params (#966)
qdm12 Aug 25, 2025
320223d
Remove EIP-4844 package in favor of libevm version (#1145)
JonathanOppenheimer Aug 26, 2025
8df44f4
Update tx gossip rate limit dynamically (#1141)
joshua-kim Aug 26, 2025
054dd19
Add time check for bootstrapping (#1148)
JonathanOppenheimer Aug 26, 2025
baeb30b
activate all upgrades in TestChainConfig and fix the genesis tests (#…
ceyonur Aug 26, 2025
df3930b
Remove duplicate gossip instantiation (#1154)
StephenButtolph Aug 26, 2025
1d22235
fix: add a default batch limit (#1150)
alarso16 Aug 26, 2025
8467d9f
Remove unused struct vars (#1152)
StephenButtolph Aug 26, 2025
36e30dd
Remove reexec package (#1153)
JonathanOppenheimer Aug 26, 2025
91e0d7c
chore: update firewood and fix test flakes (#1151)
alarso16 Aug 26, 2025
c75adfe
`plugin/evm/config`: updated docs for allow-unfinalized-queries (#1142)
navillanueva Aug 28, 2025
94c1542
rename header package to customheader (#1163)
ceyonur Aug 28, 2025
4136380
chore: bump libevm version (#1159)
JonathanOppenheimer Aug 28, 2025
071cf76
move block fee verification to customheader (#1168)
ceyonur Aug 29, 2025
1dbc8a8
Replace interface with struct (#1172)
StephenButtolph Aug 29, 2025
665ce3e
Refactor predication verification logic (#1166)
StephenButtolph Aug 29, 2025
091a2f7
Remove dead code for creating atomic txs (#1174)
StephenButtolph Aug 29, 2025
651f189
Cleanup keystore creation (#1175)
StephenButtolph Aug 29, 2025
9b32562
style: enable nilerr linter (#1182)
JonathanOppenheimer Sep 4, 2025
39df088
style: revive fix based on feedback (#1187)
alarso16 Sep 8, 2025
d414a04
fix: move acceptor tip commitment (#1138)
alarso16 Sep 8, 2025
c531654
docs: Firewood config (#1181)
alarso16 Sep 8, 2025
ff935e6
style: enable gocritic linter (#1184)
JonathanOppenheimer Sep 9, 2025
e5b67e2
Correct TargetToPriceUpdateConversion comment (#1199)
michaelkaplan13 Sep 10, 2025
f20cb9b
style: enable prealloc linter (#1200)
JonathanOppenheimer Sep 11, 2025
d254329
chore(plugin/evm,consensus): add sentinel errors and remove deprecate…
powerslider Sep 11, 2025
74e8218
feat(plugin/evm): ACP-226 - set expected block gas cost to 0 in Grani…
ceyonur Sep 12, 2025
fe2ab9d
Register secp256r1 precompile (#1044)
JonathanOppenheimer Sep 12, 2025
fcf0ce4
Add precompile reversion logic for Granite activation (#1149)
JonathanOppenheimer Sep 12, 2025
c7031a9
ci: update taskfile for rlpgen (#1214)
alarso16 Sep 12, 2025
a6fe076
style: enable staticcheck linter (#1197)
JonathanOppenheimer Sep 12, 2025
c9d2d1f
style: enable predeclared linter (#1183)
JonathanOppenheimer Sep 12, 2025
b214ed5
skip verify block fee if is 0 (#1215)
ceyonur Sep 15, 2025
d5c602f
feat: add TimeMilliseconds to header (#1208)
alarso16 Sep 15, 2025
5e785ce
Have `checkPredicates` account for maximum available gas capacity (#1…
JonathanOppenheimer Sep 15, 2025
224d7c9
fix: free memory used by proposals in firewood (#1173)
demosdemon Sep 15, 2025
31c0526
Fix test aggregation goroutine leak (#1188)
michaelkaplan13 Sep 16, 2025
af368c5
refactor: move header time verification (#1218)
alarso16 Sep 16, 2025
b508e98
refactor(plugin/evm): move syncer client/registry to plugin/evm/vmsyn…
powerslider Sep 17, 2025
6ff7140
Remove libevm `cmd/*` packages. (#1224)
JonathanOppenheimer Sep 17, 2025
80db0d6
Remove libevm `signer` package (#1225)
JonathanOppenheimer Sep 17, 2025
0e9d009
Remove duplicate cancun checks (#1223)
alarso16 Sep 17, 2025
aa9039c
Rewrite / align coreth and subnet-evm documentation (#1095)
JonathanOppenheimer Sep 18, 2025
3172e07
Remove unused types from codec registration (#1235)
StephenButtolph Sep 18, 2025
bd235f7
Cleanup ExportTx verification test (#1237)
StephenButtolph Sep 18, 2025
1ed1717
Disable non-security related dependabot PRs (#1240)
StephenButtolph Sep 19, 2025
cd13e3f
chore: bump libevm (#1239)
JonathanOppenheimer Sep 19, 2025
44ae56a
ACP-226: Add MinDelayExcess to header (#1234)
ceyonur Sep 19, 2025
ae43cea
update comments and file names (#1204)
alarso16 Sep 23, 2025
cee35d5
[ci] Remove use of run_env with run-monitored-tmpnet-cmd (#1252)
maru-ava Sep 23, 2025
9a67621
style: enable testifylint linter (#1198)
JonathanOppenheimer Sep 23, 2025
6e7bcd6
simplify test (#1268)
ceyonur Sep 23, 2025
2692752
remove old path for firewood (#1275)
alarso16 Sep 23, 2025
06b55fd
feat: Enable PathDB config (#1244)
alarso16 Sep 24, 2025
ff7b117
Move verification code to `semanticVerify` (#1277)
JonathanOppenheimer Sep 24, 2025
f0db9b5
feat(sync): decouple code syncer from state syncer and run concurrent…
powerslider Sep 25, 2025
be30ed8
refactor: collapse `CodeQueue` tests into table (#1278)
ARR4N Sep 25, 2025
2d2f6cb
Remove precompile address comment (#1285)
JonathanOppenheimer Sep 25, 2025
aaff39c
Upgrade to go 1.24 (#1249)
alarso16 Sep 25, 2025
d089eea
check the parent.TimeMilliSeconds in wall clock adjustment (#1286)
ceyonur Sep 26, 2025
0a1d401
refactor out the time calculations to customtypes package (#1287)
ceyonur Sep 26, 2025
1c17a7b
import acp176 package from avalanchego (#1242)
ceyonur Sep 27, 2025
530ca18
fix(sync/statesync): panic-causing race between `<-quit` and `AddCode…
ARR4N Sep 29, 2025
dfd4473
update avalanchego (#1293)
alarso16 Sep 29, 2025
80c7fdd
style: forbidigo t.Fatal (#1279)
alarso16 Sep 29, 2025
0a6ce77
fix: block hash when overriding to block n+1 (#1301)
ARR4N Sep 30, 2025
83dbf26
ACP-226: add min delay excess to block and verify (#1263)
ceyonur Oct 1, 2025
8719b97
Add warp test to verify equivalent gas consumed (#1311)
StephenButtolph Oct 2, 2025
1f982b1
Enforce block building delay only for retries (#1295)
ceyonur Oct 2, 2025
a0df90c
Update avalanchego to latest (#1316)
StephenButtolph Oct 2, 2025
a857a64
feat!: explicit `libevm` calls to `Register{Extras,Hooks}()` (#1305)
ARR4N Oct 2, 2025
9032df6
build: use `avalanchego@master` instead of branch (#1320)
ARR4N Oct 3, 2025
b5c6acf
chore: adopt libevm options, simplify constructors and unexport confi…
powerslider Oct 3, 2025
81b31df
Remove secondary validator override (#1313)
StephenButtolph Oct 3, 2025
109f6a2
chore: Use go 1.24's 'go tool' support for CLI tooling (#1317)
maru-ava Oct 4, 2025
6855804
ACP-226: adjust ACP-176 to use milliseconds (#1288)
alarso16 Oct 7, 2025
0673f8f
build(deps): bump github.com/go-viper/mapstructure/v2 from 2.2.1 to 2…
dependabot[bot] Oct 7, 2025
d949044
Remove duplicate avalanchego test (#1325)
StephenButtolph Oct 7, 2025
cd63620
Add `TestClientWebsocketLargeMessage` flake to list of flakes (#1251)
JonathanOppenheimer Oct 7, 2025
2880150
Replace `getValidatorSet` (#1324)
StephenButtolph Oct 7, 2025
e49a625
ACP-226: Apply Min Block Delay to Block Builder (#1310)
ceyonur Oct 8, 2025
d3695fc
move test helper (#1327)
ceyonur Oct 8, 2025
db4f801
ACP-226: Update EstimateNextBaseFee (#1329)
alarso16 Oct 8, 2025
bfc9915
Warp gas costs granite (#1306)
geoff-vball Oct 9, 2025
ed2f46c
deps: bump go to version `1.24.8` (#1330)
JonathanOppenheimer Oct 10, 2025
4b18b13
ACP-226: min block delay verify (#1292)
ceyonur Oct 10, 2025
1b67c91
remove unused GetChainConfig from the precompile interface (#1334)
ceyonur Oct 10, 2025
107a0f8
Update warp gas costs with new caching logic (#1331)
StephenButtolph Oct 10, 2025
75ed2c0
cleanup in customtypes (#1335)
ceyonur Oct 10, 2025
a966839
fix: database inspection (#1245)
RodrigoVillar Oct 10, 2025
73937ae
ci: Fix flakes file (#1336)
alarso16 Oct 13, 2025
7a3f004
remove legacy aggregator tests (#1321)
ceyonur Oct 14, 2025
85c600c
fix: one missing time (#1337)
alarso16 Oct 14, 2025
bdbeea0
add min delay target to config.md (#1339)
ceyonur Oct 15, 2025
e38b660
chore: update Firewood (#1333)
alarso16 Oct 15, 2025
0b315e0
style: Use require.ErrorIs whenever possible (#1303)
alarso16 Oct 16, 2025
7c4bf8e
chore: add type to `codeRequestMetric` (#1338)
JonathanOppenheimer Oct 16, 2025
f902d62
chore: remove deprecated genesis types (#1315)
JonathanOppenheimer Oct 16, 2025
7bacaa5
refactor!: remove direct `libevm/pseudo` import (#1353)
ARR4N Oct 20, 2025
58775c8
test: Add log.Crit to core tests (#1351)
alarso16 Oct 20, 2025
6c57d8a
feat!: `evm.WithTempRegisteredLibEVMExtras()` (#1328)
ARR4N Oct 22, 2025
aa5ef24
deps: bump go to version `1.24.9` (#1352)
JonathanOppenheimer Oct 24, 2025
7ae8cfe
chore: Allow addition allow 3 more imports (#1350)
JonathanOppenheimer Oct 24, 2025
edb4225
test: Update to go-ethereum's WaitDeployed (#1366)
alarso16 Oct 27, 2025
53b9eb4
test: Add race detection for bindings tests (#1365)
alarso16 Oct 27, 2025
9465469
test: Update rpc tests to reduce flake likelihood (#1363)
alarso16 Oct 28, 2025
3f40e54
deps: bump AvalancheGo (#1373)
JonathanOppenheimer Oct 28, 2025
0343a1b
test: Fix mempool flakes (#1360)
alarso16 Oct 28, 2025
edef554
test: Fix state sync flakes (#1361)
alarso16 Oct 28, 2025
1c9ebba
use average for block tips after Granite (#1342)
ceyonur Oct 28, 2025
c4401f9
Use AvalancheGo database package (#1367)
JonathanOppenheimer Oct 28, 2025
a3a4755
deps: Update golangci-lint for upstream code (#1375)
alarso16 Oct 29, 2025
33016b5
style: use t.Context() (#1372)
alarso16 Oct 29, 2025
b1a920f
fix: Flake in txindexer test (#1380)
alarso16 Oct 30, 2025
ca9a493
style: enable gosec linter (#1202)
JonathanOppenheimer Oct 31, 2025
45844d3
fix: Copy directory (#1376)
alarso16 Nov 3, 2025
141b697
ci: Remove test retries (#1381)
alarso16 Nov 3, 2025
8f397aa
test: Skip flaky ChainIndexer test (#1383)
alarso16 Nov 3, 2025
0b57cf5
refactor: use upstream bloombits package (#1388)
alarso16 Nov 3, 2025
d8ec8ad
test: Skip rpc tests that timeout (#1384)
alarso16 Nov 3, 2025
64c271b
test: run sync tests in parallel (#1390)
alarso16 Nov 3, 2025
f1525b7
ci: Add lint-fix to taskfile (#1391)
alarso16 Nov 5, 2025
f5b6f85
build(deps): bump github.com/consensys/gnark-crypto from 0.12.1 to 0.…
dependabot[bot] Nov 6, 2025
7e583fa
ci: Missing test import lint (#1394)
alarso16 Nov 10, 2025
c06f5df
chore: Add lint link check job (#1392)
JonathanOppenheimer Nov 10, 2025
6ef531e
style: enable errcheck linter (#1203)
JonathanOppenheimer Nov 10, 2025
8e2efc7
style: enable depguard linter (#1271)
JonathanOppenheimer Nov 11, 2025
8c9a6e5
rpc: Avoid unnecessary RST_STREAM and PING frames causing GOAWAYs (#1…
michaelkaplan13 Nov 11, 2025
6f0522a
Removed `avax.version` API (#1406)
StephenButtolph Nov 12, 2025
0a0195c
Remove `customlogs` package (#1371)
JonathanOppenheimer Nov 13, 2025
ec9525e
build: remove unneeded dependencies (#1407)
alarso16 Nov 14, 2025
356b41a
Firewood upgrade v0.0.14 (#1402)
alarso16 Nov 17, 2025
8d001db
ci: Filters test corrections (#1404)
alarso16 Nov 17, 2025
8ce2000
Convert import script to a go test (#1348)
JonathanOppenheimer Nov 18, 2025
1bb9fa4
refactor(test): replace custom test context helper with standard cont…
powerslider Nov 19, 2025
159b84b
Remove `TestMustNotImport` (#1414)
JonathanOppenheimer Nov 19, 2025
4819e74
Revert customethclient package and changes (#1413)
ceyonur Nov 20, 2025
4639550
chore: Update avalanchego and add Helicon (#1421)
alarso16 Nov 21, 2025
25ab067
Wait for tx pool re-org when emitting pending transaction events (#1323)
yacovm Nov 21, 2025
1d7379c
add min delay metrics (#1423)
ceyonur Nov 21, 2025
63d7606
chore: fix license header (#1424)
alarso16 Nov 24, 2025
84766a8
fix(vmsync,statesync): ensure syncers detect cancellation during grac…
powerslider Nov 24, 2025
7629fa1
feat: enable archival mode for Firewood (#1416)
RodrigoVillar Nov 24, 2025
d66b056
Add 'graft/coreth/' from commit '7629fa18faa021020afc32037e9724755bf1…
alarso16 Nov 24, 2025
772c816
[migrate-coreth][3] Rewrite coreth imports (#4533)
maru-ava Nov 25, 2025
408b14f
[migrate-coreth][4] Cleanup go mod configuation (#4534)
maru-ava Nov 25, 2025
9eb4042
[migrate-coreth][5] Migrate CI (#4535)
maru-ava Nov 25, 2025
f32a3cb
[migrate-coreth][6] Automated Lint (#4539)
alarso16 Nov 25, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@
/Taskfile.yml @joshua-kim @maru-ava
/flake.lock @joshua-kim @maru-ava
/flake.nix @joshua-kim @maru-ava
/graft/coreth @ava-labs/platform-evm
/graft/coreth/triedb/firewood/ @alarso16 @ava-labs/platform-evm
/network/p2p/ @joshua-kim
/network/p2p/*.md @joshua-kim @meaghanfitzgerald
/nix/* @joshua-kim @maru-ava
Expand Down
4 changes: 4 additions & 0 deletions .github/actions/run-monitored-tmpnet-cmd/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ inputs:
run:
description: "the bash script to run e.g. ./scripts/my-script.sh"
required: true
working_directory:
description: "the working directory to run the command in"
default: ''
run_env:
description: 'a string containing env vars for the command e.g. "MY_VAR1=foo MY_VAR2=bar"'
default: ''
Expand Down Expand Up @@ -108,6 +111,7 @@ runs:
shell: bash
# --impure ensures the env vars are accessible to the command
run: ${{ inputs.run_env }} $GITHUB_ACTION_PATH/nix-develop.sh --impure --command bash -x ${{ inputs.run }}
working-directory: ${{ inputs.working_directory }}
env:
# Always collect metrics locally even when nodes are running in kube to enable collection from the test workload
TMPNET_START_METRICS_COLLECTOR: ${{ inputs.prometheus_username != '' }}
Expand Down
62 changes: 62 additions & 0 deletions .github/workflows/coreth-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Coreth
on:
push:
branches:
- master
pull_request:
merge_group:
types: [checks_requested]

jobs:
lint_test:
name: Lint
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./graft/coreth
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup-go-for-project
- name: Run all lint checks
run: ./scripts/run_task.sh lint-all-ci
- name: Check go.mod and go.sum are up-to-date
run: ./scripts/run_task.sh check-go-mod-tidy

unit_test:
name: Unit Tests (${{ matrix.os }})
runs-on: ${{ matrix.os }}
defaults:
run:
working-directory: ./graft/coreth
strategy:
fail-fast: false
matrix:
os: [macos-latest, ubuntu-22.04, ubuntu-latest]
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/setup-go-for-project
- run: ./scripts/run_task.sh build-test
- run: ./scripts/run_task.sh coverage

e2e_warp:
name: E2E Warp Tests
runs-on: ubuntu-latest
steps:
- name: Git checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Run Warp E2E Tests
uses: ./.github/actions/run-monitored-tmpnet-cmd
with:
run: ./scripts/run_task.sh test-e2e-warp-ci
working_directory: ./graft/coreth
artifact_prefix: warp
prometheus_url: ${{ secrets.PROMETHEUS_URL || '' }}
prometheus_push_url: ${{ secrets.PROMETHEUS_PUSH_URL || '' }}
prometheus_username: ${{ secrets.PROMETHEUS_ID || '' }}
prometheus_password: ${{ secrets.PROMETHEUS_PASSWORD || '' }}
loki_url: ${{ secrets.LOKI_URL || '' }}
loki_push_url: ${{ secrets.LOKI_PUSH_URL || '' }}
loki_username: ${{ secrets.LOKI_ID || '' }}
loki_password: ${{ secrets.LOKI_PASSWORD || '' }}
35 changes: 18 additions & 17 deletions .golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,24 @@ issues:
# Maximum count of issues with the same text.
max-same-issues: 0

formatters:
enable:
- gci
- gofmt
- gofumpt
settings:
gci:
sections:
- standard
- default
- blank
- prefix(github.com/ava-labs/avalanchego)
- alias
- dot
custom-order: true
exclusions:
generated: lax

linters:
default: none
enable:
Expand Down Expand Up @@ -240,20 +258,3 @@ linters:
linters:
- gosec
- prealloc
formatters:
enable:
- gci
- gofmt
- gofumpt
settings:
gci:
sections:
- standard
- default
- blank
- prefix(github.com/ava-labs/avalanchego)
- alias
- dot
custom-order: true
exclusions:
generated: lax
1 change: 1 addition & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ WORKDIR /build
# Copy and download avalanche dependencies using go mod
COPY go.mod .
COPY go.sum .
COPY graft/coreth ./graft/coreth
RUN go mod download

# Copy the code into the container
Expand Down
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -243,3 +243,8 @@ To officially support a new platform, one must satisfy the following requirement
**We and our community welcome responsible disclosures.**

Please refer to our [Security Policy](SECURITY.md) and [Security Advisories](https://github.com/ava-labs/avalanchego/security/advisories).

## Licenses

Unless otherwise stated, all code in this repository is licensed under BSD-3. See our [licensing](LICENSE) for more details. Specifically, [grafted repositories](graft/) may use
a different license, and one must refer to that project's README and LICENSE for more details
3 changes: 2 additions & 1 deletion Taskfile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,8 @@ tasks:
generate-mocks:
desc: Generates testing mocks
cmds:
- cmd: grep -lr -E '^// Code generated by MockGen\. DO NOT EDIT\.$' . | xargs -r rm
# Avoid deleting mocks in grafted modules
- cmd: grep -lr -E '^// Code generated by MockGen\. DO NOT EDIT\.$' . | grep -v '^./graft' | xargs -r rm
- cmd: go generate -run "mockgen" ./...

generate-canoto:
Expand Down
8 changes: 5 additions & 3 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ require (
github.com/DataDog/zstd v1.5.2
github.com/StephenButtolph/canoto v0.17.3
github.com/antithesishq/antithesis-sdk-go v0.3.8
github.com/ava-labs/coreth v0.16.0-rc.0
github.com/ava-labs/avalanchego/graft/coreth v0.16.0-rc.0
github.com/ava-labs/libevm v1.13.15-0.20251016142715-1bccf4f2ddb2
github.com/ava-labs/subnet-evm v0.8.1-db-metrics-fix
github.com/ava-labs/subnet-evm v0.8.1-0.20251124174652-9114d48a927d
github.com/btcsuite/btcd/btcutil v1.1.3
github.com/cespare/xxhash/v2 v2.3.0
github.com/cockroachdb/pebble v0.0.0-20230928194634-aa077af62593
Expand Down Expand Up @@ -89,7 +89,7 @@ require (
require (
github.com/Microsoft/go-winio v0.6.1 // indirect
github.com/VictoriaMetrics/fastcache v1.12.1 // indirect
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.13 // indirect
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.15 // indirect
github.com/ava-labs/simplex v0.0.0-20250919142550-9cdfff10fd19
github.com/beorn7/perks v1.0.1 // indirect
github.com/bits-and-blooms/bitset v1.20.0 // indirect
Expand Down Expand Up @@ -204,3 +204,5 @@ tool (
github.com/onsi/ginkgo/v2/ginkgo
go.uber.org/mock/mockgen
)

replace github.com/ava-labs/avalanchego/graft/coreth => ./graft/coreth
10 changes: 4 additions & 6 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -71,16 +71,14 @@ github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmV
github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
github.com/ava-labs/coreth v0.16.0-rc.0 h1:nPvkDbxaH8N9f/wQe7B+IGMhPISMuW5CU0cDYuU8iCw=
github.com/ava-labs/coreth v0.16.0-rc.0/go.mod h1:uGr1C7BP0+dWhvsIouhuH0yCyI8YDgS6sfEFIExs0iI=
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.13 h1:obPwnVCkF5+B2f8WbTepHj0ZgiW21vKUgFCtATuAYNY=
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.13/go.mod h1:gsGr1ICjokI9CyPaaRHMqDoDCaT1VguC/IyOTx6rJ14=
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.15 h1:NAVjEu508HwdgbxH/xQxMQoBUgYUn9RQf0VeCrhtYMY=
github.com/ava-labs/firewood-go-ethhash/ffi v0.0.15/go.mod h1:hR/JSGXxST9B9olwu/NpLXHAykfAyNGfyKnYQqiiOeE=
github.com/ava-labs/libevm v1.13.15-0.20251016142715-1bccf4f2ddb2 h1:hQ15IJxY7WOKqeJqCXawsiXh0NZTzmoQOemkWHz7rr4=
github.com/ava-labs/libevm v1.13.15-0.20251016142715-1bccf4f2ddb2/go.mod h1:DqSotSn4Dx/UJV+d3svfW8raR+cH7+Ohl9BpsQ5HlGU=
github.com/ava-labs/simplex v0.0.0-20250919142550-9cdfff10fd19 h1:S6oFasZsplNmw8B2S8cMJQMa62nT5ZKGzZRdCpd+5qQ=
github.com/ava-labs/simplex v0.0.0-20250919142550-9cdfff10fd19/go.mod h1:GVzumIo3zR23/qGRN2AdnVkIPHcKMq/D89EGWZfMGQ0=
github.com/ava-labs/subnet-evm v0.8.1-db-metrics-fix h1:hESwxfeJQTI0FtQYP3/npWGh+4ifj5I3ehYcqzE41zI=
github.com/ava-labs/subnet-evm v0.8.1-db-metrics-fix/go.mod h1:7Jypx176jtNk7Yzz8upQ2K9lcIUp2QaVVudUiWj/L1s=
github.com/ava-labs/subnet-evm v0.8.1-0.20251124174652-9114d48a927d h1:7pjEE0BXLjzQlq5uKP5B2BTl9jTgDKaOfJx2Qfb01Jo=
github.com/ava-labs/subnet-evm v0.8.1-0.20251124174652-9114d48a927d/go.mod h1:JTvIe8YbCjHpy8vy9uZBSpDXxawNXSnIe/Wlf3I09Tk=
github.com/aymerick/raymond v2.0.3-0.20180322193309-b565731e1464+incompatible/go.mod h1:osfaiScAUVup+UC9Nfq76eWqDhXlp+4UYaA8uhTBO6g=
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
Expand Down
9 changes: 9 additions & 0 deletions graft/coreth/.dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
.ci
.github
.gitignore
.golangci.yml
.idea
.vscode

LICENSE
*.md
12 changes: 12 additions & 0 deletions graft/coreth/.github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Each line is a file pattern followed by one or more owners.

# These owners will be the default code owners for everything in the repo.

# Unless a later match takes precedence, these owners will be requested for

# review whenever someone opens a pull request.

* @ava-labs/platform-evm
/.github/ @maru-ava @ava-labs/platform-evm
/triedb/firewood/ @alarso16 @ava-labs/platform-evm

85 changes: 85 additions & 0 deletions graft/coreth/.github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# Contributing

Thank you for considering to help out with the source code! We welcome contributions from anyone on the internet, and are grateful for even the smallest of fixes!

If you'd like to contribute to coreth, please fork, fix, commit and send a pull request for the maintainers to review and merge into the main code base. If you wish to submit more complex changes though, please check up with the core devs first on [Discord](https://chat.avalabs.org) to ensure those changes are in line with the general philosophy of the project and/or get some early feedback which can make both your efforts much lighter as well as our review and merge procedures quick and simple.

## Coding guidelines

Please make sure your contributions adhere to our coding guidelines:

- Code must adhere to the official Go
[formatting](https://go.dev/doc/effective_go#formatting) guidelines
(i.e. uses [gofmt](https://pkg.go.dev/cmd/gofmt)).
- Code must be documented adhering to the official Go
[commentary](https://go.dev/doc/effective_go#commentary) guidelines.
- Pull requests need to be based on and opened against the `master` branch.
- Pull reuqests should include a detailed description
- Commits are required to be signed. See the [commit signature verification documentation](https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits)
for information on signing commits.
- Commit messages should be prefixed with the package(s) they modify.
- E.g. "eth, rpc: make trace configs optional"

## Can I have feature X

Before you submit a feature request, please check and make sure that it isn't possible through some other means.

## Mocks

Mocks are auto-generated using [mockgen](https://pkg.go.dev/go.uber.org/mock/mockgen) and `//go:generate` commands in the code.

- To **re-generate all mocks**, use the task below from the root of the project:

```sh
task generate-mocks
```

- To **add** an interface that needs a corresponding mock generated:
- if the file `mocks_generate_test.go` exists in the package where the interface is located, either:
- modify its `//go:generate go tool -modfile=tools/go.mod mockgen` to generate a mock for your interface (preferred); or
- add another `//go:generate go tool -modfile=tools/go.mod mockgen` to generate a mock for your interface according to specific mock generation settings
- if the file `mocks_generate_test.go` does not exist in the package where the interface is located, create it with content (adapt as needed):

```go
// Copyright (C) 2025-2025, Ava Labs, Inc. All rights reserved.
// See the file LICENSE for licensing terms.

package mypackage

//go:generate go tool -modfile=tools/go.mod mockgen -package=${GOPACKAGE} -destination=mocks_test.go . YourInterface
```

Notes:
1. Ideally generate all mocks to `mocks_test.go` for the package you need to use the mocks for and do not export mocks to other packages. This reduces package dependencies, reduces production code pollution and forces to have locally defined narrow interfaces.
1. Prefer using reflect mode to generate mocks than source mode, unless you need a mock for an unexported interface, which should be rare.
- To **remove** an interface from having a corresponding mock generated:
1. Edit the `mocks_generate_test.go` file in the directory where the interface is defined
1. If the `//go:generate` mockgen command line:
- generates a mock file for multiple interfaces, remove your interface from the line
- generates a mock file only for the interface, remove the entire line. If the file is empty, remove `mocks_generate_test.go` as well.

## Tool Dependencies

This project uses `go tool` to manage development tool dependencies in `tools/go.mod`. This isolates tool dependencies from the main application dependencies and provides consistent, version-locked tools across the team.

### Managing Tools

- To **add a new tool**:

```sh
go get -tool -modfile=tools/go.mod example.com/tool/cmd/toolname@version
```

- To **upgrade a tool**:

```sh
go get -tool -modfile=tools/go.mod example.com/tool/cmd/toolname@newversion
```

- To **run a tool manually**:

```sh
go tool -modfile=tools/go.mod toolname [args...]
```

Note: `ginkgo` remains in the main `go.mod` as it is used directly in e2e test code.
34 changes: 34 additions & 0 deletions graft/coreth/.github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: bug
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior.

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Logs**
If applicable, please include the relevant logs that indicate a problem and/or the log directory of your node. By default, this can be found at `~/.avalanchego/logs/`.

**Metrics**
If applicable, please include any metrics gathered from your node to assist us in diagnosing the problem.

**Operating System**
Which OS you used to reveal the bug.

**Additional context**
Add any other context about the problem here.

You can submit a bug on the [Avalanche Bug Bounty program page](https://hackenproof.com/avalanche/avalanche-protocol).
20 changes: 20 additions & 0 deletions graft/coreth/.github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
17 changes: 17 additions & 0 deletions graft/coreth/.github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:
- package-ecosystem: "gomod" # See documentation for possible values
directory: "/" # Location of package manifests
schedule:
interval: "daily"
open-pull-requests-limit: 0 # Disable non-security version updates
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: "weekly"
open-pull-requests-limit: 0 # Disable non-security version updates
Loading
Loading