Hi! It seems that agendas created when org-agenda-sticky-mode is t aren’t automatically redone when calling org-agenda-(set|remove)-restriction-lock. The reason is that (org-agenda-maybe-redo) checks whether there’s a window displaying a buffer named org-agenda-buffer-name. Org-agenda-buffer-name is, for some reason, not set to the (buffer-name) for these sticky agendas (which get the key that was selected as a suffix, for example, “*Org Agenda(p)*”).
I don’t know whether there’s a reason for this, but it seems like it’s a bug. Either org-agenda-buffer-name isn’t being set correctly or (org-agenda-maybe-redo) should be using (buffer-name) instead of org-agenda-buffer-name. If there’s a reason for this, I’d really like to know what it is, so that I can begin to try to remember to press g whenever I’ve updated the restriction lock. Thanks!