diff --git a/backend/src/app/rpc/commands/files_branch.clj b/backend/src/app/rpc/commands/files_branch.clj index aed769076f..cc1ed85931 100644 --- a/backend/src/app/rpc/commands/files_branch.clj +++ b/backend/src/app/rpc/commands/files_branch.clj @@ -1057,7 +1057,7 @@ conflicts (:conflicts merge-summary) ;; an excluded conflict is resolved: the exclusion IS the ;; recorded choice, so it lands on the target side - ;; (`bm/compute-changes`, `pp:vcs:ds-no-silent-winner`) + ;; (`bm/compute-changes`: one side keeping its value is a recorded choice, never a silent win) resolved? (fn [c] (or (contains? excluded (:key c)) (bm/conflict-resolved? c (get resolutions (:id c))))) unresolved (remove resolved? conflicts) diff --git a/common/src/app/common/files/branch_merge.cljc b/common/src/app/common/files/branch_merge.cljc index 39af450f52..02d48a243e 100644 --- a/common/src/app/common/files/branch_merge.cljc +++ b/common/src/app/common/files/branch_merge.cljc @@ -1873,8 +1873,8 @@ An excluded entity is treated as resolved to the TARGET side: no change is emitted for it and the target keeps its own value. That is the - recorded choice, not a silent win for one side (see - `pp:vcs:ds-no-silent-winner`): the user deselected the change, so the + recorded choice, not a silent win for one side: the user deselected + the change, so the result is exactly what the target has, and a conflicting entity lands there whatever `resolutions` says. Excluding an added shape cascades to every shape the source places under it (its added descendants and any