fix: detect Bluetooth/DJI mics connected mid-session (no app restart)… #58
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| concurrency: | |
| group: ci-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| test: | |
| name: StreamCore tests (iOS Simulator) | |
| runs-on: macos-26 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Show toolchain | |
| run: | | |
| xcodebuild -version | |
| swift --version | |
| - name: Install XcodeGen | |
| run: brew install xcodegen | |
| - name: Generate Xcode project | |
| run: xcodegen generate | |
| # The full Stream app requires the iOS 27 SDK (ScreenCaptureKit + the | |
| # AVAudioInputNode throwing-tap API), which GitHub runners do not ship | |
| # yet — the newest hosted Xcode (26.x) only carries the iOS 26 SDK. Until | |
| # runners gain Xcode 27, CI validates the pure StreamCore logic and its | |
| # test suite (both pinned to an iOS 18 floor in project.yml, so they build | |
| # and run on the runner's iOS 26 simulators). The app itself is verified | |
| # on a physical iOS 27 device. | |
| - name: Test StreamCore | |
| run: | | |
| xcodebuild test \ | |
| -scheme StreamCoreTests \ | |
| -destination 'platform=iOS Simulator,OS=latest,name=iPhone 17' \ | |
| CODE_SIGNING_ALLOWED=NO \ | |
| -skipPackagePluginValidation |