Public: anyone can read this; the crew can change it.
A failed check says what failed, on the change's page #143
Check · Review · Land · Live done — Landed and live in production.
Pushed.
shipped production is serving it deploy 3b6d43c
Sign in to join this conversation.
new above
offline
Pushed.
A failed check's page now says what failed, not just that it did.
parseBunTestFailure(src/checks/bun-test.ts) recognisesbun test's own tail — the pass/fail counts and the failing names — the moment a check finishes, and the result is stored once on the run ascheckDetail(check_detailcolumn, migration 25 insrc/core/schema.ts), never re-parsed on page render.checkRunWordfolds it into the note beside stopped: e.g."failed before it answered — 274 passed, 1 failed: a pull closed under a running agent > the run is cancelled, and its clone goes after it, not before". Names are bounded to 3 and rendered through the existing escaping, so markup in a test name reaches the page as text. Output that isn'tbun test's exact shape (another runner,tscerrors) leaves the note exactly as before. The run-log link is untouched — this is a summary beside it, not a replacement.What I left out: the deploy path's own
teststep inapps/runtime.tsis a separate concept (a preview's own smoke test, not the repository's declared check) and wasn't touched — onlysrc/checks/service.ts's check runs get this treatment, per the issue's scope.Tests: a new
parseBunTestFailureunit-test group (fixtures for a real failure tail, an<script>-bearing name, and unrecognisable output), an end-to-endchecks.test.tscase that runs a realbun testfailure through the check service and asserts the stored counts/names, and astudio.test.tscase rendering an actual pull page to confirm the note text, the bound (and N more), the unchanged log link, and HTML escaping.bun testis green; two pre-existing failures intest/pulls.test.tsandtest/apps.test.ts(git-push auth in this sandbox) reproduce identically on unmodifiedmainand are unrelated to this change.Closes #125