← The Machine
The measurement · adoption-signal.yml

Adoption signal

Is anybody outside the estate actually using this — and the honest answer is the whole point.

.github/workflows/adoption-signal.yml

What it does

The workflow measures the one number that should decide whether protocol work continues past the pilots: independent adopters, meaning organisations that use a format and are not one of the estate’s own domains, a client, or a shareholder’s company.

The registry is deliberately split into estate, captive and independent, because counting a client or a captive company as market evidence is how a format convinces itself it has demand it does not. A company whose investor asks it to publish a file publishes the file — that is a fact about the relationship, not about the format.

Daily and committed, so the trend is a diff rather than something reconstructed later: a number that moves in a log nobody reads has not been measured.

When it runs
Daily at 07:11 UTC, on demand, and when the measure script or the registry changes.
What it emits
A committed `adoption-signal.json` and its served copy, carrying `independentAdopters`, the captive and estate domains named separately, and per-package npm reachability.

What a stranger can verify

That the headline counts only genuine outside adoption. Read `adoption-signal.json`: `independentAdopters` is the figure, captive adoption is recorded with the relationship named beside each domain and never added to the headline, and today it is zero.

0
independent adopters — the honest zero, never inflated
Read from `adoption-signal.json`, whose `independentAdopters` field is the headline and reads 0.

Questions

What does the Adoption signal workflow measure?
Independent adopters — organisations using a format that are not one of the estate’s own domains, a client, or a shareholder’s company. It is the one number meant to decide whether protocol work continues past the pilots.
Why does captive adoption not count in the headline?
Because a company whose investor asks it to publish a file publishes the file — a fact about the relationship, not the format. Captive adoption is recorded with the relationship named, never added to the headline figure.
What is the current independent adoption number?
Zero. The independentAdopters field in the committed adoption-signal.json reads 0, and the honest zero is the point: inflating it would defeat the reason the number is measured and committed as a diff at all.
The concept

The adoption signal is the number that decides whether protocol work continues: independent adopters, meaning organisations using a format that are not one of the estate’s own domains, a client, or a shareholder’s company — measured daily, committed as a diff, and honest at zero until it is not.

adoption signal →

Keep reading

Read the workflow — it hides nothing ↗How the estate stays honest — all of it
Also in the measurement
RegistrySurfacesEstate graphHygieneScoreboardShipOS gateFlashyOS branch mesh sync