`FlowStore._git` now passes `-c gc.auto=0`, so `git commit` no longer forks a background `gc --auto` that reparents onto PID 1 and stays there unreaped. With auto-gc off nothing packs on its own, so `_commit` runs a foreground `git gc` every 500 commits — the trigger a long-lived seeding session actually reaches. `docker/compose.yml` takes the frontend's `VITE_API_URL` build arg from the environment, keeping `https://api.${DOMAIN}` only as the fallback. `setup.sh` already derives the scheme from `ENVIRONMENT`, so an `up --build` that does not layer `compose.local.yml` stops shipping a bundle that calls `https://api.localhost`. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01StpRc2C6au1WJ1EUU7fsfu