-
NexaPG 0.2.4 - Milestone update "v1.0 - Stability, Reliability & Security (P0)"
StableSome checks are pendingContainer CVE Scan (development) / Scan backend/frontend images for CVEs (push) Waiting to runMigration Safety / Alembic upgrade/downgrade safety (push) Successful in 2m43sPostgreSQL Compatibility Matrix / PG14 smoke (push) Successful in 8sPostgreSQL Compatibility Matrix / PG15 smoke (push) Successful in 8sPostgreSQL Compatibility Matrix / PG16 smoke (push) Successful in 8sPostgreSQL Compatibility Matrix / PG17 smoke (push) Successful in 7sPostgreSQL Compatibility Matrix / PG18 smoke (push) Successful in 7sProxy Profile Validation / validate (push) Successful in 3sPython Dependency Security / pip-audit (block high/critical) (push) Successful in 26sDocker Publish (Release) / Build and Push Docker Images (release) Successful in 1m41sreleased this
2026-02-15 11:36:40 +00:00 | 0 commits to main since this releaseSecurity & CI Hardening
NX-202: Python dependency vulnerability gate
- Added dedicated CI workflow:
.github/workflows/python-dependency-security.yml
- Added
pip-auditpolicy gate:- blocks unresolved
HIGH/CRITICALfindings - treats missing severity metadata conservatively as
HIGH
- blocks unresolved
- Added auditable allowlist support:
ops/security/pip-audit-allowlist.json
- Added allowlist validation rules:
- required metadata fields
- expiry enforcement (expired entries fail CI)
- Added dependency scan artifacts upload in CI.
Release pipeline enforcement
- Added dependency security gate to release publishing workflow:
.github/workflows/docker-release.yml
- Release image build/push now stops if unresolved high/critical Python dependency vulnerabilities exist.
Proxy & Production Deployment Profile
NX-203: Secure and repeatable HTTPS reverse-proxy profile
- Added production profile examples:
ops/profiles/prod/.env.production.exampleops/profiles/prod/nginx/nexapg.conf
- Added deployment documentation:
docs/deployment/proxy-production-profile.md
- Documented:
- CORS recommendations per environment (
dev,staging,prod) - required reverse-proxy forwarding headers
- API path forwarding (
/api/-> backend) - mixed-content prevention for HTTPS deployments.
- CORS recommendations per environment (
Proxy guardrail validation in CI
- Added workflow:
.github/workflows/proxy-profile-validation.yml
- Added validation script:
ops/scripts/validate_proxy_profile.sh
- CI now verifies:
- relative frontend API base defaults
- required API proxy config and forwarded headers
- mixed-content guard presence
- production profile avoids wildcard CORS.
Secret Management Guidance
NX-204: Secure secret handling documentation
- Added:
docs/security/secret-management.md
- Includes:
- secure handling guidance for
JWT_SECRET_KEY,ENCRYPTION_KEY,DB_PASSWORD, SMTP credentials - clear Do / Don’t section
- recommended secret providers (Vault/cloud/orchestrator/CI runtime injection)
- rotation basics and operational checklist.
- secure handling guidance for
- Updated:
README.md(TOC + security references).env.example,ops/.env.examplewith stronger production warnings (no hardcoding, rotate secrets).
Configuration Consistency
- Corrected frontend port mapping documentation/comments in env templates to match runtime behavior:
- frontend container port remains
8080.
- frontend container port remains
Notes
- No database migration required.
- Redeploy recommended to apply updated CI/release/security workflow behavior and documentation alignment.
- For production HTTPS deployments, use the provided proxy profile and keep API routing under
/api/.
Downloads
- Added dedicated CI workflow: