47 lines
1.6 KiB
Markdown
47 lines
1.6 KiB
Markdown
|
|
**Status**: ✅ RESOLVED (January 30, 2026)
|
|
|
|
## Summary
|
|
|
|
The run failed on main while passing on feature and development branches.
|
|
|
|
## Failure details
|
|
|
|
The primary error is a socket hang up during a security test in
|
|
`zzz-admin-whitelist-blocking.spec.ts`:
|
|
|
|
```text
|
|
Error: apiRequestContext.post: socket hang up at
|
|
tests/security-enforcement/zzz-admin-whitelist-blocking.spec.ts:126:21
|
|
```
|
|
|
|
The test POSTs to [the admin reset endpoint][admin-reset], but the test
|
|
container cannot reach the admin API endpoint. This blocks the emergency
|
|
reset and fails the test.
|
|
|
|
## Likely cause
|
|
|
|
The admin backend at [http://localhost:2020][admin-base] is not running or
|
|
not reachable from the test runner container.
|
|
|
|
## Recommended fixes
|
|
|
|
- Ensure the admin backend is running and accessible from the test runner.
|
|
- Confirm the workflow starts the required service and listens on port 2020.
|
|
- If using Docker Compose, ensure the test container can reach the admin API
|
|
container (use `depends_on` and compatible networking).
|
|
- If the endpoint should be served by the app under test, verify environment
|
|
variables and config expose the admin API on the correct port.
|
|
|
|
## Optional code adjustment
|
|
|
|
If Playwright must target a non-default admin endpoint, read it from an
|
|
environment variable such as `CHARON_ADMIN_API_URL`.
|
|
|
|
## Resolution
|
|
|
|
Fixed by ensuring proper Docker Compose networking configuration and verifying admin backend service availability before test execution. Tests now properly wait for service readiness.
|
|
|
|
[admin-reset]: http://localhost:2020/emergency/security-reset
|
|
[admin-base]: http://localhost:2020
|