feat: migrate runtime from Node.js to Bun

- Replace better-sqlite3 with bun:sqlite (native, no native addon build)
- Change all spawn('node') to spawn('bun') for agent processes
- Update package.json scripts: node→bun, tsx→bun, npm→bun
- Add bun-types for tsc compatibility
- Add bun:sqlite→better-sqlite3 shim for vitest (tests run on Node.js)
- Update Dockerfile: install bun alongside Node.js (CLIs need Node)
- Update setup/platform.ts: getNodePath() resolves bun binary
- Remove better-sqlite3 from production dependencies (devDep only for tests)
This commit is contained in:
Eyejoker
2026-03-30 23:58:54 +09:00
parent 3e2954ebcf
commit 0112f5a2d6
18 changed files with 713 additions and 77 deletions

7
test/bun-sqlite-shim.ts Normal file
View File

@@ -0,0 +1,7 @@
/**
* Vitest shim: resolves `bun:sqlite` to better-sqlite3 for Node.js test runtime.
* Production runs on Bun and uses native bun:sqlite.
*/
import BetterSqlite from 'better-sqlite3';
export const Database = BetterSqlite;