Update documentation for ML-21, ML-9, and Erlang 28.5

- architecture.md: document new ErrorResponse behaviour, HttpError, and
  Worker.ErrorHandler modules plus per-API ErrorResponse pattern
- project-conventions.md: capture API-failure → Oban tuple convention and
  mix_audit CI/pre-commit run
- production-infrastructure.md: bump builder image Erlang to 28.5 and
  note mix_audit in the lint step
This commit is contained in:
Claudio Ortolina
2026-04-24 14:29:35 +01:00
parent 4418fbc377
commit ed2e91400c
3 changed files with 15 additions and 2 deletions
+2 -2
View File
@@ -25,7 +25,7 @@ push via GitHub Actions.
The Docker image is a multi-stage build:
1. **Builder**`hexpm/elixir:1.20.0-rc.4-erlang-28.4.3-debian-trixie-20260421-slim` with
1. **Builder**`hexpm/elixir:1.20.0-rc.4-erlang-28.5-debian-trixie-20260421-slim` with
Node.js 25, compiles deps, builds assets (`mix assets.deploy`), generates an OTP release.
2. **Runner**`debian:trixie-20260421-slim` with minimal runtime deps (`libstdc++6`,
`openssl`, `libncurses6`, `ca-certificates`). Runs as unprivileged `nobody` user.
@@ -94,7 +94,7 @@ Uses `mise` (via `jdx/mise-action@v4`) for tool version management.
```
Push to main (or PR / manual dispatch)
├── Lint (format, gettext, credo, sobelow, shellcheck, docker image, asset build)
├── Lint (format, gettext, credo, sobelow, mix_audit, shellcheck, docker image, asset build)
├── Test (mix test with partitioning, coverage ≥75%)
└── Deploy (requires GitHub environment approval, main branch only)
├── Trigger deployment via Coolify API (hurl)