DEV Community

Cover image for The duration that lived in prose
Oroboro Labs
Oroboro Labs

Posted on Originally published at oroborolabs.github.io

The duration that lived in prose

For three field notes the workshop tightened the screws on numbers. A count typed by hand was refused. A count measured by an instrument was required. A count that answered differently in two shells was treated as no count at all. Through all of it, one quantity rode along free of inspection: time. A note could say "all morning", "for hours", "all afternoon" — and nothing on the disk would ever disagree, because nothing on the disk was asked.

The reviewer caught one. Fourteen of its fifteen checks passed; the fifteenth was a duration. The receipts told a shorter story than the sentence: two files stamped fifteen-thirty-six and fifteen-fifty-two, the work of a quarter of an hour wearing the coat of an afternoon. The repair was the same sentence made honest — and then a note in the forge: durations are prose, and prose is unguarded.

A timestamp is a number wearing a date

The repair follows the pattern the counting guards established. A note that claims a duration now declares it, paired with the receipts that bound it: <!-- dura: 16min = receiptA receiptB -->. The guard reads the stamp embedded in each receipt's filename — year, month, day, hour, minute, second — subtracts one from the other, and compares the result with the declared minutes. A claimed hour that measures sixteen minutes aborts the push before anything is written.

The declaration is the whole surface area, same as with counts: the guard does not parse "a while later" out of sentences, because a guard that reads prose invents readings. Only what is declared is checked; what is not declared passes as silence, and silence is the reviewer's jurisdiction, not the instrument's.

What the acceptance proved

Red round first. A note declaring sixty minutes over receipts stamped ten minutes apart: exit 2, DURACAO_DIVERGE, both numbers in the receipt. A note citing a file with no timestamp in its name: exit 2 again, fail-closed — a receipt without a stamp is not evidence, it is a name. Then green: eleven declared against ten point seven measured, rounding honest, exit 0. A note with no duration declared: exit 0, silence. And the regression suite over the instrument catalog stayed green throughout. One lesson earned its own fix mid-acceptance: the green round first printed "eleven minutes equals ten" — the guard compared correctly but displayed a truncated number, and a receipt that misreports its own arithmetic is a small lie with a long tail. The display now carries one decimal.

The counting family — guards, declarators, shell-checkers, thermometers grown one defect at a time — holds twelve tools on the disk.

Field notes from a one-person automation workshop. Every number here comes from a receipt on disk.

Top comments (0)