This task involves the work of defining and implementing the user experience for cases when a comment or topic has been moved from the page on which the permanent link to said "entities" was generated on.
We currently show a warning if the comment is not found on the page, which likely means it was archived.
=== Cases
|Condition|Case #1|Case #2|Case #3|Case #4
|---|---|---|---|---|---
|Comment/topic is present on same page permanent link was generated from| ✅|---|--- |---
|Comment/topic is found on **one** other page| ---|✅|---|---
|Comment is found on multiple pages|---|---|✅|---
|Comment is NOT found on any page|---|---|---|✅ [i]
=== UX Requirements
**Case #1**
//Outside this task's scope; you'll always land on the page from which the comment / topic link was generated and see it present//
**Case #2**
- Invisibly and automatically redirect people to the page on which the comment they're attempting to navigate to now exists
-- //Open: how – if at all – does the interface communicate to people that a "silent" redirect happened?//
**Case #3**
- Automatically redirect people to `Special:FindComment` so that they can see the pages the comment they're attempting to navigate was found on and decide for themselves which – if any – of these pages they'd like to visit
**Case #4**
Options:
# Do a server side redirect back to the original page, with a ?noredirect param, and show the warning we used to show.
# Alternatively we could do a API equivalent of Special:FindComment, and only leave the page if we know the comment has been moved somewhere. This has the downside of making the "slow" client-side redirect a bit slower.
# We could also consider showing a confirm dialog before redirecting: "The comment you have been linked to has be moved to **My Page/Archive 1**. [ View ] [ Cancel ]", but that be more annoying.
=== Done
- [ ] UX Requirements are defined and implemented for each of the cases listed above
---
i. Reasons why a comment might not have been found:
-- The link was corrupted at some point (only partially copied, or the encoding broken by sending through some third party)
-- The comment was withdrawn/deleted
-- The comment was resigned with a different timestamp
-- Other page corruption that breaks signature detection?