docs: private void processStateChanges(final Map<String, String> changes) {
          workflowEngine.event(WorkflowSystemEventType.WillProcessStateChange,
                               String.format("saw state changes: %s", changes), changes
          );
  
          workflowEngine.getState().updateState(changes);
  
          boolean update = Rules.update(workflowEngine.getRuleEngine(), workflowEngine.getState());
          workflowEngine.event(
                  WorkflowSystemEventType.DidProcessStateChange,
                  String.format(
                          "applied state changes and rules (changed? %s): %s",
                          update,
                          workflowEngine.getState()
                  ),
                  workflowEngine.getState()
          );
      }