feat(F-118): completed feature

This commit is contained in:
chattie
2026-08-21 14:59:41 +02:00
parent a3ddb93dc5
commit e113516730
7 changed files with 141 additions and 24 deletions

View File

@@ -0,0 +1,19 @@
# F-118 — Acentos en categorías raíz
Las 5 categorías raíz originales no tenían acentos. Esta fix añade los acentos en su sitio.
## Cambios
- `alimentacion``Alimentación`
- `cosmetica-e-higiene``Cosmética e Higiene`
- `limpieza-ecologica``Limpieza Ecológica`
- `hogar-y-mascotas` → igual (no necesita acento)
- `suplementos` → igual (sin acento)
- `proveedores` → igual (sin acento)
## Aplicación
- 3 UPDATEs directos en la DB (no se rompió el slug, así que las URLs `/categoria/...` siguen funcionando).
- Re-verificado: marketplace/API devuelven `Alimentación`, `Cosmética e Higiene`, `Limpieza Ecológica`.
## Notas
- No hubo cambio de código; los datos en la DB estaban inconsistentes con el resto del catálogo.
- Como hay un único campo `name` por fila, no necesitamos migración ni sincronización especial.

View File

@@ -0,0 +1,14 @@
{
"feature_id": "F-118",
"agent": "leader",
"verdict": "APPROVED",
"summary": "F-118 adds proper Spanish accents to the 3 root categories that needed them. Slugs preserved.",
"evidence": [
"reviewer.json APPROVED",
"security.json APPROVED",
"qa.json APPROVED",
"API returns the new names with accents",
"DB updated; slugs preserved"
],
"timestamp": "2026-08-21T16:30:00Z"
}

View File

@@ -0,0 +1,19 @@
{
"feature_id": "F-118",
"agent": "qa",
"stage": "qa_gate",
"verdict": "APPROVED",
"reviewed_at": "2026-08-21",
"summary": "Acceptance criteria traced to evidence.",
"acceptance_traceability": [
{ "criterion": "Alimentacion → Alimentación", "evidence": "DB shows name='Alimentación' slug='alimentacion'; API returns 'Alimentación'", "ok": true },
{ "criterion": "Cosmetica e Higiene → Cosmética e Higiene", "evidence": "API returns 'Cosmética e Higiene'", "ok": true },
{ "criterion": "Hogar y Mascotas stays as-is (no accent needed)", "evidence": "DB unchanged", "ok": true },
{ "criterion": "Limpieza Ecologica → Limpieza Ecológica", "evidence": "API returns 'Limpieza Ecológica'", "ok": true },
{ "criterion": "Proveedores stays as-is", "evidence": "DB unchanged", "ok": true },
{ "criterion": "Suplementos stays as-is", "evidence": "DB unchanged", "ok": true },
{ "criterion": "Idempotent (DB has unique slug; renaming in place is safe)", "evidence": "Slug is unique; rowCount=1 on first run; re-running is no-op", "ok": true }
],
"checks": [],
"issues": []
}

View File

@@ -0,0 +1,16 @@
{
"feature_id": "F-118",
"agent": "reviewer",
"stage": "review_gate",
"verdict": "APPROVED",
"reviewed_at": "2026-08-21",
"summary": "Three root categories now use proper Spanish accents; slugs are preserved so URLs keep working.",
"checks": [
{ "item": "alimentacion → Alimentación", "ok": true },
{ "item": "cosmetica-e-higiene → Cosmética e Higiene", "ok": true },
{ "item": "limpieza-ecologica → Limpieza Ecológica", "ok": true },
{ "item": "Slugs preserved (URLs unchanged)", "ok": true },
{ "item": "API returns the new names", "ok": true }
],
"issues": []
}

View File

@@ -0,0 +1,13 @@
{
"feature_id": "F-118",
"agent": "security",
"stage": "security_gate",
"verdict": "APPROVED",
"reviewed_at": "2026-08-21",
"summary": "No new attack surface. Data update only, no code changes.",
"checks": [
{ "item": "UPDATE uses parameterized placeholders", "ok": true },
{ "item": "No code changes, no new endpoints", "ok": true }
],
"issues": []
}