Summary
Follow-up to #9238 per reviewer suggestion on review 4163017606: batch a values-column audit for the telemetry selector tables so the convention applied to is_primary_response in #9238 is consistent across all selectors.
Context
In #9238, the is_primary_response values column in selectors.mdx changed from true | false to just true, because the underlying selector only matches its guard when the config value is true (the false form either evaluates via a fallback arm or is not meaningful). Other selectors in the same and related tables use the true | false shape without the same nuance; a batched pass would align them.
Scope
Audit the selector tables in:
For each row currently documented with true | false:
- Grep the corresponding selector variant in
apollo-router/src/plugins/telemetry/config_new/**/selectors.rs.
- Check whether the runtime guard matches only
true, or treats true and false as two distinct meaningful paths.
- Update the values column to
true only if false isn't a meaningful separate configuration (falls back to default arm or never matches).
Candidates to check
(Non-exhaustive starting list — grep \| \.`.`true | false`inselectors.mdx` for the full set.)
on_graphql_error
is_deferred (will exist after #9241 lands — if only true is meaningful, land with the right convention from the start)
- Any other Boolean-guarded selector variants
Why batched
The per-selector audit requires reading the runtime guard for each variant. One focused PR is easier to review than threading the same check through every feature PR. Keeps individual feature PRs narrowly scoped to their code change.
Related
- #9238 — establishes the convention for
is_primary_response
- #9241, #9242 — pending
@defer telemetry work; new selectors they add should adopt whichever convention this audit confirms
Summary
Follow-up to #9238 per reviewer suggestion on review 4163017606: batch a values-column audit for the telemetry selector tables so the convention applied to
is_primary_responsein #9238 is consistent across all selectors.Context
In #9238, the
is_primary_responsevalues column inselectors.mdxchanged fromtrue | falseto justtrue, because the underlying selector only matches its guard when the config value istrue(thefalseform either evaluates via a fallback arm or is not meaningful). Other selectors in the same and related tables use thetrue | falseshape without the same nuance; a batched pass would align them.Scope
Audit the selector tables in:
docs/source/routing/observability/router-telemetry-otel/enabling-telemetry/selectors.mdx— router, supergraph, subgraph, connector, and related sections.For each row currently documented with
true | false:apollo-router/src/plugins/telemetry/config_new/**/selectors.rs.true, or treatstrueandfalseas two distinct meaningful paths.trueonly iffalseisn't a meaningful separate configuration (falls back to default arm or never matches).Candidates to check
(Non-exhaustive starting list — grep
\| \.`.`true | false`inselectors.mdx` for the full set.)on_graphql_erroris_deferred(will exist after #9241 lands — if onlytrueis meaningful, land with the right convention from the start)Why batched
The per-selector audit requires reading the runtime guard for each variant. One focused PR is easier to review than threading the same check through every feature PR. Keeps individual feature PRs narrowly scoped to their code change.
Related
is_primary_response@defertelemetry work; new selectors they add should adopt whichever convention this audit confirms