Version history & corrections

We version the method and date every change here. When we find an error, we correct it in the open, date the correction, and, because the ledger is append-only and externally anchored, keep the original on the record rather than rewriting history. The method changes when the evidence changes; this is the log.

Sep 29, 2026Correction: the national signed share goes down. One audit found errors in how we read four queues, and fixing them lowers the national signed share. PJM (three errors): PJM publishes Cycle 1 and the two transition cycles in a separate file from its older serial queue, and we had been reading only the older file, so Cycle 1 was missing. The older file also lists long-term transmission-service requests, which we had included in the count. And we had sized requests by “Maximum Facility Output”, which PJM defines as the output of the whole facility, so a request at an existing plant counted the entire plant (a 44 MW request at an existing nuclear plant counted as 2,709.8 MW). We now read both files, count only generation requests, and size each request by the larger of its “MW Energy” and “MW Capacity”. SPP: projects marked “TERMINATED” had been counted as active. ISO-NE: a 1,200 MW transmission line had been counted as a signed generator. ERCOT: a new rule excludes requests whose project name marks a fuel change, an upgrade or an uprate. Two of the requests it matches are 50 MW or more, the size we count: a fuel change and a turbine upgrade, each listed at the size of the whole existing unit (655 MW and 1,336.5 MW). Projects named as repowers are not excluded and count at the size ERCOT lists. The number’s history marks this date as a change of method: the number on this date is not comparable with the days before it.
Sep 25, 2026Clarification: what MISO’s “Done” means. On Sep 24 we wrote that MISO does not publicly define its queue statuses and that projects reaching the agreement stage are listed as “Done”. MISO does define them, in the legend of its interactive queue: “Active” is a project still “under the study cycle”, and “Done” is one that “has completed all the studies”, after which agreement negotiation begins. “Done” therefore marks the end of study, not a signed agreement, and we do not count it. The number does not change; the explanation now uses MISO’s own words.
Sep 25, 2026Correction: ERCOT now counts. We read ERCOT’s queue through gridstatus, an open-source library that labels every ERCOT project with a date in the “IA Signed” column as “Completed”. We took that label to mean the project had left the queue, and said so on this site, attributing it to ERCOT. It was the library’s label, not ERCOT’s: ERCOT’s own queue report keeps signed projects on its list, with the signature date. As a result ERCOT counted 0 GW signed. ERCOT lists about 137 GW of signed projects of 50 MW and up. About 116 GW of that is not yet approved for synchronization, and it now counts; we treat a project as in service once ERCOT records that approval. ERCOT’s requested total rises by the same amount, because those projects were missing from it too. The national signed share rises by roughly 9 points from this correction alone, not from anything that happened in the queue, and the number’s history marks the change.
Sep 24, 2026Correction: PJM was undercounted by about 40 GW. We counted as signed only the PJM projects listed as “Under Construction”. PJM itself groups three queue statuses as projects with executed final agreements: “Engineering and Procurement”, “Suspended” and “Under Construction” (Markets and Reliability Committee, “Commercial Deployment of New Generation”, Sept. 25, 2024, slide 7). The 202 active projects in “Engineering and Procurement” — about 40 GW, all from the older serial queues, most with the agreement document posted in PJM’s own agreement column — now count. PJM files “Suspended” projects under executed agreements too, but a suspended project is not in PJM’s active queue, which is the population we measure, so it does not count here either. The national signed share rises by roughly 4 points from this correction alone, not from anything that happened in the queue, and the number’s history marks the change. PJM is now read from its named status field, so the note that part of the signed total is inferred from free text no longer applies.
Sep 24, 2026Correction: why MISO shows almost no signed capacity. Our explanation said MISO’s post-agreement status field was filled on “only a sliver” of rows, for a reason unrelated to ERCOT’s. Both parts were wrong. The field is filled on roughly four in ten active MISO requests, and nearly all of those read “Not Started” while still in study. The actual reason is the same as ERCOT’s: in MISO’s published data, projects that reach the interconnection-agreement stage are listed as “Done”, not “Active”. The number does not change — MISO still contributes almost nothing to the signed total — only the explanation does. MISO’s public queue documentation does not define these statuses; this reading comes from the data itself, and the check that watches it now tests the lifecycle, not just that the column exists. [Sep 25: two parts of this row were later corrected — ERCOT’s reason was our own misreading, and MISO does define these statuses. See the Sep 25 rows above.]
Sep 24, 2026Correction: NYISO now counts. NYISO publishes each active project’s stage in a column named “Project Status #”, with the key printed on its own sheet (11 = IA Completed, 12 = Under Construction). Our reader had lost that column, so NYISO’s queue counted 0 GW signed, and our text said we had not resolved whether NYISO publishes such a field at all. It does. NYISO now contributes roughly 7.5 of its 30 GW, and the national signed share rises by roughly 0.8 points from this correction alone — not from anything that happened in the queue. The number’s history marks the change instead of cutting the series, and its range and trend are computed within the current method only. We also found why this went unnoticed: the automated check behind it tested that the column existed, not that it carried values on the active rows the number uses. It now tests those rows. Same day: the short caveat now states that PJM’s signed figure is read by keyword from free-text status, a weaker read than a named field.
Aug 23, 2026Correction on /ai-load. The page's opening line said the NYISO load tab carries an end-use code “for every request”. It does not: in the July 31, 2026 edition, 22 of the 73 rows carry no code — all 17 withdrawn rows plus 5 not-withdrawn rows (4 already in commercial service, 1 in study). The page's own reconciliation section already stated the exception; the lead overclaimed past it. The line now reports the counted figure (51 of 73), derived from the file rather than typed. No published MW figure changes: the 5,290 MW and 13,568.9 MW totals were always computed over the coded rows only.
Jul 20, 2026Track-record verdicts made honest. Sealed calls that mature with no observable record in their window now resolve as unresolved — not as a miss. Absence of evidence is not error, and counting it as one would have published failure where no judgement took place; unresolved calls appear in the Journal and count in no accuracy rate. The horizon for new seals moved from 180 days to 540, to match the physical timeline of a data center (2–4 years); already-sealed calls are immutable and keep their original horizon.
Jul 19, 2026The public sentence was rebuilt around the per-queue spread (the signed share differs enormously between grid operators) and the LBNL benchmark was updated to the 2026 Edition (13% operational / 75% withdrawn, 2000–2020 cohort, p.55), superseding the 2025 edition figures.
Aug 21, 2026A correction we had to correct, and a rule we broke. Earlier the same day we moved the LBNL page cite from p.55 to p.35, announced here that “the page was not” right, and — against the rule stated directly above this table — edited the dated Jul 19 row to match. Re-reading the full report showed p.55 was correct all along: it carries the sentence we paraphrase, verbatim (“Only 13% of capacity that submitted interconnection requests from 2000–2020 had reached commercial operations by the end of 2025; 75% of that capacity had been withdrawn and 10% was still active”). Page 35 is a chart carrying the same figures in different words — supporting evidence, not a replacement. Both changes are reverted and the original row restored. The figures themselves never changed. The method error is worth naming: we confirmed that p.35 supports the fact and inferred, without ever testing it, that p.55 did not. A positive finding on one page is not evidence against another. One further note that does stand: 13% and 75% are shares of capacity — the same source carries 19% and 71% by number of requests, and swapping the two would be easy and wrong.
Jul 16, 2026Correction, published in the open. Our reading of “signed agreement” had been keyword-based across all queues; six of seven operators in fact publish a named status column, which we now read directly. The ratio we had published (“50.5×”) was retracted and the headline number withheld until the corrected reading passed review. This was the largest correction in the number's history — logged here rather than quietly replaced.
v1.3 · Jul 20, 2026Fixed a second double-count, this one in the signal score. A single source document that matched two signal types was counted twice — measured: 148 of 231 utility_expansion signals were a duplicate of an event already carrying its correct type. Since 11 Jul the per-document de-duplication applied only to the diversity multiplier; it now applies to the score itself. One document counts once, at its strongest signal; the volume bonus still rewards distinct documents agreeing. Effect: regional scores fall a median of ~19% — that drop is the removal of inflation, not a loss of evidence. Weights (35/30/20/15) unchanged.
Jul 19, 2026The headline sentence was rewritten to report the per-queue spread as a range with the named queues, moving the full per-queue table to /verify, and to state plainly that in the queues where our reading finds no machine-readable agreement field we cannot produce a signed share at all — silence in the record, which is not evidence that an agreement is missing.
Jul 16, 2026Correction, and a retraction. Our per-queue reading of executed-agreement status was wrong for several queues: we had been reading a single status text where those operators publish a named column. The previously published national ratio (~50×) was withdrawn and the number was held offline until the corrected reading was re-derived and re-published. Method epoch for the corrected reading: 16 Jul 2026.
Jul 15, 2026The number was placed on hold after an internal audit found the per-queue reading above. Nothing was published while it was held — the surfaces showed the method, not a figure.
Jul 12, 2026Signal detection sharpened: cooling now catches cooling and water agreements (a physical-commitment signal), and financing catches joint-venture / fund-backed structure (committed capital, not just a headline dollar figure). Detection only — the CFI weights (35/30/20/15) are unchanged.
v1.2 · Jul 11, 2026Fixed a double-count: the queue's signed share had informed both the Energy and the Corroboration pillars. It now counts once (Energy); Corroboration measures independent convergence. Weights unchanged.
Jul 11, 2026Relabeled the national queue figure as the generation interconnection queue (it had been labeled “large-load”). Predictions sealed before this date carry a vintage note and stay immutable — disclosed, not rewritten (see §6).

The method →