I noticed that org-agenda-filter-by-tag-refine started to exclude selected tags by default recently because the 'refine in the call to org-agenda-filter-by-tag is interpreted as an exclude flag. The attached patch fixes this.
However, it seems that the function is superfluous because org-agenda-filter-by-tag can filter on multiple tags as well if called multiple times (that used not to be the case earlier). So maybe it should be deprecated and removed?
diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index d91b64d..21928de 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -7580,7 +7580,7 @@ to switch between filtering and excluding."
(defun org-agenda-filter-by-tag-refine (arg &optional char)
"Refine the current filter. See `org-agenda-filter-by-tag'."
(interactive "P")
- (org-agenda-filter-by-tag arg char 'refine))
+ (org-agenda-filter-by-tag arg char))
(defun org-agenda-filter-make-matcher (filter type &optional expand)
"Create the form that tests a line for agenda filter. Optional