I tried to Disable Trash folders but still after deleting primary revision the old revisions are getting expired.
This was seen in one of the cases but the exact root cause could not be ascertained. After disabling the trash and then re-enabling it resolved the error / scenario which is seen when deleting the latest revision.
Please test this and report the results.
I tried to disable trash and re-enable trash but in both cases, once we delete the latest revision all other old revisions are also expired. I logged a BUG with Oracle support and they confirmed that it's a BUG and it's with Dev team for a resolution.
I think overall the Trash settings or the way trash is treated in 12C is all over the place. it's not consistent and it's not easy to restore a expired item. I wish Oracle fixed and provide a better solution for this.
I tried with the below 3 options to disable trash and limit the delete option to only one revision. But, none of them worked.