While playing around with product backodering system in In-Commerce I've noticed few issues.
We're collecting IDs of orders, that were changed in Admin Console to attempt to their reserve items. Unfortunately these IDs are not being reset, when we're done editing resulting in item reservation happening for all previously edited orders, when another order is saved.
$event->Prefix . '_copied_ids' . $this->Application->GetVar('wid')
When item reservation happen we're always adding qty to the
QtyBackordered columns of the product/product option combination. This way when saving order 5 times you'll get 5x qty reserved/backordered of what you're planning to get.
Implementing proposed fix won't be possible until [In-Commerce] Don't mix QtyInStock and QtyReserved fields in product [5.2.1] is implemented.