The valid test vector "bare OP_2 script is not a segwit v2 witness program" (added in #2253) passes only because its checks field limits it to the input eligibility check: its only input is not eligible, so the output scripts check fails. This replaces it with the vector @macgyver13 proposed below, which adds an eligible P2WPKH input carrying the ECDH share and DLEQ proof, keeps the bare OP_2 input with only PSBT_IN_NON_WITNESS_UTXO, and needs no checks.
The bare OP_2 input is unsigned, so the vector is In Progress; its row goes in the Valid PSBTs table at its position in the JSON file. #2316 re-signs the bare OP_2 vector this PR replaces, so the two conflict there: whichever lands second drops that vector when it rebases. A separate commit sets Version 0.1.4 with its changelog entry: each of my open BIP-375 pull requests (#2315, #2316, #2317, #2324) does the same, and whichever lands first keeps 0.1.4 while the others rebase to the next version.
Made with my usual tools: a computer, the Internet and an LLM. The mistakes, as usual, are all mine.