github vava-nessa/free-coding-models v0.5.55

latest releases: v0.6.0, v0.5.99, v0.5.98...
3 months ago

Fixed

  • ๐Ÿณ Docker "Tool mode save failed" โ€” clear root cause + actionable fix (#119) โ€” when the fcm-data volume was created with files owned by a different UID (older images, host bind-mounts), chmod -R 777 had no effect because Linux checks file ownership, not mode bits. Two-layer fix:
    1. src/core/config.js โ€” saveConfig() now detects EACCES / EPERM and surfaces a friendly hint via the new exported formatPermissionHint() function. The hint explains why chmod is the wrong tool and gives the exact docker compose down && docker volume rm <vol> && docker compose up fix.
    2. docker-entrypoint.sh โ€” proactive ownership check at container startup. If a config file is owned by a different UID than the running fcm user, the entrypoint logs a loud โš ๏ธ WARNING block before the first save attempt fails with a confusing error.

Closed (upstream, no FCM-side fix possible)

  • ๐Ÿ“Œ Caveman CLI install fails on Node 26 (#101) โ€” this is upstream in @juliusbrussee/caveman-code. better-sqlite3 v11.10.0 doesn't compile against Node.js v26 (V8 API churn: GetPrototype โ†’ GetPrototypeV2, etc.). FCM surfaces the npm error verbatim but cannot fix caveman-code's deps. Workaround: use Node v22 or v24 (both LTS, both supported by better-sqlite3@11).

Maintenance

  • ๐Ÿงช +6 new unit tests for formatPermissionHint() (test/config-permission-hint.test.js) โ€” covers empty string for non-permission errors, EACCES/EPERM detection, Docker volume mention, "chmod is not the fix" wording, multi-line output.

Pre-flight checks

  • 590/590 tests pass (pnpm test)
  • vite build succeeds
  • All three surfaces (CLI, web dashboard, Docker) compatible

Don't miss a new free-coding-models release

NewReleases is sending notifications on new releases.