sync: callback changes, `fetch_attributes` options; prevent duplicate bag records; listen for keyboard events for text views