41 lines
1.3 KiB
JSON
41 lines
1.3 KiB
JSON
{
|
|
"feature_id": "F-085",
|
|
"verdict": "APPROVED",
|
|
"trace": [
|
|
{
|
|
"acceptance": "TIPO cell enters edit mode on click and shows a select with allowed types",
|
|
"result": "PASS",
|
|
"evidence": "Button onClick sets tipoEditing; render switches to select with the three options."
|
|
},
|
|
{
|
|
"acceptance": "Selecting a new type and confirming triggers PATCH /tax-rates/:id",
|
|
"result": "PASS",
|
|
"evidence": "onChange calls saveTipo → taxApi.update(id, { appliesTo })."
|
|
},
|
|
{
|
|
"acceptance": "Invalid types are rejected client and server side",
|
|
"result": "PASS",
|
|
"evidence": "Client select only offers three options; server Zod enum rejects anything else with 400."
|
|
},
|
|
{
|
|
"acceptance": "Successful change is reflected in the cell without a full page reload",
|
|
"result": "PASS",
|
|
"evidence": "rates.map updates the row in-place after PATCH success."
|
|
},
|
|
{
|
|
"acceptance": "verify.sh is green",
|
|
"result": "PASS",
|
|
"evidence": "tsc exit 0; eslint exit 0."
|
|
}
|
|
],
|
|
"regression_checks": [
|
|
"Tasa inline edit",
|
|
"Estado toggle",
|
|
"Active filter"
|
|
],
|
|
"verdict_reason": "All acceptance criteria trace to PASS.",
|
|
"reviewer": "qa",
|
|
"reviewed_at": "2026-08-20T04:14:00Z",
|
|
"agent": "qa"
|
|
}
|