Skip to content

ADR-006: Using GitHub Actions for CI Verification

Status: Accepted Date: 2026-04-05

Context

Automated CI is needed to catch regressions in linting, type checking, and unit tests on every pull request and push to main. GitHub Actions is available without additional cost given the choice of GitHub hosting (ADR-005) and requires no external service configuration.

Decision

Use GitHub Actions for all CI pipelines: lint (ruff), type check (mypy), unit tests (pytest), and documentation build (mkdocs build). A separate release.yml workflow handles manual release triggering.

Consequences

  • Positive: CI runs automatically on PRs with no additional service accounts or tokens.
  • Positive: Workflow YAML lives in the repository alongside the code it tests, keeping CI and code in sync.
  • Negative: Real-hardware integration tests (requiring a physical DPS-150) cannot run in CI and are excluded.
  • Negative: Further vendor coupling to GitHub (see ADR-005).