]> git.cworth.org Git - turbot/blob - TODO
Add an initial implementation of /help
[turbot] / TODO
1 Ordered punch-list (aiming to complete by 2021-01-08)
2 -----------------------------------------------------
3
4 • Add an "archive channel" button that is provided out after a puzzle
5   has been solved.
6
7 • Add tags to the puzzle edit interface
8
9 • Make the /hunt command drop from the database any rounds that have 0
10   puzzles in them
11
12 Recently-proposed ideas (not yet prioritized)
13 ---------------------------------------------
14 • Set-up an announcements Slack channel that's auto fed by email to a
15   particular email address.
16
17 • Have Turbot explicitly report long state strings to the channel,
18   (since the implicit report from settting the abbreviated topic won't
19   have the whole message).
20
21 • Allow a hunt (and perhaps a round) to have multiple URLs
22
23 • Provide an "Archive channel" button in the channel when outputting
24   the message that results from /solved.
25
26 • Would it be helpful to have some sort of "tools" command to collect
27   pointers to useful tools and allow for searching of them?
28
29 • Investigate what from snap2 we could incorporate into our sheets:
30
31   https://github.com/kevinychen/snap2
32
33 • Watch the recent hunt workshop that had some recommendations on
34   tools and see what from that we should incorporate
35
36 • Think about writing some custom solving tools, (like Qat, or
37   Nutrimatic, or Snap2, etc.)
38
39 • Fix slash commands to pass off processing to a separate Lambda and
40   then return immediately (removing the annoying "operation timeout"
41   complaints from Slack even when the command works exactly as it
42   should).
43
44 Round management
45 ----------------
46
47 • Select round fields by default based on the round of the puzzle for
48   the channel in which `/puzzle` is invoked.
49
50 Hunt overview commands and filters
51 ----------------------------------
52
53 • On the Turbot home screen allow a dropdown for Unsolved/Solved/All
54   puzzles
55
56 • On the Turbot home screen add a text box for a search hstring (to
57   work like the search string now available in "/hunt").
58
59 File uploads
60 ------------
61
62 • Incorporate puzzle file uploads into the database state for each
63   puzzle. Any file uploaded to the Slack should get included
64   initially, but when editing a puzzle users can drop irrelevant files
65   or label relevant files.
66
67 Opt-in for channel invitations
68 ------------------------------
69
70 • Consider adding a user option to allow a user to opt-in to auto
71   invitation for all newly-created puzzle channels
72
73 Sheet-related fixes
74 -------------------
75
76 • Add the solution to the sheet name on solved: "[TITLE] - Solved [ANSWER]"
77
78 • Use a hunt-specific Google Drive folder for creating all the
79   sheets. (This way, we can share out the "mh2021" folder to all team
80   members so that people can browse the sheets that way if wanted, and
81   have backup access to all of them on the off chance of Slack not
82   being available.)
83
84 • Do something to make it more clear which tabs exist just as
85   backup/reference from the original template vs. any new tab a user
86   has created during the hunt. (Perhaps color the reference tabs
87   differently.)
88
89 Un-prioritized items
90 --------------------
91
92 • Add support for recording/displaying those who have current roles
93
94   Maybe this should just be a "Post" in the main hunt channel, (and
95   need not have any direct Turbot support?)
96
97 • Think about some way to express solve priority
98
99 Lower priority
100 --------------
101
102 • Implement code to close out an entire hunt after the fact
103
104 • Figure out what tool we want to use for shared drawing on a puzzle
105   and integrate that into Turbot, (give a command that will generate a
106   new URL and will insert that URL into the Slack topic and the list
107   of links at the top of the sheet).
108
109 • Think about using a URL shortener API for the sheet URLs (to leave
110   more room in a channel topic for state string content)