|
Deploy to S3 / deploy (push) Successful in 32s
Details
The create modal collected an image but dropped it. Now POST /job/image/upload stores it on disk keyed by the post id (uuid-validated, 5 MB / png-jpg-webp-gif, replace-on-reupload; no DB migration) and GET /job/image/fetch serves it. The create flow uploads right after the row exists, image failure downgrades to a toast instead of failing the create, and Job Details renders the cover via an authorized blob fetch. E2E-verified: upload 200, fetch 200, cover renders in Job Details. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| .vite/deps | ||
| dist | ||
| node_modules | ||
| src | ||
| .dockerignore | ||
| .env.development | ||
| .env.production | ||
| Dockerfile | ||
| index.html | ||
| nginx.conf | ||
| package-lock.json | ||
| package.json | ||
| smoke.test.mjs | ||
| theme.test.mjs | ||
| token.test.mjs | ||
| vite.config.js | ||