B/MBertrand MbanwiENGINEER / BUILDER All workLet’s talk
PLATFORM / DEVELOPER EXPERIENCECASE STUDY / 5 minute read

Actions Runner Control Plane

MAKE THEFLEETREADABLE.

A focused operations product for self-hosted GitHub Actions runners: understand the fleet, review repository policy, and find evidence when something needs attention.

Personal engineering project · Sanitized public editionThe 60-second overview
Checked against GitHub
Last successful check · 2026-09-05 22:54 UTC08064a9Refresh Career Atlas after public repository changes
THE SHORT VERSION

WHAT THIS
DEMONSTRATES.

  1. 01

    GitHub Actions remains the CI coordinator; the control plane brings runner state, repository policy, and operational evidence together.

  2. 02

    Webhooks, GitHub reconciliation, and host heartbeats feed a Node.js service with SQLite persistence and browser updates through SSE.

  3. 03

    The public edition uses demo organizations, runners, and data. Its access rules, policy tests, and recovery drill are available for review.

01 / CONTEXT

THE PROBLEM.

Runner operations can become spread across scripts, labels, GitHub settings, and individual knowledge. An operator needs to understand which runners are available, which repositories should use them, which workflows are too broadly targeted, and what happened during a failure.

Constraints that shaped the work

  • Keep GitHub Actions responsible for coordinating CI jobs.
  • Make the portfolio edition understandable as a single local process.
  • Separate observing repository activity from authorizing self-hosted execution.
  • Publish a reviewable project without exposing production infrastructure.
02 / FOLLOW THE SYSTEM

ARCHITECTURE.

Choose a stage to explore its purpose and supporting source.

ARCHITECTURE WALKTHROUGH01 / 05

Observe the fleet

Workflow and repository webhooks, optional GitHub App reconciliation, and managed-host heartbeats feed the control plane independently. This is a set of input channels, not a chain of sequential jobs.

WHAT TO INSPECT

The architecture describes webhook telemetry, runner inventory reconciliation, and agent health checks.

Read the implementation
03 / ENGINEERING JUDGMENT

THE TRADEOFFS.

01

Add an operations layer

Keep scheduling in GitHub Actions and concentrate on visibility, policy reporting, onboarding, and evidence.

The tradeoffThe product depends on GitHub integrations and cannot replace the CI engine. Its scope stays focused on operator needs.

Inspect the decision
02

Separate telemetry from eligibility

Let public repositories contribute visibility while flagging self-hosted eligibility and broad runner labels separately.

The tradeoffA report helps an operator review policy; it should not be read as proof that every execution path is blocked by the control plane.

Inspect the decision
03

Start with a small deployment

Serve the dashboard and API from one Node.js process with SQLite state.

The tradeoffThe local walkthrough is simpler to run and inspect. Multi-node operation and multi-tenant isolation are outside the documented scope.

Inspect the decision
04 / WHAT THE WORK SHOWS

OUTCOMES & LIMITS.

Policy has executable examples

Tests distinguish explicit runner lanes from broad self-hosted labels and check public repository eligibility in the policy report.

Supporting source

Access rules can be inspected

Authentication tests exercise users outside the configured admin team, including an organization admin when team membership is required.

Supporting source

Recovery is more than a backup file

The restore drill performs integrity checks and reads operational records from a copied database.

Supporting source
THE LESSON

An internal platform needs to help an operator make a decision. Fleet status alone is not enough: policy context, provenance, access boundaries, and recoverable evidence make the information useful. The project also makes the limits of a small local deployment visible.

Where the evidence ends

  • All public organizations, runners, and examples are sanitized demonstration data.
  • The repository contains test definitions and recovery tooling; this page does not claim a current passing test run or a measured production outcome.
  • Multi-tenant isolation, FedRAMP certification, and a managed database deployment are explicitly outside the documented scope.
05 / CHECK THE WORK

THE SOURCEBOOK.

Reviewed 4 September 2026. These links point to the source revision used for this case study.

Source revision 7c6accc · View current workflow history ↗

KEEP EXPLORING

Infraguard