CompCubeCompCubeWiki
Developers

Testing and verification

Repository checks

# Backend
cd CompCube-Server-TS
npm ci
npm run build
npm test

# Generated client
cd ../CompCube-Client
npm ci
npm run build
npm test

# Website
cd ../CompCube-Website
git submodule update --init --recursive
npm ci
npm run check
npm run build

# Wiki
cd ../CompCube-Wiki
npm ci
npm run typecheck
npm run build

The plugin workflow is the canonical clean build because it obtains stripped references and verified BeatMods dependencies for every matrix game version. Every branch and pull request stores its DLLs in the GitHub Actions run's Artifacts section for 30 days. Non-main builds use a CompCube-development-... artifact name and never publish to the player download server. Download the matching game-version artifact and runtime-test it on Windows/PCVR.

Only workflows running from the exact main branch ref can upload a production DLL to the backend, including manually dispatched workflows. A manual run from any other branch remains an Actions-only development build.

End-to-end matrix

Use two real plugin clients for final acceptance. During development, a role:dev user can create two website-controlled mock clients; they run through the actual queue/gameplay services but the resulting match is private, noncompetitive, and cannot alter MMR.

For Compose verification run docker compose config, build each production target, inspect health status, and confirm persistent data survives docker compose down followed by up.

On this page