Follow-up from the #1142 review (register IDs: F-03, F-04, F-07, G-09–G-13, G-30, G-31, D-06, L-01, L-06, L-11, X-02, X-08, N-03). Evidence in the review laps: 1, 2, 3, 5, 7.
The documented production Helm install has structural gaps the docs partially hedge:
- No
JENTIC_ENV=production on the OSS path, so the placeholder-secret guard silently generates per-process ephemeral secrets instead of failing (F-03).
- "Set the shared-state backend to Redis before scaling out" is not executable on the published image — the
redis extra is not installed (F-04).
- Bundled-DB migrate hook is
post-install,post-upgrade, so new pods serve on the old schema until the Job finishes; should be pre-upgrade + post-install (G-09).
LOG_FORMAT/LOG_LEVEL env vars documented in the chart README are read by nothing (G-10).
- Values-file DB passwords are corrupted by YAML number coercion (
password: 0123456789 renders 1.23456789e+08); a kindIs "string" + fail guard is a two-line fix (G-12).
- No
securityContext on any application subchart (no runAsNonRoot, readOnlyRootFilesystem, capabilities.drop), no Ingress/PDB/HPA/NetworkPolicy — while docs/security/README.md prescribes exactly that checklist (G-13, X-02).
- Omitting
global.image.tag silently deploys :latest; the _image.tpl comment claims a warning that is never printed (G-30).
extraEnv renders before the chart's own env helpers, so on duplicate keys the chart always beats the operator (G-31).
- Default
helm install scaling advice exceeds the bundled Postgres max_connections (100) at 2 processes (D-06).
- Air-gapped installs need
docker.io/postgres, otel, and gateway pulls that the transfer section never lists (G-11).
- Bundled Postgres PVC is 8Gi, immutable via
volumeClaimTemplates, documented nowhere (L-06).
trusted_proxies defaults empty and is documented only on the path without an ingress — behind the ingress helm.md mandates, the whole fleet shares one rate-limit bucket (X-08).
jti single-use is process-local; multi-replica auth replays inside the 300 s window; the Redis-before-scale-out list omits it (M-12-adjacent, filed here for the chart shape).
Partially addressed on the branch already: memory requests/limits for app/admin raised to 256Mi/1Gi (L-01/N-01), --timeout 30m documented, external-DB secret shapes corrected (F-01/F-02).
Follow-up from the #1142 review (register IDs: F-03, F-04, F-07, G-09–G-13, G-30, G-31, D-06, L-01, L-06, L-11, X-02, X-08, N-03). Evidence in the review laps: 1, 2, 3, 5, 7.
The documented production Helm install has structural gaps the docs partially hedge:
JENTIC_ENV=productionon the OSS path, so the placeholder-secret guard silently generates per-process ephemeral secrets instead of failing (F-03).redisextra is not installed (F-04).post-install,post-upgrade, so new pods serve on the old schema until the Job finishes; should bepre-upgrade+post-install(G-09).LOG_FORMAT/LOG_LEVELenv vars documented in the chart README are read by nothing (G-10).password: 0123456789renders1.23456789e+08); akindIs "string"+failguard is a two-line fix (G-12).securityContexton any application subchart (norunAsNonRoot,readOnlyRootFilesystem,capabilities.drop), no Ingress/PDB/HPA/NetworkPolicy — whiledocs/security/README.mdprescribes exactly that checklist (G-13, X-02).global.image.tagsilently deploys:latest; the_image.tplcomment claims a warning that is never printed (G-30).extraEnvrenders before the chart's own env helpers, so on duplicate keys the chart always beats the operator (G-31).helm installscaling advice exceeds the bundled Postgresmax_connections(100) at 2 processes (D-06).docker.io/postgres, otel, and gateway pulls that the transfer section never lists (G-11).volumeClaimTemplates, documented nowhere (L-06).trusted_proxiesdefaults empty and is documented only on the path without an ingress — behind the ingress helm.md mandates, the whole fleet shares one rate-limit bucket (X-08).jtisingle-use is process-local; multi-replica auth replays inside the 300 s window; the Redis-before-scale-out list omits it (M-12-adjacent, filed here for the chart shape).Partially addressed on the branch already: memory requests/limits for app/admin raised to 256Mi/1Gi (L-01/N-01),
--timeout 30mdocumented, external-DB secret shapes corrected (F-01/F-02).