The method
A design system is advice. Your agent can take it or leave it, and mostly it leaves it. Law is different. It is enforced by the code itself, so the wrong build is not discouraged, it is impossible.
The method distinction
Reading finds the cause. Building finds the gap.
Read
Is it capable of guiding an agent?
Scattered tokens. Permissive APIs.
Documentation outside the repo.
Blind to what is missing.
Build
What happens when an agent uses it?
A gap exists only against something someone actually tried to build.
Blind to why it happened.
What is measured
An agent reads your repository literally. Each property is scored 0 to 5 with the evidence attached.
The component API and the type system make illegal output fail at build time. Nothing relies on anyone reading a guideline, and nothing can decay when attention moves on.
One definition, one place. Change it once and it propagates. Anything that still needs hand-editing was never a source of truth.
Guidance an agent must leave the repository to find is guidance it will not read. The line that matters most is the boundary: what each thing is not for.
Not should not. Cannot. When the docs and the code disagree, the build fails. Intent is not a mechanism.
What sits in the application is what an agent treats as precedent. This count is not a record of debt. It is a prediction of what your agent will copy.
Gaps are recorded when something needed does not exist, not improvised into one-offs. That demand data becomes the roadmap.
Diagnostic outcomes
The score is not the product. What the audit finds decides what kind of work comes next.
Whatever the shape, the through-line is the same: the design moves into the code, and someone owns it there. That is what turns a component library into infrastructure.
The standard
There is a system built to all six by construction, and a working application an agent composed from it with no design direction. The home page carries that claim; the system itself is available to look through on request.
A worked example
Nivoda, a global B2B jewellery marketplace running Material UI. The audit counted:
…and 89 separate styleOverrides passes underneath them. The team was paying, continuously, to make Material UI not look like Material UI.
Nobody had decided to do that. It had accreted over years. And until it was counted, nobody could argue about it.
That audit became the rebuild: a token pipeline, sixty-three components, agent-readable documentation, and a design team that moved into the codebase and stopped handing pictures to engineers.
The drift-checking didn't get faster. It stopped being necessary. The build could no longer disagree with the design. What was left for the team to judge was whether the design was right.
What this will not tell you
It measures whether the build can disagree with the design, and whether an agent can follow the system. Whether the design is the right design stays with your team.
If it cannot be measured, it comes back as not measured, with the reason. That never renders as a failure.
The output is a measurement with the working attached. You can disagree with any part of it and check it yourself.