Predictions with a date and with the observation that would settle them. This is the part of the research that can be wrong, which is the part worth judging it on.
Open
How this is computedOpen = calls without a resolution; resolved = right + wrong + unclear; overdue = past the resolve-by date and not yet marked; hit rate = right ÷ (right + wrong), published only once enough calls have resolved.Method →Code →
waiting on the world
Resolved
How this is computedOpen = calls without a resolution; resolved = right + wrong + unclear; overdue = past the resolve-by date and not yet marked; hit rate = right ÷ (right + wrong), published only once enough calls have resolved.Method →Code →
0 right · 0 wrong · 0 unclear
Overdue
How this is computedOpen = calls without a resolution; resolved = right + wrong + unclear; overdue = past the resolve-by date and not yet marked; hit rate = right ÷ (right + wrong), published only once enough calls have resolved.Method →Code →
nothing past its date
Hit rate
—
not published until 10 have resolved
How this is kept honest. A call is published with the date it was made and the observation that settles it, so it cannot be quietly reinterpreted later. Wrong calls stay on this page with the same weight as right ones. No hit rate is shown until 10 have resolved, because a percentage computed from a handful is noise wearing a number.
01Open
7, soonest to resolve first
2026-09-15OpenTentativeresolves by 2027-03-31
Through 2026, high-bandwidth memory supply rather than leading-edge wafer supply will be the stated limit on AI accelerator shipments.
This is the clearest test of the claim that the bottleneck sits below where attention is. Coverage treats the foundry as the constraint; the memory stack and the packaging around it are where the recent allocation fights have actually been.
What would settle it
Earnings calls or guidance from an accelerator maker or a memory maker naming which of the two limited shipments during 2026.
Large power transformer lead times will still be three years or longer at the end of 2027, despite the capacity expansions announced through 2026.
The announced expansions add winding capacity, but the core steel behind them is made on a small number of qualified lines and a new mill takes years. Capital has been available for two years already without shortening the queue, which is the signal that the constraint is not capital.
What would settle it
Quoted lead times for a 100 MVA-class unit from at least two major manufacturers or a published industry survey, dated in the last quarter of 2027.
Silicon carbide substrates will not become a binding constraint before 2028: no sustained shortage, and at least one more Western capacity retrenchment.
Capacity was built for an automotive demand curve that did not arrive, and a US wafer subsidiary is already being wound up. This is deliberately a call against the site being interesting on this row, and it is the easiest of these to lose if datacentre power conversion moves faster than expected.
What would settle it
Absence of reported allocation or lead-time extension for 150 mm or 200 mm SiC substrates through 2027, plus at least one further announced closure, sale or capacity cut by a Western maker.
Neon will not see another supply squeeze of the 2022 kind before 2028, because on-site recycling has structurally cut what a fab needs.
The 2022 shock triggered recycling and non-Ukrainian separation that did not exist before. If a shortage recurs anyway, then the substitution that was supposed to have relieved it did not, which is the more important finding.
What would settle it
Absence of a reported neon allocation, price spike above roughly three times the 2021 level, or fab output impact attributed to neon, through the end of 2027.
China will still require export licences for dysprosium and terbium at the end of 2027, and no non-Chinese source will supply more than a tenth of world heavy rare-earth separation capacity.
The April 2025 controls made licensing a standing instrument rather than a one-off. Mining is spreading, but separation and metal-making are the concentrated steps and neither is quick to replicate, which is the part most coverage skips.
What would settle it
China's published control list as it stands at the end of 2027, plus capacity figures from a body such as the US Geological Survey or a named producer's own reporting.
Median US interconnection queue duration will not fall below three years by the end of 2028, even though FERC Order No. 2023 took effect in November 2023.
The reform changes how the queue is processed, not how much transmission exists, and the backlog it inherited is larger than the annual study throughput. If a well-designed process reform cannot clear it, the constraint is physical rather than administrative — which is the more interesting outcome.
What would settle it
The Lawrence Berkeley National Laboratory queued-projects series, or an equivalent published dataset, reporting median duration from request to agreement for projects completing in 2028.
The US Section 232 action on polysilicon will not add qualified electronic-grade capacity in the United States before 2029, whatever it does to solar-grade supply.
Electronic-grade polysilicon is a different product from solar-grade and is qualified per customer over years. A tariff changes the price of importing it; it does not shorten a qualification cycle, which is the thing that actually gates supply.
What would settle it
Any announcement by a producer of new US electronic-grade (eleven-nines) polysilicon capacity qualified and shipping to a semiconductor customer before 2029 would settle this against the call.
Computed: For each resolved holding: the bottlenecks its companies hold (maker, capacity or part supplier), the ones a filing says they need or sell into, and everything upstream of a held or needed rail through recorded "needs" rows.Computed: Sum of the weights of the holdings that touch a rail, divided by the sum of the weights of all resolved holdings. With no weights given, every holding counts equally.Computed: For each country: the share of portfolio weight on a rail whose every recorded maker operates there, and the share on a rail with at least one recorded maker there. Part suppliers are not makers.Computed: Direct hits: bottlenecks where the failed node is a maker, a part supplier or the location. Makers wholly inside it are lost; makers also operating elsewhere are partly affected; the rest remain. Downstream: every bottleneck that needs a hit one, transitively, through recorded rows. Exposed: holders of hit and downstream bottlenecks and companies a filing says need or sell into them.Computed: The country’s recorded annual production divided by the recorded world total for the same year and unit, from config/substrata-quantities.ts (USGS).Computed: Rows that held over rows looked at, pooled across every check of that criterion for that dataset, rounded down to a tenth of a percent.Computed: The mean of the criterion scores that could be measured for the dataset.Computed: Rows: judged by the dataset’s first provenance check. Sourced: share of those that pass it. Verified: rows re-derived from their source by a network look, over every row such a look covers. Stale: rows past their declared age. Broken: source links that failed three tries.Computed: Tokens per UTC day on this site's free AI keys, summed per class: interactive (Ask and fact-checks, a reader waiting) and background. Background is zero from 2026-09-25: no scheduled job may call the free models, and test/no-free-background-ai.test.ts fails the build if one tries. Drafting runs on readers' own keys and is not on this ledger.Computed: Over every Ask question in the last 24 hours that got an answer: the 50th and 90th percentile (continuous, PostgreSQL percentile_cont) of milliseconds from the request reaching the server to the first answer text streamed, and to the finished answer.Computed: Count of rows in the bottleneck corpus: every material plus every non-material chokepoint.Computed: Count of bottlenecks whose assessed horizon is "now".Computed: Sum of four judged scores, each 0–3: concentration + substitution + lead time + inelasticity.Computed: Count of (bottleneck, producer) pairs across every material in the corpus.Computed: Producer rows counted by verification state from the corpus: sourced (an accepted primary source is linked) or unverified (none yet). Unchecked pages: open rows in the producer-sourcing queue, counted live from the database.Computed: Count of rows in the market-participant directory.Computed: Count of bottlenecks on which this organisation is recorded as a producer, a holder of the capacity, or a supplier of a critical part.Computed: Accepted events that name this organisation, plus (counted separately) accepted events on a bottleneck it holds that do not name it.Computed: Count of policy instruments in the corpus; each one links its official text.Computed: Count of science entries: technologies recorded as able to relieve a named bottleneck.Computed: Accepted events whose date falls within the last N days of today.Computed: Leads in the research sweep’s queue that no person has read yet and that have not expired, counted live from the database.Computed: Waiting: open sweep leads — no reviewer decision, not expired. Oldest: whole days since the earliest open one was found. Drafts ready: waiting leads whose AI draft suggests an event and passed the checks.Computed: Count of bottlenecks tagged with that technology, industry or stage.Computed: Number of distinct country codes on the rows being counted (makers, or rules).Computed: Rules counted by the effect recorded on each: "tightens" slows building, "loosens" speeds it; a rule recorded as both ways is counted in neither.Computed: Rules with at least one proponent: an organisation that asked for it in a document linked on the row.Computed: A judged level on a nine-step scale from "idea with a physical basis" (1) to "in production at scale" (9).Computed: Technologies tracked = science entries; bottlenecks addressed = distinct bottlenecks named as relieved by any entry; reaching production = entries judged 8 or 9; sourced = entries whose readiness cites a source.Computed: Kinds = rows in the capital-kinds list; providers = named funders, each linking its own mandate page; assessed = bottlenecks with a funding judgement; "money is not it" = those judged "not-money".Computed: Open = calls without a resolution; resolved = right + wrong + unclear; overdue = past the resolve-by date and not yet marked; hit rate = right ÷ (right + wrong), published only once enough calls have resolved.Computed: Bottlenecks on that stage of the loop, and how many of them have every producer row sourced.Computed: The highest severity score among the bottlenecks recorded as gates on the loop.Computed: Count of explainer files in content/learn, and of entries in the glossary.Computed: A place's annual production ÷ the published world total, same unit and year.Computed: Sum of the squares of each producer’s share of world output (0–1).Computed: Published reserves ÷ annual production, same place, unit and year.Computed: Accepted events in the last 90 days that tighten it, minus those that loosen it. Neutral events count for neither.Computed: One row per (bottleneck, holder) after the screen’s filters; the bottleneck count is the distinct bottlenecks among those rows.Computed: Organisations recorded on a bottleneck (maker, capacity holder or part supplier) whose shares, or a parent’s, trade on an exchange found in the SEC ticker file or OpenFIGI.Computed: Items per stage = papers, preprints and grants collected for the bottleneck whose relevance score is 2 or more, placed on a stage by the rule in lib/science.ts; judgements are counted separately.Computed: Items first collected in the last 7 days whose publication or award date is within the last 30 days.Computed: Items per institution per bottleneck, counting each item once per institution named on it by the source; a company is matched to the directory only when every distinguishing word of both names agrees.Computed: The latest value in a series minus the value before it, divided by the earlier value, same series and unit.Computed: Count of dated values in a series, or of series matching the filters, across the committed corpus and the official statistics fetched on schedule.Computed: Count of postings currently listed on the public job boards Substrata reads, after the page’s filters. By default software and business roles that name no bottleneck are left out; "Every role" puts them back.Computed: A posting is filed under a bottleneck when its title names one of that bottleneck’s terms, or its description names them at least twice (title only for software and business roles); its role family is the first family whose title terms its title names.Computed: For each skill or credential in the published list, the number of open postings whose title or description names any of its terms.Computed: Count of programmes in research/learning-paths.json, each with the official page it was checked on.Computed: A feed is fresh within one scheduled interval plus half an interval (at least 20 minutes) of its last good run, late up to three intervals, stale beyond; failing when its newest failure is newer than its last good run.Computed: Now minus the finish time of the last good run (feeds), or whole UTC days since the date the committed file records it was checked (datasets).Computed: A sweep lead is open while nobody has reviewed it and it was found less than 30 days ago; unreviewed and 30 days or older, it is expired. The review queue is open leads only: late when its oldest has waited more than 7 days, stale past 31.Computed: Position of a country when the countries USGS lists individually are sorted by the same column, largest first; equal values share a rank.Computed: Latest year ÷ the year before − 1, same country, same column of the same table (USGS or EIA).Computed: A country's resources are ordered by its largest share of world output on any production column of each table (e.g. palladium within PGMs).