[feature]: Differentiate "duplicated by" from "duplicate of" relations
@gchanchal is already working on this.
Since Oct 1, 2025.
- Dominant language
- TypeScript
- Stars
- 59.6k
- Forks
- 5.8k
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 49
Description
Is there an existing issue for this?
- I have searched the existing issues
Summary
Plane correctly differentiates "blocked by" and "blocking" relations between work items. However, for some reason I don't understand, "duplicate of" was made symmetrical. So there's no way to know which card is the duplicate of the other card.
The relation should be asymmetrical, like "blocked by".
If B is a duplicate of A and as a user you decide to keep A and close B as a duplicate, the expected behaviour would be:
- Mark B as a "duplicate of" A
- … Which automatically marks A as "duplicated by" B
Or the other way around (both must work):
- Mark A as "duplicated by" B
- … Which automatically marks B as "duplicate of" A.
Why should this be worked on?
When a card is a duplicate of another card, it's important to identify which card is the one that remains, and which one is the duplicate.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.