Skip to content
quarry Documentation
Login

Documentation

Summary

Five landings, stacked, bottom-up. Each is a complete, tested, API-first unit that ships value without the ones above it. Phases 0–2 need nothing outside quarry; Phase 3 waits on three notify issues; Phase 4 is optional. Estimates are focused engineering days, not calendar.

phase lands days upstream
0 what exists reaches people 2–3 —
1 a chat that cannot lose a message 5–7 —
2 attention in the open tab 4–6 —
3 push with no tab; an inbox you can clear 2 (+3–4 in notify) notify#300–#302
4 Fossil bridge, promote, robot 3–4 —

How this plan uses the stack

Phase 0 — what exists reaches people

Why first. Today every trigger reaches nobody: no subscriber, no topic member, no workflow exists unless an operator typed them. Fixing this makes the current forum-reply and mention paths work end to end and gives every later phase a working notify to build on.

Touches

Proves it (internal/harness/notify_test.go, a fake notify HTTP server recording calls)

Phase 1 — a chat that cannot lose a message

Touches

Proves it

Watch for. Second-granular timestamps bit forum_read yesterday; chat uses seq for ordering and RFC3339Nano for display, so the class of bug cannot recur — pin that in a test anyway.

Phase 2 — attention in the open tab

Touches

Proves it

Phase 3 — push with no tab; an inbox you can clear

Gated on notify#300 (mark), notify#301 (count/pagination), notify#302 (webpush). The quarry half can be built against a fake notify implementing the agreed routes and merged once the real ones land; do not ship a quarry-side workaround for any of the three.

Touches

Proves it

Phase 4 — Fossil bridge, promote, robot polish

Touches

Proves it

Definition of done, every phase

Upstream verification

notify: #300 mark read, #301 count/pagination, #302 Web Push, #303 workflow upsert, #304 README — filed 2026-08-29. The quarry half of Phase 3 is written against their proposed routes.

dagnats: no change required, verified 2026-08-29 against both sources:

Risks