Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

💡 Clearer archive flow #25

Closed
5 tasks done
MarcusOtter opened this issue Jan 9, 2022 · 4 comments · Fixed by #34
Closed
5 tasks done

💡 Clearer archive flow #25

MarcusOtter opened this issue Jan 9, 2022 · 4 comments · Fixed by #34
Labels
improvement 💡 Improvement suggestion

Comments

@MarcusOtter
Copy link
Owner

MarcusOtter commented Jan 9, 2022

Is your request for improvement related to a problem? Please describe.
From HopeOfGlory#0254 on Discord:

I think the text above the big red button would be more accurate if it says, "Click the button below to archive it in one hour." rather than "Click the button below to archive it." - I have been totally confused why I was getting the private bot message saying "This action will have no effect" but now just realised that it was because those needle threads were already set to 1 hour

Click here for more context Discord's official Threads FAQ

Simply put, Discord threads have two modes: active and archived. When a thread is archived, it will disappear from the channel list. It can be found again by browsing in the thread explorer and clicking the Archived tab. Sending a message in an archived thread will automatically un-archive it.

All active threads are on an auto-archive timer. Discord lets you select the duration for how long this timer should be: 1 hour, 24 hours, 3 days, or 1 week. When a thread has not gotten a new message in that amount of time, the thread is automatically archived by Discord. Archived threads will still show up in Discord's search results, so the contents are still discoverable.

Now, the way Needle currently works, clicking the "archive" button or running the /close command in a thread does not archive it immediately. Instead, it sets the auto-archive duration to 1 hour. This has a few benefits:

  • Users that have been active in the thread will get a chance to say their thanks, good byes, or welcomes, without unarchiving the thread (as long as they do so within 1 hour)
  • If there are any user mentions (pings) remaining in the thread, the pinged users will still have one hour to see said pings. When a thread is archived, pings are lost.
But of course it has a few disadvantages as well, as mentioned in this issue.
  • When a thread is un-archived by a user, it's auto-archive duration is set to the last known value. This means that that duration will only be 1 hour using Needle's current configuration. This is problematic because if a user finds an old thread and pings the original author about it, that ping will only remain for 1 hour.
  • The button is confusing because it seems like nothing happens

Describe the solution you'd like

Option A - Immediately archive the thread instead:

  • Make the thread immediately archive when the button is clicked
  • Remove bloaty-messages about the thread being archived, probably just archive it (?).
  • (implemented in v2.0 #34)

Describe alternatives you've considered

Option B - Leave archive functionality the same way it is, and

  • Change the button text
  • Improve the error message
  • When a thread is unarchived by a message, set the auto-archive duration to the initial value

Additional context
While doing some experiments with the developers of TypeScript's community bot, we figured out that threads can actually be instantly archived and still be unarchiveable by anyone. I'm not too sure if this would be better or worse, as it's common for users to say "thanks" or something right after they archive the thread. After some discussion with HopeOfGlory#0254 and b1mind#4027 on Discord, we had the following conclusions:

  • Immediately archiving is good because:
    • Immediate feedback
    • There is no confusion around still being able to archive the thread with the button
    • If the thread is revived, it will have the original auto-archive duration (not 1 hour which is very short)
  • Immediately archiving is bad because:
    • Previously active people in the thread will not see the closure message, the thread will just disappear
    • If you ping someone is a thread and then archive it, the ping will disappear

TLDR

Should /close immediately archive threads or should it keep the current behavior and set the auto-archive duration to 1 hour?

I am leaning towards Option A, but I would love feedback on this!

@MarcusOtter MarcusOtter added improvement 💡 Improvement suggestion help wanted 🙏 Extra attention is needed labels Jan 9, 2022
@MarcusOtter MarcusOtter pinned this issue Jan 9, 2022
@c43721
Copy link
Contributor

c43721 commented Jan 9, 2022

@MarcusOtter Some thoughts:

Archiving immediately sounds like a good thing. Here's some stories to consider:

As a moderator, when moderating and answering a large discord, I would like for topics that are archived to be removed from my active threads ASAP. This will give me more focus on questions that I have not answered and can provide immediate feedback on the number of active questions.

As a user, if I click archive, I expect the conversation to be done. If I am not done, I should re-open the thread instead.

From both perspectives, I think it makes sense. It not only "cleans up" your UI by a slight amount, but it could mean that other users who want to see your answer will not.

I had this issue in the Remix discord not too long ago, where a user who knew of a thread of a question I created, but couldn't actually view it without being in it and unarchiving it themselves, as archived threads are considered deleted in the client. This poses 2 problems:

  1. I might want to refer to the thread to answer another's question
  2. I won't be able to "guess" the channel name and have it appear on the client without knowing the exact thread nam

My solution: Make it configurable. Then, the server owner would have control over the situation.

Buuut if you ask me if you want a hard answer, I say to immediately archive. "Cleans up the junk" sort-of speak.

@b1mind
Copy link

b1mind commented Jan 10, 2022

Either way you go on this. I had an idea that when you archive via the button it would also change the title to put an emoji in the front for done/solved? Would only be practical if it keeps the old title + . This would indicate that the OP archived because issue was resolved.

Leaning on the fence towards best option being A though.

@c43721
Copy link
Contributor

c43721 commented Jan 10, 2022

@b1mind (RESOLVED) ...title

@MarcusOtter
Copy link
Owner Author

MarcusOtter commented Jan 10, 2022

I do like adding some emoji to closed threads, my suggestion is ✅ for solved/closed/archived and 🆕 for unanswered threads as mentioned in #8. I prefer this over text as it can get a bit cluttered.

This will be tracked in #8

@MarcusOtter MarcusOtter removed the help wanted 🙏 Extra attention is needed label Jan 12, 2022
@MarcusOtter MarcusOtter moved this to Todo in Needle v2.0 Jan 18, 2022
@MarcusOtter MarcusOtter moved this from Todo to Todo-next in Needle v2.0 Jan 18, 2022
@MarcusOtter MarcusOtter mentioned this issue Jan 18, 2022
Merged
3 tasks
@MarcusOtter MarcusOtter moved this from Todo-soon to In Progress in Needle v2.0 Jan 18, 2022
Repository owner moved this from In Progress to Done in Needle v2.0 Feb 3, 2022
@MarcusOtter MarcusOtter unpinned this issue Feb 3, 2022
@MarcusOtter MarcusOtter changed the title 💡 Improvement: Clearer archive flow 💡 Clearer archive flow May 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement 💡 Improvement suggestion
Projects
No open projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants