Skip to content

Validation and lint runs

DeltaVault runs two checks over your metadata, and they are easy to confuse because both produce a list of things that look wrong.

Validation checks your tables, columns, entities, and relationships against the validation rules, and some of what it finds can stop a build or a commit. The governance lint report looks for governance gaps, such as an attribute nobody has defined, and reports them. It stops nothing.

Read them as two separate tools that happen to share a vocabulary. The rest of this guide takes each in turn.

Open a workspace or a project and select the Validation tab, then select Validate now. The run checks every table, column, entity, and relationship on the current branch.

Validate now needs the editor role, and unlike most editing controls it stays available on main. A validation changes no metadata, so the read-only rule that disables Build on main does not apply to it.

Before anybody has run one, the tab reads This branch has not been validated yet, and explains that pressing Validate now checks the branch against the validation rules. That is deliberately not the same message as a clean result. Once a run comes back with nothing to report you get No findings instead, with All validation rules pass for this scope. An unvalidated branch and a clean branch are different states, and the tab never lets them look alike.

After a run, a line above the findings says when it happened and what it counted, for example “Validated 12 minutes ago”, followed by the error, warning, and information totals.

Every validation finding carries two things, and they are independent of each other:

  • How serious it is: Error, Warning, or Info.
  • Whether it blocks. A finding that blocks carries a Blocking badge next to its title. One that does not carries no badge at all.

These two are set separately, so a Warning can block and an Error can be advisory. Do not read the severity as the consequence. The Blocking badge is the only thing that tells you whether an action will be stopped, and it is what the four filter chips above the list, Error, Warning, Info, and Blocking, let you narrow to.

A Model health section appears above the findings when a run has scored your business models. On a branch nobody has validated, or a run that scored no model, it renders nothing rather than an empty placeholder.

This is the part worth getting exactly right, because the three answers differ and the first one surprises people.

A build does not stop. When a table has a blocking finding, that one table is dropped from the build and leaves an error placeholder in its place. Everything else still builds, and the run finishes succeeded with a non-zero failure count. A build refuses to run at all only when every table in its scope is blocked. So a green build is not proof that everything built: read the failure count too, which The Builds page covers.

Committing that build to git does stop. One blocking finding anywhere in scope is enough to refuse the commit, and an error placeholder is never committed under any circumstances. There is no override here. The Commit anyway option you may have seen covers files that failed template validation, not validation findings.

Committing a branch stops, but you can override it. A blocking finding refuses the branch commit and offers Acknowledge & commit instead. Taking it records the acknowledgement in your organization’s activity, so the decision is visible afterward.

A stopped build and a stopped git commit both raise the same notice, headed Blocked by validation findings, listing what blocked the action, with Fix each finding, or retune its rule, then try again. Its only button is Close, because those two gates have no way through: fixing the metadata or having an administrator retune the rule are the only ways forward. The branch commit shows its own dialog instead, which counts the blocking findings and offers Acknowledge & commit beside Cancel.

One scoping rule that saves confusion: a build only counts findings on tables, views, and their columns. A blocking finding on a business entity, attribute, or relationship appears in the Validation tab and never blocks a build, because a build renders tables.

Governance lint is a separate check with a separate home. It scans your business model and your mapped source metadata for governance gaps and writes a report. Nothing in your catalog changes, and nothing it finds stops anything.

Run it from Business models, where it appears among the skills as Run governance lint. When the run finishes, select Open lint report.

The report is reached only that way, or by returning to a run you already have. There is no standing page for it and no entry in the navigation, so there is no address to type.

The report always shows the same five headings, and a heading with nothing under it reads None found. rather than disappearing, so a clean report still shows the full checklist:

  • Coverage, measured across the whole branch: how many tables and columns are mapped, how many definitions are approved, and how many entities are defined.
  • Undefined attributes, attributes on an entity with no definition.
  • Ungoverned columns, source columns with neither a business attribute nor an inline definition.
  • Naming convention breaches, with the expected name beside the actual one.
  • Deprecated but still mapped, deprecated entities that tables still map to.

Each row offers a link into the thing it names, Open entity, Open attribute, or Open catalog, so you can fix it where it lives.

A finished report reads awaiting_review in its status line. That is the finished state, not a queue you are holding up: reading the report is the review, and there is nothing to approve or apply afterward.

  • My build succeeded but something is missing. A blocked table is dropped rather than stopping the run. Check the run’s failure count and its artifact tree for an error placeholder, then clear the finding and build again.
  • I cannot commit a build I just made successfully. It has an error placeholder in it. The commit gate refuses those with no override; clear the finding and run a new build.
  • Validate now is disabled. It needs the editor role. Being on main is not the reason.
  • A lint report link does not open. Lint reports are pruned after thirty days. Run the skill again for a current one.