Error: listen EADDRINUSE :3000 | Port 3000 occupied — another process on equa-server’s port | Run ps -p $(lsof -ti :3000) -o command= to identify. If next-server, kill it; always use npm run dev for command-center-so (binds to 3001, not 3000) |
| equa-web API calls return HTML instead of JSON | Something other than equa-server on port 3000 | Run ps -p $(lsof -ti :3000) -o command= — should show ts-node. Kill any conflicting process, start equa-server with yarn start:dev, then restart equa-web |
Error: listen EADDRINUSE :8080 | Previous equa-web process still running | lsof -i :8080 to find PID, then kill <PID> |
digital envelope routines::unsupported on equa-web | OpenSSL 3.x incompatibility with Webpack 4 | Verify yarn start includes NODE_OPTIONS='--openssl-legacy-provider' (set automatically in package.json) |
error engine required: node >=22.12.0 | Wrong Node version for equabot | nvm use 24 before running equabot commands |
| Docker compose fails to start | Docker Desktop not running | Start Docker Desktop and wait for initialization |
ECONNREFUSED 127.0.0.1:5432 | PostgreSQL container not running | cd equa-server && docker-compose up -d |
ECONNREFUSED 127.0.0.1:3000 from equa-web | equa-server not started | Start equa-server first: cd equa-server && yarn start:dev |
yarn: command not found | Yarn not installed | npm install -g yarn |
pnpm: command not found | pnpm not installed | npm install -g pnpm |
| Hot reload stops working (equa-web) | Webpack file watcher or cache issue | Stop and restart yarn start |
| API calls return 401 | Session expired or cookie not set | Log in again; check that equa-server and equa-web are on the expected ports |
| Storybook won’t start on port 6006 | Previous Storybook process | lsof -i :6006 to find and kill the process |