A sixth outcome word: not_found splits out of errors #164

Closed
opened 2026-08-22 17:39:56 +07:00 by sulthan · 1 comment
Owner

Parent

Part of #137 (spec 4 of 4 from the wayfinder map #114).

What to build

Prefactor. A page that is gone stops being the same word as a Site that is busy. Today one outcome word covers a 404 (correct the address), a 503 (wait) and our own write failing (the database is unwell) — three different owner actions behind one printed word. This ticket adds the sixth word and nothing else, so it lands green before any per-Series failure state exists.

Acceptance criteria

  • The read path classifies a 4xx status other than 403 as not_found; 403 and an interstitial body stay refused, 5xx and transport failures stay errors, and our own write failing stays errors.
  • The pass log gains a sixth outcome count column and the poller counts the new word into it.
  • The Lanes page renders a chip for the new word in the existing fixed order, nonzero-only, unlinked exactly as its siblings.
  • Poller tests assert a 404 maps to not_found and a 503 to errors.
  • No new skip value: this is an outcome word, not a pass shape.

Blocked by

  • None — can start immediately.
## Parent Part of #137 (spec 4 of 4 from the wayfinder map #114). ## What to build Prefactor. A page that is gone stops being the same word as a Site that is busy. Today one outcome word covers a 404 (correct the address), a 503 (wait) and our own write failing (the database is unwell) — three different owner actions behind one printed word. This ticket adds the sixth word and nothing else, so it lands green before any per-Series failure state exists. ## Acceptance criteria - [ ] The read path classifies a 4xx status other than 403 as `not_found`; 403 and an interstitial body stay `refused`, 5xx and transport failures stay `errors`, and our own write failing stays `errors`. - [ ] The pass log gains a sixth outcome count column and the poller counts the new word into it. - [ ] The Lanes page renders a chip for the new word in the existing fixed order, nonzero-only, unlinked exactly as its siblings. - [ ] Poller tests assert a 404 maps to `not_found` and a 503 to `errors`. - [ ] No new skip value: this is an outcome word, not a pass shape. ## Blocked by - None — can start immediately.
sulthan added the ready-for-agent label 2026-08-22 17:39:56 +07:00
sulthan self-assigned this 2026-08-22 18:11:22 +07:00
Author
Owner

Merged into spec-137. DONE — errNotFound sentinel, outcomeNotFound/notFound count, migration 0017 (poll_passes.not_found), Lanes 'not found' chip in fixed order. Poller tests assert 404→not_found, 503→errors. Full backend suite green post-merge.

Merged into spec-137. DONE — errNotFound sentinel, outcomeNotFound/notFound count, migration 0017 (poll_passes.not_found), Lanes 'not found' chip in fixed order. Poller tests assert 404→not_found, 503→errors. Full backend suite green post-merge.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sulthan/mangaBookmark#164