Repository navigation
the declared Node floor is below the real one: node:sqlite runs without a flag only from 22.13 #1865
Description
Activity
- addedengineResolution / call-graph engine rulesResolution / call-graph engine rulesparserthe parser (parser/), transferred from AxiomCodeAI/parserthe parser (parser/), transferred from AxiomCodeAI/parser
on Oct 8, 2026 - changed the title
[-]engines says node >=18 while the product needs >=22.5 (node:sqlite)[/-][+]engines says node >=18 while the repo currently requires >=22.5 (node:sqlite)[/+]on Oct 8, 2026 swapnilpaliwal-sd commented
on Oct 8, 2026 ContributorAuthorMore actionsFixed by #1866, merged into apps/integration-0.1.9: both manifests now declare engines.node >=22.5.0 and the C# suite README says 22.5, matching README.md and CI.
- added a commit that references this issue
on Oct 8, 2026 swapnilpaliwal-sd commented
on Oct 8, 2026 ContributorAuthorMore actionsReopening: 22.5 is not the floor either.
node:sqliteexists from 22.5 but only behind--experimental-sqliteuntil 22.13 (and 23.4), and nothing passes that flag.Observed (2026-10-08, Windows Server 2022, Node 22.11, npm 0.1.8):
axiomcode indexfails with❌ bundle: No such built-in module: node:sqlite. The bundle'ssqliteAvailable()tests the version (≥ 22.5), so it lets 22.11 through and the import that follows throws. The same machine on Node 22.20 indexes and answers.Measured boundaries (real Node binaries): 22.11 and 23.3 have no unflagged
node:sqlite; 22.13 and 23.4 do.Fix in PR #1867:
engines.node >=22.13.0in bothpackage.jsonfiles;bin/axiomcode.jsrefuses an older Node at once with "axiomcode needs Node 22.13 or newer (it writes the graph with node:sqlite); this is Node X";sqliteAvailable()probes the module instead of the version; CI comment and the C# suite README say 22.13. The README's two "22.5" mentions need the same change (pending: the README trips the pre-commit term check on existing content).- changed the title
[-]engines says node >=18 while the repo currently requires >=22.5 (node:sqlite)[/-][+]the declared Node floor is below the real one: node:sqlite runs without a flag only from 22.13[/+]on Oct 8, 2026 - added a commit that references this issue
on Oct 8, 2026 swapnilpaliwal-sd commented
on Oct 8, 2026 ContributorAuthorMore actions
Symptom
The declared Node requirement contradicts what the product needs to run.
README.mdstates the true floor (Node ≥ 22.5, badge and Requirements section), but:package.json→"engines": { "node": ">=18.0.0" }parser/package.json→"engines": { "node": ">=18.0.0" }graph/test/csharp/README.md→ "nodemust be 18 or newer"Why 22.5 is the real floor
The bundle writes
graph.sqlitethroughnode:sqlite(graph/bundle/write.ts), which ships only since Node 22.5. On an older Node the guarded import degrades the bundle to CSV only — and every query surface (impact / path / tests, the MCP server, the hooks) readsgraph.sqlite, so the product does not work. A user whose package manager honorsenginesgets no warning at install on Node 18–20 and finds out at runtime instead.Expected
One floor everywhere:
engines≥ 22.5.0 in both manifests and the suite README corrected, matching README.md and CI (Node 22).