Creating a Decision Log Automation in Slack... With Feelings | #83
Here is a how-to guide for decision logging in a Slack workflow. Learn to log decisions efficiently, capture emotions around the decision, and create a digital trail for your team's critical choices
Why did we make that decision 6 months ago?
Why the hell would we agree to that?
Decision logs are important. This is a well established fact in the world of modern product development.
Decision logs are also one of the worst maintained important things anywhere I have encountered them. This also seems to be a well established fact in the world of modern product development.
Where do we store them? What template do we use? Who has the visibility? Are they tied to a project or a team?
These are some of the common questions that appear when recording decisions becomes a topic of conversation in a product team. None of the answers are great, and usually someone ends up not following the steps.
The person following the steps then leaves the company, and the process gets forgotten. It’s a trend as old as time in software development.
To try and nip this trend, I’m using a method I’ve shared before with slack emoji automations. See the link below for that one.
Note: Adding feelings to decision logs is something I came across on Linkedin last year, but cannot find the source now. If you are that source, please let me know so I can credit you here.
What does the automation look like?
Well, essentially this
When you use the Decision log emoji (the one you downloaded from above and input into slack), you can
React to threads with that emoji
Receive a message with a button for the decision log form, along with context to the original thread and instructions.
Clicking that button will open up a form where you can input the decision being made, along with how you or the team felt about the decision (including negative feelings)
That input gets sent as a response into the thread of the message that was reacted to
Note: The feeling doesn’t get sent here. Just in case the feeling is negative, and the submitter doesn’t want the people in the thread to see it, this will only get sent to the team’s leadership and the submitter themselves
It gets sent to the leadership channel added in the settings, including the feelings left out above
Finally, it gets sent to the person themselves via the automation chat.
What do you need before you get started?
Access to create slack automations (I believe this is only on premium/enterprise accounts
A secondary slack channel where you log the decisions - I would suggest creating a leadership channel for the leads on your team or for your triad if one exists
This emoji (Right click → Save as… and make sure the name is decision-log.png)
How do I set it up?
Firstly here are the two emoji you’ll need to add to your list of emoji in slack if you want to follow my process. These can be added to slack using the Add emoji button anywhere where you can react with an emoji.
Emoji #1 - The one for telling people how to pop out the automation screen (saved as open-in-new-window.png)
Emoji #2 - The one for the automation itself I have above.
Then, go to the automation section
Click the New workflow in the top right of the page. You don’t need to use the emoji template, as I’m helping you do it.
Choose to start the workflow with the "When an emoji reaction is used” setting on the right of the window
Select the channels you want to enable it for. I would suggest creating a playground or personal private slack channel, so you can test stuff without any impact on real channels.
Add the decision-log emoji you just added to slack, choose the channels you want the emoji response to work and then click continue.
NOTE: If multiple teams in your company are using the same emoji, make sure you limit the channels to the ones in your control. I don’t know what will happen if two workflows react to the same emojis in different channels. You could also rename the emoji to :team-decision-log: with team being your own team name.
Click the name on the top left (the one with the placeholder image)
And update the settings to the below
One thing to note, when uploading a square image as an automation image, sometimes you need to drag the crop window ever so slightly or else you’ll get this error. Annoying bug that has been around for a while on slack
I’ll quickly go through the next steps, and just share my settings. You’ll have to do a bit of this work yourself I’m afraid.
Step 1
Messages Step on the right → Send a message to a person
Here’s the text (replace the inputs with what is seen on the screenshot)
Hi!
You are receiving this form as you reacted with the decision log emoji :decision-log: to a comment on slack.
Please complete the form to input the decision that has been made.
If you can't remember the context, after hitting the Input Decision Log button below, hit the Open in a new window button :open-in-new-window: on the form, then hit the link below so you can see the original message.
Here is the original message you reacted to: {{{{inputs}}}}
in
{{{{inputs}}}}
I would advise using the emoji (or a different team logo) for the workflow too - you can change that by hitting the stock logo where you edit the description.
Step 2
Add a Forms input
Question 1
Hint: Please input high level details of the decision
Question 2
Hint: This will not be shared on the thread, but will be shared with the PM
Question 3
Question 4
Question 5
Hint: Please add more context or link to more context if not provided in the thread already
Step 3
Here’s the content, replace the {{}} with the ones you see in the first screenshot
Decision Log Input - {{{{steps}}}}
{{{{inputs}}}} has input a decision log for this message
Decision Being Logged
{{{{steps}}}}
Key Decision Makers
{{{slack.user_mention_names(user_ids={{steps}})}}}
More Context
{{{{steps}}}}
Step 4
Here’s the content, replace the {{}} with the ones you see in the first screenshot
Decision Log Input {{{{steps}}}}
You have input a decision log for this message: {{{{inputs}}}}
Decision Being Logged
{{{{steps}}}}
Key Decision Makers
{{{slack.user_mention_names(user_ids={{steps}})}}}
How Do You or the Team Feel About the Decision?
{{{{steps}}}}
More Context
{{{{steps}}}}
Step 5
Decision Log Input {{{{steps}}}}
{{{{inputs}}}} has input a decision log for this message: {{{{inputs}}}}
Decision Being Logged
{{{{steps}}}}
Key Decision Makers
{{{slack.user_mention_names(user_ids={{steps}})}}}
How Does the Person or the Team Feel About the Decision?
{{{{steps}}}}
More Context
{{{{steps}}}}
Finishing up
Hit the 3 dots in the top right, go to settings and consider if the sharing/visibility settings need to be changed. You’ll want this to be able to be run from your main team’s channels, and if you have many slack channels for different projects, consider adding those too.
If other teams want to use their own version of the same automation, you may need to think about limiting it to your team’s specific channels. But that’s something you’ll need to decide.
This is not the same setting as the channels the reaction can be triggered from, but you should consider keeping the “Who can find this workflow” setting to be uniform.
You might consider opening it up to everyone in your org, or workflow managers only. The workflow still won’t work without enabling it on the channel in the top step listed above, so opening it up to everyone after you are happy with it doesn’t seem like a problem to me - but I could be wrong!
If you know of any improvements that I can make to this flow or Ideas on how this could be used, let me know in the message in the chat, or comments on this page.
For More Tips
I have some other Product Ops content here if you found this useful.
For my past tips check out my past posts on Substack or check out the hashtag #JohnsTipOfTheWeek on LinkedIn.
I’d love if you subscribed! I’m trying to build a bit of a following to try and help folks in the industry and make their jobs a little bit easier.