Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 19 additions & 10 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@
postgres:
image: postgres:15
env:
POSTGRES_PASSWORD: postgres

Check warning on line 168 in .github/workflows/ci.yml

View workflow job for this annotation

GitHub Actions / Infrastructure Security Scan

[HIGH] Passwords And Secrets - Generic Password

Query to find passwords and secrets in infrastructure code.
POSTGRES_DB: test_wifi_densepose
options: >-
--health-cmd pg_isready
Expand Down Expand Up @@ -207,7 +207,7 @@
- name: Run unit tests
continue-on-error: true
env:
DATABASE_URL: postgresql://postgres:postgres@localhost:5432/test_wifi_densepose

Check warning on line 210 in .github/workflows/ci.yml

View workflow job for this annotation

GitHub Actions / Infrastructure Security Scan

[HIGH] Passwords And Secrets - Password in URL

Query to find passwords and secrets in infrastructure code.
REDIS_URL: redis://localhost:6379/0
ENVIRONMENT: test
run: |
Expand All @@ -216,7 +216,7 @@
- name: Run integration tests
continue-on-error: true
env:
DATABASE_URL: postgresql://postgres:postgres@localhost:5432/test_wifi_densepose

Check warning on line 219 in .github/workflows/ci.yml

View workflow job for this annotation

GitHub Actions / Infrastructure Security Scan

[HIGH] Passwords And Secrets - Password in URL

Query to find passwords and secrets in infrastructure code.
REDIS_URL: redis://localhost:6379/0
ENVIRONMENT: test
run: |
Expand Down Expand Up @@ -282,17 +282,26 @@
env:
MOCK_POSE_DATA: "true"
run: |
# The repo's performance suite is pytest (test_api_throughput.py,
# test_frame_budget.py, test_inference_speed.py) — there is no
# locustfile.py, so the old `locust -f tests/performance/locustfile.py`
# command always failed with "Could not find ...". Run the real suite.
# -o addopts="" drops the root pyproject's --cov/--cov-fail-under=100
# flags (pytest-cov isn't installed here and 100% cov is for unit tests).
# Gate only on the genuine, deterministic perf guard:
# test_frame_budget.py times the *real* CSIProcessor pipeline against
# the ADR 50 ms per-frame budget (single-frame, p95 over 100 frames,
# +Doppler) — a true regression signal.
#
# test_api_throughput.py / test_inference_speed.py are excluded: every
# test there is a TDD red-phase stub (suffix `_should_fail_initially`)
# that times a *mock that sleeps* — meaningless as a perf signal, with
# machine-dependent wall-clock asserts (e.g. `actual_rps >= 40`,
# `batch_time < individual_time`) that are inherently flaky on shared
# CI runners, plus a cross-class fixture-scope bug. Forcing them green
# would be manufacturing a false signal; they stay in-repo for local
# TDD but do not gate CI until the underlying features are implemented.
#
# `python -m pytest` (not the bare `pytest` script) puts the cwd
# (archive/v1) on sys.path so test_frame_budget.py's `from src.core...`
# import resolves — the bare script omits cwd and raises
# ModuleNotFoundError: No module named 'src'.
python -m pytest tests/performance/ -o addopts="" -v --junitxml=perf-junit.xml
# (archive/v1) on sys.path so `from src.core...` resolves — the bare
# script omits cwd and raises ModuleNotFoundError: No module named 'src'.
# -o addopts="" drops the root pyproject's --cov/--cov-fail-under=100.
python -m pytest tests/performance/test_frame_budget.py \
-o addopts="" -v --junitxml=perf-junit.xml

- name: Upload performance results
if: always()
Expand Down
Loading