Metacenta

Documentation · rule source-parent-undocumented

dbt source groups with no description

A Metacenta review checks this under the rule Each source group carries a description. Everything below applies whether or not you ever commission one.

What this rule checks

This rule flags each dbt source group (a sources: entry) with no description of its own, even when its tables have one.

Why it matters

The tables may each be documented, but nothing says what the system behind them is, how it loads, or who to ask when it stops.

How to fix it

Describe every source group. Add a description: to the sources: entry, above its tables:. Say what the system is, how the data arrives, and who owns it.

Before:

sources:
  - name: stripe
    tables:
      - name: charges
        description: One row per charge.

After:

sources:
  - name: stripe
    description: >
      Stripe payments data, synced every 30 minutes by the
      ingestion tool. Owned by the payments team.
    tables:
      - name: charges
        description: One row per charge.

When it is fine to leave

A group with a single table, where the table's description already covers the system, loses little. Most groups have several tables and one owner, and the group is where that belongs.

What we need to check it

manifest.json alone. The score does not count this rule, because a project with one source group would otherwise swing on one missing sentence.

Published rules it corresponds to

dbt_project_evaluator, rule fct_undocumented_sources. Ours checks the same condition and threshold.

This means our check corresponds to their rule. It does not mean the publisher reviewed or endorses it.