Skip to content

Fix AND filter semantics across local and external event feeds - #324

Merged
dgershman merged 1 commit into
mainfrom
feature/mayo-323-filters-and-local-external
Aug 9, 2026
Merged

Fix AND filter semantics across local and external event feeds#324
dgershman merged 1 commit into
mainfrom
feature/mayo-323-filters-and-local-external

Conversation

@dgershman

Copy link
Copy Markdown
Contributor

Summary

  • Local category/tag queries now match nothing when an include filter slug does not resolve in the local taxonomy (e.g. external-only categories like Convention or NJ Region), so AND semantics hold across facets when mixing local and external feeds.
  • External feed events are now re-filtered locally for Service Body and Tag selections, mirroring the existing event_type and categories enforcement.

Test plan

  • Unit tests for unresolved local category/tag slugs (TaxonomyQueryTest)
  • Unit tests for service body and tag external enforcement helpers
  • Manual: select Service + external-only category — local Service events should be hidden
  • Manual: select Service Body filter — external events from non-Mayo remotes should respect the filter

Closes #323

Made with Cursor

When category or tag slugs resolve to no local terms, the local query now
matches nothing instead of dropping the constraint. External feed events are
also re-filtered locally for service body and tag selections.

Co-authored-by: Cursor <cursoragent@cursor.com>
Crow-Session: E15E68FC-DBF4-453A-B7BF-FC967C4CB5A5
Co-Authored-By: Claude <noreply@anthropic.com>
@dgershman
dgershman merged commit 8112084 into main Aug 9, 2026
3 checks passed
@dgershman
dgershman deleted the feature/mayo-323-filters-and-local-external branch August 9, 2026 20:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Filters don't AND correctly across local + external feeds [#251 follow-up]

1 participant