CluPilotCloud/app/Provisioning
nexxo 42fa92cf20 fix(engine-b): address Codex (paid-only stripe, guest routing, absolute disk)
- Stripe: only checkout.session.completed with payment_status=paid (dedupes the
  paired payment_intent event and blocks unpaid async sessions).
- Capture the guest IP (ConfigureNetwork) and point Traefik at the VM, not the
  Proxmox host, so ACME/HTTP-01 can reach Nextcloud.
- Resize the disk to an absolute target (not '+…') so a retry can't double it.
(Codex #4 timeout was a false positive — started_at resets per step.)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-25 12:05:31 +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(engine): record wg peer only after verified handshake; async host purge 2026-07-25 11:06:13 +02:00
Steps fix(engine-b): address Codex (paid-only stripe, guest routing, absolute disk) 2026-07-25 12:05:31 +02:00
PipelineRegistry.php feat(engine): orchestrator core (state machine + tick + lock) 2026-07-25 09:54:52 +02:00
RunRunner.php fix(engine): dispatch run continuation after releasing the lock 2026-07-25 11:09:24 +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