# Spec 034 — Tasks

**Status:** Draft · **Início:** 2026-06-20

---

## Fase 0 — Piloto infra

- [x] Roger: **VM124** após VM123 (não VM118) · 2 vCPU · 4 GB · 500 GB
- [ ] Criar VM124 Ubuntu 24.04 (`scripts/proxmox-create-vm.sh` no PVE)
- [ ] pfSense DNAT SSH WAN `:2524` → `10.10.10.124:22`
- [x] `deploy/vm116-nextcloud/` — docker-compose + scripts + Traefik snippet
- [ ] TLS `cloud.ligbox.com.br` via Traefik CT114
- [ ] Teste Mail app → Carbonio (domínio teste)
- [ ] Documentar resultados no quickstart

## Fase 1 — Wizard + Desk

- [ ] `NEXTCLOUD_API_URL` + credenciais admin OCS (secrets VM112)
- [ ] Serviço wizard `nextcloud_provision.py`
- [ ] Hook pós `account/create` (flag `NEXTCLOUD_INTEGRATION`)
- [ ] Webhook Desk `onboarding.nextcloud.provisioned`
- [ ] API Desk: `/api/v1/nextcloud/health`, `.../domains/{domain}/status`
- [ ] Stack health VM124 em `stack_health.py` (Spec 033)
- [ ] Traefik template `files.{domain}` (CT114)
- [ ] Módulo Desk `nextcloud-storage` (Spec 015)

## Fase 2 — Operações + UI Console

- [ ] Extensão purge Spec 017 — apagar users Nextcloud
- [ ] Domain Admin — painel quota unificado (`QuotaDualBar` — ver 034-console-process-ui.md)
- [ ] FOSSBilling produto «Ligbox Mail Plus»
- [ ] Alertas disco VM112/VM124

## Fase 2-UI — Console processo (034-UI)

Ver: [034-console-process-ui.md](./034-console-process-ui.md)

- [ ] UI-034-A: `ProvisionPipeline` + `QuotaDualBar` + `AccountCard` em `/admin/contas`
- [ ] UI-034-B: `DomainFilesToggle` em `/admin/files`
- [ ] UI-034-C: `StackHealthTile` + incident retry em `/ops`
- [ ] UI-034-D: Poll pipeline + estados erro PT-BR

## Fase 3 — Offload S3

- [ ] MinIO VM124
- [ ] Volume secundário Carbonio → S3
- [ ] Política archive + runbook ops

## Documentação

- [x] Spec 034 `spec.md`
- [x] `infrastructure.md`
- [x] `quickstart.md`
- [x] `contracts/nextcloud-provisioning-api.md`
- [x] `034-console-process-ui.md` — visão processo Console
- [ ] Actualizar `docs/vms/README.md` + `VM112.md`
- [ ] Publicar no Spec Hub Portal (Spec 031)
