mirror of
https://github.com/screentinker/screentinker.git
synced 2026-08-19 08:33:56 -06:00
|
Some checks are pending
CI / Unit tests (node --test) (push) Waiting to run
CI / Unit tests (node:sqlite fallback, Node 24) (push) Waiting to run
CI / OpenAPI spec lint (push) Waiting to run
CI / Android unit tests (Kotlin schedule evaluator vectors) (push) Waiting to run
CI / Licence gate + SBOM (production deps) (push) Waiting to run
CI / Boot smoke + version check (push) Waiting to run
1.9.38 made better-sqlite3 optional so a compiler-less host installs cleanly and falls back to node:sqlite. That fallback is Node 24 in practice — absent on 20.x, flagged off on 22.x — and this project's declared floor is 22.9. On those runtimes a missing native driver is not a slower server, it is no server. Found by running the suite the way CI does rather than the way it is convenient to: `npm ci` on a machine that declines to run install scripts reported success, silently left no better-sqlite3 on disk, and 291 tests failed with "server did not boot" and nothing anywhere explaining why. npm drops an optional dependency in that situation where it would have installed a required one. missingDeps() now treats optionalDependencies as required whenever node:sqlite is unavailable, so preflight repairs it as it would any other missing package. The decision is split into requiredDeps(pkg, builtinDriver) so both kinds of host can be tested from either runtime, rather than only the one the suite happens to run on. Full suite 1782 pass / 0 fail on the native driver and on the fallback. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014kfhrUPit5MCqxeTQyqr56 |
||
|---|---|---|
| .. | ||
| config | ||
| db | ||
| lib | ||
| middleware | ||
| player | ||
| routes | ||
| scripts | ||
| services | ||
| test | ||
| ws | ||
| .gitignore | ||
| config.js | ||
| package-lock.json | ||
| package.json | ||
| server.js | ||
| smoke-ui.js | ||
| version.js | ||