diff --git a/mercurial/discovery.py b/mercurial/discovery.py
index 8688590ca03ce46f8b375540e4ad0f0000e5bea2_bWVyY3VyaWFsL2Rpc2NvdmVyeS5weQ==..d58721d684cb8fcddac67026e0a3f40fee72f1a6_bWVyY3VyaWFsL2Rpc2NvdmVyeS5weQ== 100644
--- a/mercurial/discovery.py
+++ b/mercurial/discovery.py
@@ -320,6 +320,9 @@
             #
             # These two cases will be easy to handle for known changeset but
             # much more tricky for unsynced changes.
+            #
+            # In addition, this code is confused by prune as it only looks for
+            # successors of the heads (none if pruned) leading to issue4354
             newhs = set()
             for nh in candidate_newhs:
                 if nh in repo and repo[nh].phase() <= phases.public: