CluPilotCloud/app/Provisioning
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
..
Contracts fix(engine): address Codex round 2 (poll budget, host error state, wg race) 2026-07-25 10:26:37 +02:00
Events feat(engine-b): live provisioning progress (admin console + customer dashboard) 2026-07-25 11:57:35 +02:00
Jobs fix(vpn): a late revocation must not disconnect whoever holds the key now 2026-07-26 01:24:55 +02:00
Steps fix(hosts): retry a failed DNS registration before advancing without a name 2026-07-26 00:01:16 +02:00
PipelineRegistry.php feat(engine): orchestrator core (state machine + tick + lock) 2026-07-25 09:54:52 +02:00
RunRunner.php fix(engine): don't reset started_at on poll so step deadlines accumulate 2026-07-25 12:15:26 +02:00
StepResult.php fix(engine): address Codex round 2 (poll budget, host error state, wg race) 2026-07-25 10:26:37 +02:00