WS-C8 [PROTO] Health surface: System.GetHealth (outbox pending/failed, per-account last-sync outcome, WAL size) #296

Open
opened 2026-07-31 18:14:22 +00:00 by KofTwentyTwo · 1 comment
KofTwentyTwo commented 2026-07-31 18:14:22 +00:00 (Migrated from github.com)

Coordinate the per-account last-sync schema with WS-F GetHealth (same surface -- de-dup with WS-F10). Size M.

Roadmap-to-9/10 (design: scratchpad/design/). Serial PROTO queue via WS-A. Brief at dispatch. DoD per docs/STORY-WORKFLOW.md.

Coordinate the per-account last-sync schema with WS-F GetHealth (same surface -- de-dup with WS-F10). Size M. Roadmap-to-9/10 (design: scratchpad/design/). Serial PROTO queue via WS-A. Brief at dispatch. DoD per docs/STORY-WORKFLOW.md.
KofTwentyTwo commented 2026-08-07 18:24:46 +00:00 (Migrated from github.com)

Scope note: this story now has a driving consumer. A new in-repo dev instrument (crates/nuncio-monitor, a Windows tray app) needs exactly this surface to show per-account queue depth, so GetHealth gets designed against a real client rather than speculatively.

One prerequisite surfaced while designing it: pending_remote_mutations has no account_id column (id, rule_id, message_id, mutation_type, payload, status, retry_count, created_at), so per-account outbox counts are not currently derivable. That needs an additive column plus a backfill joining message_id -> messages.account_id, following the existing migrate_backfills_smtp_columns_for_a_pre_existing_accounts_table precedent.

De-dup with WS-F10 still applies as noted above.

Scope note: this story now has a driving consumer. A new in-repo dev instrument (`crates/nuncio-monitor`, a Windows tray app) needs exactly this surface to show per-account queue depth, so `GetHealth` gets designed against a real client rather than speculatively. One prerequisite surfaced while designing it: `pending_remote_mutations` has no `account_id` column (`id, rule_id, message_id, mutation_type, payload, status, retry_count, created_at`), so per-account outbox counts are not currently derivable. That needs an additive column plus a backfill joining `message_id` -> `messages.account_id`, following the existing `migrate_backfills_smtp_columns_for_a_pre_existing_accounts_table` precedent. De-dup with WS-F10 still applies as noted above.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: KofTwentyTwo/nuncio#296