Skip to content

GH#743: wire wu_settings_transactional_email hook to Amazon SES provider#744

Merged
superdav42 merged 1 commit intomainfrom
bugfix/qd-743-quality-debt--pr--724-review-f
Apr 3, 2026
Merged

GH#743: wire wu_settings_transactional_email hook to Amazon SES provider#744
superdav42 merged 1 commit intomainfrom
bugfix/qd-743-quality-debt--pr--724-review-f

Conversation

@superdav42
Copy link
Copy Markdown
Collaborator

Summary

  • Adds the missing do_action('wu_settings_transactional_email') call to inc/class-settings.php after the Transactional Email Delivery header/note fields
  • Subscribes Amazon_SES_Transactional_Email to the hook via register_transactional_email_settings(), which displays the active SES region in the Emails settings tab
  • Adds tests for the new hook subscription and settings callback

Problem

PR #724 described adding a wu_settings_transactional_email action hook in the Emails settings section for addon developers, but the do_action() call was never actually emitted in class-settings.php. Additionally, no provider subscribed to the hook, making it dead code. CodeRabbit flagged this in the PR #724 review (issue #743).

Changes

  • inc/class-settings.php — emit do_action('wu_settings_transactional_email') with PHPDoc after the transactional email fields
  • inc/integrations/providers/amazon-ses/class-amazon-ses-transactional-email.php — subscribe to the hook in register_hooks() and implement register_transactional_email_settings() callback
  • tests/WP_Ultimo/Integrations/Providers/Amazon_SES/Amazon_SES_Transactional_Email_Test.php — add tests for hook subscription and settings callback

Runtime Testing

Risk level: Low — settings UI field registration, no payment/auth/data paths affected.
Verification: self-assessed — PHP syntax clean on all modified files; no runtime environment available.

Closes #743


aidevops.sh v3.5.784 plugin for OpenCode v1.3.0 with claude-sonnet-4-6

PR #724 added the do_action('wu_settings_transactional_email') call to
class-settings.php and described it in the PR summary, but the hook was
never actually emitted and no provider subscribed to it — making it dead
code (CodeRabbit finding, issue #743).

- Add do_action('wu_settings_transactional_email') in class-settings.php
  after the Transactional Email Delivery header/note fields
- Subscribe Amazon_SES_Transactional_Email::register_transactional_email_settings()
  to the hook so the active SES region is shown in the Emails settings tab
- Add tests for the new hook subscription and settings callback
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 3, 2026

Warning

Rate limit exceeded

@superdav42 has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 10 minutes and 23 seconds before requesting another review.

Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 10 minutes and 23 seconds.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: e0501481-aa94-4e26-b2ce-83104575f7a5

📥 Commits

Reviewing files that changed from the base of the PR and between bbad652 and 312afdb.

📒 Files selected for processing (3)
  • inc/class-settings.php
  • inc/integrations/providers/amazon-ses/class-amazon-ses-transactional-email.php
  • tests/WP_Ultimo/Integrations/Providers/Amazon_SES/Amazon_SES_Transactional_Email_Test.php
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch bugfix/qd-743-quality-debt--pr--724-review-f

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 and usage tips.

@superdav42
Copy link
Copy Markdown
Collaborator Author

What: Wires the dead wu_settings_transactional_email action hook by (1) emitting do_action('wu_settings_transactional_email') in class-settings.php and (2) subscribing Amazon_SES_Transactional_Email to it with a register_transactional_email_settings() callback that displays the active SES region in the Emails settings tab.

Issue: Closes #743 (CodeRabbit finding from PR #724 review — hook was described but never emitted, and no provider subscribed to it)

Files changed: 3 files, 68 insertions

  • inc/class-settings.php — emit the hook with PHPDoc
  • inc/integrations/providers/amazon-ses/class-amazon-ses-transactional-email.php — subscribe and implement callback
  • tests/WP_Ultimo/Integrations/Providers/Amazon_SES/Amazon_SES_Transactional_Email_Test.php — 2 new tests

Testing: PHP syntax clean; tests added for hook subscription and callback execution. Risk: Low (settings UI only).

Key decisions: Callback shows active SES region as a note field — minimal, informative, consistent with other provider status fields in the settings UI.

@superdav42 superdav42 merged commit 39a1bbd into main Apr 3, 2026
11 checks passed
@superdav42
Copy link
Copy Markdown
Collaborator Author

What: Wires the dead wu_settings_transactional_email action hook by (1) emitting do_action('wu_settings_transactional_email') in class-settings.php and (2) subscribing Amazon_SES_Transactional_Email to it with a register_transactional_email_settings() callback that displays the active SES region in the Emails settings tab.

Issue: Closes #743 (CodeRabbit finding from PR #724 review — hook was described but never emitted, and no provider subscribed to it)

Files changed: 3 files, 68 insertions

  • inc/class-settings.php — emit the hook with PHPDoc
  • inc/integrations/providers/amazon-ses/class-amazon-ses-transactional-email.php — subscribe and implement callback
  • tests/WP_Ultimo/Integrations/Providers/Amazon_SES/Amazon_SES_Transactional_Email_Test.php — 2 new tests

Testing: PHP syntax clean; tests added for hook subscription and callback execution. Risk: Low (settings UI only).

Key decisions: Callback shows active SES region as a note field — minimal, informative, consistent with other provider status fields in the settings UI.


Merged via PR #744 to main.
Merged by deterministic merge pass (pulse-wrapper.sh).

aidevops.sh v3.5.784 spent 4m on this as a headless bash routine.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 3, 2026

🔨 Build Complete - Ready for Testing!

📦 Download Build Artifact (Recommended)

Download the zip build, upload to WordPress and test:

🌐 Test in WordPress Playground (Very Experimental)

Click the link below to instantly test this PR in your browser - no installation needed!
Playground support for multisite is very limitied, hopefully it will get better in the future.

🚀 Launch in Playground

Login credentials: admin / password

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 3, 2026

Performance Test Results

Performance test results for 7e273cd are in 🛎️!

Note: the numbers in parentheses show the difference to the previous (baseline) test run. Differences below 2% or 0.5 in absolute values are not shown.

URL: /

Run DB Queries Memory Before Template Template WP Total LCP TTFB LCP - TTFB
0 40 (-10 / -24% ) 37.76 MB (-5.66 MB / -15% ) 843.00 ms (-54.00 ms / -6% ) 165.00 ms (-3.50 ms / -2% ) 1077.00 ms (-42.50 ms / -4% ) 2040.00 ms (-92.00 ms / -5% ) 1947.95 ms (-84.85 ms / -4% ) 90.65 ms
1 56 49.02 MB 939.50 ms 147.50 ms (-4.50 ms / -3% ) 1088.00 ms 2060.00 ms 1978.50 ms 82.40 ms

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.

quality-debt: PR #724 review feedback (medium)

1 participant