The rule
Two classes of field, and only one of them is writable after the fact.
An error row carries evidence and it carries status. The evidence is the Error ID, the Test Run ID and Scenario ID that exposed the defect, the Expected ID whose contract failed, the expected and actual result pair, the failure class, and the severity assigned at discovery. None of it may be altered afterwards. The lifecycle fields — fix applied, latest retest ID, retest status, error status, and whether the issue blocks the next increment — are the only ones updated as a defect progresses. The separation is what allows the register to be simultaneously a live control surface and a permanent record, and collapsing the two is what turns it into neither.
Failure, register, fix, retest, close. The row travels the loop once; the evidence recorded at the first stage is still there at the last, unchanged.

