Skip to content

Governance ​

Bruin Cloud scores every asset against a fixed set of governance rules and aggregates the results into a quality score. Those scores drive the Risk Report and the Governance tab on every asset detail page.

The rules are the same for every team — there's no per-team toggle. The goal is a consistent baseline of what "well-documented, well-owned, well-checked" means across teams.

The rules ​

Seven rules, each contributing a fixed maximum score. The asset's quality score is sum(actual_scores) / sum(max_scores) * 100.

RuleWhat it checksMax score
Has descriptionAsset has a description of more than 3 characters10
Has ownerAn owner is defined on the asset10
Has columns definedAt least one column is declared5
Columns have descriptions90%+ of columns have descriptions5
Has custom checkAt least one custom check is defined5
Has primary keyAt least one column is marked as primary key5
Columns have quality checks90%+ of columns have at least one check5

Two of the rules — "Columns have descriptions" and "Columns have quality checks" — give partial credit. The score scales linearly with the coverage ratio, capped at the max once you hit 90%.

Quality score buckets ​

The final percentage maps to one of four buckets that you'll see in the UI:

BucketRangeColour
Poor< 45%Red
Average45 – 65%Yellow
Good65 – 85%Blue
Excellent≥ 85%Green

These are the colours you see on asset rows in the catalog, on the Risk Report donut, and on the per-asset Governance tab.

Where scores show up ​

  • Asset → Governance tab. A list of every rule for that asset with either a green checkmark (full score) or a progress bar showing actual vs max.
  • Asset catalog. The Quality score filter and column on the Assets page come from the rolled-up percentage.
  • Risk Report. Aggregates orphan assets (no owner) and assets without descriptions, sorted by downstream impact. See Risk Report.
  • Pipeline detail. Pipeline-level aggregates show up alongside other pipeline stats.

Acting on a low score ​

The fastest way to improve a score is to edit the asset's YAML in Git:

  • Add or expand the description field.
  • Set owner: { name: ..., email: ... }.
  • Declare columns: with names, types, and per-column description fields.
  • Mark identifying columns with primary_key: true.
  • Add at least one custom_check: on the asset and column-level checks: on individual columns.

Or let the agent do it for you — open an AI agent with Cloud CLI access and ask:

Add descriptions and the most useful checks to analytics.orders.

The agent reads the schema, drafts the additions, and applies them as asset suggestions you can review.

How rollups work ​

Each rule evaluates to a Result with an actual score and a max. The asset's quality score is the sum across rules. Bruin computes this on the fly every time an asset is rendered — there's no scheduled "score job," and there's no need to wait for re-evaluation after a YAML change.

Pipeline and organisation rollups are derived from the per-asset scores at render time too. The Risk Report depth-orders by downstream count so high-impact assets float to the top.

Limitations ​

  • Rules are not configurable. You can't disable a rule or change the weights per team. If you have specific compliance needs that the built-in rules don't capture, talk to your account manager.
  • Scores aren't versioned. What you see is "right now"; there's no historical chart of score over time per asset. (The Risk Report is the closest thing — it changes as you fix things.)
  • No per-rule notifications. You can't get pinged when an asset's score drops; for alerting, use pipeline notifications on failures.