Where this came from
The conversation is full of dark factories and agents taking over. Almost all of that writing is done from hobby projects and greenfield repositories. Very little of it comes from enterprise reality: many repositories, many technologies, applications halfway through modernisation, architecture halfway through a change, all at once and all still in production.
Turning agents loose on that takes discipline and a decent setup. That is why I started the series. Not from theory, but from what I see day in, day out in client engagements, growing AI capability step by step.
Observed, and argued from research
Two different claims sit inside this instrument and it is worth separating them, because a site that grades other people's rigour should be exact about its own.
The ladder is observed. The five levels come from watching organisations sit on them, in engagements, over years. No paper produced them and none is cited for them. That is why the instrument is allowed to be blunt about where you sit, and it is also why the levels are written as situations you either recognise or do not.
The dimensions are argued from published research. Why repository shape, module complexity, naming coherence or requirements precision should be scored at all is not a matter of taste: each one has peer-reviewed work behind it, and each dimension page names one or two papers with what they established. No links, deliberately. The citation carries enough to find the work in one search, and it will still be findable when a link has rotted.
Your floor is the verdict
You score 20 dimensions from 1 to 5, and your readiness is the lowest of them. Not the average, not a weighted composite, not a percentage of a maximum. The minimum.
An average lets nineteen strong dimensions hide one that is blind, and the blind one is where an agent goes first. An agent does not survey your codebase and then pick the best-run corner.
Most floors are low, and that is arithmetic
A minimum over 20 dimensions behaves the way a minimum behaves. A low floor is what a minimum does to a mixed system, because one weak dimension caps the result no matter how strong the rest are. That is the instrument working correctly. The report names the dimension, never the organisation, and it does not grade you.
The total is context, not the answer
Adding the 20 scores gives a total, and a total falls in a band. Both are secondary and the report treats them that way, because both hide the thing you came to find out. Two details worth knowing before you see your own number. Every dimension scores at least 1, so the real range is 20 to 100, not 0 to 100. A total of 40 sits in the bottom quarter of what is actually possible, not 40 percent of anything. And the band names below describe the state of a system, not the competence of the people running it. A well-run organisation with one unenforced boundary can sit in a comfortable band and still have a floor of 1, which is exactly why the floor is the verdict and the band is not.
- 20 to 40
- Hope-based
- 41 to 60
- Aware, not enforced
- 61 to 80
- Enforcing, with gaps
- 81 to 100
- AI-ready
The ladder
One ladder, applied to all 20 dimensions.
- 1
Blind
The capability does not exist. No standard, no metric, no named structure. You are blind here.
- 2
Tacit
It happens, but inconsistently, by individual effort. It lives in someone's head; the system does not do it.
- 3
Visible but inert
Written down, computable, or diagrammed, but nothing acts on it automatically. The dangerous middle: it feels safe, and an agent goes straight through it.
- 4
Acted on
The system itself acts, no human choice required. A machine blocks it, a metric gates a decision. It cannot quietly slip.
- 5
Durable
Acted on and self-maintaining. It survives acceleration, staff turnover, and next quarter's model upgrade.
Past this line the system acts. Before it, someone has to remember.
That line is the whole ladder. One question decides which side of it you are on: does the system itself act on this, or does a human have to choose to? Levels 1 to 3 need a person to choose. Levels 4 and 5 do not.
Declare your scope first
"How old is your oldest active branch?" is trivial for one repository and almost unanswerable across forty. If that stays unresolved, this is where an assessment quietly breaks. Someone with a whole estate narrows to the repository they know best, gets a flattering number, and nothing in the result shows that it was flattering. So before question one, you say what you are measuring.
- repo
- One repository or service
- product
- One product or value stream
- estate
- One team's estate
- org
- A business unit, or the whole organisation
Answer for the worst case in your scope, not the typical one
This is the rule that makes a wide scope answerable at all. The mean branch age across forty repositories is a research project. The oldest branch in any of them is a five-minute script, and usually a name somebody says out loud without looking. It is also the same question an agent asks, so answering this way is not pessimism, it is accuracy.
Widening your scope should lower your score
A wider scope means a worse worst case. This is correct, not a flaw in the instrument, and it is worth saying out loud rather than letting you discover it by accident. Scoring one greenfield service and scoring a business unit are two different measurements, and a 4 on each is not the same fact. Your report always carries its scope next to the number, because a floor without a scope is a number without units.
The gap between two scopes is itself the finding. If your best product scores 4 and your legacy estate scores 1, the 1 is your organisation's readiness.
What gets measured
20 dimensions in 5 clusters. Each cluster answers one question about your system.
Foundation & Structure
Can AI comprehend your system at all?
- Repository structure
Is your setup helping AI reason about your system, or forcing it to guess?
- Cognitive load per module
How many of your modules can be understood without reading five others?
- Domain language consistency
If you asked three teams what a "customer" is, would you get the same answer?
- Semantic drift
Does the same concept have one name in your codebase, or several, and is it worse than a year ago?
Truth Signals
Does your system tell you the truth about itself?
- CI reliability
If your pipeline went red right now, would your team investigate, or just rerun it?
- Test meaningfulness
Would your test suite notice if the behaviour changed, or only if the code stopped running?
- Change absorption
What percentage of your merged changes get reverted within a week, and is it rising?
- Technical debt
Does your AI business case carry an explicit line item for debt remediation?
Flow & Throughput
Can the work move without queueing?
- Trunk-based development
How old is your oldest active branch?
- Velocity and the constraint
If merge-request volume doubled tomorrow, which stage fills up first?
- Organizational design
If AI doubles each team's throughput, do the queues shrink or grow?
- Code ownership and review routing
If your busiest team vanished tomorrow, how many open PRs would have no qualified reviewer left in the org?
Memory & Intent
Does the system remember why, and know what it was asked?
- Decision memory (ADRs)
Pick an architectural decision from the last two years: can you find its rationale in the repo?
- Requirements quality
Could an agent pick up the top item in your backlog and build the right thing without guessing?
- Security assumptions
Pick a security assumption your team holds: where in the codebase would an AI learn it?
- Documentation integrity
If a new developer or an agent follows your README from scratch, do they get a running system, and would you bet on it?
Enforcement & Release
Is the rule a wall or a wish, and can the outside world tell what changed?
- Hard guardrails vs cultural agreements
Have you sorted your standards into enforced versus agreed-upon, and do you know how short your agreed-upon column is?
- Architecture enforcement in CI
Does your CI fail the build on an architectural violation, or do you rely on a reviewer catching it?
- Dependency hygiene
Of the dependencies you run in production, how many did a human actually choose?
- Release discipline
Can your consumers tell what changed in your last release, and whether it affects them, before they hit it in production?
Each dimension links to the article it came from. Once the instrument is live, those links move into the report, so a thirty-minute session does not offer you twenty exits.
How to score honestly
- Choose by recognition, not by definition. Each level is written as a description of a real situation. If a level sounds like what you want to be true rather than what you saw last week, you are one level too high.
- Score what is true today, not what is planned. A migration halfway done is scored at where it is, not where the roadmap says it lands.
- If it needs a person to choose, it is 3 at most. The pivot is not how good the practice is. It is whether the system does it without anyone deciding to.
- Code you do not control still counts. Part of most estates belongs to a supplier, and you cannot add a check to it or fail its build. Score what the system does, not what you would be permitted to do: if nothing enforces the rule there, that corner is a 3 at best. The contract is the reason, and an agent working in that code does not read contracts.
- If you do not know, that is a 1. Not knowing is the level rather than a gap in the instrument. Level 1 is defined as the capability not existing, and a capability nobody can see is one nobody is acting on.
- Score alone before you score together. Two people scoring the same team differently is the most useful hour this will give you. Averaging the disagreement away wastes that hour.
What happens to your answers
They stay on your machine while you work, in your own browser, and they never expire. There is no account, no session and nothing to log out of. Nothing is transmitted until you complete an assessment, and what is sent then is one anonymous row: your scores and some optional coarse context, with no email, no IP and no identifier. The free-text name you give your scope never leaves your browser.
The privacy notice is the single source for what that row contains, field by field, where it is stored, and what anonymity costs you if you later want it deleted.
Everything you answer stays here
Your answers live in this browser, on this device. They never expire, and nothing is sent anywhere while you are answering. You can delete all of it right now, and this button is the whole mechanism: there is no copy of your answers anywhere else for you to ask us about.
Ready to score it
Four of the twenty dimensions are answerable today: the cluster that decides whether an agent can comprehend your system at all. It takes about ten minutes, it saves as you go, and the report says in words which sixteen it did not measure.