Currently the plugin only has access to the values of the ticket's attributes after the workflow action has been applied.
It would be nice if it could also provide access to the ticket's old values somehow. Without access to the old values, it's impossible to recreate Trac's core "ticket change" notifications using this plugin.
This should be possible to do, because the plugin's ITicketActionController.get_ticket_changes method is called, before any changes are applied, in the same request that then calls .apply_action_side_effects. So during that method, we could retrieve the ticket's values, before changes are applied, and stash them somewhere, probably on the request.