Page MenuHomePhabricator

Discussion tools notification provided the wrong ID
Closed, DeclinedPublicBUG REPORT

Description

List of steps to reproduce (step by step, including full links if applicable):

What happens?:
I got a link that directed me to https://en.wikipedia.org/wiki/Wikipedia:Village_pump_(technical)#c-Deor-2022-03-09T22%3A57%3A00.000Z-Deor-2022-03-09T19%3A34%3A00.000Z

So the the DiscussionTools ID (or DTID) from the notification is c-Deor-2022-03-09T22:57:00.000Z-Deor-2022-03-09T19:34:00.000Z.

This alert popped up: "This comment could not be found. It might have been deleted or moved."

What should have happened instead?:
The actual DTID (as found in the HTML source) is c-Deor-2022-03-09T22:57:00.000Z-Alexis_Jazz-2022-03-09T20:46:00.000Z.

I have a guess what might have caused this: me. I've been developing Bawl for about three months now, and one of the things it does is the insertion of a comment locator, which encapsulates the signature in a span. I'm aware this is kind of non-standard (not that there is any real standard for comments in wikitext) and that wasn't a decision a took lightly. I'd be more than happy to answer inquiries about it, but it's here to stay.

I'm guessing DiscussionTools uses a different method to generate the DTID for the notification area than it does on the page itself, causing it to skip my comment which includes a Bawl locator when generating the DTID for the notification area. (struck: it was all DT!) However, it could be something else entirely - I've never seen this error before, so maybe it's an unrelated fluke of some sort.

Event Timeline

Luckily the explanation is simpler: the comment's indentation was changed in this edit, which also caused its ID to change. This link to the comment in the previous revision works. (It has been, arguably, moved.)

The link to "#c-Deor-2022-03-09T22:57:00.000Z-Deor-2022-03-09T19:34:00.000Z" means basically "the comment by Deor at 22:57, in reply to Deor at 19:34".
The link to "#c-Deor-2022-03-09T22:57:00.000Z-Alexis_Jazz-2022-03-09T20:46:00.000Z" means basically "the comment by Deor at 22:57, in reply to Alexis_Jazz at 20:46".

The links in notifications depend on the parent comment like this, because otherwise we couldn't distinguish two comments posted in a single edit, but unfortunately that causes them to break when the comment is re-indented. We have some vague plans to improve this (T273341).

I have a guess what might have caused this: me. I've been developing Bawl for about three months now, and one of the things it does is the insertion of a comment locator, which encapsulates the signature in a span. I'm aware this is kind of non-standard (not that there is any real standard for comments in wikitext) and that wasn't a decision a took lightly. I'd be more than happy to answer inquiries about it, but it's here to stay.

Your comments get [reply] links, so I think you're good. We've done some work to supports various wrappers around signatures, primarily to support various markups used to sign unsigned comments on different wikis, but I guess it also helps here.

Luckily the explanation is simpler: the comment's indentation was changed in this edit, which also caused its ID to change. This link to the comment in the previous revision works. (It has been, arguably, moved.)

The link to "#c-Deor-2022-03-09T22:57:00.000Z-Deor-2022-03-09T19:34:00.000Z" means basically "the comment by Deor at 22:57, in reply to Deor at 19:34".
The link to "#c-Deor-2022-03-09T22:57:00.000Z-Alexis_Jazz-2022-03-09T20:46:00.000Z" means basically "the comment by Deor at 22:57, in reply to Alexis_Jazz at 20:46".

The links in notifications depend on the parent comment like this, because otherwise we couldn't distinguish two comments posted in a single edit, but unfortunately that causes them to break when the comment is re-indented. We have some vague plans to improve this (T273341).

Should have checked the history! Well that's much more simple indeed.

Your comments get [reply] links, so I think you're good. We've done some work to supports various wrappers around signatures, primarily to support various markups used to sign unsigned comments on different wikis, but I guess it also helps here.

Part of the testing of Bawl has been to ensure it doesn't break DT, both with the edits it makes and to ensure it can run alongside DT. Not that I can think of any reason to actually run both tools besides the topic subscription DT offers, but Bawl and DT don't bite each other.

This sounds like expected behaviour, is there anything for us to do here?

ppelberg subscribed.

This sounds like expected behaviour, is there anything for us to do here?

We appreciate you reporting this, @AlexisJazz. Considering the conclusions @matmarex came to in T303486#7766091, we're going to decline this task.

I'm very surprised by that response, but I think I can make lemonade from this. :-)