Skip to content

feat(Slack Node): Add emoji reaction filter to Slack Trigger#28628

Merged
Joffcom merged 4 commits intomasterfrom
node-4101-slack-trigger-add-reaction-emoji-filtering-to-prevent
Apr 27, 2026
Merged

feat(Slack Node): Add emoji reaction filter to Slack Trigger#28628
Joffcom merged 4 commits intomasterfrom
node-4101-slack-trigger-add-reaction-emoji-filtering-to-prevent

Conversation

@Joffcom
Copy link
Copy Markdown
Member

@Joffcom Joffcom commented Apr 17, 2026

Summary

Adds an optional Emoji Names to Filter field to the Slack Trigger node (under Options). When configured, only reaction_added events matching the allowlist will start a workflow execution — reactions not in the list are dropped before execution begins, saving execution budget for high-volume Slack workspaces.

How to test:

  1. Create a Slack Trigger node with Trigger On: Reaction Added
  2. Open Options → Emoji Names to Filter and enter thumbsup
  3. Add a 👍 reaction to a message → workflow executes
  4. Add a 👀 reaction → no execution
  5. Clear the field → all reactions trigger (existing behavior preserved)

Notes:

  • Emoji names are comma-separated, without colons (e.g. thumbsup, eyes, white_check_mark)
  • Matching is case-insensitive and whitespace-trimmed
  • Empty field (default) = no filtering, fully backwards-compatible

Related Linear tickets, Github issues, and Community forum posts

https://linear.app/n8n/issue/NODE-4101

Community forum: https://community.n8n.io/t/how-to-minimize-workflow-executions-for-cost-saving-in-n8n/162301/2

Review / Merge checklist

  • I have seen this code, I have run this code, and I take responsibility for this code.
  • PR title and summary are descriptive. (conventions)
  • Docs updated or follow-up ticket created.
  • Tests included.
  • PR Labeled with Backport to Beta, Backport to Stable, or Backport to v1 (if the PR is an urgent fix that needs to be backported)

🤖 PR Summary generated by AI

Adds an optional 'Emoji Names to Filter' field to the Slack Trigger node
options. When configured with a comma-separated list of emoji names, only
reaction_added events matching the allowlist will start a workflow execution.
Reactions not in the list are dropped before execution begins, preventing
unnecessary execution budget consumption.

The field is only shown when 'Reaction Added' is selected as a trigger event
and defaults to empty (no filtering), preserving existing behavior.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@Joffcom Joffcom marked this pull request as ready for review April 17, 2026 15:51
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 17, 2026

Codecov Report

❌ Patch coverage is 85.71429% with 1 line in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
...ckages/nodes-base/nodes/Slack/SlackTrigger.node.ts 85.71% 0 Missing and 1 partial ⚠️

📢 Thoughts on this report? Let us know!

Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai Bot left a comment

Choose a reason for hiding this comment

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

1 issue found across 2 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="packages/nodes-base/nodes/Slack/SlackTrigger.node.ts">

<violation number="1" location="packages/nodes-base/nodes/Slack/SlackTrigger.node.ts:393">
P2: Gate emoji filtering by selected trigger to avoid stale hidden `reactionEmojis` values affecting `any_event` setups. According to linked Linear issue NODE-4101, filtering is intended for the Reaction Added trigger path.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review, or fix all with cubic.

Comment thread packages/nodes-base/nodes/Slack/SlackTrigger.node.ts
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 17, 2026

Performance Comparison

Comparing currentlatest master14-day baseline

Idle baseline with Instance AI module loaded

Metric Current Latest Master Baseline (avg) vs Master vs Baseline Status
instance-ai-heap-used-baseline 186.85 MB 186.83 MB 186.46 MB (σ 0.26) +0.0% +0.2% ⚠️
instance-ai-rss-baseline 341.09 MB 343.82 MB 366.71 MB (σ 22.88) -0.8% -7.0% ⚠️

docker-stats

Metric Current Latest Master Baseline (avg) vs Master vs Baseline Status
docker-image-size-runners 387.00 MB 387.00 MB 391.94 MB (σ 10.84) +0.0% -1.3%
docker-image-size-n8n 1269.76 MB 1290.24 MB 1274.58 MB (σ 10.93) -1.6% -0.4%

Memory consumption baseline with starter plan resources

Metric Current Latest Master Baseline (avg) vs Master vs Baseline Status
memory-rss-baseline 280.97 MB 286.68 MB 289.59 MB (σ 40.91) -2.0% -3.0%
memory-heap-used-baseline 114.60 MB 114.56 MB 114.47 MB (σ 0.23) +0.0% +0.1%
How to read this table
  • Current: This PR's value (or latest master if PR perf tests haven't run)
  • Latest Master: Most recent nightly master measurement
  • Baseline: Rolling 14-day average from master
  • vs Master: PR impact (current vs latest master)
  • vs Baseline: Drift from baseline (current vs rolling avg)
  • Status: ✅ within 1σ | ⚠️ 1-2σ | 🔴 >2σ regression

@Joffcom Joffcom enabled auto-merge April 23, 2026 08:55
@n8n-assistant n8n-assistant Bot added core Enhancement outside /nodes-base and /editor-ui n8n team Authored by the n8n team labels Apr 23, 2026
@Joffcom Joffcom requested a review from DawidMyslak April 27, 2026 14:41
@Joffcom Joffcom added this pull request to the merge queue Apr 27, 2026
Merged via the queue into master with commit 90843cf Apr 27, 2026
54 checks passed
@Joffcom Joffcom deleted the node-4101-slack-trigger-add-reaction-emoji-filtering-to-prevent branch April 27, 2026 15:25
@n8n-assistant n8n-assistant Bot mentioned this pull request Apr 28, 2026
@n8n-assistant
Copy link
Copy Markdown
Contributor

n8n-assistant Bot commented Apr 28, 2026

Got released with n8n@2.19.0

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

Labels

core Enhancement outside /nodes-base and /editor-ui n8n team Authored by the n8n team Released

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants