feat: Add private note action to automations (#11926)

## Summary
- allow AutomationRule to accept `add_private_note` action
- support `add_private_note` in automation action service
- expose private note action in frontend constants and i18n
- test new automation rule action

## Testing
- `pnpm eslint
app/javascript/dashboard/routes/dashboard/settings/automation/constants.js`
- `bundle exec rubocop app/services/automation_rules/action_service.rb
app/models/automation_rule.rb
spec/services/automation_rules/action_service_spec.rb`
- `bundle exec rspec
spec/services/automation_rules/action_service_spec.rb`


------
https://chatgpt.com/codex/tasks/task_e_6870c5f7b8b88326a9bd60b2ba710ccd

Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
This commit is contained in:
Sojan Jose
2025-07-15 21:27:35 -07:00
committed by GitHub
parent 0ea616a6ea
commit 45d4d3660c
5 changed files with 37 additions and 1 deletions

View File

@@ -47,6 +47,13 @@ class AutomationRules::ActionService < ActionService
Messages::MessageBuilder.new(nil, @conversation, params).perform
end
def add_private_note(message)
return if conversation_a_tweet?
params = { content: message[0], private: true, content_attributes: { automation_rule_id: @rule.id } }
Messages::MessageBuilder.new(nil, @conversation.reload, params).perform
end
def send_email_to_team(params)
teams = Team.where(id: params[0][:team_ids])