fix(sandbox): Dolibarr dev mode (DOLI_PROD=0) + correct install.lock path #18

Merged
arcodange merged 1 commits from claude/sandbox-dev-mode into main 2026-06-29 14:11:28 +02:00
Owner

Context

After seeding erp-sandbox from prod, the home dashboard showed a generic "technical error" banner on every box. Root cause: prod mode ($dolibarr_main_prod=1, the image default via DOLI_PROD) escalates the seed's minor non-fatal warnings into that banner. With prod-mode off, the boxes render fine — which is the right behaviour for a rehearsal/debug environment anyway.

Changes

  • chart/templates/config.yaml: add DOLI_PROD: "0" only when env != prod. Prod's configmap is byte-identical (keeps the image default DOLI_PROD=1) — verified via helm template diff. ArgoCD rolls only the sandbox pod, after which prod-mode-off is durable (survives restarts), replacing my temporary in-pod edit.
  • test/README.md: correct the install.lock path — Dolibarr checks the data root (/var/www/documents, a PVC, so the lock persists), not /var/www/html. Also notes a prod-seeded sandbox still needs it created (the seed + documents/mycompany sync don't include install.lock).

(The live sandbox already has install.lock created at the correct path and prod-mode flipped off; this PR makes the prod-mode setting durable.)

PROD config: byte-identical ✓
SANDBOX config: DOLI_PROD: "0" ✓

🤖 Generated with Claude Code

## Context After seeding `erp-sandbox` from prod, the home dashboard showed a generic **"technical error"** banner on every box. Root cause: prod mode (`$dolibarr_main_prod=1`, the image default via `DOLI_PROD`) escalates the seed's minor non-fatal warnings into that banner. With prod-mode off, the boxes render fine — which is the right behaviour for a rehearsal/debug environment anyway. ## Changes - **`chart/templates/config.yaml`**: add `DOLI_PROD: "0"` **only when `env != prod`**. Prod's configmap is **byte-identical** (keeps the image default `DOLI_PROD=1`) — verified via `helm template` diff. ArgoCD rolls only the sandbox pod, after which prod-mode-off is durable (survives restarts), replacing my temporary in-pod edit. - **`test/README.md`**: correct the `install.lock` path — Dolibarr checks the **data root** (`/var/www/documents`, a PVC, so the lock persists), not `/var/www/html`. Also notes a prod-seeded sandbox still needs it created (the seed + `documents/mycompany` sync don't include `install.lock`). (The live sandbox already has `install.lock` created at the correct path and prod-mode flipped off; this PR makes the prod-mode setting durable.) ``` PROD config: byte-identical ✓ SANDBOX config: DOLI_PROD: "0" ✓ ``` 🤖 Generated with [Claude Code](https://claude.com/claude-code)
arcodange added 1 commit 2026-06-29 14:10:49 +02:00
After seeding erp-sandbox from prod, the home dashboard rendered a generic
"technical error" banner per box: prod mode ($dolibarr_main_prod=1, the image
default via DOLI_PROD) escalates the seed's minor non-fatal warnings into that
banner. Setting DOLI_PROD=0 for non-prod environments makes Dolibarr render
real errors inline (correct for a rehearsal env) and clears the banners.

config.yaml adds `DOLI_PROD: "0"` only when env != prod, so the prod configmap
is byte-identical (prod keeps the image default DOLI_PROD=1) — verified via
helm template diff. ArgoCD rolls only the sandbox pod.

Also corrects the test/README install.lock path: Dolibarr checks the DATA root
(/var/www/documents, a PVC — persists across restarts), not /var/www/html. And
notes that a prod-seeded sandbox still needs install.lock created (the seed +
documents/mycompany sync don't include it).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
arcodange merged commit 650594bb70 into main 2026-06-29 14:11:28 +02:00
arcodange deleted branch claude/sandbox-dev-mode 2026-06-29 14:11:46 +02:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: arcodange-org/erp#18