]> git.cworth.org Git - turbot/commitdiff
Revamp the TODO list
authorCarl Worth <cworth@cworth.org>
Fri, 8 Jan 2021 01:51:22 +0000 (17:51 -0800)
committerCarl Worth <cworth@cworth.org>
Fri, 8 Jan 2021 02:02:56 +0000 (18:02 -0800)
The primary thing here is a sorted list of everything we want to
complete before a feature freeze, (which we're doing one weekend
before MH 2021 and will be followed by some test hunt over the weekend
both to flush out bugs and to get more of the team comfortable with
Turbot).

TODO

diff --git a/TODO b/TODO
index 34481a6fedb9fe6bdcc4ed60e1f8c91da6fe095b..5c551668b13aad5e57e0b321f81d66bb86d3b979 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,3 +1,34 @@
+Ordered punch-list (aiming to complete by 2021-01-08)
+-----------------------------------------------------
+
+• Add the puzzle edit dialog (initially connected only to :pencil:)
+
+• Ensure that both spreadsheet and channel are updated in response to
+  any changes.
+
+• Rename puzzle creation command from /puzzle to /puzzle new
+
+• Add new /puzzle giving puzzle status (and including :pencil:)
+
+• Add new /puzzle edit as a shortcut instead of /puzzle followed by
+  clicking :pencil:
+
+• Add /round as a shortcut for existing /hunt all <round-name> (and
+  slightly different in that it won't actually return a puzzle from
+  some other round that happens to have a name that matches this
+  round's name)
+
+• Add "meta" as a checkbox field on puzzle creation/edit
+
+• Tweak /hunt and /round to treat meta puzzles as special (sort them
+  first and add some META label)
+
+• Add /tag to add/remove tags (will force to all caps and store as a
+  prefix as part of the state string for now)
+
+  Specifically, this should be "/tag TAG_NAME" or "/tag +TAG_NAME" to
+  add a tag and "/tag -TAG_NAME" to remove a tag.
+
 Recently-proposed ideas (not yet prioritized)
 ---------------------------------------------
 • Set-up an announcements Slack channel that's auto fed by email to a
@@ -11,25 +42,38 @@ Recently-proposed ideas (not yet prioritized)
   the request, but instead some tagged version of a user ID (which
   Slack will render as a display name).
 
+• Allow a hunt (and perhaps a round) to have multiple URLs
+
+• Provide an "Archive channel" button in the channel when outputting
+  the message that results from /solved.
+
+• Would it be helpful to have some sort of "tools" command to collect
+  pointers to useful tools and allow for searching of them?
+
+• Investigate what from snap2 we could incorporate into our sheets:
+
+  https://github.com/kevinychen/snap2
+
+• Watch the recent hunt workshop that had some recommendations on
+  tools and see what from that we should incorporate
+
+• Think about writing some custom solving tools, (like Qat, or
+  Nutrimatic, or Snap2, etc.)
+
+• Fix slash commands to pass off processing to a separate Lambda and
+  then return immediately (removing the annoying "operation timeout"
+  complaints from Slack even when the command works exactly as it
+  should).
+
 Round management
 ----------------
 
-• Add a /round command which is identical to /hunt except that it acts
-  on only the puzzles in the same round(s) as the current puzzle.
-
 • Select round fields by default based on the round of the puzzle for
   the channel in which `/puzzle` is invoked.
 
 • 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
 ----------------------------------
 
@@ -39,25 +83,6 @@ Hunt overview commands and filters
 • On the Turbot home screen add a text box for a search hstring (to
   work like the search string now available in "/hunt").
 
-• Figure out what we want for tagging and searching on tags (beyond
-  what's already possible with the state strings).
-
-Editing puzzle fields
----------------------
-
-• Implement a command to display the status of the current puzzle
-  within the channel. Need a name for this command.
-
-• Extend the in-channel puzzle display to also allow editing of all
-  puzzle fields
-
-• 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).
-
-• Ensure that both spreadsheet and channel are updated in response to
-  any changes.
-
 File uploads
 ------------
 
@@ -66,7 +91,7 @@ File uploads
   initially, but when editing a puzzle users can drop irrelevant files
   or label relevant files.
 
-Opt-out of channel invitations
+Opt-in for channel invitations
 ------------------------------
 
 • Consider adding a user option to allow a user to opt-in to auto
@@ -75,13 +100,17 @@ Opt-out of channel invitations
 Sheet-related fixes
 -------------------
 
+• Add the solution to the sheet name on solved: "[TITLE] - Solved [ANSWER]"
+
 • Use a hunt-specific Google Drive folder for creating all the
   sheets. (This way, we can share out the "mh2021" folder to all team
   members so that people can browse the sheets that way if wanted, and
   have backup access to all of them on the off chance of Slack not
   being available.)
 
-• Come up with a better sheet template
+• Come up with a better sheet template (Nathan has got one available here:
+
+https://docs.google.com/spreadsheets/d/1drSoyrE4gM3JaGweDkOybwXWdKPIDTfUmB1gQCYS3Uw/edit#gid=1471575838
 
 • Put the puzzle's name into the primary tab of the sheet
 
@@ -98,6 +127,9 @@ Un-prioritized items
 
 • Add support for recording/displaying those who have current roles
 
+  Maybe this should just be a "Post" in the main hunt channel, (and
+  need not have any direct Turbot support?)
+
 • Think about some way to express solve priority
 
 Lower priority