CluPilotCloud/tests/Feature
nexxo 53d305340f
tests / pest (push) Failing after 49s Details
tests / assets (push) Successful in 51s Details
tests / release (push) Has been skipped Details
fix(vpn): a late revocation must not disconnect whoever holds the key now
Once a key is free, someone can legitimately create a new access with it. The
forced revocation looked the key up and would have deleted that person's access
and pulled their key off the hub. It now acts only on an adoption artifact — a
system peer with no owner and no creator — and leaves anything else alone.

Re-issuing also threw when VPN_CONFIG_KEY was missing, which is exactly the
situation the console tells people to fix by re-issuing. It now hands the new
config over once instead of storing it.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-26 01:24:55 +02:00
..
Admin fix(vpn): a late revocation must not disconnect whoever holds the key now 2026-07-26 01:24:55 +02:00
Auth fix(auth): throttle Fortify endpoints (registration had no limiter — signup-spam guard) 2026-07-25 18:38:44 +02:00
Provisioning fix(hosts): re-read the host before deciding there is no DNS record 2026-07-26 00:02:18 +02:00
BillingTest.php feat(portal): billing page — current plan, upgrades, extra storage, add-ons 2026-07-25 13:36:52 +02:00
ComponentTest.php feat(portal): Fortify auth + Login/2FA/Dashboard + component kit 2026-07-25 01:20:25 +02:00
DashboardTest.php feat(portal): Fortify auth + Login/2FA/Dashboard + component kit 2026-07-25 01:20:25 +02:00
ExampleTest.php chore: bootstrap CluPilot control-plane (Laravel 13, Docker stack) 2026-07-25 00:21:30 +02:00
ImpersonationTest.php fix(admin): harden impersonation + datacenter code per Codex review 2026-07-25 13:50:16 +02:00
OperatorInPortalTest.php fix(portal): no silent no-ops without a customer; maintenance visible per instance; maintenance form redesign 2026-07-25 19:10:44 +02:00
PortalTabsTest.php feat(portal): bind the cloud card to the real instance (plan/seats/domain/quota) so the maintenance badge matches it 2026-07-25 19:14:42 +02:00
PublicSiteGateTest.php fix(traffic): release the throttle at month end; close the Livewire bypass 2026-07-25 23:36:38 +02:00
SeatsTest.php feat(portal): seats management — invite/role/revoke against plan limit 2026-07-25 14:40:18 +02:00
SettingsTest.php fix(portal): enforce customer lifecycle per Codex review 2026-07-25 14:45:03 +02:00
TrafficTest.php fix(traffic): a sample without counters is not zero traffic 2026-07-25 23:44:02 +02:00
WelcomeTest.php feat(landing): public marketing homepage at / (+ legal placeholders) 2026-07-25 08:59:39 +02:00