From 01ef7b71ad45338427c61722dbbee4fb19759661 Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Mon, 28 Dec 2020 09:49:20 -0700 Subject: [PATCH] Rework the TODO list to capture recent-discussed priorities Thanks, Nathan! --- TODO | 114 +++++++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 80 insertions(+), 34 deletions(-) diff --git a/TODO b/TODO index 6589b33..56fe242 100644 --- a/TODO +++ b/TODO @@ -1,11 +1,37 @@ -• Add support for recroding/displaying those who have current roles +Low-hanging fruit +----------------- + +[These are not highest priority, but are so easy that they are worth +not delaying until after bigger features below.] + +• Fix /puzzle dialog to reject a puzzle with the same URL as an + existing puzzle. • Make /solved clear the state string for a puzzle. -• Implement an /archive command to allow for easy archiving of a - channel for a solved puzzle +Round management +---------------- -• Implement code to close out an entire hunt after the fact +• Add a /round command to create a new round. This is like a puzzle in + that it has its own channel, but different in that it doesn't accept + a solution, etc. + +• Add an (optional) drop-down at puzzle creation for selecting a known + round for a puzzle, (or creating a new round). Ensure this mechanism + allows for puzzles to exist in multiple rounds. + +• Consider putting a round prefix into the channel name to group a + round's puzzles in the channel list. + +Meta-puzzle support +------------------- + +• Figure out a good mechanism for linking puzzles to a meta-puzzle + that they feed into. Is this different or the same as the round + mechanism described above? + +Hunt overview commands and filters +---------------------------------- • Implement a /hunt command for giving an overview of the entire hunt, (like the Turbot "home" view but available in any channel) @@ -20,16 +46,11 @@ string that will search through puzzle names, puzzle IDs, puzzle URLs, and state strings. -• Add an (optional) drop-down at puzzle creation for selecting a known - round for a puzzle, (or creating a new round). Ensure this mechanism - allows for puzzles to exist in multiple rounds. - -• Consider putting a round prefix into the channel name to group a - round's puzzles in the channel list. +• Figure out what we want for tagging and searching on tags (beyond + what's already possible with the state strings). -• Figure out a good mechanism for linking puzzles to a meta-puzzle - that they feed into. Is this different or the same than the round - mechanism described above? +Editing puzzle fields +--------------------- • Implement a command to display the status of the current puzzle within the channel. Need a name for this command. @@ -37,34 +58,33 @@ • Extend the in-channel puzzle display to also allow editing of all puzzle fields -• Fix /puzzle dialog to reject a puzzle with the same URL as an - existing puzzle. - -• Allow a per-user option to opt out of being auto-invited to all - newly-created puzzle channels. - -• Figure out what we want for tagging and searching on tags (beyond - what's already possible with the state strings). - -• Decide a good plan for audio/video calls for puzzles and integrate - that into Turbot. +• Implement an /archive command to allow for easy archiving of a + channel for a solved puzzle (but make sure archived puzzles still + show up in global hunt/round views). -• Inspect the CloudWatch logs for our Turbot AWS Lambda during the time - period of the active hunt, (October 24-31), find and diagnose any - errors that occurred during that period. Users reported seeing - "Trouble connecting" (probably during new-puzzle dialog submission) - as well as "dispatch_failed during /state command (perhaps due to a - state string that was very long). +File uploads +------------ • Incorporate puzzle file uploads into the database state for each puzzle. Any file uploaded to the Slack should get included initially, but when editing a puzzle users can drop irrelevant files or label relevant files. -• Figure out what tool we want to use for shared drawing on a puzzle - and integrate that into Turbot, (give a command that will generate a - new URL and will insert that URL into the Slack topic and the list - of links at the top of the sheet). +Opt-out of channel invitations +------------------------------ + +• Drop the auto-invitation of all hunt members to every new channel. + +• Announce all newly-created puzzles in the main hunt channel, (so + that hunt members can easily click to join). + +• Consider adding a user option to allow a user to opt-in to auto + invitation for all newly-created puzzle channels + +Sheet-related fixes +------------------- + +• Have linked spreadsheets go into a specific Google Drive folder • Come up with a better sheet template @@ -78,4 +98,30 @@ has created during the hunt. (Perhaps color the reference tabs differently.) +Un-prioritized items +-------------------- + +• Add support for recording/displaying those who have current roles + +• Decide a good plan for audio/video calls for puzzles and integrate + that into Turbot. + +• Inspect the CloudWatch logs for our Turbot AWS Lambda during the time + period of the active hunt, (October 24-31), find and diagnose any + errors that occurred during that period. Users reported seeing + "Trouble connecting" (probably during new-puzzle dialog submission) + as well as "dispatch_failed during /state command (perhaps due to a + state string that was very long). + • Think about some way to express solve priority + +Lower priority +-------------- + +• Implement code to close out an entire hunt after the fact + + +• Figure out what tool we want to use for shared drawing on a puzzle + and integrate that into Turbot, (give a command that will generate a + new URL and will insert that URL into the Slack topic and the list + of links at the top of the sheet). -- 2.43.0