JonnyMac:
I have a low-bandwidth application (digital lock for an escape game).
...
Note that the interrupt is triggered on a state change of the ENC_A pin. There are some who recommend against polling inside the interrupt, but in this case I think it's a good idea as I can determine direction using the current state of the encoder pins and update the encoder value so that it is available to any part of the application.
No, as per previous discussion, for a "low-bandwidth application", it makes more sense not to use interrupts and perform debounce in a state machine.