I’m not 100% sure I understand the question, but I was thinking of a flow something like this:
flowchart TD
A[Post/Topic Created] --> B[Pending in Approval Queue]
B --> C[Revise]
C --> D[Pending Awaiting Revision]
D --> E[Resubmit]
E --> B[Pending in Approval Queue]
B --> H[Approve Post/Topic] --> I[Published to Site]
B --> F[Reject Post/Topic] --> G[Deleted]
style F fill:#ff4c4c,stroke:#000,stroke-width:2px
style H fill:#4caf50,stroke:#000,stroke-width:2px
So any second/third/fourth revisions would loop round (and a mod could call time manually when enough was enough )
I think I envisage the ‘Revise’ option being used in cases where there is a higher likelihood of receiving a better version (so anything that doesn’t hit that threshold wouldn’t be sent back for revision in the first place)