Skip to content

apollo_integration_tests,apollo_deployments: prime strk_to_usd_oracle overlays#14160

Open
ShahakShama wants to merge 1 commit into
shahak/strk_usd_oracle_03_client_traitfrom
shahak/strk_usd_oracle_04_integration_overlays
Open

apollo_integration_tests,apollo_deployments: prime strk_to_usd_oracle overlays#14160
ShahakShama wants to merge 1 commit into
shahak/strk_usd_oracle_03_client_traitfrom
shahak/strk_usd_oracle_04_integration_overlays

Conversation

@ShahakShama
Copy link
Copy Markdown
Collaborator

Goal: PR 4 of 6 in the stack moving the STRK/USD oracle into
L1GasPriceProvider. Lands BEFORE the orchestrator behavior flip
(PR 5) so that every test and deployment overlay already points
the new strk_to_usd_oracle_config.url_header_list at a working
endpoint. When PR 5 lands, integration runs immediately exercise
the new path with realistic data instead of silently freezing
fee_proposal at fee_actual.

Change summary:

  • create_node_config takes a new strk_to_usd_oracle_config: ExchangeRateOracleConfig argument and plumbs it into
    L1GasPriceProviderConfig.
  • Callers in flow_test_setup.rs and integration_test_manager.rs
    reuse the same dummy spawn_local_eth_to_strk_oracle URL for both
    oracles (the handler returns a constant rate, so semantically
    equivalent).
  • SecretsConfigOverride in apollo_deployments::test_utils gains
    a strk_to_usd_oracle_config.url_header_list field so the
    generated secrets file covers the new private parameter.
  • Deployment app-config presets
    (l1_gas_price_provider_config.json,
    replacer_l1_gas_price_provider_config.json) gain the same three
    per-oracle overrides (lag_interval_seconds=900, max_cache_size=100,
    query_timeout_sec=10) for STRK/USD, mirroring eth_to_strk.

Decision points:

  • One dummy oracle process serving both feeds instead of spawning two.
    The fake handler is rate-agnostic — same response shape, single port
    allocation, same join handle. If we ever need rate-specific dummy
    values, splitting into two processes is a localized change.

Action required after merge (cannot run from this sandbox):

  • cargo run --bin update_apollo_node_config_schema to regenerate
    config_secrets_schema.json (it gains a new private parameter
    from PR 1's earlier addition).
  • cargo run --bin deployment_generator to regenerate
    testing_secrets.json with the new strk_to_usd entry from
    SecretsConfigOverride.

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

@cursor
Copy link
Copy Markdown

cursor Bot commented May 24, 2026

PR Summary

Low Risk
Test-only configuration plumbing with no production logic changes in the shown diff; reuses an existing mock oracle endpoint.

Overview
Integration tests now wire strk_to_usd_oracle_config into node setup ahead of the L1 gas price provider behavior change. create_node_config takes a second ExchangeRateOracleConfig and sets it on L1GasPriceProviderConfig alongside the existing ETH→STRK oracle.

Flow and integration test managers build that config by reusing the same local dummy oracle URL as ETH→STRK (one spawn_local_eth_to_strk_oracle process serves both feeds). Call sites pass the new argument through unchanged test topology.

This keeps integration runs exercising a populated url_header_list for STRK/USD when the provider starts using it, instead of leaving the field empty.

Reviewed by Cursor Bugbot for commit cb7f91e. Bugbot is set up for automated code reviews on this repo. Configure here.

@reviewable-StarkWare
Copy link
Copy Markdown

This change is Reviewable

Copy link
Copy Markdown
Collaborator Author

ShahakShama commented May 24, 2026

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.

@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_03_client_trait branch from 722a966 to 7def26d Compare May 25, 2026 06:19
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_04_integration_overlays branch from f88ac27 to 74796ad Compare May 25, 2026 06:19
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_03_client_trait branch from 7def26d to c291368 Compare May 25, 2026 07:56
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_04_integration_overlays branch 2 times, most recently from 9be64f7 to ebb9c8e Compare May 25, 2026 08:18
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_03_client_trait branch 2 times, most recently from 570d530 to a42b523 Compare May 25, 2026 08:53
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_04_integration_overlays branch 2 times, most recently from bf76248 to f533d86 Compare May 25, 2026 11:03
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_03_client_trait branch from a42b523 to e413e9a Compare May 25, 2026 11:03
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_04_integration_overlays branch from f533d86 to 6a5c326 Compare May 25, 2026 11:04
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_03_client_trait branch from e413e9a to 403c127 Compare May 25, 2026 11:04
Copy link
Copy Markdown
Collaborator

@matanl-starkware matanl-starkware left a comment

Choose a reason for hiding this comment

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

@matanl-starkware reviewed 3 files and all commit messages.
Reviewable status: :shipit: complete! all files reviewed, all discussions resolved (waiting on ShahakShama).

@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_03_client_trait branch from 403c127 to 8b42533 Compare May 25, 2026 14:42
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_04_integration_overlays branch 2 times, most recently from d6f65ca to 76e550e Compare May 25, 2026 14:52
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_03_client_trait branch from 8b42533 to 1262c18 Compare May 25, 2026 14:52
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_03_client_trait branch from 1262c18 to cfcbbde Compare May 26, 2026 10:01
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_04_integration_overlays branch from 76e550e to 355e1b6 Compare May 26, 2026 10:01
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_03_client_trait branch from cfcbbde to 61d4412 Compare May 26, 2026 11:24
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_04_integration_overlays branch 2 times, most recently from 911b2ee to 753bdfc Compare May 26, 2026 13:30
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_03_client_trait branch from 266f09d to f988b4e Compare May 26, 2026 14:24
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_04_integration_overlays branch from 753bdfc to 7b8b3a6 Compare May 26, 2026 14:24
… overlays

Goal: PR 4 of 6 in the stack moving the STRK/USD oracle into
L1GasPriceProvider. Lands BEFORE the orchestrator behavior flip
(PR 5) so that every test and deployment overlay already points
the new `strk_to_usd_oracle_config.url_header_list` at a working
endpoint. When PR 5 lands, integration runs immediately exercise
the new path with realistic data instead of silently freezing
fee_proposal at fee_actual.

Change summary:
- `create_node_config` takes a new `strk_to_usd_oracle_config:
  ExchangeRateOracleConfig` argument and plumbs it into
  `L1GasPriceProviderConfig`.
- Callers in `flow_test_setup.rs` and `integration_test_manager.rs`
  reuse the same dummy `spawn_local_eth_to_strk_oracle` URL for both
  oracles (the handler returns a constant rate, so semantically
  equivalent).
- `SecretsConfigOverride` in `apollo_deployments::test_utils` gains
  a `strk_to_usd_oracle_config.url_header_list` field so the
  generated secrets file covers the new private parameter.
- Deployment app-config presets
  (`l1_gas_price_provider_config.json`,
  `replacer_l1_gas_price_provider_config.json`) gain the same three
  per-oracle overrides (`lag_interval_seconds=900`, `max_cache_size=100`,
  `query_timeout_sec=10`) for STRK/USD, mirroring eth_to_strk.

Decision points:
- One dummy oracle process serving both feeds instead of spawning two.
  The fake handler is rate-agnostic — same response shape, single port
  allocation, same join handle. If we ever need rate-specific dummy
  values, splitting into two processes is a localized change.

Action required after merge (cannot run from this sandbox):
- `cargo run --bin update_apollo_node_config_schema` to regenerate
  `config_secrets_schema.json` (it gains a new private parameter
  from PR 1's earlier addition).
- `cargo run --bin deployment_generator` to regenerate
  `testing_secrets.json` with the new strk_to_usd entry from
  `SecretsConfigOverride`.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_04_integration_overlays branch from 7b8b3a6 to cb7f91e Compare May 26, 2026 15:00
@ShahakShama ShahakShama force-pushed the shahak/strk_usd_oracle_03_client_trait branch from f988b4e to 330b3a9 Compare May 26, 2026 15:00
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.

3 participants