Joshua Shay Kricheli NeuroSymbolic AI
v2 v1

Release · v3.7.24

Adopt pnpm as the package manager

chore: adopt pnpm as the package manager

chore v3.7.24 July 5, 2026 Joshua Shay Kricheli 60b25ef

Details

Replaces npm with pnpm so each git worktree gets its own node_modules
hardlinked from pnpm's global content-addressable store — instant, correct
per-branch installs instead of reinstalling or symlinking a shared tree.
- package.json: pin `packageManager: pnpm@10.34.4`; the `build` script now
  calls `pnpm run build:frontend` (was `npm run`); add
  `pnpm.onlyBuiltDependencies` (puppeteer, @parcel/watcher, protobufjs) since
  pnpm 10 blocks dependency build scripts by default.
- Lockfile: package-lock.json -> pnpm-lock.yaml (via `pnpm import`, exact
  resolved versions preserved).
- CI (6 workflows) + netlify.toml: add `pnpm/action-setup@v4` before
  setup-node, `cache: 'npm'` -> `'pnpm'`, `npm ci` ->
  `pnpm install --frozen-lockfile`, `npm run X` -> `pnpm run X`.
- Scripts (local.sh, verify_css_on_stop.sh, check_scss.sh) and docs
  (CLAUDE.md, READMEs, PREVIEW.md, DATABASE.md, agent prompts, cursor rules,
  tooling/test comments): npm -> pnpm.
Left as npm on purpose: the `npm i -g vercel@latest` CLI bootstrap in
deploy-vercel.yml (tool install; npm is always present on the runner) and the
cdn.jsdelivr.net/npm/... asset URLs (not package-manager commands).
Verified locally with pnpm 10.34.4: `pnpm install --frozen-lockfile` clean,
`pnpm run build` (tsc) ok, 16/16 core tests, `version:check` / `version:next`
ok. (`css:check` needs Node 22+ for sass's require() of the chokidar@5 ESM;
this sandbox runs Node 18, CI runs Node 24 — unrelated to the pnpm switch.)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014c7dbCGbQxtWedKRSx4sJi

Files changed (31)

.agent/README.md +2 −2
.agent/prompts/task1-feature.md +3 −3
.agent/prompts/task2-metrics.md +3 −3
.agent/prompts/task3-robustness.md +3 −3
.cursor/rules/site.mdc +1 −1
.github/workflows/agent.yml +7 −4
.github/workflows/ci.yml +7 −4
.github/workflows/deploy-vercel.yml +8 −4
.github/workflows/pr-validation.yml +8 −5
.github/workflows/preview-v3.yml +7 −4
.github/workflows/seed-sections.yml +1 −1
.github/workflows/version-tag.yml +7 −4
CLAUDE.md +13 −13
PREVIEW.md +3 −3
README.md +3 −3
backend/README.md +1 −1
backend/supabase_db/DATABASE.md +10 −10
backend/supabase_db/scripts/push_db.py +2 −2
frontend/README.md +1 −1
frontend/client/tests/edcr-core.test.mjs +1 −1
frontend/client/tests/tpp-core.test.mjs +2 −2
frontend/scripts/check_scss.sh +1 −1
frontend/scripts/local.sh +2 −2
frontend/scripts/verify_css_on_stop.sh +3 −3
netlify.toml +5 −5
package-lock.json +0 −3,680
package.json +9 −1
pnpm-lock.yaml +2,347 −0
tools/changelog/README.md +4 −4
tools/changelog/generate.mjs +1 −1
tools/changelog/test/version-lib.test.mjs +1 −1