Skip to content

refactor(slack): retire emoji-reaction feedback (native buttons confirmed live) - #603

Merged
izadoesdev merged 1 commit into
stagingfrom
izadoesdev/retire-reaction-feedback
Aug 8, 2026
Merged

refactor(slack): retire emoji-reaction feedback (native buttons confirmed live)#603
izadoesdev merged 1 commit into
stagingfrom
izadoesdev/retire-reaction-feedback

Conversation

@izadoesdev

@izadoesdev izadoesdev commented Aug 8, 2026

Copy link
Copy Markdown
Member

Now that the native feedback_buttons path is confirmed working in prod (a 👍 click recorded: slack_event: feedback_button, sentiment: positive, org resolved, recordAgentFeedback fired), the emoji-reaction feedback path is redundant. Removing it.

Deleted

  • logSlackReactionFeedback + its reaction-event types/helpers (feedback.ts, ~137 lines)
  • The reaction_added/reaction_removed listeners + registerSlackReactionFeedback (listeners.ts)
  • reaction_added/reaction_removed bot events and the reactions:read scope from the manifest

Kept

  • reactions:write + the 🐰 processing-acknowledgement reaction (that's a separate, still-useful signal — not feedback).
  • The native feedback_buttons path (handleSlackFeedbackAction) — now the sole feedback mechanism.

Result

Net −165 lines, one feedback path instead of two, one fewer OAuth scope. 78/78 Slack tests pass, typecheck + ultracite clean.


Summary by cubic

Retires Slack emoji-reaction feedback now that native feedback_buttons is live in production. This simplifies feedback to a single path and removes the reactions:read scope and reaction event listeners.

  • Refactors
    • Removed reaction feedback code and reaction_added/reaction_removed listeners.
    • Updated manifest: dropped reactions:read and reaction events; kept reactions:write for the processing-ack reaction.
    • handleSlackFeedbackAction is now the sole feedback path; all Slack tests pass.

Written for commit 7b6b133. Summary will update on new commits.

Review in cubic

@unkey-deploy

unkey-deploy Bot commented Aug 8, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Unkey Deploy

Name Status Preview Inspect Updated (UTC)
links (preview) Ready Visit Preview Inspect Aug 8, 2026 8:38am

@cursor

cursor Bot commented Aug 8, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@vercel

vercel Bot commented Aug 8, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
databuddy-status Ready Ready Preview Aug 8, 2026 8:39am
2 Skipped Deployments
Project Deployment Actions Updated (UTC)
dashboard Skipped Skipped Aug 8, 2026 8:39am
documentation Skipped Skipped Aug 8, 2026 8:39am

@vercel
vercel Bot temporarily deployed to Preview – dashboard August 8, 2026 08:38 Inactive
@vercel
vercel Bot temporarily deployed to Preview – documentation August 8, 2026 08:38 Inactive
@coderabbitai

coderabbitai Bot commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 81e3df26-2b8f-4fa0-bcae-6bb5dbe629cc

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@izadoesdev
izadoesdev merged commit cd51747 into staging Aug 8, 2026
15 checks passed
@izadoesdev
izadoesdev deleted the izadoesdev/retire-reaction-feedback branch August 8, 2026 08:40
@greptile-apps

greptile-apps Bot commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR retires Slack emoji-reaction feedback after native feedback buttons were confirmed in production.

  • Removes reaction event subscriptions and listener registration.
  • Deletes reaction-feedback parsing and recording code.
  • Removes the reactions:read manifest scope while retaining reactions:write for processing acknowledgements.

Confidence Score: 4/5

The PR appears safe to merge, with a non-blocking feedback-coverage gap for responses where native buttons are absent or fail to post.

Reaction ingestion is removed cleanly and has no remaining import or scope dependency, but error, cancellation, and suppressed button-post failure paths can now leave visible responses with no way to submit feedback.

Files Needing Attention: apps/slack/src/slack/listeners.ts, apps/slack/src/slack/respond.ts

Important Files Changed

Filename Overview
apps/slack/slack-app-manifest.json Removes reaction event subscriptions and the unused reactions:read scope while preserving reactions:write.
apps/slack/src/slack/feedback.ts Deletes reaction-event feedback handling while retaining native button feedback processing.
apps/slack/src/slack/listeners.ts Removes reaction listener registration, leaving buttonless error and button-post-failure responses without a feedback mechanism.

Reviews (1): Last reviewed commit: "refactor(slack): retire emoji-reaction f..." | Re-trigger Greptile


registerSlackCommands(app, installations);
registerSlackReactionFeedback(app, installations);
registerSlackFeedbackButtons(app, installations);

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Buttonless responses lose feedback

Error, abort, and cancellation responses skip native feedback buttons, while failures posting the separate button message are suppressed. Removing the reaction listeners leaves users who see these buttonless responses without any feedback mechanism, so their reactions no longer reach recordAgentFeedback.

Knowledge Base Used: Slack App

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant