How we assess an occupation
Most automation coverage collapses three different questions into one number. We keep them apart, and we show you which of the three any given claim rests on.
The unit is the task, not the job#
A job title is a bundle of tasks that happens to be bought together. Automation acts on tasks, so that is where we assess.
Three layers we never merge#
The single most common error in automation coverage is treating "a machine can do this" as "this job will go away."
Can a machine do this task at all?
Would an employer actually adopt it here — cost, reliability, regulation, maintenance?
After adoption, did headcount or job scope actually change?
Four technology signals#
Tracked separately. A job exposed to two of them is not twice as exposed — the risks do not add.
The curve is reconstructed, never measured#
Every occupation page draws an impact curve back to late 2022. Nobody measured those numbers at the time — we estimated them afterwards, and the chart says so before you see it.
Evidence has stages#
Not every piece of news is allowed to move an assessment. A demo and a layoff are not the same kind of fact, so they carry different weight — and only some of them can change a baseline at all.
Second-hand summary or incomplete information. Recorded, but never moves an assessment.
A demo, benchmark or paper shows the task can be done. Updates what the technology can do — not what employers will do.
Small-scale trial in a real setting. Tells us the deployment conditions are being tested, not that they hold — so one pilot is never enough on its own; two independent ones are.
An employer has put it into production. Can move the baseline — weighted by scale and how similar the setting is.
Verifiable change in hiring, headcount, hours or job scope. Highest weight — but causal attribution still has to be argued, not assumed.
Failure, rollback, regulation or cost is suppressing adoption. Can lower an assessment or widen its uncertainty.
Every claim is labelled#
You should never have to guess whether something is a sourced fact or our reasoning.
Right now 982 verified events back 583 of 825 task judgements; the rest are labelled platform inference. Every record was read at its source before it was entered, and the checks that were run are written into the record itself. We would rather show an honest count than cite sources we have not verified.
How a judgement gets made#
Everything above is the standard. This is how the standard gets enforced — because a rule that only exists in a document does not stop the person who wrote it.
01Finding a sourceTwice a day. By region, not by occupation.4 steps
1.1evidence watch
1.2evidence source
1.3occurredOn
1.4hard-sourced.ts
Hands over a lead, not a record.
02Entering itThree steps per record. None of them optional.3 steps
2.1evidence add
2.2evidence verify
2.3evidence annotate
Hands over a record that carries its own layer.
03Checking itEvery check runs before anything can ship.3 steps
3.1basis-rule.ts
3.2attachEvidence
3.3inventory-claims
Nothing moves unless all of them pass.
04Shipping itTwo gates on a staging copy. Either one fails, nothing ships.3 steps
4.1canary
4.2sweep
4.3audit:seo
Live — then wait before checking.
05Watching it afterDaily. Silence gets reported too.3 steps
5.1digest
5.2evidence check --urls
5.3watchdog
Anything needing judgement goes up.
06What goes to a personOnly these. Everything else is decided here.3 steps
6.1evidence cosign
6.2EVIDENCE_STAGE_META
6.3harness
Back to 01 — twice a day, without stopping
The layer that writes holds no credential that can touch the published site. The worst outcome of a run that goes wrong is a failed check, not a wrong page. What it may change is the evidence file, the translations and three search indexes; the tests, the rules, the copy on this page and its own instructions are closed to it — even to additions, because a change cannot be read as strengthening rather than weakening a check.
Who verifies: every record on this site was verified against its own source by VOLO's agent — the source was fetched, read against the claim, and the checks that were run are written into the record and shown on its page. A secondary source additionally needs a second named person before it counts. That is not the same as a person having read all of them one by one, and we do not say it is.
What this machine got wrong
The diagram above is a claim about how this site is produced. A claim you cannot check is worth little, so each correction below carries the commit that fixed it.
A workflow named Deploy reported success while shipping nothing.
Without deploy credentials it skipped every publishing step and still concluded success, so a new record was taken as live while its page answered 404. It now fails.
2026-09-21 · 87a0fe1
This page described verification as something a person does. Every record is checked against its source by the agent.
Corrected, and the same page said the monitoring layer was not connected while it had been running daily for days. Both sentences had been false for several days and nothing would have caught them.
2026-09-21 · 62c5102
There was a check against overstating how much evidence we hold, and none against misstating how it is produced.
Added, with its premise taken from the data rather than from the sentences just fixed. It found a third overstatement on its first run.
2026-09-21 · b3f4588
Pages described this site's own stock of evidence — a sentence that turns false the moment a record lands.
A file grep found 20 instances; the guard, which walks every language, found 29 across 17 paths. One was already false, and one had been written that same afternoon.
2026-09-15 · 9c19cd0
The ontology underneath#
Every page, tool and file on this site reads the same set of objects and links, and every change to them goes through a named action. This is its general shape. The card is a real task, taken from the graph.
AI and people, working together
Pages
- 162 occupations in six languages, task by task
- The map of every occupation
- Guide cards and long-form notes
Agents and automation
- 18 read-only MCP tools, including query_ontology
- A paid personal MCP address
- The evidence loop and the weekly digest
Open data
- Occupations, tasks and records as CSV and JSON
- The ontology's definition, and its graph as JSON-LD
- llms.txt for answer engines
- Degreeleads to →Occupation
- Occupationclassified as →Official code
- Occupationoffers →Next step
- Occupationmade of →Task
- Evidence recordsupports →Task
- Taskaligns to →O*NET activity
- Evidence recordcites →Source
- Taskjudged as →Judgement
- Rulebears on →Task
- Evidence recordreads →Rule
- Ruleapplies in →Jurisdiction
- Add evidence →Verify →Map a code →Align a task →Change a judgement →Read a rule →
Task object
Treating, vaccinating and operatingVeterinarian
- Direction
- Still human-led
- Basis
- Evidence-backed
- Verified records
- 1
- O*NET activity
- Treat animal injuries or illnesses. covers part of this task
- O*NET activity
- Operate on patients to treat conditions. covers part of this task
- O*NET activity
- Immunize patients. covers part of this task
- Rule
- Animals and Birds Act 1965, section 53 must not
Sources
- O*NET 31.0, ESCO, ISCO-08, SSOC 2024, the NCES crosswalk
- Laws, regulators and courts
- Statistics agencies and companies' own filings
Logic
- Which records can move a judgement, and how many it takes
- Credit goes to the earliest record that moved it
- A vendor describing its own product never moves anything
- Verdict words only with a name attached
- The curve is reconstructed and stops at now
- Leads between occupations, decided by a person
Checks and write-back
- Every change is an action with criteria and a log
- Evidence enters through one command, with a named verifier
- Guard tests on every change, two gates before each release
- The unattended loop may only add content
The full definition — every object type, property, link, action and the code that enforces each — is published as open data: volo-ontology.json · Open data
What we refuse to do#
- Add different technology risks together into one score.
- Call anything a probability of job loss.
- Let a model invent a plausible-looking percentage when we have no data.
- Generalise one company's case to a whole occupation worldwide.
- Treat the number of times a story was reposted as evidence strength.
- Attribute layoffs to AI without a credible causal argument.
- Advise "learn AI" or "keep upskilling" and call that a plan.
How much of this rests on evidence#
The honest aggregate of the per-task labels you see on every occupation page.
162 occupations and 18 majors are researched. 982 verified events are attached across 162 occupations, which puts 583 of 825 task judgements on evidence; the remaining 242 are labelled platform inference, task by task, on the page itself.
Where this is going#
Evidence enters through one audited path, set out above: an event is recorded with its source URL, date, stage, scope and the tasks it bears on; it stays a candidate until it is verified against that source, and only verified records reach a page — where they also flip the linked tasks from platform inference to evidence-backed. The layer that watches the authorities of record is running, and it only ever proposes: nothing reaches a page without going through verification first.



