CluPilotCloud/app
nexxo 556a560506 feat(vpn): explain a missing download, and offer a way out
An access created without storing its config had no download button and no
explanation — it looked broken. It now shows a dimmed button that says why
(the private key only exists on your device), and every staff access gets
"Re-issue": a new keypair, old key off the hub before the new one goes on,
so two peers never claim the same tunnel address at once. A stored config is
re-encrypted in step, or the owner would download a key the hub no longer
accepts.

Host peers are excluded: their key belongs to the machine's own wg0, and
swapping it here would cut the host off with nothing left to repair it.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-26 01:20:04 +02:00
..
Actions fix(auth/admin): atomic user+customer signup; Rule::in for country validation (comma-safe) 2026-07-25 18:33:09 +02:00
Console feat(deploy): installer and updater for a fresh server 2026-07-25 23:13:24 +02:00
Http fix(traffic): release the throttle at month end; close the Livewire bypass 2026-07-25 23:36:38 +02:00
Livewire feat(vpn): explain a missing download, and offer a way out 2026-07-26 01:20:04 +02:00
Mail fix(admin): confirm maintenance delivery via MessageSent (retryable until sent); guard resend/cancel on derived state; fix flaky non-unique host wg_ip 2026-07-25 16:14:01 +02:00
Models feat(hosts): give each host a DNS name under the public zone 2026-07-25 23:49:18 +02:00
Notifications fix(engine-b): default-deny firewall, disk-based capacity, synchronous credential mail 2026-07-25 12:39:15 +02:00
Policies fix(vpn): losing the operator roles closes the owner doors by itself 2026-07-25 22:50:13 +02:00
Providers fix(security): close the Livewire bypass of the admin host restriction 2026-07-25 20:50:22 +02:00
Provisioning fix(hosts): re-read the host before deciding there is no DNS record 2026-07-26 00:02:18 +02:00
Services fix(dns): deleting a record that is already gone is success 2026-07-25 23:54:45 +02:00
Support feat(traffic): meter the monthly allowance, show it, throttle instead of blocking 2026-07-25 23:33:47 +02:00