@carameldragon I don't think this is an error, it's just a little confusing. The cost of an order doesn't change when you sell it. If you buy something for $100 and then sell it for $120, the cost is still $100 and the P&L is +$20. BT captures the P&L in the trade object (with and without commissions).
There is no proceeds tracked in an Order which is what I think you are after. You can get that with order.executed.price * order.executed.size for gross proceeds, and then factor in commission to get net proceeds.
The value field in Order is a bit ambiguous and I think leads to confusion. It would have been better named cost, IMO.