From 3dac9af672440b116baf5e976441ba78e8d1a32f Mon Sep 17 00:00:00 2001 From: Hentry Martin Date: Mon, 17 Nov 2025 19:10:03 +0100 Subject: [PATCH 1/2] fix: remove unneccessary prop for ai reviewer --- .circleci/config.yml | 2 +- src/components/ChallengeEditor/index.js | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 02fc2b25..39899074 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -160,7 +160,7 @@ workflows: context: org-global filters: &filters-dev branches: - only: ["develop"] + only: ["develop", "pm-2917"] # Production builds are exectuted only on tagged commits to the # master branch. diff --git a/src/components/ChallengeEditor/index.js b/src/components/ChallengeEditor/index.js index 2c6be99b..da51eb04 100644 --- a/src/components/ChallengeEditor/index.js +++ b/src/components/ChallengeEditor/index.js @@ -1314,9 +1314,21 @@ class ChallengeEditor extends Component { const { updateChallengeDetails, assignedMemberDetails: oldAssignedMember, projectDetail, challengeDetails } = this.props if (this.state.isSaving) return this.setState({ isSaving: true }, async () => { - const challenge = this.collectChallengeData(status) + let challenge = this.collectChallengeData(status) let newChallenge = _.cloneDeep(this.state.challenge) newChallenge.status = status + + if (challenge.reviewers && Array.isArray(challenge.reviewers)) { + challenge.reviewers = challenge.reviewers.map(reviewer => { + if (reviewer.isMemberReview === false) { + const copy = { ...reviewer } + delete copy.type + return copy + } + return reviewer + }) + } + try { const challengeId = this.getCurrentChallengeId() // state can have updated assigned member (in cases where user changes assignments without refreshing the page) From 33070c718387edc8138dd6b06c1385a1db122ec9 Mon Sep 17 00:00:00 2001 From: Hentry Martin Date: Mon, 17 Nov 2025 23:16:39 +0100 Subject: [PATCH 2/2] fix: exclude assigned phases for ai reviewers --- .../ChallengeEditor/ChallengeReviewer-Field/index.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/components/ChallengeEditor/ChallengeReviewer-Field/index.js b/src/components/ChallengeEditor/ChallengeReviewer-Field/index.js index b582fc57..218e6bf0 100644 --- a/src/components/ChallengeEditor/ChallengeReviewer-Field/index.js +++ b/src/components/ChallengeEditor/ChallengeReviewer-Field/index.js @@ -780,8 +780,9 @@ class ChallengeReviewerField extends Component { .filter(id => id !== undefined && id !== null) ) - // Exclude phases already assigned to other reviewers, except the currently selected phase - if (assignedPhaseIds.has(phase.phaseId || phase.id) && !isCurrentlySelected) { + // If current reviewer is a member review, allow selecting phases even if already assigned to others. + // Only exclude assigned phases for ai reviewers. + if (!!reviewer.isMemberReview && assignedPhaseIds.has(phase.phaseId || phase.id) && !isCurrentlySelected) { return false }