You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a coordinating document for the PR's made across Preprocessor, ERC, EIP, Theme, and Template repos for the V2 Multi-repo local build system.
Given the system is composed of interdependent parts, the PRs are scoped by reviewable system boundary, including feature slices and shared foundations, rather than merge boundary. They are intended to be merged as one coordinated system, not as independently mergeable changes. Some intermediate branches may have expected lint or CI failures from foundation code that is consumed later in the stack, while the final stack tips are expected to pass checks and match the intended V2 end-state snapshot.
Making every intermediate branch independently green would require temporary scaffolding annotations, artificial code movement, or recombining feature slices. Those options would make the review story less faithful to the final architecture and likely add noise to the review process. This sequence is intended as the cleanest review-oriented decomposition of the final V2 state.
Here are documents recommended to read for understanding the system and the PR stack.
Workspace Guide — Explains what users can now do; the user commands and configuration available in a local workspace.
ARCHITECTURE.md — Gives a high-level overview of the system design.
EIPs README — Shows the end-user entrypoint for what the local build system offers the community as a tool to participate in the EIP process.
PR Sequence
NOTE: This sequence currently has 25 PRs, not 24. V2:15b was inserted after V2:15 to isolate the cross-proposal asset-link fix without renumbering the existing downstream PRs.
Tag a new build-eips release from the preprocessor repo so release automation can publish binaries and checksum sidecars needed for each repo's workspace startup scripts.
Add tracked .build-eips.repo.toml manifests to the upstream repos that need manifest-backed identity, environment metadata, and sibling topology.
After upstream manifests are in place and released tooling supports them, remove the legacy EIPs/ERCs identity fallback from the preprocessor.
What's Changed in V2
Replaced the generated justfile workflow with direct build-eips commands and a smaller command surface.
Repurposed .build-eips.toml as workspace local build configuration with added support for base URL, server binding, and targeted proposal rendering.
Added targeted proposal rendering for significantly faster local build and serve loops.
Defined a single fixed workspace layout for the EIPs, ERCs, theme, template, and preprocessor repos.
Added one-shot workspace setup scripts for each repo (except template).
Added tracked Build.toml manifests so each proposal repo declares its own identity, related proposal repos, canonical base URLs, and theme pin.
Split the preprocessor into bounded modules with clearer ownership.
Expanded test coverage across config, identity, source resolution, materialization, targeted rendering, serving, editorial validation, and workspace setup.
Added detailed documentation for end-user workflows, workspace structure, and system architecture.
Added build-eips editorial lint and build-eips editorial check, with eipw running against the prepared merged EIPs/ERCs source tree so cross-repo proposal references resolve correctly. This resolves ethereum/EIPs#8689.
Local explicit, batch, and working-tree editorial lint avoid fetching the active upstream; --against-upstream still fetches upstream for changed-file selection.
Description
This is a coordinating document for the PR's made across Preprocessor, ERC, EIP, Theme, and Template repos for the V2 Multi-repo local build system.
Given the system is composed of interdependent parts, the PRs are scoped by reviewable system boundary, including feature slices and shared foundations, rather than merge boundary. They are intended to be merged as one coordinated system, not as independently mergeable changes. Some intermediate branches may have expected lint or CI failures from foundation code that is consumed later in the stack, while the final stack tips are expected to pass checks and match the intended V2 end-state snapshot.
Making every intermediate branch independently green would require temporary scaffolding annotations, artificial code movement, or recombining feature slices. Those options would make the review story less faithful to the final architecture and likely add noise to the review process. This sequence is intended as the cleanest review-oriented decomposition of the final V2 state.
Here are documents recommended to read for understanding the system and the PR stack.
PR Sequence
Theme Foundation
Preprocessor Foundation
V2:03V2:03 - Add Repository Manifest IdentityWorkspace Lifecycle
Runtime Path
Proposal Selection And Editorial
Targeted Rendering
Platform And Final Integration
Repository Rollout
Post-Merge Tasks
build-eipsrelease from the preprocessor repo so release automation can publish binaries and checksum sidecars needed for each repo's workspace startup scripts..build-eips.repo.tomlmanifests to the upstream repos that need manifest-backed identity, environment metadata, and sibling topology.What's Changed in V2
justfileworkflow with directbuild-eipscommands and a smaller command surface..build-eips.tomlas workspace local build configuration with added support for base URL, server binding, and targeted proposal rendering.Build.tomlmanifests so each proposal repo declares its own identity, related proposal repos, canonical base URLs, and theme pin.extra.homepage_badgesfront matter consumed by the theme renderer, including the ERCRef Discord badge. This resolves Fix stale homepage badge links with structured badge metadata #14.build-eips editorial lintandbuild-eips editorial check, with eipw running against the prepared merged EIPs/ERCs source tree so cross-repo proposal references resolve correctly. This resolves ethereum/EIPs#8689.--against-upstreamstill fetches upstream for changed-file selection.