From 7ebf9bb313872f54e00a61a0f5c1a5d918041d69 Mon Sep 17 00:00:00 2001 From: Aditya Choudhari Date: Mon, 11 Nov 2024 14:10:28 -0800 Subject: [PATCH] fix: Update grouping logic for latest active release check --- .../job-dispatch/src/policies/release-sequencing.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/job-dispatch/src/policies/release-sequencing.ts b/packages/job-dispatch/src/policies/release-sequencing.ts index bbfaa31c..0289677b 100644 --- a/packages/job-dispatch/src/policies/release-sequencing.ts +++ b/packages/job-dispatch/src/policies/release-sequencing.ts @@ -136,24 +136,24 @@ export const isPassingNewerThanLastActiveReleasePolicy: ReleaseIdPolicyChecker = .groupBy((rjt) => { const release = releases.find((r) => r.id === rjt.releaseId); if (!release) return null; - return [release.deploymentId, rjt.environmentId]; + return [rjt.environmentId, rjt.releaseId]; }) .filter(isPresent) - .map((triggers) => _.maxBy(triggers, (t) => t.createdAt)!) .map((t) => { - const release = releases.find((r) => r.id === t.releaseId); + const release = releases.find((r) => r.id === t[0]!.releaseId); if (!release) return null; const deployment = deployments.find( (d) => d.id === release.deploymentId, ); if (!deployment) return null; const activeRelease = deployment.activeReleases.find( - (r) => r.environmentId === t.environmentId, + (r) => r.environmentId === t[0]!.environmentId, ); if (!activeRelease) return t; if (release.id === activeRelease.id) return t; return isAfter(release.createdAt, activeRelease.createdAt) ? t : null; }) .filter(isPresent) - .value(); + .value() + .flat(); };