# Unread topics in query-link-lists tracking/watching

**URL:** https://meta.discourse.org/t/unread-topics-in-query-link-lists-tracking-watching/55861
**Category:** Feature
**Created:** [16 Gennaio 2017, 7:16pm UTC](https://meta.discourse.org/t/unread-topics-in-query-link-lists-tracking-watching/55861 "2017-01-16T19:16:23Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![terz](https://avatars.discourse-cdn.com/v4/letter/t/df788c/32.png) [@terz](https://meta.discourse.org/u/terz)
#### Post date: [16 Gennaio 2017, 7:16pm UTC](https://meta.discourse.org/t/unread-topics-in-query-link-lists-tracking-watching/55861/1 "2017-01-16T19:16:23Z")

</div>

We use latest-lists together with the query links ?state=watching, and ?state=tracking. (We added them [with javascript as links in the navigation bar](https://meta.discourse.org/t/best-way-to-customize-top-menu/35336/2)). Those lists however don’t include the topics that haven’t been klicked at least once, so people overlook new topics and new answers on old unread topics in the categories which are important to them.

However, people do get a notification on the unread topics, when they watch them. They don’t get a counter when they track them, but that doesn’t matter, cause it would be identical with the number of answers. But they also don’t see them in “unread”.

If this is easy to fix, it would be awesome. The querylinks would be really helpful, if it wouldn’t be so misleading regarding unread topics.

---

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [16 Gennaio 2017, 11:41pm UTC](https://meta.discourse.org/t/unread-topics-in-query-link-lists-tracking-watching/55861/2 "2017-01-16T23:41:35Z")

</div>

> [@terz](#):
>
> Those lists however don’t include the topics that haven’t been klicked at least once

Is that true? @sam can you elaborate here?

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [8 Marzo 2017, 9:52pm UTC](https://meta.discourse.org/t/unread-topics-in-query-link-lists-tracking-watching/55861/3 "2017-03-08T21:52:16Z")

</div>

`state=tracking` / `watching` does not make any purposeful omissions. I was super slow to reply here cause I am just confused at what the problem is.

---

<div class="post-metadata">

### Author: ![LeoMcA](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/leomca/32/87233_2.png) [@LeoMcA](https://meta.discourse.org/u/LeoMcA)
#### Post date: [9 Marzo 2017, 10:33am UTC](https://meta.discourse.org/t/unread-topics-in-query-link-lists-tracking-watching/55861/4 "2017-03-09T10:33:08Z")

</div>

> [@sam](#):
>
> I am just confused at what the problem is.

I _think_ the problem is:

Topics in Categories set to tracking only become tracked themselves when they’re clicked on.

To demonstrate, here’s my current New tab:

 ![](https://global.discourse-cdn.com/meta/original/3X/f/2/f24e91680e60e04fd5963d07423f3a6eb9d3e466.png)

You can see the “Discourse Narrative Bot Beta Feedback” topic is listed, in the feature Category, which I track.

Then if I go to latest, with `?state=tracking` we can’t see that topic:

 ![](https://global.discourse-cdn.com/meta/original/3X/4/0/40593535a7485a052110fce61c24e65632246924.png)

And to really drive the point home, if I go back to new, with `?state=tracking` I see nothing:

 ![](https://global.discourse-cdn.com/meta/original/3X/d/7/d71eb6d991702faa92da09271d373ac1f6f63b26.png)

I think the request is for topics in Tracked categories to work like topics in Watched categories - they become Tracked as soon as the category-level notification setting is changed, so they appear in Unread as soon as posted.

I would also like to see this change, but haven’t until now (and even then I’m not sure) found the right words to clearly explain what I think is intuitive.

---

<div class="post-metadata">

### Author: ![terz](https://avatars.discourse-cdn.com/v4/letter/t/df788c/32.png) [@terz](https://meta.discourse.org/u/terz)
#### Post date: [9 Marzo 2017, 4:47pm UTC](https://meta.discourse.org/t/unread-topics-in-query-link-lists-tracking-watching/55861/6 "2017-03-09T16:47:31Z")

</div>

Hi,

Cool that you come back to this @sam. So the problem is:

**Never clicked** topics in watched and tracked categories. They don’t behave like watched and tracked topics. Except one thing: you get notifications for those topics nevertheless (only if they are in a watched category of course, not in a tracked one). So the notifications seem to use some other information than the rest of discourse, what a watched topic is. I would prefer every functionality, that relies on watched topics, to use the same information as the notifications. And that the tracked functionality behaves in an analog way.

It burns down to this. The rest what I write, is just for making it more understandable:

Everything what Leo writes is correct except this:

> [@LeoMcA](#):
>
> I think the request is for topics in Tracked categories to work like topics in Watched categories

It’s actually the same problem for watched categories. So I also make some pictures, if that helps:

1. I watch the category features, but only the topics I clicked once in my user-history are listed in **latest?state=watching** :

 ![](https://global.discourse-cdn.com/meta/original/3X/3/4/34fa0092693692ac94507ae59d026973880afddc.png)

I would want to see the complete feature latest list here.

**2.** And this is how my **unread list** looks like:

 ![](https://global.discourse-cdn.com/meta/original/3X/8/9/892785dd3af50118e3d4f2c9ce49d9d7d48e412f.png)

So I would want to see the complete feature latest list also here.

Since there are of course loads an loads of new posts and topics in the feature category that I haven’t read. I got notifications for them though, and that’s good. I want them!

For example these two notifications

 ![](https://global.discourse-cdn.com/meta/original/3X/c/6/c6d9551908e2581a672b6325ac09940a982d6265.png)

from these two topics from the normal latest list, which are not in my unread and not in my ?state=watching list:

 ![](https://global.discourse-cdn.com/meta/original/3X/4/a/4a1730608b5c87cae325ad7ad2934d9f63f2ab03.png)

**3.** You can also see here, that there is **no blue counter** on new posts (these are two new topics, but it’s the same for not new). For our users it would be best if the posts since they first registrated would be counted, because they want to read everything that gets talked about in their category since they joined our community, also if it’s answers on old topics. It’s like they come in a room and start listening - they are part of everything that happens from now on. It seems to make very much sense to me, that a counter in interesting categories should behave like this, but maybe that’s debatable and depends on the use case. The important thing to us is anyhow the lists.

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [26 Aprile 2018, 7:37am UTC](https://meta.discourse.org/t/unread-topics-in-query-link-lists-tracking-watching/55861/7 "2018-04-26T07:37:59Z")

</div>

This has been assigned to me and I am going to now unassign it now cause its very complicated to change anything here without severe side effect.

One big problem here is that we don’t want to be inserting millions of rows into the `topic_users` table when a user “tracks” a category or “watches” a category. There is huge risk of creating massive perf issues.

The current implementation just balances stuff so you need to opt a bit harder to track things and watch thing. Under usual usage this is fine, if you are customizing the home page it is not ideal. I guess if you have the resources I would recommend you write a plugin here to allow you to insert tons of rows into topic user, but you are talking pretty advanced plugin here.

---

<div class="post-metadata">

### Author: ![JonathanShaw](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathanshaw/32/532672_2.png) [@JonathanShaw](https://meta.discourse.org/u/JonathanShaw)
#### Post date: [26 Novembre 2020, 11:54pm UTC](https://meta.discourse.org/t/unread-topics-in-query-link-lists-tracking-watching/55861/8 "2020-11-26T23:54:22Z")

</div>

La recente funzionalità filter=tracked è in qualche modo correlata a questo.

> <https://github.com/discourse/discourse/commit/88dcdf776bf1ea0f4cc9a4245a123ffdc2a4abb0>
>
> This adds a special filter to topic lists that will filter to tracked and
> watche…d categories.
> 
> To use it you can visit:
> 
> \`https://sitename/?filter=tracked\`
> \`https://sitename/unread?filter=tracked\`
> 
> and so on
> 
> Note, we do not include explicitly tracked and watched topics \*\*outside\*\* of
> the tracked categories and tags.
> 
> We can consider a \`filter=all\_tracked\` to cover this edge case.

Tuttavia, il messaggio del commit spiega che in questo filtro:

> non includiamo i topic esplicitamente tracciati e monitorati **fuori** dalle  
> categorie e dai tag tracciati.
> 
> Possiamo considerare un `filter=all_tracked` per coprire questo caso limite.

Quindi filter=all\_tracked è ciò che soddisferebbe il caso d’uso discusso qui.
