feat(F-144): completed feature

This commit is contained in:
chattie
2026-08-22 12:40:23 +02:00
parent 32489107ab
commit 2ea628fd62
14 changed files with 494 additions and 106 deletions

View File

@@ -0,0 +1,16 @@
{
"feature_id": "F-144",
"agent": "security",
"stage": "security_gate",
"verdict": "APPROVED",
"summary": "Additive DDL migration + isolated DB integration test. No new routes/RBAC/auth/secrets. DEFAULT_STORE_ID is a code constant matching the 043 seed (not user input). FK uses a DO$$ guard so re-runs are safe; itest runs against a per-run-recrated mercadodevida_test DB (no production data).",
"checks": [
{"item": "No new routes/RBAC/auth", "ok": true, "evidence": "schema migration (048) + DB itest only; identity/security/reporting routes untouched; no auth changes"},
{"item": "Injection / safe SQL", "ok": true, "evidence": "migration has no user input; itest metadata lookups use static strings or parameterized $1"},
{"item": "No secrets/credentials added", "ok": true, "evidence": "DEFAULT_STORE_ID is the well-known seed UUID from 043 (src/modules/inventory/index.ts); no secrets introduced"},
{"item": "IDOR / data scope", "ok": true, "evidence": "itest executes against isolated mercadodevida_test DB (drop+recreate per run); no reads against prod mercadodevida"},
{"item": "Pre-existing boundary note", "ok": true, "evidence": "git diff does not touch security.routes.ts; R1 log-broadcaster deep-import violation is pre-existing (F-154), not introduced by F-144"},
{"item": "Idempotency safety", "ok": true, "evidence": "FK guarded by DO$$ IF NOT EXISTS avoids duplicate-constraint errors on re-run; columns use IF NOT EXISTS"}
],
"issues": []
}