Every rating GeoScreen produces comes from an explicit rule, not a guess. That’s the whole idea the
product’s built on, so it’s worth actually explaining what sits behind that claim rather than just stating
it and moving on.
Before a report reaches anyone, it goes through two checks. One is rule-based and checks the output
itself — the right figures are there and render properly, none of the banned or hedged phrasing has
slipped through, no sentence gets cut off mid-word, and a handful of specific contradictions we’ve learned
to watch for over time (a heritage grade missing its asterisk, a coalfield named somewhere the rule says it
shouldn’t be). The other is a separate AI review pass that reads the finished report roughly the way a
person would, catching the kind of issue a fixed rule struggles to express — set up to behave consistently
rather than creatively, since the point is repeatability, not a different opinion every time it runs.
Neither check is just advisory. If a report fails the QA gate, it doesn’t go out — it’s held, and the
file gets emailed straight to our own inbox for a look before anything else happens. A data source dropping
out partway through generating a report is handled differently: the report still goes to the customer, with
a precautionary fallback rating rather than a guess dressed up as one, but a separate alert fires straight
away, and someone follows up with that customer directly, tells them what happened, and reruns the report
properly.
Most data sources get one automatic retry with a longer timeout before anything’s flagged. If something
more serious crashes the whole report generation, the platform will retry the job itself up to twice more
before it’s treated as a genuine failure.
On top of both of those there’s a gold set — a fixed group of real UK sites, chosen to cover different
geology and hazard types across England and Wales, that gets regenerated end to end against real API calls
whenever a change could plausibly touch a rating. If something shifts that shouldn’t have, it shows up
there first.

None of that replaces actually looking at what comes out, though. Some of what we’ve caught this year we
simply wouldn’t have picked up without someone doing exactly that.
Someone reviewing the platform asked a plain question a while back — do we actually rate compressible
ground? Answering it properly meant going through the shrink-swell rating formation code by
formation code, and a chunk of them turned out not to be real BGS codes at all. Close enough to look
plausible, wrong enough to never actually match anything. London Clay, Gault, Kimmeridge Clay, Oxford
Clay — for most sites sitting on those, the platform had quietly been returning “Low” risk since the rating
was first built, not because the geology was low-risk but because the check meant to catch it could never
fire. We fixed it and ran the whole gold set again to check — one site’s overall rating genuinely changed,
correctly, from Low to Medium.
Separately, a Welsh site’s ecology section was listing designations several kilometres away as though
they sat inside the stated search radius. Turned out to be a genuine geometry bug rather than a data
problem — the map service query was matching on bounding box overlap rather than actual shape, and a large
river or estuary designation can have a bounding box spanning tens of kilometres even when the designation
itself is compact. Worth checking whether that bug had touched anything else, and it had: a flood rating on
a different site changed from High to Medium once the false match sitting behind it was removed.
None of these got caught by something running unattended — someone asked a direct question and went and
checked the answer properly.


