Same fix as breadpad: build inside the shared pinned Arch container
(bread-ecosystem/ci/, cloned at the sha in ci/bread-ecosystem.rev)
instead of building natively against whatever's on the runner host.
Adds check.yml (clippy + test on feature/**/fix/**) as a fast-fail gate
before anything reaches main.
Turning on clippy -D warnings for the first time surfaced 10 pre-existing
warnings (int_plus_one, ptr_arg on &mut Vec params, collapsible_if,
collapsible_match) across layout.rs, mirror.rs, profile.rs, and the
config/mirror TUI views — all fixed exactly per clippy's suggested diffs,
verified behavior-preserving (the mirror_view.rs collapse in particular:
confirmed the "do nothing" fallthrough when mirror.result is None is
unchanged, since that was already the fallthrough behavior of the
original nested if with no matching else on the outer condition).
Verified locally: build, clippy, and test all pass through the new
container path.
Replaces the dev/beta branch split with one trunk (main): dev-track
builds still publish on every push, but the beta track now publishes
from a vX.Y.Z-rc.N prerelease tag instead of a separately-maintained
beta branch. Removes the branch nobody reliably kept in sync.
GitHub Actions self-hosted runners require per-repo registration on a
personal (non-org) account — every new bakery repo needed a manually
provisioned runner on hestia, which nobody had noticed was broken
until this session. Forgejo Actions' runner already serves every repo
with zero registration. Moves release.yml there (dl.breadway.dev is
the primary bakery fetch target either way; GitHub release upload is
kept as the fallback path, now via an explicit token since Forgejo
Actions has no ambient GITHUB_TOKEN), and adds a mirror workflow to
keep GitHub in sync automatically instead of manual dual-remote pushes.