Skip to content

fix: deleting member fails when removing segments (CM-1312)#4303

Merged
skwowet merged 1 commit into
mainfrom
fix/cm-1312-empty-segment-delete
Jul 3, 2026
Merged

fix: deleting member fails when removing segments (CM-1312)#4303
skwowet merged 1 commit into
mainfrom
fix/cm-1312-empty-segment-delete

Conversation

@skwowet

@skwowet skwowet commented Jul 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

DELETE /member returns 500 when the request includes a segment that resolves to no active subprojects — e.g. an archived project group. Segment expansion returns an empty list, producing invalid SQL (segmentId in ()).

Changes

  • Return early in excludeMembersFromSegments when there are no subproject IDs to delete
  • Apply the same guard in excludeOrganizationsFromSegments

Signed-off-by: Yeganathan S <63534555+skwowet@users.noreply.github.com>
@skwowet skwowet self-assigned this Jul 3, 2026
Copilot AI review requested due to automatic review settings July 3, 2026 11:42
@skwowet skwowet merged commit cc4d33b into main Jul 3, 2026
13 checks passed
@skwowet skwowet deleted the fix/cm-1312-empty-segment-delete branch July 3, 2026 11:42

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR fixes a 500 error on DELETE /member (and the analogous organization path) that occurred when a request included a segment resolving to no active subprojects (e.g., an archived project group). In that case getSegmentSubprojectIds returns an empty array, and building the delete query with segmentId in (:segmentIds) produced invalid SQL (segmentId in ()). The fix adds an early-return guard so the delete is skipped when there are no subproject IDs.

Changes:

  • Add an early return in excludeMembersFromSegments when subprojectIds is empty.
  • Apply the same guard in excludeOrganizationsFromSegments.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
backend/src/database/repositories/memberRepository.ts Guards excludeMembersFromSegments against empty subproject IDs to avoid invalid SQL.
backend/src/database/repositories/organizationRepository.ts Applies the same empty-guard to excludeOrganizationsFromSegments.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

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.

2 participants