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