Skip to content

Backup credentials (4): detection — group-scoped issues, staleness/reconcile#225

Open
passcod wants to merge 1 commit into
component-public-serverfrom
component-jobs-detect
Open

Backup credentials (4): detection — group-scoped issues, staleness/reconcile#225
passcod wants to merge 1 commit into
component-public-serverfrom
component-jobs-detect

Conversation

@passcod

@passcod passcod commented Jun 16, 2026

Copy link
Copy Markdown
Member

🤖 Component (4), detection half — group-level backup alerting + staleness/reconciliation. Stacked on the component-2 PR (base component-public-server); review that and #223 first.

  • Option-B group-scoped issues migration: issues.server_id becomes nullable and a nullable server_group_id is added (exactly-one-of CHECK, partial unique/last_seen indexes), so control-plane alerts can point at a group and page regardless of any member's is_monitored.
  • database::backup module: the (source, ref) alert-key contract, raise_group_event (the single group-scoped incident entrypoint, consumed by the inspection Job and PGRO too), signal-1 staleness (+ maintenance staleness), and signal 1↔2 reconciliation.
  • crates/jobs/src/bin/backup_staleness.rs: the minute-cadence DB-only sweep loop.
  • commons-servers::backup_jobs::jitter_slot: shared per-group hash-jitter (preflight + maintenance + inspection schedulers).
  • Completes the Option-B Issue.server_id-nullable sweep across all consumers: statuses.rs (reachability), commons-servers/tailnet_sweeps.rs, private-server/fns/issues.rs (IssueData.server_id now nullable); openapi.json + api-types.ts regenerated.
  • Tests: database suite 86/86 (regression-clean across the nullable change), jitter_slot 8/8.

Deferred to a follow-up: the backup_preflight bin (AWS STS/S3 upstream checks) — it needs aws-sdk-s3 and live-AWS verification, so it's not in this PR.

🤖 Generated with Claude Code

Part of TAM-6877.

@passcod passcod force-pushed the component-public-server branch from fdb6412 to a9be8fe Compare June 16, 2026 02:31
@passcod passcod force-pushed the component-jobs-detect branch from faa4831 to a1f8ef3 Compare June 16, 2026 02:31
@passcod passcod force-pushed the component-public-server branch from a9be8fe to f091a0d Compare June 16, 2026 03:41
@passcod passcod force-pushed the component-jobs-detect branch 5 times, most recently from ea05619 to e61e0d9 Compare June 16, 2026 09:38
@passcod passcod force-pushed the component-public-server branch from f091a0d to d63f6f3 Compare June 16, 2026 13:29
@passcod passcod force-pushed the component-jobs-detect branch 3 times, most recently from 8af4282 to 3ebbb7d Compare June 18, 2026 04:04
@passcod passcod force-pushed the component-public-server branch 2 times, most recently from 3bd36c2 to dd4500d Compare June 18, 2026 05:11
@passcod passcod force-pushed the component-jobs-detect branch from 3ebbb7d to dfc7b2e Compare June 18, 2026 05:11
@passcod passcod force-pushed the component-public-server branch from dd4500d to ff26642 Compare June 18, 2026 06:05
@passcod passcod force-pushed the component-jobs-detect branch from dfc7b2e to 1105e20 Compare June 18, 2026 06:05
@passcod passcod force-pushed the component-public-server branch from ff26642 to 7296e3a Compare June 18, 2026 07:03
@passcod passcod force-pushed the component-jobs-detect branch from 1105e20 to 1c6c756 Compare June 18, 2026 07:03
@passcod passcod force-pushed the component-public-server branch from 7296e3a to dc8efd5 Compare June 18, 2026 09:47
@passcod passcod force-pushed the component-jobs-detect branch from 1c6c756 to 92c075b Compare June 18, 2026 09:47
@passcod passcod force-pushed the component-public-server branch from dc8efd5 to b4b1c1b Compare June 18, 2026 12:56
@passcod passcod force-pushed the component-jobs-detect branch from 92c075b to fc37211 Compare June 18, 2026 12:56
…p_event, Option-B group-scoped issues, reachability→monitor rename + DB tests (component 4)
@passcod passcod force-pushed the component-public-server branch from b4b1c1b to bc091bc Compare June 18, 2026 14:39
@passcod passcod force-pushed the component-jobs-detect branch from fc37211 to 7c03a3a Compare June 18, 2026 14:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant