Method · Changelog · 6 Sept

Every change, in the words it was made with

This is the repository’s own history, newest first, each entry the message its change was committed with and nothing added after the fact. The messages say what changed, why, and what they found wrong on the way, including in earlier entries. A figure quoted in one is the figure on the day it was written. A day to a page.

746 changes over 22 days since Monday 10 August 2026 · as held in the repository at 10 Sept 2026, 09:03 pm AWST, when this build was deployed. The defects that reached the database have their own register on the data-quality page.

Sunday 6 September 2026 · 11 changes

The soft-404 check accepts the probes as the parser's health

08:32 pm AWST · 15e79b1

Overnight the integrity suite failed on 98 soft-404 delistings written under the probe-measured health rule: their detail_parse_rate is 0 because the detail loop fetched nothing, and the check read that as a dead parser. Each carries probes_read_a_car of 23 to 54. The check now accepts either measurement and still refuses an event with neither; each event names which it rested on. DQ 55 addendum.

The ops page reads the clock outside render

04:35 pm AWST · fd3ed55

The ops page shows the rego lookup credits, and takes the balance at a top-up

04:33 pm AWST · f7cc9ff

The vendor's API has no balance call (Check, VinCheck and UKMOT are its operations; checked 2026-09-06), so the only trustworthy figure is the one on its dashboard. The page shows credits spent today, this week, this month and all time from our own ledger, today's use against the daily ceiling, and a form to enter the dashboard balance at a top-up, from which the page counts down. Tracking a balance arms the reserve floor, and the page says so; stop tracking switches it off.

One account can see every account and what it has done

02:36 pm AWST · 0382ad4

/ops, for the named account only and a 404 to anyone else: every account with its email, what it is (free, access requested, or linked to which yard), when it was created and confirmed, its last sign-in, its rego lookups and its valuations. Rego lookups were already attributed; valuation_request now carries the signed-in account that ran one, so that count starts today and says so. The account's menu gains the page; the function behind it is service-role only.

The build stamp links to the changelog, not a private repository

01:34 pm AWST · d5a1382

Every reader but one landed on a GitHub 404. The stamp stays, because it is how a reader checks that a fix on /changelog is the build in front of them; it now goes to the site's own record of what shipped.

A new account's first page is a welcome, not a notice of what it lacks

01:30 pm AWST · 27372f1

/yard for an account without a yard used to open "Your account is not linked yet" to a reader who had just confirmed their email. It now opens with what Spotlot is and what they can do this minute: value a car by rego, request access to their yard, read what an account gives them, the live corpus figures with their basis, and the four pages to explore. The header no longer shows "Dealer sign-in" to a signed-in account without a yard: it is an account, with a menu, and its page is the welcome.

The header carries no counters

01:10 pm AWST · 3fd149a

The pulse strip lived in the links group and folded under the links whenever the yard's name took room, on every width the fix before this one had not measured. The same figures stand on the home page, where a number belongs. A header is the brand, the pages and the actions, and nothing that can wrap: one row on every screen.

The header has one action, and it is the valuation

01:06 pm AWST · e8c0f18

"Value a car" leaves the link row and becomes the header's yellow pill, pinned right on every screen; Support Us becomes an outlined pill beside it (two yellow pills on one row would be two claims to the next click) and joins the phone menu. The pulse strip, the widest and least essential thing on the row, shows inline only on extra-wide screens rather than wrapping under the links.

The header keeps one row however long the yard's name is

01:00 pm AWST · ef30839

"Westside Auto Wholesale" pushed the whole right-hand group onto a second line. The links group now takes the slack (min-w-0, flex-1, wrapping its own links), the pulse steps out below lg, the right-hand group never leaves the row, and the yard name truncates with an ellipsis past a set width, its full text in the title and the menu.

The sign-in doors are in order: sign in, sign up beneath it, forgot beside the field

12:23 pm AWST · 9f0d1c9

The conventional shape for a sign-in form, and the one the usability research settles on: the primary action first, the secondary action directly under it with nothing between, and the forgot-password link beside the password field it is about rather than as a stray line between the two buttons. Field takes an `aside` for the label row, and the link is a sibling of the label so the label still focuses the input.

A PDF link names its issue, and the days-advertised chart is a kit chart

08:35 am AWST · 34fa5d8

The bare PDF address served its bytes as immutable for a year, so the re-issue of 2026-09-05 was invisible to every browser and edge holding the old copy. Page links now carry ?v=<sha12>, an address that names one issue and is honestly immutable; the bare address revalidates within minutes. The web report's days-advertised bars, which ran their longest bar past the panel edge, are drawn by WebBucketBars, the screen twin of the paper renderer, with label, bar and value in one frame.