Skip to content

refactor(config): extend supported_configurations.json schema to v3#4654

Closed
funyjane wants to merge 1 commit intomainfrom
config-revamp/json-schema-v3
Closed

refactor(config): extend supported_configurations.json schema to v3#4654
funyjane wants to merge 1 commit intomainfrom
config-revamp/json-schema-v3

Conversation

@funyjane
Copy link
Copy Markdown
Collaborator

@funyjane funyjane commented Apr 10, 2026

Summary

  • Bumps supported_configurations.json schema to version "3" and adds config blocks to 37 entries that correspond to fields on internal/config.Config
  • Each config block describes how an env var maps to a struct field: field name, Go type, getter/setter names, provider method, validator, and custom flags (custom_init, custom_getter, custom_setter, no_telemetry)
  • Adds configBlock struct to scripts/configinverter so the new JSON fields are parsed — no code generation changes yet

Test plan

  • generate command produces identical output (no diff on .gen.go)
  • check command passes (262 keys in sync)
  • configtelemetry and provider package tests pass
  • configinverter builds cleanly

Add `config` blocks to 37 entries in supported_configurations.json that
correspond to fields on internal/config.Config. Each block describes how
the env var maps to a struct field (field name, Go type, getter/setter,
provider method, validator, custom flags).

Add configBlock struct to configinverter so the new JSON fields are
parsed. No code generation changes yet — this is the schema foundation
for the upcoming config code generator.
@funyjane funyjane requested review from a team as code owners April 10, 2026 15:26
@datadog-official
Copy link
Copy Markdown
Contributor

datadog-official bot commented Apr 10, 2026

✅ Tests

🎉 All green!

❄️ No new flaky tests detected
🧪 All tests passed

🎯 Code Coverage (details)
Patch Coverage: 100.00%
Overall Coverage: 60.07% (-0.04%)

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 3abff78 | Docs | Datadog PR Page | Was this helpful? React with 👍/👎 or give us feedback!

@pr-commenter
Copy link
Copy Markdown

pr-commenter bot commented Apr 10, 2026

Benchmarks

Benchmark execution time: 2026-04-10 15:53:07

Comparing candidate commit 3abff78 in PR branch config-revamp/json-schema-v3 with baseline commit 747b2e5 in branch main.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 215 metrics, 9 unstable metrics.

Explanation

This is an A/B test comparing a candidate commit's performance against that of a baseline commit. Performance changes are noted in the tables below as:

  • 🟩 = significantly better candidate vs. baseline
  • 🟥 = significantly worse candidate vs. baseline

We compute a confidence interval (CI) over the relative difference of means between metrics from the candidate and baseline commits, considering the baseline as the reference.

If the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD), the change is considered significant.

Feel free to reach out to #apm-benchmarking-platform on Slack if you have any questions.

More details about the CI and significant changes

You can imagine this CI as a range of values that is likely to contain the true difference of means between the candidate and baseline commits.

CIs of the difference of means are often centered around 0%, because often changes are not that big:

---------------------------------(------|---^--------)-------------------------------->
                              -0.6%    0%  0.3%     +1.2%
                                 |          |        |
         lower bound of the CI --'          |        |
sample mean (center of the CI) -------------'        |
         upper bound of the CI ----------------------'

As described above, a change is considered significant if the CI is entirely outside the configured SIGNIFICANT_IMPACT_THRESHOLD (or the deprecated UNCONFIDENCE_THRESHOLD).

For instance, for an execution time metric, this confidence interval indicates a significantly worse performance:

----------------------------------------|---------|---(---------^---------)---------->
                                       0%        1%  1.3%      2.2%      3.1%
                                                  |   |         |         |
       significant impact threshold --------------'   |         |         |
                      lower bound of CI --------------'         |         |
       sample mean (center of the CI) --------------------------'         |
                      upper bound of CI ----------------------------------'

@funyjane funyjane closed this Apr 13, 2026
@funyjane funyjane deleted the config-revamp/json-schema-v3 branch April 13, 2026 08:32
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.

1 participant