]> git.cworth.org Git - turbot/blob - TODO
Put -SOLVED as a suffix on sheet names and not a prefix to preserve
[turbot] / TODO
1 Recently-proposed ideas (not yet prioritized)
2 ---------------------------------------------
3 • Set-up an announcements Slack channel that's auto fed by email to a
4   particular email address.
5
6 • Have Turbot explicitly report long state strings to the channel,
7   (since the implicit report from settting the abbreviated topic won't
8   have the whole message).
9
10 • In messages (like from /solved) don't use a raw user_name value from
11   the request, but instead some tagged version of a user ID (which
12   Slack will render as a display name).
13
14 Round management
15 ----------------
16
17 • Add a /round command which is identical to /hunt except that it acts
18   on only the puzzles in the same round(s) as the current puzzle.
19
20 • Select round fields by default based on the round of the puzzle for
21   the channel in which `/puzzle` is invoked.
22
23 • Consider putting a round prefix into the channel name to group a
24   round's puzzles in the channel list.
25
26 Meta-puzzle support
27 -------------------
28
29 • Figure out a good mechanism for linking puzzles to a meta-puzzle
30   that they feed into. Is this different or the same as the round
31   mechanism described above?
32
33 Hunt overview commands and filters
34 ----------------------------------
35
36 • On the Turbot home screen allow a dropdown for Unsolved/Solved/All
37   puzzles
38
39 • On the Turbot home screen add a text box for a search hstring (to
40   work like the search string now available in "/hunt").
41
42 • Figure out what we want for tagging and searching on tags (beyond
43   what's already possible with the state strings).
44
45 Editing puzzle fields
46 ---------------------
47
48 • Implement a command to display the status of the current puzzle
49   within the channel. Need a name for this command.
50
51 • Extend the in-channel puzzle display to also allow editing of all
52   puzzle fields
53
54 • Implement an /archive command to allow for easy archiving of a
55   channel for a solved puzzle (but make sure archived puzzles still
56   show up in global hunt/round views).
57
58 • Ensure that both spreadsheet and channel are updated in response to
59   any changes.
60
61 File uploads
62 ------------
63
64 • Incorporate puzzle file uploads into the database state for each
65   puzzle. Any file uploaded to the Slack should get included
66   initially, but when editing a puzzle users can drop irrelevant files
67   or label relevant files.
68
69 Opt-out of channel invitations
70 ------------------------------
71
72 • Consider adding a user option to allow a user to opt-in to auto
73   invitation for all newly-created puzzle channels
74
75 Sheet-related fixes
76 -------------------
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 • Come up with a better sheet template
85
86 • Put the puzzle's name into the primary tab of the sheet
87
88 • When copying tabs from the spreadsheet template, don't leave the
89   default "Copy of " text in place.
90
91 • Do something to make it more clear which tabs exist just as
92   backup/reference from the original template vs. any new tab a user
93   has created during the hunt. (Perhaps color the reference tabs
94   differently.)
95
96 Un-prioritized items
97 --------------------
98
99 • Add support for recording/displaying those who have current roles
100
101 • Think about some way to express solve priority
102
103 Lower priority
104 --------------
105
106 • Implement code to close out an entire hunt after the fact
107
108 • Figure out what tool we want to use for shared drawing on a puzzle
109   and integrate that into Turbot, (give a command that will generate a
110   new URL and will insert that URL into the Slack topic and the list
111   of links at the top of the sheet).
112
113 • Think about using a URL shortener API for the sheet URLs (to leave
114   more room in a channel topic for state string content)