Tests: what QuorX checks before every change

The test suites and how they grew, the platform packs' self-tests, the UI test that drives the desktop app, and the last results kept on this computer.

20 October 2026testsplatformssafety

Every change to QuorX goes through three kinds of tests. None of them needs an OpenRouter key or spends money: they drive QuorX's real code with no model, or with a scripted one.

CommandWhat it testsTakes
npm testThe agent loop, the safety rules, Stop, the terminal, approvals, the desktop tool, NewsAbout a minute
npm run test:packsEach platform pack's self-test that this computer can run: real toolchains, real builds, real debuggersMinutes, more with more toolchains
npm run test:uiThe QuorX desktop app itself, driven like a person would, with a screenshot of every stepA few minutes

What runs

Tests npm test runs (first → now)
86281
Pack self-tests (first → now)
0117
Tests in each npm test file
050100150loopTests, loop: 1616agentTests, agent: 130130securityTests, security: 1919safetyTests, safety: 6666posixTests, posix: 2626newsTests, news: 1616backupTests, backup: 88

The biggest files are the agent (test-agent: the loop, tools, checks and reviewer) and safety (test-safety: the rules for commands, the folders that are off limits, Stop, background jobs, the debugger). test-posix tests the same safety layer the way it works on macOS and Linux; on Windows, the parts that need those systems skip.

Over time

Counted from the test files at each change merged into QuorX's main branch: the test(…) calls in the files npm test runs, and in the platform packs' self-tests.

Tests written, at each change merged into main
npm testPack self-tests
0100200300first#3#14#22#28#36#49#56#39#62npm test, first: 86npm test, v0.1.1: 86npm test, v0.1.2: 87npm test, v0.1.3: 88npm test, v0.1.4: 88npm test, v0.1.5: 88npm test, #2: 137npm test, #3: 139npm test, #4: 139npm test, #6: 139npm test, #5: 148npm test, #7: 150npm test, #8: 150npm test, #9: 150npm test, #14: 150npm test, #10: 150npm test, #12: 176npm test, #13: 176npm test, #11: 176npm test, #16: 180npm test, #18: 180npm test, #22: 188npm test, #20: 188npm test, #23: 188npm test, #24: 192npm test, #25: 192npm test, #26: 203npm test, #27: 203npm test, #28: 203npm test, #30: 217npm test, #29: 218npm test, #32: 223npm test, #31: 223npm test, #34: 223npm test, #40: 224npm test, #36: 224npm test, #35: 228npm test, #43: 228npm test, #42: 229npm test, #46: 230npm test, #41: 231npm test, #48: 234npm test, #49: 234npm test, #50: 236npm test, #51: 236npm test, #47: 241npm test, #52: 244npm test, #53: 244npm test, #44: 250npm test, #56: 250npm test, #57: 251npm test, #54: 259npm test, #37: 264npm test, #59: 265npm test, #58: 268npm test, #38: 275npm test, #39: 280npm test, #45: 284npm test, #60: 284npm test, #61: 281npm test, #62: 281281Pack self-tests, first: 0Pack self-tests, v0.1.1: 0Pack self-tests, v0.1.2: 0Pack self-tests, v0.1.3: 0Pack self-tests, v0.1.4: 0Pack self-tests, v0.1.5: 0Pack self-tests, #2: 0Pack self-tests, #3: 13Pack self-tests, #4: 22Pack self-tests, #6: 30Pack self-tests, #5: 30Pack self-tests, #7: 35Pack self-tests, #8: 43Pack self-tests, #9: 64Pack self-tests, #14: 72Pack self-tests, #10: 92Pack self-tests, #12: 92Pack self-tests, #13: 104Pack self-tests, #11: 117Pack self-tests, #16: 117Pack self-tests, #18: 117Pack self-tests, #22: 117Pack self-tests, #20: 117Pack self-tests, #23: 117Pack self-tests, #24: 117Pack self-tests, #25: 117Pack self-tests, #26: 117Pack self-tests, #27: 117Pack self-tests, #28: 117Pack self-tests, #30: 117Pack self-tests, #29: 117Pack self-tests, #32: 117Pack self-tests, #31: 117Pack self-tests, #34: 117Pack self-tests, #40: 117Pack self-tests, #36: 117Pack self-tests, #35: 117Pack self-tests, #43: 117Pack self-tests, #42: 117Pack self-tests, #46: 117Pack self-tests, #41: 117Pack self-tests, #48: 117Pack self-tests, #49: 117Pack self-tests, #50: 117Pack self-tests, #51: 117Pack self-tests, #47: 117Pack self-tests, #52: 117Pack self-tests, #53: 117Pack self-tests, #44: 117Pack self-tests, #56: 117Pack self-tests, #57: 117Pack self-tests, #54: 117Pack self-tests, #37: 117Pack self-tests, #59: 117Pack self-tests, #58: 117Pack self-tests, #38: 117Pack self-tests, #39: 117Pack self-tests, #45: 117Pack self-tests, #60: 117Pack self-tests, #61: 117Pack self-tests, #62: 117117

Pack self-tests

Every platform pack has self-tests, and npm run test:packs runs them. A pack's logic (parsers, rules, notes) is tested on any computer; the tests that build and run real apps need that pack's toolchain. The Platforms report rates each pack by the best run on record.

PackLevelResultSelf-tests passed
QuorX on Windows: Stop, rules, desktop keysPassedpassed16
AndroidPassedpassed11
Apple appsLogic testedlogic tested8
Every projectLogic testedlogic tested0
C and C++Logic testedlogic tested0
.NET (C#)Logic testedlogic tested0
ElectronPassedpassed8
Flutter and DartPassedpassed5
GoLogic testedlogic tested0
GodotPassedpassed4
Windows installersPassedpassed3
Java and KotlinPassedpassed5
Node.js and TypeScriptPassedpassed1
PythonPassedpassed6
RustPassedpassed3
TauriPassedpassed7
UnityPassedpassed4
Self-tests per pack
051015androidTests, android: 1313Tests, apple: 1212cppTests, cpp: 33Tests, dotnet: 1111electronTests, electron: 88Tests, flutter: 88goTests, go: 33Tests, godot: 88installersTests, installers: 66Tests, jvm: 1414nodeTests, node: 11Tests, python: 1010rustTests, rust: 55Tests, tauri: 88unityTests, unity: 77

UI test

The UI test (npm run test:ui) starts the QuorX desktop app with its own data folder and port, drives its window the way a person would, and saves a screenshot of every step. Its last published run passed 9 of 9 steps. Scenarios: settings, news, cli, running.

On this computer

The last npm test, npm run test:packs and npm run test:ui run in this computer's QuorX folder, if any. Each run keeps only its counts and the names of failed tests, in logs/test-results.json on this computer.

Your own numbers show here when you open this page in QuorX's News.

Help test

Tests pass on the machines they ran on. The more systems they run on, the more they're worth: a pack's self-test that skips here may be the one that fails on another. Running the kit and pasting its report into a "Pack test report" issue adds that system to the record.

Test QuorX on another computer
> npm test
> npm run test:packs
Report: pack-test-report.md (paste it into a "Pack test report" issue)
> 

Also in QuorX. In the app's News, this page adds your own numbers, worked out from your own computer's logs and never uploaded.