Skip to content

fix: Exclusion attribute filter#27669

Merged
joeauyeung merged 4 commits intomainfrom
fix-exclusion-attribute-filter
Feb 6, 2026
Merged

fix: Exclusion attribute filter#27669
joeauyeung merged 4 commits intomainfrom
fix-exclusion-attribute-filter

Conversation

@joeauyeung
Copy link
Copy Markdown
Contributor

@joeauyeung joeauyeung commented Feb 5, 2026

What does this PR do?

Fixes exclusion attribute conditions. Ex. "Not any in". We now include all team members in the condition evaluation, not just members with the attribute we are evaluation.

Also adds tests to cover all attribute filters

Mandatory Tasks (DO NOT REMOVE)

  • I have self-reviewed the code (A decent size PR without self-review might be rejected).
  • I have updated the developer docs in /docs if this PR makes changes that would require a documentation change. If N/A, write N/A here and check the checkbox.
  • I confirm automated tests are in place that prove my fix is effective or that my feature works.

How should this be tested?

  • Add all team members with a "Not any in" attribute condition
    • The right members should be assigned

Open with Devin

Comment on lines +160 to +164
for (const userId of allTeamMemberIds) {
const memberData: {
userId: UserId;
attributes: Record<AttributeId, AttributeOptionValueWithType>;
} = { userId, attributes: {} };
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the main fix. We were only evaluating members who had the attributes that are being evaluated assigned to them. Now this includes all members even if they don't have the attribute assigned to them.

@joeauyeung joeauyeung marked this pull request as ready for review February 5, 2026 17:32
@graphite-app graphite-app bot added the core area: core, team members only label Feb 5, 2026
@graphite-app graphite-app bot requested a review from a team February 5, 2026 17:33
@graphite-app graphite-app bot added the enterprise area: enterprise, audit log, organisation, SAML, SSO label Feb 5, 2026
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 4 files

setAssignRRMembersUsingSegment={setAssignRRMembersUsingSegment}
rrSegmentQueryValue={rrSegmentQueryValue}
setRrSegmentQueryValue={setRrSegmentQueryValue}
filterMemberIds={value.filter((host) => !host.isFixed).map((host) => host.userId)}
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks unintentional. Could you confirm @joeauyeung

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was because there's some odd UI case where the members that fit the attribute query don't render unless saved. I couldn't replicate again so I'll revert this change.

Copy link
Copy Markdown
Contributor

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 3 additional findings.

Open in Devin Review

Copy link
Copy Markdown
Member

@hariombalhara hariombalhara left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@github-actions github-actions bot marked this pull request as draft February 6, 2026 12:58
@joeauyeung joeauyeung marked this pull request as ready for review February 6, 2026 13:36
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 3 files

@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Feb 6, 2026

E2E results are ready!

@joeauyeung joeauyeung enabled auto-merge (squash) February 6, 2026 14:03
@joeauyeung joeauyeung merged commit bc0ff0d into main Feb 6, 2026
92 of 94 checks passed
@joeauyeung joeauyeung deleted the fix-exclusion-attribute-filter branch February 6, 2026 14:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

core area: core, team members only enterprise area: enterprise, audit log, organisation, SAML, SSO ready-for-e2e size/XL

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants