Changelog
What's changed in the model.
A running list of substantive changes to the model: its inputs, mechanics, and methodology. Each entry says what changed, why, and how the simulator's reference numbers moved (or didn't). Cosmetic and copy-only edits aren't tracked here.
v0.7.1 - aerospace occupations (US)
Two US occupations added in response to a Reddit request for "quality control in aeronautics":
- 51-9061 Quality Control Inspector (Aerospace), automation 40% (modern overlay, F-O 2013 said 98%). Customers: commercial aircraft primes (Boeing, Airbus), defense aerospace (Lockheed, NG, RTX), tier-1/2 suppliers, MRO services, certification & testing labs.
- 17-2011 Aerospace Engineer, automation 35% (F-O 2013 said 2%). Customers: commercial primes, defense primes, space industry (SpaceX, Blue Origin), tier-1/2 suppliers, government/research (NASA, AFRL, DARPA).
New category "Manufacturing & Aerospace" in inferCategory(). Welder (51-4121) also moves into this category; it was previously mis-bucketed under White-Collar Office because no regex caught it.
US occupation count: 30 → 32. UK/AU/CA equivalents deferred (each needs a separate crosswalk + per-country wage/employment data).
v0.7 - assumption presets
The three "Estimated" coefficients (customer_industries[].share, customer_industries[].ai_exposure, ai_demand_boost) can now be viewed, edited, and saved as named presets. Three built-in lenses ship out of the box:
- Consensus - the default lens; what the research suggests today.
- AI hits a wall - skeptic's world; AI exposure halved, demand boost up slightly.
- AI eats everything - doomer's world; exposure climbs hard (clamped at 1.0), demand boost shaved.
Users can clone any preset, edit the three estimated fields per customer industry, and save multiple personal presets. Saves are browser-local only (localStorage). A preset selector sits above the simulator's controls; switching presets re-animates the cascade from t=0 under the new assumptions. The headline annotates which preset is active so screenshots carry their own provenance.
Storage uses sparse overrides keyed by (country, occupation_code, industry_id, field) - only the values the user actually edited persist, so future data refreshes still propagate through unedited fields. Built-in presets ship as JSON under public/data/presets/; cloning a built-in concretizes any runtime transform (e.g. exposure × 0.5) into explicit overrides at clone time so the user preset stands on its own.
v0.6 - accuracy & certainty pass, in progress
A multi-phase shift from "all expert judgement on top of literature anchors" to "data-derived where possible, judgement on top of measurement where not."
Phase 1 - scaffolding (no behaviour change)
- This changelog introduced.
- The Moretti local-multiplier was already wired into the simulation engine: when tradeable occupations (software developers, accountants, financial analysts) lose revenue in aggregate, that drag is propagated with a 9-month lag onto local-service occupations (chefs, personal trainers, real-estate agents). An earlier internal note had it as future work - the methodology page has been updated to match the actual code.
Phase 2 - Felten-Raj-Seamans AIOE ingestion (parallel input, no behaviour change)
- Three datasets ingested from the open-source AIOE repository, all covering ~774 SOC-coded US occupations: the original General AIOE (2018, AI Occupational Exposure index across all applications), the 2023 Language Modeling update (generative-AI specific), and the 2023 Image Generation update (image-model specific).
- For each US occupation, the build pipeline now joins these scores by SOC code and computes empirical percentile rank within the full ~774-occupation reference distribution. A small SOC 2010 → 2018 crosswalk handles the consolidated codes (Software Developer split was merged in 2018; Fast Food Worker re-coded). Result: 30/30 US occupations matched. UK/AU/CA carry null AIOE fields until the SOC ↔ ISCO/ANZSCO/NOC crosswalks land.
- AIOE is a parallel input to the existing automation probability, not a replacement. Methodology page updated; coefficients page now lists AIOE fields under Derived.
- Validator before/after: identical aggregate ratios across all four countries. AIOE is non-load-bearing on simulation behaviour - it's exposure surfacing, not a new mechanic.
- Cross-check verdict: for white-collar occupations the AIOE LM percentile broadly agrees with the modern overlay (Accountant: overlay 78%, AIOE LM 84th percentile; Marketing Manager: overlay 30%, AIOE LM 83rd - the gap here is real and intentional, marketing carries an augmentation-style demand boost that lifts revenue rather than a replacement-style probability that cuts it). The two diverge for occupations where automation is physical rather than language-driven (Truck Driver: overlay 79%, AIOE LM 7th percentile; Fast Food Worker: overlay 92%, AIOE LM 44th) - exactly the expected pattern, and a useful sanity check.
Phase 3 - Anthropic Economic Index ingestion (parallel observation, no behaviour change)
- Slice of the Anthropic Economic Index third report (data window 2025-08-04 to 2025-08-11) ingested. AEI publishes the observed share of Claude.ai conversations classified into each SOC major occupation group, broken down by country.
- For each US occupation, the build pipeline now injects an observed-usage field - what share of measured Claude conversations in this country were tasks in this occupation's SOC major group. Each country also gains a country-level automation vs augmentation collaboration split (US: 49% / 51%; UK: 45% / 55%; AU: 46% / 54%; CA: 47% / 53%).
- The simulator's title strip surfaces this as a small "AEI · X% of Claude usage" pill with a tooltip explaining the signal. The methodology page has a dedicated section walking through the data and the ~200× spread between Computer-and-Mathematical (26% of US Claude usage) and Construction-and-Extraction (0.13%) - observation, not projection.
- Validator before/after: identical numbers across all four countries. AEI is observation surfacing, not a simulation input - by design.
- Honest constraint: AEI as we ingest it is a single snapshot, not a time series, so it cannot replace the scenario S-curves yet. What it gives us is a defensible empirical floor on the near-term portion of every curve ("we're not asserting adoption is X - we're observing it"). Time-series anchoring across multiple AEI releases is on the future-work page.
Phase 4 - deferred: input-output derivation of customer-industry shares
The largest remaining data move - replacing hand-authored customer-industry shares with values derived from public input-output tables (BLS Industry-Occupation Matrix + BEA Use Tables for the US, and the equivalent statistical-agency tables for UK/AU/CA) - deliberately wasn't attempted in this pass. It directly drives the revenue cascade, so a wrong derivation would visibly destroy the simulation. See future-work for the proper sequencing and effort estimate.
v0.5 - multi-country (US + UK + AU + CA), shipped 2026-05
(Pre-changelog history.) Multi-country ETL, currency-aware Intl formatters, modern AI overlay on Frey-Osborne, three S-curve scenarios, hand-authored customer-industry shares, Moretti spillover for local-service occupations, uncertainty bands by horizon.