Skip to content

Harden the external reliability controller#89

Draft
JROChub wants to merge 1 commit into
mainfrom
agent/harden-reliability-controller
Draft

Harden the external reliability controller#89
JROChub wants to merge 1 commit into
mainfrom
agent/harden-reliability-controller

Conversation

@JROChub

@JROChub JROChub commented Jul 10, 2026

Copy link
Copy Markdown
Owner

What changed

  • moved the production soak controller to a dedicated hardened system service
  • parallelized public probes, validator audits, hourly bursts, and status publication
  • added bounded retries with raw attempt evidence and confirmed-error accounting
  • added a strict ten-sample preflight that uses ephemeral state
  • expanded regression coverage for transient and exhausted RPC/SSH failures
  • documented the dedicated external-controller topology and operating procedure

Root cause

The previous controller ran on an operator Wi-Fi workstation. A local route and DNS interruption made every external probe fail simultaneously. Sequential SSH audits and status publication then extended that controller-side interruption across multiple sample intervals. Single transport timeouts were also recorded immediately as permanent RPC failures.

Validation

  • python3 scripts/test_reliability_campaign.py
  • python3 scripts/test_status_registry.py
  • python3 scripts/test_observer_registry.py
  • python3 scripts/test_observer_intake.py
  • shellcheck scripts/install_reliability_campaign.sh
  • systemd-analyze verify infra/systemd/powerhouse-reliability-controller.service
  • live ten-sample cross-region preflight: 10/10 clean, zero retries
  • live campaign browser render: ON TRACK, 100% uptime, 3/3 validators, 1/1 observer
  • all three published campaign replicas have identical SHA-256 state

Deployment

The dedicated Toronto controller is live. The failed workstation campaign was disabled and archived without deleting its hash-chained evidence. The official replacement campaign began at 2026-07-10T19:17:45Z.

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