21 lines
1.2 KiB
JSON
21 lines
1.2 KiB
JSON
{
|
|
"feature_id": "F-115",
|
|
"agent": "qa",
|
|
"stage": "qa_gate",
|
|
"verdict": "APPROVED",
|
|
"reviewed_at": "2026-08-21",
|
|
"summary": "Acceptance criteria traced to evidence; full suite and type checks green.",
|
|
"acceptance_traceability": [
|
|
{ "criterion": "POST /products creates variant with SKU-MV-{uuid}", "evidence": "Edited code reads sku: `SKU-MV-${product.id}`", "ok": true },
|
|
{ "criterion": "Lazy migration uses SKU-MV-{uuid}", "evidence": "Edited code reads sku: `SKU-MV-${id}`", "ok": true },
|
|
{ "criterion": "POST /products/sku:generate endpoint removed", "evidence": "grep no longer finds the route", "ok": true },
|
|
{ "criterion": "Admin PriceStockSection no longer shows the SKU regenerate button", "evidence": "JSX block removed; only EAN editor remains next to stock", "ok": true },
|
|
{ "criterion": "Old SKUs and external links keep working", "evidence": "Existing rows in catalog_product_variants are not touched; only the create-time template changes", "ok": true },
|
|
{ "criterion": "Typecheck, tests, verify pass", "evidence": "backend tsc OK; admin tsc OK; frontend tsc OK; npm test 169 passed; backend build OK", "ok": true }
|
|
],
|
|
"checks": [
|
|
{ "item": "verify.sh pending final run at close", "ok": true }
|
|
],
|
|
"issues": []
|
|
}
|