# SPDX-FileCopyrightText: 2026 FocusFlow contributors # SPDX-License-Identifier: AGPL-3.0-only # Forgejo-native CI for the Circuit-Forge focus-flow fork. # # Ashley's upstream .github/workflows/ci.yml targets GitHub-hosted # ubuntu-latest/windows-latest/macos-latest runners, which don't exist on # this self-hosted instance for non-org repos (that workflow shows every # matrix job as "Has been cancelled" on eva/focus-flow). This workflow # mirrors the working pattern already used by circuitforge-core, peregrine, # and kiwi on this instance: ubuntu-latest only. name: CI on: push: branches: [main, 'feat/**', 'fix/**'] pull_request: branches: [main] jobs: workspace: name: Pure-Dart workspace packages runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: dart-lang/setup-dart@v1 with: sdk: stable - run: dart pub get - run: dart analyze - run: dart run scripts/test.dart flutter_app: name: Flutter app (analyze, test, format) runs-on: ubuntu-latest defaults: run: working-directory: apps/focus_flow_flutter steps: - uses: actions/checkout@v4 - uses: subosito/flutter-action@v2 with: flutter-version: 3.44.4 channel: stable - run: flutter pub get - run: flutter analyze - run: flutter test - run: dart format --set-exit-if-changed lib test