Skip to content

v0.7.0 — source health monitoring

Choose a tag to compare

@nazboyko nazboyko released this 31 Aug 05:03
· 110 commits to main since this release
e27af2b

What's new

  • Tracked boards now report whether they are actually answering. Every fetch records a per-source status: ok, empty, slug not found, gated, rate-limited, vendor error, unreachable, unreadable payload.
  • A "Quiet sources" card at the top of /companies lists boards that failed three ticks in a row (Failing) or stayed reachable but returned no posting for 14 days (Silent), each with one-click Re-probe to repair — a clean probe clears the streak.
  • A health dot on every company row, read from the board's raw output rather than from stored jobs, so a strict profile filter never looks like a broken board.
  • Optional line in the daily Telegram digest naming sources that went quiet (/settings → Notifications → "Source health alerts", default on).
  • Turning this on immediately surfaced two boards in this deployment that had been failing silently: GREENHOUSE:pleo (moved to Ashby) and LEVER:plaid.

Schema

  • 20260831170000_add_source_health — additive: Company.lastFetchStatus, Company.consecutiveFailures, Company.lastOkAt, AppSettings.sourceHealthAlerts.

Verification

563 tests pass, tsc --noEmit clean; migration applied in-container; smoke ran a planted bad slug through three ticks (streak 1→2→3, threshold warning fired, row restored); every route 200, screenshots at 1200px and 375px, 0 console errors. npm run test:telegram skipped — escaping covered by unit tests.

References