Tags: init4tech/builder
Tags
chore(deps): bump signet-sdk family to gouda cohort (#277) * docs: add gouda deps bump + image cut design spec Captures the approved design for bringing the builder into the gouda rollup cohort alongside signet PR #105: dep pins switch to git-rev against the 0.19-family cohort SHAs, inline API porting for the 0.16→0.19 jump, local arm64 image build pushed to ECR. K8s manifest changes and CI workflow arch audit are explicitly out of scope. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * docs: add gouda deps bump implementation plan 7-phase plan (A through G): worktree verify, Cargo.toml dep bump, iterative API porting against the 0.16->0.19 jump, lint/fmt/doc/test gates, local arm64 buildx image, ECR push with dual arch verification, draft PR + parmigiana progress doc update. Includes explicit stop-and- surface triggers for transitive dep conflicts, structural API changes, arm64 manifest poisoning, and unknown ECR repo. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * chore(deps): pin signet-sdk family to gouda cohort revs - init4-bin-base @ b2f92e4 (bin-base#149) - signet-{constants,sim,tx-cache,types,zenith} @ ecce6a4 (signet-sdk#236) - signet-{block-processor,genesis} @ 752fa4a (node-components#144) - signet-bundle (dev-dep) @ ecce6a4 Matches the lockstep pin set used by signet#105 cut 4. Build/test fixes follow in subsequent commits. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(deps): port Cargo.toml to gouda cohort revs Unify signet-sdk git revs to full hash (ecce6a48…) so they match node-components and bin-base transitive deps; bump rust-version to 1.92; add [patch.crates-io] to redirect crates.io 0.18 signet-sdk packages to the git 0.19 versions (not effective yet — resolved via direct usage); remove signet-block-processor dep (revm_spec removed upstream); bump roaring 0.11.3→0.11.4 to fix Clone bound on Iter. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(tasks): port cfg.rs and bundle.rs to gouda SDK API cfg.rs: remove dependency on signet_block_processor::revm_spec (removed upstream); inline equivalent spec-ID logic using EthereumHardforks trait directly from reth_chainspec. bundle.rs: replace init4_bin_base::perms::tx_cache::BuilderTxCache (wraps crates.io signet-tx-cache 0.18) with local BundleClient using signet-tx-cache 0.19 git types; this eliminates the nominal type mismatch between 0.18 CachedBundle/TxRequirement and signet-sim 0.19 check_bundle_tx_list. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * chore(clippy): satisfy lints after gouda API port Restore `pub` visibility on `BundleCacheError` and `BundlePoller::check_bundle_cache` — Phase C narrowed both to `pub(crate)` which broke the integration test in `tests/`. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * chore: address pre-review notes (patch comment, instrument skip, MSRV doc) - Cargo.toml: add comment block above [patch.crates-io] explaining why it's active (init4-bin-base's transitive deps pull crates.io 0.18 copies of signet-evm/extract/journal; patch redirects our direct resolution to the 0.19 git rev). Patch does not bridge init4-bin-base's own internal 0.18 sub-graph, which is why BundleClient is needed. - src/tasks/cache/bundle.rs: switch BundleClient::get_bundles from #[instrument(skip_all)] to #[instrument(skip(self))] to match the repo CLAUDE.md tracing convention. - .claude/CLAUDE.md: bump documented MSRV from 1.88 to 1.92 to reflect the actual change forced by init4-bin-base @ b2f92e4. - Cargo.lock: drop orphan full-SHA pin (kept short-rev b2f92e4 to match node-components @ 752fa4ad which itself references bin-base by the short rev — using the full rev would split the lock into two init4-bin-base entries despite resolving to the same commit). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(cfg): add gouda to chainspec match arm Phase C's replacement of signet_block_processor::revm_spec used reth's ChainSpec-based hardfork lookup, which requires per-chain genesis registration. The chainspec() match arm only listed parmigiana and mainnet rollup chain ids; constructing a SignetCfgEnv with the gouda rollup chain id (792669) fell through to the catch-all unimplemented!("Unknown chain ID: 792669"), crashing the simulator on first block environment update. - Add gouda::RU_CHAIN_ID to the rollup match arm. - Add gouda::RU_CHAIN_ID -> GOUDA_GENESIS in initialize_ru_chainspec. - Add gouda_cfg_env_does_not_panic regression test. Host chain id is unchanged from parmigiana (3151908) so the host arm already covers gouda's host without modification. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * chore(deps): switch gouda cohort to crates.io versions; bump to 1.3.0 Replaces the git-rev pins added earlier in this PR with the now-published releases: - init4-bin-base 0.23.1 (was git b2f92e4) - signet-{constants,sim,tx-cache,types,zenith,bundle} 0.19.0 (was git ecce6a4 on init4tech/signet-sdk) - signet-genesis 0.19.0 (was git 752fa4a on init4tech/node-components; v0.19.0 lifts GOUDA_GENESIS into the published release) Drops the active [patch.crates-io] block — bin-base 0.23.1 now pins signet-tx-cache 0.19.0 itself, so the diamond-dep duplication that motivated the patch no longer exists. The commented dev-local patch block (path = …) is preserved unchanged. Bumps the builder package version 1.0.0 -> 1.3.0. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * revert(bundle): drop local BundleClient shim, use bin-base BuilderTxCache The shim was a workaround for init4-bin-base pinning signet-tx-cache 0.18.0 while we ran 0.19.0 from a git rev. With init4-bin-base 0.23.1 now itself pinning signet-tx-cache 0.19.0, the type mismatch is gone and the shim adds nothing — reverting to BuilderTxCache / BuilderTxCacheError keeps this PR a pure dep bump. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * chore: bump version to 2.0.0 Address PR review comment to use semver-compliant 2.0.0 for the breaking changes in the gouda cohort dependency bump. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * ci: stop installing foundry in unit test job CI runs with test-all-features: false, so the integration tests in tests/ (all gated behind #![cfg(feature = "test-utils")]) don't compile, and nothing in the unit test job needs anvil/forge/cast. Meanwhile foundryup's "nightly" tag rotation broke the install step upstream and was failing the job before any tests ran. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
chore: bump signet-sdk to 0.18.0 (for real this time) (#276) The previous bump PR (#274) landed with title claiming 0.18.0 but content only at 0.17.0 and node-components still on the v0.16.0-rc.10 git tag. This catches the builder up to current published versions and clears the cross-repo git pin. Version bumps: - init4-bin-base 0.20.0 -> 0.21.0 - signet-{constants,sim,tx-cache,types,zenith} 0.17.0 -> 0.18.0 - signet-bundle (dev-dep) 0.17.0 -> 0.18.0 Dep source changes: - signet-block-processor and signet-genesis: git tag v0.16.0-rc.10 -> crates.io 0.18.0 (now that node-components publishes to crates.io). - signet-block-processor removed entirely; it was only there for the revm_spec re-export, which was deleted in node-components v0.17.0 when the reth dep was dropped (#93 there). - signet-evm 0.18.0 added: replacement for revm_spec lives there as EthereumHardfork::active_hardforks(...).spec_id(). Source migration in SignetCfgEnv: - revm_spec(chainspec, timestamp) replaced with EthereumHardfork::active_hardforks(&chainspec.genesis().config, block_number, timestamp).spec_id(). - SignetCfgEnv now carries block_number alongside timestamp; the new helper needs both. Threaded through 5 call sites. - Added SignetCfgEnv::from_block_env(chain_id, &BlockEnv) so the 4 BlockEnv-derived sites stay one-liners. prep.rs keeps new() since it builds for the next block from a Header. Behavior note: the old revm_spec floored at PRAGUE. The new path reports the actual active spec from the genesis config. For mainnet/parmigiana rollup configs (all forks at timestamp 0) and for current host timestamps (post-Osaka), output is identical. The floor would only have mattered for pre-Prague host timestamps, which no production path here uses. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
chore: v1.1.0 (#273) ## Description <!-- Brief description of changes --> ## Related Issue <!-- Link to Linear issue: Closes ENG-XXX --> ## Testing - [ ] `make fmt` passes - [ ] `make clippy` passes - [ ] `make test` passes - [ ] New tests added (if applicable)
PreviousNext