Battery Quote Check / release evidence / September 2026

What has been checked.

Use the calculator · Read the model and proof

Arithmetic and software.

CheckRelease result
Engine and independent certificate4,075 assertions
Intentionally broken checker variants11 of 11 detected
CSV and NEM12 importer127 assertions
Report and conditional quote verdict67 assertions
Chromium browser integration50 checks; 390, 768 and 1440 px layouts
Extracted offline checkerValid example passes; altered claim fails

The engine checks include 13 hand-derived cases, 60 independently enumerated small integer-state models and 3,840 arbitrary price-witness checks. The oracle enumerates storage transitions; it does not reuse the dual solver. The mutations remove or reverse individual bound, conservation or feasibility terms. One full-precision five-minute denominator error was found during review, fixed and protected by a regression test.

The importer suite includes a 110,000-row CSV and a generated full year of five-minute NEM12, as well as gaps, duplicates, wrong units, ambiguous streams, quality flags, clock changes and quoted CSV fields. Generated file tests establish parser behavior, not field provenance.

A 105,120-interval synthetic benchmark with 130,121 distinct price candidates took about 2.9 seconds for proposal and exact checking, plus about 1.3 seconds for a separate recheck, on the development machine. The proposal used its disclosed 64-state limit. These are one-machine measurements, not browser speed promises.

Published development programs and their runnable recipes are in the source mirror. All four standalone recipes were downloaded over HTTPS into empty directories and exited successfully under Node.js 22.23.1 on the same development machine. The downloaded files matched the released source bytes. The small portable checker uses no optimizer and no package dependencies. The browser test exercises the application separately from the mathematical tests. The deployed release 19448425b passed all 50 checks at 390, 768 and 1440 px. A full year of 105,120 five-minute readings passed through the file input and Worker in 4.654 seconds on the development machine. No browser JavaScript exceptions were recorded. The live site loaded Cloudflare Insights and sent a RUM request; none of the private input canaries appeared in request URLs or bodies, localStorage or sessionStorage. These observations cover this test run, not every possible input or browser.

A year of real measurements, with an extra relaxation.

The historical benchmark uses Ausgrid’s openly released Solar Home Electricity Data: 17,520 half-hour pairs for one de-identified household in 2012–2013. Annual general consumption is 6,021.300 kWh and solar generation 1,382.675 kWh. It has no controlled-load stream in the selected source series.

These are gross consumption and gross solar generation, not the grid-import and grid-export channels the application asks a household to supply. The benchmark deliberately treats them as independent available discharge and charge limits. That creates an additional optimistic relaxation; it does not reconstruct net-meter readings or the household’s bill.

The original notes mention both standard and daylight-saving time while recording 48 values every day, without resolving the transition-day clock. The benchmark preserves row and column order on an explicitly artificial half-hour test axis. It tests neither historical tariff alignment nor the production importer’s handling of the original wide file format. Its prices and battery settings are invented.

Data creator: Ausgrid. Dataset license: Creative Commons Attribution 3.0 Australia, as stated in the government dataset record. The retired official archive returned 404; the source bytes came from Pierre Haessig’s preservation copy. Postcode and PV-capacity columns were removed from our small retained subset. The sample is not representative of households today.

With invented settings of 13.5 kWh capacity, 5 kW charge/discharge, 90% round-trip efficiency, 30c import and 5c export, the exact ceiling is $308.2385 and the comparison policy is $304.1885. The $4.05 gap equals the free initial-charge allowance. An independent energy-total calculation agrees: (0.30 × 0.9 − 0.05) × 1382.675 + 0.30 × 13.5 = 308.2385. These are results for the stated gross-channel relaxation, not this household’s savings.

Download the benchmark reproduction script. Read it first; it needs curl, Python 3 and Node.js 20 or later, creates a fresh temporary directory and downloads about 57 MB (54.4 MiB) from the preservation archive plus the published source programs. The extractor checks the pinned archive hash before selecting the data. No account or private repository is needed.

bash reproduce-research-benchmark.sh

The published recipe was reproduced from live HTTPS downloads on 21 September 2026 (AEST), in an empty directory on the same development machine. It fetched the public recipe, five program files and the complete preservation archive, with no private source copies or package installation. The pinned archive and extracted-data hashes matched, and the exact checker reproduced the ceiling, policy value and gap above. This was not a second-machine reproduction and does not validate an actual quote, net-meter trace or historical clock.

The validation still missing.

We have not obtained a publicly licensed matched package containing an actual installer quote, its savings calculation and assumptions, and the same household’s full meter trace. No real installer quote has been disproved by this release. The on-page example and its suggested comparison are invented.

The independent arithmetic can establish an upper bound for a model while the model is the wrong one for a quote. That is why the interface requires matching dates, tariffs, constant within-interval rates, equipment and excluded services before offering a comparison. A future-year savings promise is not automatically comparable to a historical period.

Manufacturer ratings need their operating conditions. For example, Tesla’s Powerwall 2 specification separates total and usable energy and gives round-trip efficiency under stated temperature, power and beginning-of-life conditions. It does not establish a universal household efficiency. This example is not an Australian product preset.

Clock conventions also belong to the source. Ausgrid’s current customer-data guide specifies AEST and warns that tariff analysis may need daylight-saving adjustment. That statement does not resolve every supplier’s file or the older research dataset.