The macos-14 runner's Swift 5.10 rejects region-isolation patterns (weak-self captures in MainActor Tasks) that the codebase relies on; move CI to macos-15 and run the test suite alongside the release build.