The "PSBT with invalid output witnessScript typed key" case should fail on the key length — a PSBT_OUT_WITNESS_SCRIPT key longer than one octet — but as written it can also fail on an off-curve pubkey: the witnessScript pushes 03b7ce…9d06d5…, and x**3 + 7 is not a square mod p for that x. An implementation that validates pushed keys but never checks the key length rejects the case anyway, for the wrong reason, and the missing check goes undetected.
The off-curve key is an artifact: 65f0b3dd changed one octet of it (2b → 06) to fix a short read on the value length, but the case's hashes (P2WSH 876bad83…, P2SH b921b1ba…) still commit to the script with 2b.
This re-encodes the record as 02 0100 25 <script with 2b> — the extra octet in the key, the whole on-curve script in the value, as the "invalid output redeemScript typed key" case already does. Same total length, same intended failure, hashes match again; bitcoin/bitcoin's rpc_psbt.json still carries the pre-65f0b3dd octets (a short read), so this encoding serves both.