Following commit 46004790588c24174a0bec49b540d158ce163ffd (@achow101), decodepsbt overstates the fee, apparently including both the witness_utxo and non_witness_utxo amounts in the inputs.
Expected behavior
The decoded fee should be the sum of the inputs, minus the sum of the outputs.
Actual behavior
The decoded fee is exactly twice the amount of the inputs, minus the sum of the outputs.
To reproduce
Build any PSBT using createpsbt, walletprocesspsbt, then decode it with decodepsbt. See the fee field in the JSON.
System information
I compiled myself from 5550fa5983ea59e7ccef6540b7ec49a1770fb3ca on Whonix 14.
Then I did git revert 46004790588c24174a0bec49b540d158ce163ffd and the problem went away.