zulip/zulip

Make it possible to require topic resolution messages

Open

#35,161 opened on 2025年7月7日

GitHub で見る
 (16 comments) (0 reactions) (1 assignee)Python (19,672 stars) (7,339 forks)batch import
area: compose (banners & validation)area: topicshelp wantednew feature

説明

Some organizations require a message explaining why a topic was resolved, and it would be helpful to have a Zulip feature for enforcing that norm.

Setting

We should add a new setting:

  • Where: Settings / Organization permissions > Moving messages , just below "Who can resolve topics".
  • Label: Topic resolution message (dropdown setting)
  • Options: Not required [default], Optional, Required

How it works

When a topic resolution message is required, clicking the resolution checkmark should:

  1. Open the compose box with that topic as the destination, saving any prior content as a draft if needed.
  2. Show a blue banner explaining what's up (exact wording TBD):

To resolve this topic, enter a resolution message.

  1. We should have a minimum character count, and the "send" button should be disabled if the message is too short, with a tooltip: "Resolution message must be {N}+ characters."
  2. Once the minimum character count is reached, the "Send" button tooltip should be "Resolve topic".
  3. Sending the message should trigger a Notification Bot message, rather than a message from the user:

@_Desdemona|9 has marked this topic as resolved with the following message:

{user's message in a quote block}

Closing the compose box should clear the "I'm resolving this topic" state.

When a resolution message is optional

In this case, the banner should have a [Resolve without a message] button. This should resolve the topic, and clear the special resolution state for the compose box.

Everything else can be the same as above.

Questions

  1. Should a message be required to unresolve a topic? Probably not?

Notes

I guess we should just turn off topic resolution via the move topic UI when this setting is "required", with an appropriate error message.

Follow-ups

  • We should plan to implement a per-channel version of this setting, perhaps as a drop-down that adds an "Automatic" option to follow org-wide settings.
  • There could be an additional compose UI for entering the topic resolution flow, perhaps.

CZO thread: #feedback > Feature request - Mark as Resolved dialog

コントリビューターガイド