Skip to content

diag: fill diagnostic locations from paths - #6999

Draft
denik wants to merge 9 commits into
denik/structpath-build-not-parsefrom
denik/diag-auto-locations
Draft

denik wants to merge 9 commits into
denik/structpath-build-not-parsefrom
denik/diag-auto-locations

Conversation

@denik

@denik denik commented Oct 9, 2026

Copy link
Copy Markdown
Contributor

Changes

  • logdiag.LogDiag fills a diagnostic's Locations from its Paths when they are not set. The bundle installs the lookup (config.Root.GetLocationsOf, nearest ancestor) when it is loaded, so locations reflect the configuration at the time the diagnostic is logged.
  • Diagnostics drop Locations that only repeated their path (31 sites), and 20 configuration diagnostics that had only Locations now report their Paths too.
  • Explicit Locations remain for diagnostics that point elsewhere on purpose (e.g. secret scope permissions point at the scope) or have no configuration path (YAML parse errors, Python sources, files).
  • Validation diagnostics are sorted by path before locations, since locations are now filled after sorting.

User-visible: those diagnostics gain an at <path> line, and two gain an in <file> line; volume_defaults / secret_scope_required_principal list same-summary warnings by path (v1, v2, v3) instead of by location string.

Why

Paths and Locations were computed separately for the same value at most call sites.

Stacked on #6984.

This pull request and its description were written by Isaac.

@denik
denik added this pull request to stack #6997 October 9, 2026 09:13
@github-actions github-actions Bot added the DABs DABs related issues label Oct 9, 2026
@eng-dev-ecosystem-bot

eng-dev-ecosystem-bot commented Oct 9, 2026 •

Copy link
Copy Markdown
Collaborator

Integration test report

Commit: 690c808

Run: 37925246958

Env ✅​pass 🙈​skip Time
✅​ aws linux-2core-8gb 276 46 4:14
✅​ aws-windows-latest-4core-16gb 278 44 3:37
✅​ azure linux-2core-8gb 275 46 4:12
✅​ azure-windows-latest-4core-16gb 277 44 3:41
✅​ gcp linux-2core-8gb 276 46 4:16
✅​ gcp-windows-latest-4core-16gb 278 44 3:38
Top 3 slowest tests (at least 2 minutes):
duration env testname
3:39 azure-windows-latest-4core-16gb TestAccept
3:36 gcp-windows-latest-4core-16gb TestAccept
3:35 aws-windows-latest-4core-16gb TestAccept

@denik
denik force-pushed the denik/diag-auto-locations branch from cc2ab1c to b84c6b6 Compare October 9, 2026 10:44
@denik
denik force-pushed the denik/diag-auto-locations branch from b84c6b6 to b6e292c Compare October 9, 2026 11:19
denik and others added 8 commits October 9, 2026 13:28
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
Locations are filled in from paths when the diagnostics are logged, after
sorting, so order by path (deterministic) and keep locations as a tie breaker.

Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
Co-authored-by: Isaac <no-reply@databricks.com>
…ocation

Co-authored-by: Isaac <no-reply@databricks.com>
@denik
denik force-pushed the denik/diag-auto-locations branch from b6e292c to 5df9261 Compare October 9, 2026 11:29
- compute_id warning keeps its location explicitly: the key is deleted before
  the diagnostic is logged.
- Diagnostics about an effective value (invalid engine, trigger_pause_status,
  name_prefix) keep only its effective location; the automatic lookup would add
  the overridden ones.
- validateJobTask no longer needs the bundle.

Co-authored-by: Isaac <no-reply@databricks.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

DABs DABs related issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants