npm run preprod-remote in bboard-cli fails immediately at the environment health check with Request failed with status code 503. The preprod config points at the old STL faucet (faucet.preprod.midnight.network), whose /api/health now returns 503. testkit's env health check pings the faucet and aborts startup on that failure, so the Academy "bulletin board" lesson can't start on preprod.
Per the recent move to the Nethermind faucets, bboard should point at those instead.
Reproduce
cd bboard-cli
npm run preprod-remote
Output:
INFO: Connected to node https://rpc.preprod.midnight.network/health: {...}
INFO: Connected to indexer https://indexer.preprod.midnight.network/ready: ""
INFO: Connected to proof server http://localhost:5xxxx/health: {"status":"ok",...}
ERROR: Found error 'Request failed with status code 503'
INFO: Exiting...
The node, indexer, and proof server all connect; the faucet health check is the step that 503s.
Root cause
bboard-cli/src/config.ts:120 (PreprodTestEnvironment) sets faucet: 'https://faucet.preprod.midnight.network/api/request-tokens'.
- testkit-js's env health check pings the faucet whenever a faucet URL is present (it calls
FaucetClient.health(), a GET <faucet>/api/health), regardless of whether funding is actually used.
- The STL preprod faucet
/api/health returns 503. bboard/Academy still reference it instead of the Nethermind faucet.
Endpoint status (checked 2026-06-11):
| endpoint |
status |
https://faucet.preprod.midnight.network/api/health (STL, in config) |
503 |
https://faucet.preview.midnight.network/api/health (STL) |
200 (still up today) |
https://midnight-tmnight-preprod.nethermind.dev/api/health |
200 |
https://midnight-tmnight-preview.nethermind.dev/api/health |
200 |
Proposed fix
Replace the STL faucet URLs with the Nethermind ones in bboard-cli/src/config.ts:
- preprod (
config.ts:120):
https://faucet.preprod.midnight.network/api/request-tokens
to https://midnight-tmnight-preprod.nethermind.dev/api/request-tokens
- preview (
config.ts:93):
https://faucet.preview.midnight.network/api/request-tokens
to https://midnight-tmnight-preview.nethermind.dev/api/request-tokens
(preview's STL host still responds today, but migrating it now keeps both envs consistent with the Nethermind move.)
Confirmed locally that swapping preprod to the Nethermind faucet clears the 503 and the CLI proceeds past the health check.
npm run preprod-remoteinbboard-clifails immediately at the environment health check withRequest failed with status code 503. The preprod config points at the old STL faucet (faucet.preprod.midnight.network), whose/api/healthnow returns 503. testkit's env health check pings the faucet and aborts startup on that failure, so the Academy "bulletin board" lesson can't start on preprod.Per the recent move to the Nethermind faucets, bboard should point at those instead.
Reproduce
Output:
The node, indexer, and proof server all connect; the faucet health check is the step that 503s.
Root cause
bboard-cli/src/config.ts:120(PreprodTestEnvironment) setsfaucet: 'https://faucet.preprod.midnight.network/api/request-tokens'.FaucetClient.health(), aGET <faucet>/api/health), regardless of whether funding is actually used./api/healthreturns 503. bboard/Academy still reference it instead of the Nethermind faucet.Endpoint status (checked 2026-06-11):
https://faucet.preprod.midnight.network/api/health(STL, in config)https://faucet.preview.midnight.network/api/health(STL)https://midnight-tmnight-preprod.nethermind.dev/api/healthhttps://midnight-tmnight-preview.nethermind.dev/api/healthProposed fix
Replace the STL faucet URLs with the Nethermind ones in
bboard-cli/src/config.ts:config.ts:120):https://faucet.preprod.midnight.network/api/request-tokensto
https://midnight-tmnight-preprod.nethermind.dev/api/request-tokensconfig.ts:93):https://faucet.preview.midnight.network/api/request-tokensto
https://midnight-tmnight-preview.nethermind.dev/api/request-tokens(preview's STL host still responds today, but migrating it now keeps both envs consistent with the Nethermind move.)
Confirmed locally that swapping preprod to the Nethermind faucet clears the 503 and the CLI proceeds past the health check.