Skip to content

apollo_deployments: regression test generator on real overlay overrides#14572

Closed
nimrod-starkware wants to merge 1 commit into
nimrod/jsonnet/configmap-generator-optinfrom
nimrod/jsonnet/real-overlay-regression
Closed

apollo_deployments: regression test generator on real overlay overrides#14572
nimrod-starkware wants to merge 1 commit into
nimrod/jsonnet/configmap-generator-optinfrom
nimrod/jsonnet/real-overlay-regression

Conversation

@nimrod-starkware

Copy link
Copy Markdown
Contributor

The generator's node-loadable test only exercised testing/overrides. Add
a regression that drives it from a real environment's complete merged
overlay sequencerConfig (the flat dotted, #is_none-marked overrides the
deploy feeds the generator), vendored as a fixture: the sepolia-
integration config assembled across the in-repo layers (configs/layouts

  • configs/overlays/hybrid/common + .../sepolia-integration) plus the
    per-pod instance values the external deploy repo supplies (P2P
    multiaddrs and validator_id).

The test asserts (1) the overlay covers every override path the
generator reads, so the generator can build a full config for the
environment from the overlay alone (no synthetic completion), and (2)
the overrides apply through the generator into node-loadable, validated
configs for every hybrid service, with the environment's real values
surviving into the built config (advertised_multiaddr folds to null from
its #is_none marker; bootstrap peer, validator_id, and chain_id are the
overlay's own values). Both the coverage check and the value-survival
checks are exercised by mutation testing.

The per-service node-load assertion is extracted into a shared helper
reused by the existing testing-overrides test.

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

nimrod-starkware commented Jun 21, 2026

Copy link
Copy Markdown
Contributor Author

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

@reviewable-StarkWare

Copy link
Copy Markdown

This change is Reviewable

@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/real-overlay-regression branch from 4e77edd to a168691 Compare June 21, 2026 09:32
@nimrod-starkware nimrod-starkware changed the base branch from nimrod/jsonnet/override-schema-from-eval to graphite-base/14572 June 21, 2026 12:11
@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/real-overlay-regression branch from a168691 to d2a113e Compare June 21, 2026 12:11
@nimrod-starkware nimrod-starkware changed the base branch from graphite-base/14572 to nimrod/jsonnet/configmap-generator-optin June 21, 2026 12:12
The generator's node-loadable test only exercised testing/overrides. Add
a regression that drives it from a real environment's overlay
sequencerConfig (the flat dotted, #is_none-marked overrides the deploy
feeds the generator), read at test time from the committed YAML overlays
(the single source of truth) so it never drifts.

The test merges the sepolia-integration hybrid overlays the way the
deploy does: the shared `common` overlay, the `sepolia-integration`
overlay (which overrides common), and `dummy_for_testing` (layered last,
supplying the per-pod instance values: P2P multiaddrs as dummy None and
validator_id). Each layer's common.yaml + services/*.yaml contribute
their config.sequencerConfig entries; later layers win. Parsing uses
serde_yml (added as a dev-dependency).

The test asserts (1) the overlay covers every override path the
generator reads, so the generator builds a full config for the
environment from the overlay alone, and (2) the overrides apply through
the generator into node-loadable, validated configs for every hybrid
service, with the environment's real values surviving (multiaddrs fold
to null from their dummy #is_none markers; validator_id and chain_id are
the overlay's own values).

The per-service node-load assertion is extracted into a shared helper
reused by the existing testing-overrides test.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants