Troubleshooting
Diagnose from durable intent outward
Start with the desired revision and operation receipt, then inspect target deployment state, runtime acknowledgement, and finally a real network probe. This distinguishes control failure from runtime failure.
Start with the durable operation and desired revision, then move outward:
- Check
/api/readyand administrator component health. - Inspect the relevant operation, deployment, task, or certificate order.
- Compare desired and acknowledged revisions.
- Check the responsible Horizon lane and failed jobs.
- Check the private runtime service and its last-valid state.
- Reconcile only the smallest affected scope.
Choose a symptom:
Do not repair desired state in PowerAdmin or by editing generated edge files. Those are derived and will be overwritten.
Docker reports storage/logs: file exists
This message during make dev-up comes from Docker attempting concurrent copy-up into the shared Laravel storage volume, not from Laravel logging. The current Compose contract mounts core-storage with volume.nocopy: true, and the application entrypoint creates the required directories.
- Confirm the checkout contains the current
compose.dev.yml. - Run
docker compose -f compose.dev.yml configand verify the/app/storagevolume reportsnocopy: true. - Run
make dev-upagain.
Preserve durable development state
Do not use docker compose down -v or remove core-storage as a workaround. If the current contract still fails, capture docker compose ps, the daemon error, and docker volume inspect cdnfoundry-dev_core-storage before changing anything.