The Ship Log.
Everything, forever.

Every release since the first one, newest first, in plain language — the big ones and the two-line fixes alike. Nothing here is a plan. It's the whole trail of a thing being built in public, including the parts that had to be built twice.

30Shipped
19The app
11The site
Jul 2026First one
Show
In the workshop — right now

A log that keeps itself Building

The release that turns Canary from a tool you ask into the place your records live: your OSHA 300 log fed by the five-question determination, the 300A generated from it, and every line carrying the rule it was decided under. Plus work that finishes — records that are current or superseded, open or closed — and an engine that works out what you're asking instead of making you pick a category first.
August 2026
v4.9.5The suite got five times deeperApp26 Aug 2026

One deliberate day of instrumenting before expanding the corpus: the retrieval suite grew from 44 checks to 246, every new case verified against the regulatory text before it counted. Thirty-nine failed on first run — everyday words like “hard hat” that the standards never use, construction questions being steered to general-industry rules — and every failure became a vocabulary bridge (68 → 126) or an engine fix. Also caught its own author twice, which is the point of a suite.

25 August 2026

Stop selling it Site V20 Live

The site stopped being a pitch and started being what it always actually was: a long, strange project, described honestly.
  • The sell is gone. No founding seats, no seat counts, no urgency, no "apply." One collapsed line at the bottom for anyone who wants a workspace of their own, and the free engine stays free either way.
  • How it actually works — the whole retrieval pipeline written out for the first time: vocabulary bridge, dual search, rank fusion, the abstention gate, grounded generation, persistence. Six stages, each one there because a simpler version failed a real question.
  • The parts that are still hard — five genuine defects published, three fixed and two still open. Including the one where "nobody saw it happen" retrieved woodworking equipment.
  • Swept every page and all 108 Answer Library entries for sales language.
V19.3The card is not a videoSite25 Aug 2026

Five ad clicks produced zero typed questions. The hero card looped forever, which reads as a recording — so it now plays one demo, stops, and hands itself over with a lit composer and a “your turn” label. The joke demos no longer lead.

V19.2Accessibility passSite23 Aug 2026

An audit found 31 focusable elements on the homepage with no visible keyboard focus ring at all. All fixed with :focus-visible, plus 24px minimum tap targets and a reduced-motion path through every animation.

v4.9.4First stranger's question, gradedApp23 Aug 2026

Somebody outside the building asked what training OSHA requires before operating a forklift. The answer was correct and badly written — it changed who it was addressing mid-paragraph, and it missed the three-year re-evaluation. Both fixed, both now permanent tests.

V19.1Header fixSite23 Aug 2026

The desktop header collided into CANARY SAFETYCANARYSAFETY.AI because a CSS selector was matching the logo instead of the first nav link. Small bug, embarrassing result.

V19Mobile, properlySite23 Aug 2026

The phone layout was zooming out to 645px on a 390px screen. Cause: decorative background glows 900px wide were expanding the layout viewport, and a body-level overflow rule was hiding the evidence rather than fixing it. Rebuilt the hero as a single-column stack.

v4.9.3It stopped refusing answerable questionsApp22 Aug 2026

A real question about an unwitnessed injury came back refused. “Nobody saw it” had matched woodworking SAW passages and pushed everything relevant below the abstention floor — 18.8 against a threshold of 20. New vocabulary bridges took it to 92.8. Four new tests exist purely to catch the engine being too cautious.

V18.1Same file, different contentsSite22 Aug 2026

A deploy that didn’t take, because two different builds had been packaged under the same filename. Repackaged unambiguously. Filed under lessons that only need learning once.

V18Current againSite22 Aug 2026

The homepage and roadmap had drifted out of date — old counts, superseded claims, roadmap screenshots that looked like crops of crops. Re-rendered everything at 2x.

v4.9.2The prompt can never be publishedApp22 Aug 2026

In one specific failure state the app would echo its own system instructions back to the user. Closed at two layers: the fallback path no longer echoes anything, and a scrubber now sits between the model and the screen regardless.

V17.1The card breathesSite22 Aug 2026

Height changes in the live demo card now animate instead of snapping, and the sources drawer resizes with them.

V17The live cardSite22 Aug 2026

The homepage demo stopped being a scripted animation and became the actual engine — three real questions a day, no signup, with skeleton loading, honest abstention states, and a graceful message when the free line is busy.

v4.9.1Sidebar fix + plain-language UIApp22 Aug 2026

The new workspace section overflowed a fixed-height column and quietly pushed the admin link off the bottom of the screen. Also: every mode renamed into language a human would use — “Write it for me” rather than “Draft.”

22 August 2026

It Keeps Your Work v4.9 Live

Canary stops forgetting you. Everything it produces is now saved, owned, and waiting when you come back.
  • Your work, kept. Every answer, JHA, incident draft, gap check and recordability determination saves itself to your workspace automatically — searchable, filterable by type, re-exportable as a PDF whenever you need it again. Nothing to click, nothing to lose.
  • A workspace, not a chat box. Sign in and you land on your own material instead of an empty page. Name the workspace after your company, your site, or your crew.
  • Built for a second seat. Work now belongs to the organization rather than to one login — so the day a director wants to put four site leads on it, that's a setting, not a rebuild.
  • Nightly backups. The moment your work started living here, it started getting backed up automatically, every night, without anyone having to remember to do it. Losing somebody's records is not a failure mode this project is willing to have.
  • Under the hood: exact-pinned dependencies so a surprise library release can never break a deploy, a dedicated health endpoint, and a corpus fingerprint that now reads file contents instead of file sizes.
V15–V16The repositioningSite19–21 Aug 2026

Two rebuilds in quick succession as the answer to “who is this actually for” changed — away from the well-resourced safety department and toward the person who got handed safety on top of their real job.

v4.8.1Board review passApp19 Aug 2026

A round of copy and interface corrections from a full review — including cutting language that read as condescending to the person using it. The rule that came out of it: it’s never “you can’t do this,” it’s “let me help you.”

19 August 2026

A Decade Deeper v4.8 Live

80 new official letters, a full redesign, and security that now assumes the worst.
  • A decade of letters. 80 more official interpretation letters harvested from OSHA's archive — the knowledge base now spans 2016–2026, 279 letters, 7,216 cited passages. New in the batch: who records temp-worker injuries, public-road fatality rulings, the anti-retaliation memo, and OSHA's own incidence-rate formula.
  • The redesign. The app now looks like the product it is — depth, light, and polish on every screen, desktop and phone, built as a design system every future module inherits.
  • The hardening. A full security pass: spoof-proof rate limits, input ceilings so nobody can run up the bill, brute-force lockouts, and an emergency stop that can be hit from a phone.
  • Found & fixed: the result-diversity cap could quietly drop an answer's 8th source. Fixed — and the accuracy suite grew from 25 to 40 checks to make sure it stays fixed.
v4.5.3+Emergency stopApp18 Aug 2026

A red button on the admin page, usable from a phone, that halts every answer instantly with a polite maintenance message and zero further spend. Survives restarts. Every flip logged.

v4.5.3Security hotfixApp18 Aug 2026

A deep-dive audit shipped as one batch: forged-header spoofing that could reset free-usage limits, per-mode input ceilings so a giant paste can’t become a giant bill, authenticated PDF export, a 512KB body cap, and a brute-force lockout after 50 bad codes.

v4.5.2Tester-readiness hotfixApp18 Aug 2026

Root causes from the first live testing, each with a guard so it can’t recur: a cache with no cross-release invalidation was serving old answers, and a vocabulary entry said “four feet” where the regulation writes “4 feet.”

v4.5.1First hotfix from real useApp18 Aug 2026

It was finding the right standard for a shop acronym and then refusing to connect the two. The retrieval bridge now also tells the model what the term means.

18 August 2026

The Recordability Engine v4.5 Live

Canary stops just answering questions about recordability and starts making the call, with the criteria walked in order and the letters that back it.
  • The Recordability Engine. Answer five plain questions about an incident; get a formal determination memo — recordable or not, the 1904 criteria walked in order, the official interpretation letters that back the call, exported as a PDF for your 300-log file. If the facts are thin, it says exactly which fact is missing instead of guessing.
  • Kick the tires. Three free questions, live against the real engine, right on the homepage — no signup, no email. Go ask it something.
  • An experience worth someone's time: proper sign-in, your name on your workspace, one-tap feedback on every answer that lands directly in front of the builder, one-tap start from six real templates, copy-with-citations, and a heads-up before you hit your daily allowance.
v4.3Fair-use defaultsApp18 Aug 2026

Tightened daily and monthly allowances, with per-code overrides.

v4.2Costs went admin-onlyApp18 Aug 2026

Per-answer pricing is still recorded for everyone; it’s only displayed to the person paying it.

v4.1Codes editable from the dashboardApp18 Aug 2026

Adding or revoking access stopped requiring a terminal.

18 August 2026

It goes hosted v4.x Live

Canary AI moved from a lab bench to the open internet — nothing to install, access code in, cited answers out.
  • Hosted app launched — the full engine (7,216 cited passages, 199 interpretation letters, JHA drafting with PDF export, ISO 45001/Z10 gap checks) now runs in the cloud, behind access codes.
  • Honesty upgrades: when a question is outside the sources, Canary now says so in three sentences flat — no padded guesswork, no fake confidence. Unknown shop acronyms (like MTBFA) now route to the right standard instead of nowhere.
  • Fair-use guardrails — daily and monthly allowances per account, with a heads-up before you hit them.
Mid August 2026

The Answer Library Live

100 or so real questions answered from official OSHA interpretation letters — free, public, cited, and growing.
  • Every entry answers a question a real safety manager has actually faced, from the letter OSHA actually wrote — bear encounters on break included. Free, public, no account.
  • Site search that speaks shop: type "loto" and it knows you mean the control of hazardous energy.
July – August 2026
July – August 2026

The brain Live

The cited-answer engine that everything else is built on.
  • 7,216 passages indexed: OSHA 1910 and 1926 complete, 1904 recordkeeping, 1903 inspections, the OSH Act.
  • 279 official interpretation letters (2016–2026) — what OSHA meant, not just what it said.
  • Every answer cites its exact paragraph, and a published accuracy suite runs before anything ships.
v3On the MacAppJuly 2026

Where it started, and where it ran for weeks: a local copy on one machine, no accounts, no server, one person asking it questions and writing down everything it got wrong.

This list doesn't get pruned. Old entries stay, superseded work stays, and the releases that only existed to fix an earlier release stay too — they're the honest part.

Want your question to shape the next entry? Go ask it one →

A good number of the entries above started as somebody asking something it got wrong.