]> git.cworth.org Git - turbot/blob - TODO
TODO: Capture some recent suggestions
[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 • Select round fields by default based on the round of the puzzle for
18   the channel in which `/puzzle` is invoked.
19
20 • Consider putting a round prefix into the channel name to group a
21   round's puzzles in the channel list.
22
23 Meta-puzzle support
24 -------------------
25
26 • Figure out a good mechanism for linking puzzles to a meta-puzzle
27   that they feed into. Is this different or the same as the round
28   mechanism described above?
29
30 Hunt overview commands and filters
31 ----------------------------------
32
33 • Implement a /hunt command for giving an overview of the entire hunt,
34   (like the Turbot "home" view but available in any channel)
35
36 • For "/hunt" display only unsolved puzzles by default, but also allow
37   for "/hunt all" to display all puzzles
38
39 • On the Turbot home screen allow a dropdown for Unsolved/Solved/All
40   puzzles
41
42 • For both "/hunt" and the Turbot home screen allow for a search
43   string that will search through puzzle names, puzzle IDs, puzzle
44   URLs, and state strings.
45
46 • Figure out what we want for tagging and searching on tags (beyond
47   what's already possible with the state strings).
48
49 Editing puzzle fields
50 ---------------------
51
52 • Implement a command to display the status of the current puzzle
53   within the channel. Need a name for this command.
54
55 • Extend the in-channel puzzle display to also allow editing of all
56   puzzle fields
57
58 • Implement an /archive command to allow for easy archiving of a
59   channel for a solved puzzle (but make sure archived puzzles still
60   show up in global hunt/round views).
61
62 • Ensure that both spreadsheet and channel are updated in response to
63   any changes.
64
65 File uploads
66 ------------
67
68 • Incorporate puzzle file uploads into the database state for each
69   puzzle. Any file uploaded to the Slack should get included
70   initially, but when editing a puzzle users can drop irrelevant files
71   or label relevant files.
72
73 Opt-out of channel invitations
74 ------------------------------
75
76 • Consider adding a user option to allow a user to opt-in to auto
77   invitation for all newly-created puzzle channels
78
79 Sheet-related fixes
80 -------------------
81
82 • Have linked spreadsheets go into a specific Google Drive folder
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)