Architecture Explanation
BoardReadyOps is a local-first hardware release pipeline for KiCad projects. The system is intentionally split into boundary layers, core orchestration, parser layers, rule packs, report emitters, release evidence, and GitHub Action wrappers.
Why the layers matter
The repository enforces import boundaries through pnpm run verify:structure so
rules cannot accidentally depend on Action internals and report emitters cannot
call rule implementations directly. This keeps CLI, Action, and future hosted
control-plane integrations aligned around one core pipeline.
Main flow
Discover project -> Load config -> Load plugins -> Run rules -> Apply suppressions/waivers -> Compute readiness -> Emit reports -> Package release evidence
Public contracts
The most important public contracts are:
- CLI commands and exit codes.
- GitHub Action inputs/outputs.
schemas/config.schema.json.schemas/findings.schema.json.- Release evidence bundle layout and manifests.
- Plugin SDK types.
Further reading
docs/architecture/overview.mddocs/architecture/pipeline.mddocs/architecture/rule-engine.mddocs/release/evidence-bundles.mddocs/plugin-sdk.md