Question about workflows

I have defined the following workflow:

Draft -> Review
Review -> Rejected | Approved
Rejected -> Draft
Approved -> Published
Published -> Draft

This works quite nicely so far. What I’m not really sure about is how I’d go about updating a previously published piece of content while moving through the workflow.

Say, I have a page with some paragraphs of text that has been reviewed, approved, and published. Now I want to make some changes to this page. In my expectation, I would then change the status from Published to Draft, make my changes, and kick off the whole review process again, all while my website is showing the content that was last published.

With the GraphQL endpoint, I’m always getting the latest data, i.e. the data that is currently being edited and reviewed, rather than the latest published content. Filtering for published content only means I lose the data from the page I’m editing from the response. Both of these situations are not ideal.

Is this me using the workflow feature incorrectly or is this maybe an issue with the GraphQL endpoint?

It is more like a missing feature.

When you use the workflow feature you basically change a status property in the content item and when you go from Published to Draft again you unpublish your content and then it is not available anymore.

Right now the only option is to use the “Save as Draft” option. This is special version that is like a proposal you want to make: I made this change to the content item but I am not 100% sure yet. Then you can accept or reject it.

All right, that makes sense. Is this a feature that might be added in the future?

Also, is there a way to disable the “Save as Draft” option while using workflows? I find it a bit confusing to have this option when activating it doesn’t actually transition the status back to draft.