feat(desktop): instrument macOS memory activation and extraction outcomes #1456
Workflow file for this run
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: Desktop Backend Contracts | |
| on: | |
| pull_request: | |
| paths: | |
| - ".github/workflows/desktop-backend-contracts.yml" | |
| - "backend/testing/contracts/**" | |
| - "backend/database/conversations.py" | |
| - "backend/database/helpers.py" | |
| - "backend/database/memories.py" | |
| - "backend/models/**" | |
| - "backend/test.sh" | |
| - "backend/utils/encryption.py" | |
| - "contract_tests/**" | |
| - "desktop/macos/Backend-Rust/Cargo.lock" | |
| - "desktop/macos/Backend-Rust/Cargo.toml" | |
| - "desktop/macos/Backend-Rust/src/models/**" | |
| - "desktop/macos/Backend-Rust/src/services/firestore.rs" | |
| - "desktop/macos/Backend-Rust/src/services/firestore/**" | |
| - "desktop/macos/scripts/desktop-core-harness.sh" | |
| - "desktop/macos/scripts/desktop-flow-lint.py" | |
| - "desktop/macos/scripts/desktop_flow_contract.py" | |
| - "desktop/macos/e2e/**" | |
| - "desktop/macos/Desktop/Sources/DesktopAutomationBridge.swift" | |
| - "desktop/macos/Desktop/Sources/DesktopAutomationOpenOmiShortcutQA.swift" | |
| - "desktop/macos/Desktop/Sources/FloatingControlBar/RealtimeHubController.swift" | |
| - "desktop/macos/Desktop/Sources/MainWindow/Pages/TasksPage.swift" | |
| - "desktop/macos/Desktop/Sources/MainWindow/Pages/MemoriesPage.swift" | |
| - "desktop/macos/Desktop/Sources/Rewind/Core/RewindArtifactGauntlet.swift" | |
| jobs: | |
| desktop-core-e2e-t0: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-python@v6 | |
| with: | |
| python-version-file: backend/.python-version | |
| - name: Install flow lint dependency | |
| run: python3 -m pip install PyYAML | |
| - name: Install agent runtime for gauntlet self-check | |
| working-directory: desktop/macos/agent | |
| run: npm ci | |
| - name: Desktop core E2E self-check (T0) | |
| run: ./desktop/macos/scripts/desktop-core-harness.sh --self-check --skip-backend-contracts | |
| contracts: | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: ${{ github.workspace }} | |
| env: | |
| ENCRYPTION_SECRET: omi_ZwB2ZNqB2HHpMK6wStk7sTpavJiPTFg7gXUHnc4tFABPU6pZ2c2DKgehtfgi4RZv | |
| FIRESTORE_EMULATOR_HOST: localhost:8787 | |
| GOOGLE_CLOUD_PROJECT: omi-contract-tests | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-python@v6 | |
| with: | |
| python-version-file: backend/.python-version | |
| - uses: astral-sh/setup-uv@ecd24dd710f2fb0dca1693a67af11fc4a5c5ec84 | |
| with: | |
| enable-cache: true | |
| cache-dependency-glob: backend/pylock*.toml | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Install Python contract dependencies | |
| working-directory: backend | |
| run: uv pip sync pylock.toml --system | |
| - name: Run Python desktop backend contracts | |
| run: python -m pytest backend/testing/contracts -v | |
| - name: Run Rust desktop backend contracts | |
| run: cargo test --manifest-path desktop/macos/Backend-Rust/Cargo.toml contract |