Automatically bumping old topics on a category

On certain categories it makes sense to bump old topics automatically on a regular basis.

  • On buying/selling categories in can make sense to regularly bump visibility while a topic is open and item is still on sale.

  • In support categories it may make sense to bump old topics in case they were forgotten

Till now the only way to raise visibility was to “edit” the last post of a topic or post a bump reply.

Both of these solutions are not ideal.

We just added a new category setting called: Number of open topics to automatically bump daily. By default it is set to 0 and no automatic bumping happens. However, you can turn the number up (on meta with set it to 3 on support).

What does it do?

IF there exists an non-closed, non-solved, visible, non-archived, non category description and non-pinned topic that was bumped less than 24 hours ago.

We will look for N oldest bumped topic and bump it to the front page. The process will bump a maximum of 1 topic every 15 minutes and it is rate limited so we only do N per day. (you set N)

47 Likes

such a nice and needed feature! thanks for developing this :heart:


  1. This seems very fast, especially if a forum doesn’t have such dynamics.

    can this time be tuned based on the the number of N: e.g. time_interval = 24hours/N, so that there’s a uniform dynamic for old topics during the day?

  2. Also if the topic is older than some months, there exists this system-notification which tells users that “the topic is old, and are you sure you want to answer it?!”

    this makes users a little bit confused: from one hand admins bumped the topic to make it more visible and “get replies”, and from the other hand system is telling users “do not contribute”!

10 Likes

Really nice idea!

Will it be indicated somehow that it’s bumped?

3 Likes

I also think this would be good - it’s a bit confusing to see super old topics at the top of ‘latest’. How about adding a ‘small action’ whenever the topic is bumped. Something like:

If the most recent post in the topic is an auto-bump small action, edit it rather than creating a new one. That way we keep noise to a minimum.

13 Likes

Yesterday I lamented re-starting a thread that was over 6 months old (I think because it was in recommended topics), not realizing that it was over 6 months old. Several people participated in a thread that I thought was current, but it wasn’t. I was embarrassed that I’d cranked up the topic again.

Now when I go to latest, I’m recommended https://meta.discourse.org/t/custom-print-style-should-be-added/14921/12 , which is from April 14. (And it’s on almost the same topic that I replied to errantly yesterday) And when I look at it in Latest I see that there’s “activity” 14 minutes ago, except, there’s really not activity in over 3 years.

It was confusing enough when Suggested would send me to long-dead topics that don’t need to be revisited, but now I can’t tell from Latest whether I should visit a topic.

I’m having a hard time understanding the value of this feature.

3 Likes

I like the idea of the auto bumped small action, not sure how @codinghorror feels about

@Pad_Pors I have a nice idea of how to space out the bumps, will implement tomorrow

2 Likes

Having these forever open support topic is a problem, I like that this triggers us to clean up, an alternative I guess is just to auto close all old support topics, but it is a bit more drastic

1 Like

That makes sense. It seems that topics are more likely to be closed lately, so perhaps this will be less annoying once that clean-up is done. It seems rather painful (for me, anyway) until that’s done, though.

Perhaps it would be safe to auto-close stuff that’s, say, a year or two old?

1 Like

First of all there is a cap of one year on suggested so your statement isn’t correct.

Second, it is completely valid to continue the same discussion later if it was not resolved. Of course you did not know it was resolved, which is understandable since you can only trigger “real” printing mode from a keyboard shortcut… which is quite undiscoverable…

Proceed on auto-bumped small action @sam, this makes sense, because “invisible magic” always leads to confusion.

5 Likes

Really nice feature :+1:

One suggestion: Add integration with discourse-solved plugin and add the ability to choose non-closed and/or non-solved posts

10 Likes

This resolves the 2 big issues with the initial system:

https://github.com/discourse/discourse/commit/02628883d289168882b8a17231d21ae9e6ffc8cb

  1. We spread out bumping through a 24 hour period. If you are autobumping 4 topics in a category, then it is one per 6 hours.

  2. We add an auto bump message at the bottom of the topic so you can tell why it floated to the top

@barreeeiroo I love the idea of integrating with solved … we need to create a hook for it in core though, will work on this now!

13 Likes

A post was split to a new topic: Improve usability of reply as new topic

Per:

https://github.com/discourse/discourse/commit/5adf5b527de97a1cc30c5eb699dd45dd6d247595

And:

https://github.com/discourse/discourse-solved/commit/5b81cc92934f6cf4ca4a71fde206bd3e66c39452

This now integrates with Discourse solved and will not bump solved topics.

@eviltrout / @tgxworld not sure if you ever needed to do this before, but this seems like the best pattern for composable filters I can come up with without adding a proper filter interface (or leaning on the only used in one plugin, filter interface I added years back)

  on(:filter_auto_bump_topics) do |_category, filters|
    filters.push(->(r) { r.where(<<~SQL)
        NOT EXISTS(
          SELECT 1 FROM topic_custom_fields
          WHERE topic_id = topics.id
          AND name = 'accepted_answer_post_id'
        )
      SQL
    })
  end
14 Likes

is the system avatar needed in the topic list?

it doesn’t give a good feeling to meet a machine-type avatar in the first page, also it doesn’t make sense to change this avatar to a more human-based image.

1 Like

Yeah I feel the same, I am not sure what avatar to give it though… a simple fix here would be assigning meta system user a nicer avatar.

Maybe Baymax works better, he is certainly softer.

We could also let discobot do the bumping if it exists … which may make more sense here. Will change that tomorrow.

5 Likes

would be awesome :heart_eyes:! knowing that his duty is to take care of the community health!

2 Likes

Earlier today, I wanted to try this new feature and set our support category to 3 topics per day. About 20 minutes later, I realized that this was not a good idea because we have plenty of formally unresolved but de-facto resolved support topics so I turned it off again by setting it to 0 topics per day. However, at the time of writing, we’ve nevertheless had ten (!) old topics bumped.

Am I misunderstanding how this is supposed to work or is this some kind of double bug (it’s not obeying the max of three topics per day and it’s ignoring that I turned if off before the first topic was bumped. We’re on v2.1.0.beta2 +274

1 Like

We had some issues with this earlier this week, be sure to be on latest … 324 or up…

Is there value in keeping these open forever?

2 Likes

No, but:

So I’d prefer to keep most of them open until it’s easy for people to reply to a closed topic.

Also, we still have a bunch of uncategorized topics from migrating and categorizing those has priority.

So this 2014 topic just got bumped:
https://meta.discourse.org/t/is-there-a-way-to-use-without-an-email-server/15650

Doesn’t feel very useful :slight_smile:
I’d put in a limit on the original posting date, you don’t want to be boosting years old posts.
E.g. only bump posts from the past week or so.

2 Likes