CluPilotCloud/app
nexxo 254674f456
tests / pest (push) Failing after 7m25s Details
tests / assets (push) Successful in 21s Details
tests / release (push) Has been skipped Details
Bound the mail test-send and real send to a timeout instead of hanging
A blocked outbound port (587 filtered at a firewall, as on the live
server) left both MailboxTester and MailboxTransport blocking until
PHP's default_socket_timeout (60s) or the reverse proxy cut the
request — a 504 with no error the operator ever saw. Mail::build()
honours a 'timeout' config key by calling SocketStream::setTimeout()
(confirmed by reading MailManager::configureSmtpTransport() and by an
end-to-end run against a genuinely unroutable host), so MailboxTester
now passes 'timeout' => 10 through it. MailboxTransport builds its
EsmtpTransport directly rather than through Mail::build(), so it sets
the same call on the transport's stream, at 30s — a queue worker can
afford to wait longer than an operator watching a browser, and a
timed-out send is retried rather than lost.

The test button also now shows a visible "sending" state while the
request is in flight, matching the wire:loading span pattern already
used on admin/host-create's save button — previously only
wire:loading.attr="disabled" fired, leaving a greyed-out button with
no other sign anything was happening.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-28 16:36:14 +02:00
..
Actions Refuse a portal login for an address that already belongs to an operator 2026-07-28 14:42:16 +02:00
Console Check users directly for the reverse operator-identity collision, not just customers 2026-07-28 15:36:29 +02:00
Exceptions Refuse a portal login for an address that already belongs to an operator 2026-07-28 14:42:16 +02:00
Http Match the logout exemption through AdminArea, not a bare route check 2026-07-28 15:27:06 +02:00
Livewire Refuse a two-factor completion for a revoked operator 2026-07-28 15:47:39 +02:00
Mail Bound the mail test-send and real send to a timeout instead of hanging 2026-07-28 16:36:14 +02:00
Models Check users directly for the reverse operator-identity collision, not just customers 2026-07-28 15:36:29 +02:00
Notifications Pin CloudReady's null-mailbox guard and share it with the trait 2026-07-27 23:59:05 +02:00
Policies Move the console's identity out of the customer table 2026-07-28 10:31:43 +02:00
Providers Stop the console serving the portal's sign-in page 2026-07-28 11:45:34 +02:00
Provisioning Measure availability, and let a customer move down again 2026-07-27 16:41:15 +02:00
Services Bound the mail test-send and real send to a timeout instead of hanging 2026-07-28 16:36:14 +02:00
Support Move operator two-factor enrolment off admin.settings onto its own page 2026-07-28 15:11:20 +02:00