30 lines
1.0 KiB
Plaintext
30 lines
1.0 KiB
Plaintext
---
|
|
description: Server testing must use isolated bind address and non-default ports
|
|
alwaysApply: true
|
|
---
|
|
|
|
# Server testing — isolated bind only
|
|
|
|
## Never use the user's ports
|
|
|
|
Do NOT start servers on:
|
|
|
|
- Ports from the project's `.env` (e.g. `PORT=4447`)
|
|
- Well-known or project defaults (`4443`, `8080`, `3000`, etc.)
|
|
- `0.0.0.0` when the user's server may already be running there
|
|
|
|
Do NOT leave test servers running in the background (`&`, `nohup`, etc.). Stop them before ending the turn.
|
|
|
|
## OK for agent runtime tests
|
|
|
|
When a live test is truly needed:
|
|
|
|
- Bind to **`127.0.0.2`** (or another non-default loopback alias), not `127.0.0.1` / `0.0.0.0`
|
|
- Use a **high ephemeral port** (e.g. `19443`, `38447`) — never the project's configured port
|
|
- Override via env, e.g. `BIND_ADDRESS=127.0.0.2 PORT=19443 ./build/jtlsrv`
|
|
- Kill the test process when done
|
|
|
|
Prefer compile-only verification (`make`) when that is enough.
|
|
|
|
If the user is already running the real server, ask them to test and share logs rather than starting another listener.
|