Files
bfe-core1106-sdk/docs/ci-cd.md
T
BFE Engineering 42fb386f60 docs: ASCII typography and style normalization across all repo text
Replace every em dash with real punctuation (rewrites, not hyphen swaps)
in docs, code comments, scripts, configs, and the port records; convert
en dashes, curly quotes, ellipsis glyphs, arrows, and section signs to
ASCII; drop machine-writing tell phrases from living docs. ADR titles
now use a colon. The M2 bring-up DTS model string carried an em dash
into the patch series and its record echoes; fixed at both, and the full
series re-verified to apply cleanly onto pristine 6.18.46. One comment
in freshness.h deliberately names the em dash glyph the UI renders as
the unknown mark; that is data, kept as prose naming it.

Verified: cargo tests (sim, config-lint, rs485-bridge), shellcheck,
both driver MC/DC harnesses, patches-apply.
2026-08-31 12:31:27 -06:00

1.9 KiB

CI/CD

.github/workflows/ci.yml: every job runs on GitHub-hosted ubuntu-latest. No self-hosted runner is (or may be) reachable from this repo's workflows: on a public repo, a fork PR that gets one approved run could otherwise execute code on private infrastructure (ADR-0007).

Jobs

Job Runner What it does
test ubuntu-latest cargo test (sim + config-lint + qemu/rs485-bridge) + cargo-llvm-cov line coverage on sim; outputs passed/coverage.
mcdc ubuntu-latest 100% MC/DC enforced on every drivers/*/test (gcc-14 -fcondition-coverage).
bench ubuntu-latest Smoke-runs the sim + rs485-bridge micro-benchmarks; emits ns/op trend JSON.
patches-apply ubuntu-latest Fetches pristine linux-6.18.46 (cached, sha256-verified) and applies patches/* in order.
qemu-tools ubuntu-latest shellcheck on qemu/**.sh; builds the initramfs (pinned busybox) and the A/B disk image.
kernel-build ubuntu-latest, dispatch-only apt-installs the cross toolchain + qemu, build/build-kernel.sh -> zImage + rv1106-warden.dtb, QEMU -M virt boot smoke (fail-closed), artifact upload (best-effort). Trigger: gh workflow run ci.yml.
prune-artifacts ubuntu-latest, dispatch-only Deletes kernel-rv1106 artifacts beyond the newest 3.
badges ubuntu-latest Renders loc/tests/coverage shields on push to main ([skip ci] + paths-ignore loop guard).

Runner History

kernel-build originally ran on a repo-scoped self-hosted runner (ADR-0004) because hosted minutes were metered on the private repo. Going public made hosted minutes free and a self-hosted registration a fork-PR liability, so ADR-0007 retired it. That runner's site records live in the private deployment log, not here.

Badges

Static shields SVGs are committed by the badges job. The GitHub-native ci.yml status badge works live regardless.