Documentation / VFX-D-1211

VFX-D-1211

Title

MetadataIncomplete

Explanation

The suite declares no metadata.owner, no metadata.tags, or neither. Both fields are optional in the schema and nothing about how the suite runs changes without them — which is why this is the only semantic diagnostic with severity info.

What changes is what happens after the suite fails. The composed schema's own field descriptions say it plainly: owner is "the team or individual responsible for this test; used by the runner's selection language", and tags are "labels used to select subsets of tests during a CI run". An unowned, untagged suite cannot be routed to anyone when it breaks, and cannot be selected into (or out of) a CI slice.

An empty tags: [] counts as missing: it declares the field without declaring a single selector, so the selection language still cannot address the suite.

One finding per suite rather than one per field — the two are the same omission with the same one-line fix — with the message naming whichever of the two is actually absent. Where a metadata block exists, the finding points at it; where none exists there is nothing to point at, so the finding carries no path or location rather than naming a node that is not there.

Common causes

  • A suite scaffolded quickly and never given a metadata block.
  • metadata present with only a name and description, which are for reporting rather than for routing or selection.
  • tags declared as an empty list while a tagging convention was being decided.

Fixes

  • Add metadata.owner — the team or individual who should be paged when this suite fails.
  • Add at least one entry under metadata.tags — the labels run_suite's own tags argument and your CI selection filter both match against.
  • Call get_schema with section: "metadata" for the block's full field contract.