Updates

What shipped, as it ships.

Not a marketing changelog — the same engineering log the team uses internally, in plain language. First entry: the agent stopped needing anyone else's AI, and the engine learned to build and verify its own hazard models from scratch.

9 October 2026 · App 1.2

The site, not a dot on a map.

The Physical Risk Report now comes from somewhere real: a 3D twin of the site itself, built from its own structure footprints and terrain rather than a generic block stand-in. You can step through a flood or cyclone replay, check it against what the site has actually lived through since 1980, and test a flood wall or raised equipment before anyone builds it.

Asset Twin

Built From the Site's Own Geometry

Structures are placed on their real footprints over local terrain, not a generic block model — so a flood routed over the twin reaches the buildings actually in its path, in the order water would actually reach them.

Checked Against the Historical Record

A tropical-storm track archive back to 1980 and an all-cause wind reanalysis to 1950 are replayed against the twin, so a hazard scenario can be measured against what the site has already lived through, not only what a model projects.

A Protection Overlay You Can Test

A flood wall, raised equipment or a drainage change gets added to the twin and re-run through the same solver — so "what remains" after a mitigation is a number from the model, not an assumption in a slide.

8 October 2026 · App 1.1

An engine that tests itself.

Two changes, shipped together. The resident agent no longer depends on anyone else's AI vendor — not even an API key. And a new Model Lab inside the engine can build a physics-based hazard model from scratch at any coordinate on request, verify it against five to seven internal consistency tests, and say plainly whether it holds up against the historical record. We ran it at 37 cities across every inhabited climate zone and published the result below, failures included.

Independent, by default

No API Key, No Vendor

The chat panel used to run on a third-party model (Groq · llama-3.3-70b). It now answers by default from the sources the engine has itself learned — assembled, not generated by an outside API — so nothing about a client's assessment ever leaves their machine to reach a language-model vendor.

Optional, Fully Local Model

For more fluent written answers, the installer offers a free language model that runs on the user's own Mac via Ollama — about a 2 GB download, no account, no key, no cloud call ever made. The engine detects it automatically; without it, the agent still answers, just by assembling the most relevant sentences from its sources.

An Autopilot Inbox

The resident agent now works in the background while the app is simply open — scanning live hazards, re-running watched sites against the 3D twin, drafting posts — and reports back when asked: "What did you find while I was away?"

Model Lab

Ask the agent to build a model and it does the work a hazard modeller would: picks the physics, pulls terrain and reanalysis data, runs the model, puts it through verification tests, checks it against the historical record, and writes up the method and the result in plain language — across twelve hazard types, from flood inundation and fire weather to earthquake recurrence and storm surge.

model-lab · flood · 22.2645, 91.805
> build a flood model for 22.2645, 91.805
Starting a flood inundation study for 22.2645, 91.8050. I will work through: physics
choice, terrain and rainfall data, model run, five verification tests, sensitivity,
then write the methods and results.
Status verified only
Verification 7 of 7 tests passed
Peak depth at site 0.01 m
Time under water 0.0 h
Area > 30 cm deep 0.83 km² (of 10.1 km²)
Design storm 100-year, 172 mm in 6 h
Biggest uncertainty Surface roughness (Manning n)
Calibrated/validated no: no observations supplied

33 seconds, start to finished write-up. "Verified only" is the model's own honest ceiling here — there were no gauge observations at this site to calibrate or validate against, and it says so rather than implying more confidence than the data supports.

The Global Sweep

We pointed Model Lab at 37 cities spanning every inhabited climate zone — tropical rainforest to subarctic, small island to high-altitude desert — and ran all six extreme-value hazards at every site it could reach: 222 studies in total. The map plots every one of them; hover a point for its hazard-by-hazard result.

Loading the sweep…
Strong — most hazards validated Mixed — at least one hindcast failure
HazardSitesValidatedSmall driftHindcast failedNo model (no exposure/data)
Extreme heat37152200
Extreme wind3727820
Fire weather37221041
Extreme rainfall37243100
Earthquake37160120
Tropical cyclone3760229

153 of 222 Clean, Failures Disclosed

69% validated outright or with a small, statistically real drift. Narrowed to just the four extreme-value hazards — rain, wind, fire, heat, the ones run against a historical hindcast — 88 of 147 passed outright (nominal false-fail rate ≈10%). One real bug surfaced mid-sweep and is listed, not hidden: a fire-weather run at Riyadh hit a type error on a hyper-arid site (about 46 mm of rain a year) where no fire-weather model should apply; fixed, it now correctly returns "no model" instead of crashing. "No model" otherwise means exactly what it says — a cyclone or earthquake run at a site with no meaningful exposure to that hazard.

Some "Failures" Are the Finding

At Dhaka, Shanghai, Cape Town, London, New York, Manila and others, the rainfall or fire hindcast "failed" because the recent record is systematically higher than the early record predicted — the hazard itself is intensifying. The engine reports that as a finding, not a modelling error, and names which direction it moved.

A Physical Sanity Check, Too

The earthquake model's own Gutenberg–Richter b-value came back with a median of 1.06 across 17 sites (range 0.80–1.50) — close to the 1.0 seismologists expect from a well-behaved catalogue, a physical consistency check independent of the hindcast.