Context
The test and lint jobs run only on ubuntu-latest (.github/workflows/ci.yml). GoReleaser cross-compiles for macOS and Windows at release time, but nothing tests there — so a platform-specific bug (path handling, terminal/TUI behavior, os/exec differences) can ship undetected.
The task
Add macos-latest and windows-latest to the test job via a matrix. Expect to fix a few genuinely platform-specific things (path separators, the inline Bubble Tea renderer, subprocess env) — those fixes are the real value.
Notes / constraints
- The repo's convention is to run tests in Docker locally for host-safety; CI runners are ephemeral VMs where native
go test is fine (the workflow already does this on Linux).
- Keep the coverage gate on the Linux leg to avoid triple-counting.
Acceptance
- CI is green on all three OSes (or the platform bugs it surfaces are fixed).
- No flakiness introduced.
Context
The
testandlintjobs run only onubuntu-latest(.github/workflows/ci.yml). GoReleaser cross-compiles for macOS and Windows at release time, but nothing tests there — so a platform-specific bug (path handling, terminal/TUI behavior,os/execdifferences) can ship undetected.The task
Add
macos-latestandwindows-latestto the test job via a matrix. Expect to fix a few genuinely platform-specific things (path separators, the inline Bubble Tea renderer, subprocess env) — those fixes are the real value.Notes / constraints
go testis fine (the workflow already does this on Linux).Acceptance