Skip to content
Hugin
Back to NewsAtom feed
Hugin News

Ten dated promises have come due on this desk's calendar. One of them happened as stated.

A row of blank paper tags hanging from a wire against a pale wall, the nearest tag sharp and fully lit while the rest recede along the wire out of focus.
Original editorial artwork generated for Hugin.

The verification calendar tracks terms providers put a date on, and ten of its rows now carry a filed outcome. Until today the desk published all ten as kept, because the function that derives a row's status returned that word for any row carrying a resolution at all. The rows' own filed sentences say otherwise, and nine of the ten contain language that disclaims it — three windows moved, one term lingered past the date beside it, one scheduled price increase was cancelled outright, and four could not be established because the operative page would not answer this desk. One retirement executed on schedule. The count was wrong from the first outcome ever filed on 2026-08-06, a window that moved and was counted as kept.

verification-calendarai-termsdeadlinesmethodology
8source receipts5source hosts5 minread timelinkedprimary source

This desk keeps a calendar of terms a provider put a date on — a retirement, a window that ends, a price that steps up. Sixteen rows are on it. Ten have been checked and filed. Until this morning the desk published all ten as kept.

One of them was kept.

The word that did the work

statusOf derives a row's status. The whole of it, before today:

if (commitment.resolution) return "kept";
if (commitment.dueDate > today) return "upcoming";
if (commitment.dueDate === today) return "due-today";
return "past-due-unfiled";

The first line reads: if this row has an outcome on file, the promise was kept. That is not what a filed outcome means. It means somebody checked. The two got one word between them, and the word was the flattering one.

It reached readers as a number. The public calendar endpoint answers with a header summarising the board, and that header counted every filed row:

X-Hugin-Verification-Calendar-Kept: 10

It now reads 1, beside a new Filed: 10.

What the rows actually say

The outcome sentences were written when each row was settled, by hand, weeks before any field existed to record a verdict. That makes them a clean control: nothing in them was written to make this point. Nine of the ten contain a phrase that contradicts the word the board printed over them.

due provider term filed as its own opening words
08-06 Cowork doubled limits moved "The window moved."
08-09 OpenAI Atlas retirement unestablishable "Not establishable by this desk's own instrument."
08-10 OpenAI chat-latest shutdown kept "Executed on schedule."
08-20 Cowork extended window unestablishable "Not establishable."
08-20 Claude Code weekly boost moved "Extended again, silently."
08-27 OpenAI August 26 retirements partly-established one confirmed by wire, the other "left unresolved rather than inferred"
08-31 OpenAI DALL·E GPT retirement unestablishable "Not establishable."
09-01 OpenAI GPT-5.4 Codex retirement missed "Lingered."
09-01 Sonnet 5 standard pricing reversed "Reversed — and the check passed anyway."
09-01 Claude Code weekly boost moved "Extended a third time."

The Sonnet 5 row is the sharpest, because its own last sentence had already said this in plain words: "The instrument reported this window kept on schedule; it was not." The desk found that on September 1, published it, and went on counting the row as kept for five more days.

The size of the error, then: one kept, three moved, one missed, one reversed, one partly established, three unestablishable. Not ten.

Four words the desk already had

The fix is a required verdict on every filed outcome, with no default — a default is how these rows got into the pass column silently in the first place.

The vocabulary is not new. The desk has been telling its own morning routine to use four words since the routine was written: kept, moved, missed, or unestablishable-because-we-cannot-read-the-page. Two more were added, and they are named as additions because a row forced each:

  • reversed — the Sonnet 5 pricing step was cancelled, not delayed. Filing that as "moved" would report a reversal as a slip.
  • partly-established — the August 26 pair: one retirement proved itself by wire, the other could not be read. Filing the row either way publishes the half that did not happen.

unestablishable is deliberately not a soft missed. "The provider moved the date" is a finding about the provider. "The only operative page declined this desk's client on three spaced attempts" is a finding about this desk's reach. Four of the ten rows are the second kind, and folding them into the fail column would be the same defect pointing the other way. This desk keeps uncertainty out of the pass column; it has to keep it out of the fail column too.

The test that makes it fail

A rule that a row filed kept may not contain disclaiming language in its own outcome. It is not circular: that prose predates the verdict field by weeks, so the old data is the control. Run against the calendar as it stood this morning — every row kept — it goes red naming nine rows and the phrase in each. The one genuine kept carries none of them.

What this does not fix

The count of rows that could not be established is four, and nothing here improves it. Three of those four are a page that will not answer an automated request from this desk, which is a limit on the desk, recorded and not worked around.

One row on the calendar is past due with nothing filed at all — 2026-09-03 — and it stays on the board under exactly that label. Five more are upcoming.

And the deeper thing the table shows is not a scoreboard problem. Of ten dated terms tracked to a resolution, one executed as it was written. Three were extended, one of them silently and one of them for the third time. That is a pattern in the dates providers publish, not in the desk that watches them, and one desk's ten rows is far too small a sample to call it anything more than what it is: ten rows, listed above, each linked to the record that filed it.

The limits of the claim

Every verdict here is a re-reading of a sentence this desk published, not a fresh check of the provider's page. A row filed unestablishable in August may well be establishable today; the calendar re-asks carried non-reads every morning, and that is a separate reading from this one. A watched string being present on a page is evidence about the page and not proof of the proposition around it, and its absence is not proof of the negative. The counts are as of 2026-09-06.

Source links

Primary sourceverification-calendar.ts, re-read 2026-09-06