forked from BasedHardware/omi
-
Notifications
You must be signed in to change notification settings - Fork 0
76 lines (65 loc) · 2.72 KB
/
Copy pathdesktop-backend-contracts.yml
File metadata and controls
76 lines (65 loc) · 2.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
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/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:
# Exact version resolves locally; an unset version means "latest",
# which fetches the astral-sh/versions manifest and has hard-failed
# CI on that network call. Matches backend/Dockerfile UV_VERSION.
version: "0.11.13"
enable-cache: true
cache-dependency-glob: backend/pylock*.toml
- 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