Not related to this PR, but.. pretty sure that we can make the node crash by providing an out-of-bounds input prevout index.
e.g.
diff --git a/test/functional/wallet_sendall.py b/test/functional/wallet_sendall.py
--- a/test/functional/wallet_sendall.py (revision d442101d85e1f89b072145345ea0bcf60d6ceacc)
+++ b/test/functional/wallet_sendall.py (date 1666283169723)
@@ -294,6 +294,7 @@
else:
watchonly.importmulti(import_req)
+ utxo["vout"] = 10
sendall_tx_receipt = watchonly.sendall(recipients=[self.remainder_target], options={"inputs": [utxo]})
psbt = sendall_tx_receipt["psbt"]
decoded = self.nodes[0].decodepsbt(psbt)