Propose.
A change to a definition arrives as a pull request against the model in your repository, in a text format a person can read without a tool.
MODEL AND DATA GOVERNANCE
AtScale governance versions semantic models in Git and data engineers promote reviewed changes from development to production. AtScale governance treats your business meaning like code; full control, full oversight, and a process you can trust and scale.
THE PROBLEM
Before code reaches production, someone reviews it and tests it. Metric definitions rarely get that treatment. They sit in BI tools, spreadsheets and prompts, and anyone with access can edit one. There’s no record of who changed what, and no clean way to undo it. So when two reports disagree, it’s hard to say which definition is right, and an agent may already be using the wrong one.
how it works
Every change to the semantic model arrives as a pull request, whether it’s a metric, a hierarchy or a security rule. Below, Finance proposes excluding intercompany sales from the recognized revenue metric. Reviewers check the diff, and only the approved version moves to production. If it turns out to be wrong, you revert it, and the previous definition comes back.

Governance covers the whole life of a definition, from the first draft to the query that uses it months later.
Every object in the model keeps its full history in Git, with an author, a timestamp and a diff for each change. The semantic model, its test cases, modeling memory and semantic memory are versioned together. For example, a revenue metric might move to ASC 606 in v2 and drop intercompany sales in v4.
Each change opens a pull request with a named reviewer. Domain owners own their definitions, and a central team coordinates them. A change merges only if the model compiles and access rules don’t change. Canary, coming this fall, will rerun your test questions before and after each change and whenever you switch AI models, so a fix can’t quietly break an answer that used to be right.
Approved versions move from dev to QA to production, and nobody edits a definition in a live environment. Rolling back is a revert.
Each metric points back to the dataset and column it comes from, and every query traces to the definition version that produced it. AtScale records every live and test interaction, and nobody can edit an entry once it’s written.
Row- and column-level security is defined once for every tool, perspectives hide parts of the model from some audiences, and each user’s identity passes through to the data platform.
A change to a definition arrives as a pull request against the model in your repository, in a text format a person can read without a tool.
AtScale runs both definitions and reports which metrics and which reports move. Canary runs your question suite against the change before it merges. (Canary coming this fall)
The approved change moves through your environments the way code does, and reverts the same way when it shouldn’t have shipped.
People and agents see only what they’re allowed to.
Each user’s identity passes through to the data platform, so an agent never sees more than the person it works for. Row- and column-level security is defined once and applies the same way whether someone prompts Claude or Codex or opens a report in Excel or Power BI. Sign-in runs through Okta, Microsoft Entra ID (OIDC or SAML 2.0) or Active Directory (Kerberos).
the proof
Inherits the permissions you already wrote
In SML files in your own Git repository, one file per object, on GitHub, GitLab, Azure DevOps or Bitbucket. SML is open source under the Apache 2.0 license, so your definitions aren’t locked in a proprietary format.
The domain owner opens a pull request, and a named reviewer approves it. Domain owners own their definitions while a central team coordinates them, so each team can move at its own pace.
Yes. A change merges only if the model compiles and access rules don’t change. Canary, coming this fall, will also rerun your test questions before and after each change.
Revert the pull request in one click. The previous version goes back into production, and the history shows what changed and when.
Yes. Every query traces back to the definition version that produced it, and each metric points back to the dataset and column it comes from.
Yes. Each user’s identity passes through to the data platform, so an agent never sees more than the person it works for. Row- and column-level security is defined once for every tool.
Yes. Sign-in runs through Okta, Microsoft Entra ID (OIDC or SAML 2.0) or Active Directory (Kerberos), and AtScale passes each user’s identity through to the data platform.
No. It’s part of AtScale, alongside ACE (the AI Computation Engine), Ava, the MCP server and CoModel (coming this fall).