Halantir

Spine okHarvest 05:20ZWarden green

File interest

The mechanism

Eight steps, and a model touches none of the first six.

Everything on this page describes the pipeline that produced every figure on this site. Nothing here claims a step the pipeline does not run.

Step 01

The register publishes

Five registers publish in five shapes, on five clocks. None of them reads the others. The record exists before this machine ever touches it.

Five register documents drawn at five different heights across the field. No line joins any of them to any other.
TEDStatbankKostraKoladaSotkanet

Step 02

The harvester fetches on a clock

One pass a day, at 03:20Z, per register. The harvester parses what it is handed and stores it verbatim. No model sits in this path.

A ring of twenty four tick marks. One tick, at 03:20 Zulu, is drawn in orange and longer than the rest, and a single line leaves it and runs right onto the spine.
03:20Z Twenty four slots Into the spine

Step 03

The row carries its receipt

Source URL, fetch time, hash of the bytes. Three columns declared NOT NULL. A row without them is refused by the database, not by a reviewer.

A row of five cells. The fifth cell is lit and a thread runs from it down to three named fields: source URL, fetch time and a hash of the bytes. Below, a sixth row is drawn struck through and stamped refused.
Receipt Source URL Fetched at SHA256 Refused

Step 04

Five columns, every time

A tender and a budget line leave this step as the same five columns. The machinery above them never learns which one it is reading.

On the left, a tall document, a flat strip and a stepped block. Three lines carry them rightward onto the spine, where they arrive as a single row of five equal cells.
Three shapes The same five columns

Step 05

Identities resolve across borders

One supplier holds four numbers in four registers. The spine resolves them to a single company. It resolves companies. It never resolves a person.

Four short rails on the left, each carrying a token. Four curves merge them onto a single brighter rail that continues to the right edge, carrying one larger token.
Four registers One identity Company level. Never a person.

Step 06

Places band against their own size

A commune of nine thousand is never set against a capital. Every reading stands inside a population band, beside the places that carry the same weight.

A row of thirty small marks resting on a baseline, split into four groups by three vertical hairlines. One mark in the third group is drawn larger and carries an orange caret beneath it.
Every reading stands in its own band 0–15K15–40K40–90K90K+

Zero model calls to the left of this line

Step 07

Detectors run nightly, in SQL

Detectors run in the database, versioned the way statutes are. Every detector that finds the worst in a band has a twin that finds the best.

Two identical framed columns of horizontal readings. One reading in the left column is drawn in orange. One reading in the right column is drawn in green. Neither column is larger or brighter than the other.
Worst in band Best in band Every detector has its twin

Step 08

The peer stands beside the flag

The flag never renders alone. Beside it stands the institution that already fixed this, and the receipted record of what fixing it cost.

On the left, a small orange mark inside a ring. A line runs right to a second mark, and from that mark a card carrying three labelled readings: what it cost, how long it took, and what has changed since.
The peer What it costHow longWhat changed since The flag never renders alone

The spine

One sentence, five parts, and it never changes.

A population figure, a tender notice, a council decision and an award outcome are the same shape once harvested. Bands, joins, detectors and ledgers sit above them and do not move when a dataset is added.

Every row in this system is one sentence in five columns.

Subject
Place
Time
Value
Receipt

The subjects are institutions, places and documents. The place grid is the commune, the smallest unit this system knows, by law, forever.

The receipt

Replay it yourself.

Every row carries the address it was fetched from, the moment of the fetch, and a hash of the bytes received. These are column constraints, not conventions. The database refuses the insert without them, so a claim with no receipt is unrepresentable.

Every figure on this site opens into the request that produced it. Anyone holding a row can fetch the source, hash it, and compare. The check does not need us in the room.

What the column definition demands

source_url
The address the bytes came from. Not null.
fetched_at
The moment they arrived. Not null.
content_sha256
A hash of exactly those bytes. Not null.

A row without a receipt cannot exist, because the database will not hold it.

The boundary

The harvest never calls a model.

Harvesters fetch, parse deterministically and store verbatim. A model in the ingest path could silently rewrite the record, and a record that might have been rewritten cannot be audited.

  1. Job 01

    Parse documents into structure

    Quoted verbatim. The quote is the check.

  2. Job 02

    Compile a reader's question into joins

    Named adapters, named filters. The joins answer.

  3. Job 03

    Explain nominated residue

    A second pass checks the first.

  4. Job 04

    Investigate nominations

    Every sentence held against a receipt.

Ask this system a question and the question compiles into named filters and joins. The joins answer. Never the model.

Three states

A read admits failure.

A catch that returns empty is a false all-clear. A system that renders zero when its pipe breaks will one day report that a commune filed no decisions, when the truth is that nobody looked.

Rows
The record. What the register published, verbatim.
Empty
The harvest holds nothing here, and the surface says so.
Read failed
The read was attempted and failed. The value stays unsaid.

Never a zero. Never a stale figure.

Law 29

Detectors are versioned like law.

A change is a new version with a dated ruling, never a silent rewrite. Every claim registers the version that made it, in falsifiable form, with a check date.

Matured claims are rechecked against fresh harvest. Precision publishes per version with the misses left in, and every matured miss is classified and joins that detector's golden set. A proposed refinement runs in shadow beside the standing version and is promoted by receipted comparison, never by taste.

The claims ledger opens with the first claim, in public, and every version's curve stays on the record permanently. A curve that starts low and climbs is a better trust story than a flat impressive number, because it is visibly real.

The misses are what make the hits believable. It is the exact figure this category never publishes.

The gate

One country at a time. One layer at a time.

No second country and no next dataset until the layer below is green on the first. Green means harvested, receipted, checked, and covered by the acceptance suite.

A system whose marketing outruns its harvest has already told its first lie. What the record holds today, dataset by dataset, is at the record.

Where the rest of it is written