Dashboard › craft › updateReleaseRevision validates SHA
01a07f3e-b561-7f9e-946e-5ae8656ac2caTrap: updateReleaseRevision() can trust its caller because the existing canonical link was validated, but an arbitrary replacement corrupts release authority. Fix: require exactly 40 lowercase hex characters and replace only parser-recorded SHA offsets. Regression-test strict byte-for-byte preservation outside those offsets, including CRLF, trailing newlines, and appended decoy text.