So it turns out that all these features are built into the report framework. LineItems includes complete_not_canceled_visible_orders. It even takes care of masking non-editable orders.