diff --git a/src/main/java/org/mskcc/cbio/portal/scripts/UpdateCaseListsSampleIds.java b/src/main/java/org/mskcc/cbio/portal/scripts/UpdateCaseListsSampleIds.java
index b8ab514e..4fa4d48a 100644
--- a/src/main/java/org/mskcc/cbio/portal/scripts/UpdateCaseListsSampleIds.java
+++ b/src/main/java/org/mskcc/cbio/portal/scripts/UpdateCaseListsSampleIds.java
@@ -70,7 +70,7 @@ public void run() {
         this.caseListSampleIdToSampleIds.put(cancerStudyStableId + "_all", this.allSampleIds);
         Map<String, Set<String>> readCaseListSampleIds = readCaseListFiles();
         this.caseListSampleIdToSampleIds.putAll(readCaseListSampleIds);
-        updateCaseLists(this.caseListSampleIdToSampleIds);
+        updateCaseListsForTheStudy(this.caseListSampleIdToSampleIds);
     }
 
     private Map<String, Set<String>> readCaseListFiles() {
@@ -96,7 +96,17 @@ private Map<String, Set<String>> readCaseListFiles() {
         return result;
     }
 
-    private void updateCaseLists(Map<String, Set<String>> caseListSampleIdToSampleIds) {
+    /**
+     * Updates study case lists
+     * by adding new sample IDs to their designated case lists
+     * and ensuring these sample IDs are removed from any other case lists within the study.
+     *
+     * @param caseListSampleIdToSampleIds case list ID -> sample IDs map
+     * NOTE: The `caseListSampleIdToSampleIds` mapping is not a complete representation of all case lists in the study.
+     * We do not drop any existing case lists for the study. Instead, we only add or remove sample IDs
+     * that are specified in the provided mapping.
+     */
+    private void updateCaseListsForTheStudy(Map<String, Set<String>> caseListSampleIdToSampleIds) {
         DaoCancerStudy.reCacheAll();
         try {
             for (Map.Entry<String, Set<String>> caseListStableIdToSampleIds : caseListSampleIdToSampleIds.entrySet()) {