Skip to content

apollo_config,apollo_node_config,apollo_config_manager: rework get_config_presentation off dump()#14653

Draft
nimrod-starkware wants to merge 1 commit into
nimrod/jsonnet/delete-config-pointersfrom
nimrod/jsonnet/presentation-off-dump
Draft

apollo_config,apollo_node_config,apollo_config_manager: rework get_config_presentation off dump()#14653
nimrod-starkware wants to merge 1 commit into
nimrod/jsonnet/delete-config-pointersfrom
nimrod/jsonnet/presentation-off-dump

Conversation

@nimrod-starkware

Copy link
Copy Markdown
Contributor

get_config_presentation was the last native-path consumer of dump() (it used dump() only
as a privacy registry to redact Private params from the startup-log / config-diff
presentation). Rework it to take an injected private-path set:
get_config_presentation<T: Serialize>(config, include_private_parameters, private_paths)
— dropping the SerializeConfig bound. Callers (load_and_validate_config startup log,
config_manager diff) inject &private_parameters() (the committed config_secrets_schema.json
set). The injected set equals the old dump()-derived Private set exactly (is_private() ==
privacy==Private), so redaction is preserved with no leak / no over-redaction; a new
no-leak test guards it. remove_path_from_json (the redaction mechanism) is retained.

This unblocks deleting dump()/SerializeConfig in Phase 9. apollo_config 27+4,
apollo_config_manager 15, apollo_node_config 33, apollo_deployments 8 green.

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

@reviewable-StarkWare

Copy link
Copy Markdown

This change is Reviewable

nimrod-starkware commented Jun 28, 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.

…nfig_presentation off dump()

get_config_presentation was the last native-path consumer of dump() (it used dump() only
as a privacy registry to redact Private params from the startup-log / config-diff
presentation). Rework it to take an injected private-path set:
get_config_presentation<T: Serialize>(config, include_private_parameters, private_paths)
— dropping the SerializeConfig bound. Callers (load_and_validate_config startup log,
config_manager diff) inject &private_parameters() (the committed config_secrets_schema.json
set). The injected set equals the old dump()-derived Private set exactly (is_private() ==
privacy==Private), so redaction is preserved with no leak / no over-redaction; a new
no-leak test guards it. remove_path_from_json (the redaction mechanism) is retained.

This unblocks deleting dump()/SerializeConfig in Phase 9. apollo_config 27+4,
apollo_config_manager 15, apollo_node_config 33, apollo_deployments 8 green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@nimrod-starkware nimrod-starkware force-pushed the nimrod/jsonnet/delete-config-pointers branch from 198918e to 853a39d Compare June 28, 2026 14:04
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