The problem

In many cases, workflow {state} macros marked as final=true (published) also use the updated parameter to automatically transition back to a draft state should the page be edited.

When a talk is added or resolved, data is stored back to the page (or blog post) causing the updated transition to occur – because the content has been updated.

From an end-user perspective, this seems odd, because they were only "talking" and not editing the page (they are unaware that the talking caused updates to the page).

The solution

The solution is to not use the updated parameter on the {state} macro, but instead use a {trigger}.

In order to prevent large numbers of notifications to page watchers, the Talk app marks its content updates as "Minor change" (the same as if you clear the "Notify Watchers" checkbox while editing a page). With triggers and conditions, we can filter out "Minor Change" events and then use an action to do the state transition.