Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR replaces the old SMTP implementation inside Buggregator with the new SMTP server plugin for RoadRunner
All SMTP protocol handling, parsing, and message processing is now performed on the RoadRunner side, while PHP only consumes already-parsed messages from the queue.
This significantly simplifies the architecture, improves stability, and removes the fragile PHP-level SMTP protocol implementation.
🧩 Background & Motivation
Previously, Buggregator used a custom SMTP server written in PHP.
Although functional, this approach had several critical problems:
Full SMTP protocol implemented in PHP
This was hard to maintain, difficult to extend, and not always stable under real-world load.
Worker freezes and hangs
Under some conditions, the PHP SMTP server could block or hang a worker.
Over time this caused message ingestion to stop entirely.
Complex debugging & high maintenance cost
SMTP is a stateful protocol with many edge cases.
Supporting it on PHP side was error-prone and time-consuming.
To address all these issues, we migrated SMTP handling entirely to the RoadRunner layer.
🚀 What Changed in This PR
✔ Buggregator no longer handles SMTP connections directly
PHP no longer runs any SMTP server logic.
✔ All SMTP processing moved to the RoadRunner SMTP plugin
The RoadRunner SMTP plugin now:
✔ Buggregator now simply consumes structured messages
On the PHP side, Buggregator: