PriceStalker 1.2.5 — Puppeteer fix + DEMO_MODE flag
Fixed
- Puppeteer "Failed to launch the browser process" — the
nodejsuser in the backend image was created withuseradd -r(no-m), leaving$HOMEunset at runtime. Chromium's crash handler (chrome_crashpad_handler) derives its--databasepath from$HOME/$XDG_CONFIG_HOME, so it crashed on launch with--database is required, breaking the browser-fallback branch of the voting scraper. Static-HTML sites (Amazon JSON-LD, Digitec JSON-LD, etc.) were unaffected because they never reach Puppeteer. Fix: create a real home directory for thenodejsuser and setHOME=/home/nodejs.
Added
DEMO_MODEenv flag that disables identity-mutating profile operations. WithDEMO_MODE=true,PUT /api/profileandPUT /api/profile/passwordreturn 403. Useful for any deployment where the operator wants to keep a shared or test account stable — public demos, multi-tenant sandboxes, QA environments. Per-user-scoped operations stay open (adding products, configuring your own AI provider, configuring your own notification webhooks). Off by default; existing deployments see no change.
Docker images
ghcr.io/mikeknight85/pricestalker-backend:1.2.5
ghcr.io/mikeknight85/pricestalker-frontend:1.2.5
Multi-arch (amd64 + arm64).