Add k6 smoke test triggered on every deployment #126
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
There are no load or performance tests. After every deployment, there is no automated check that the application responds within acceptable latency or that the error rate is acceptable. A performance regression — a slow query introduced by a new index, a MinIO connection pool misconfiguration — will only be noticed when a user complains.
Why This Matters
This application handles file uploads to MinIO and full-text search queries against PostgreSQL. Both are I/O-bound operations with real latency characteristics. A smoke test with thresholds catches obvious breakage immediately after deploy without requiring a full load test run.
What Needs To Be Done
Create
load-tests/smoke.js:Add a
smoke-testCI job that runs after the E2E job on merges tomain:Define thresholds as non-negotiable CI gates:
p(95) < 500msfor all API endpoints< 1%Separate nightly load test (ramp to expected traffic, 10 minutes) can be added later — the smoke test is the minimum viable gate.
Acceptance Criteria
load-tests/smoke.jscommitted to repomainCurrently there is no deployment, so will keep that for later