docs(ativacao): POST /provision implementado (trajeto idempotente)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
VPS 4 Builder
2026-06-28 15:00:57 +02:00
parent 250e47b06e
commit 21b560e4f3
2 changed files with 27 additions and 11 deletions
@@ -41,11 +41,25 @@ e **idempotente** (re-rodar não duplica):
- Qualquer passo novo do trajeto deve ser refletido nos dois lados (ver regra de
registro bidirecional em [integracao-satelites.md](integracao-satelites.md)).
## Pendência / implementação
- [ ] Endpoint de provisionamento (`POST /api/instances/provision`) que encapsula os
passos 17 de forma idempotente, com resposta de "trajeto".
- [ ] Detecção Business no `connect` gravando `isBusiness`.
- [ ] Setor + Secretária default automáticos.
- [ ] Registro de webhook automatizado a partir do pair.
- [ ] Gatilho de `sync-knowledge` no fim do trajeto.
## Implementado (28/jun/2026)
`POST /api/instances/provision` (auth, escopo tenant). Body:
`{ name, engine?, webhookUrl?, sector?, connect? }`. **Idempotente** (re-rodar não
duplica). Devolve `{ instance, trajeto[] }` com cada passo visível:
- `instancia` (criada/existente) — upsert por unique `[tenantId, name]`.
- `engine` (definida/mantida) — **`baileys7` (API estável) por padrão** ao criar.
- `setor` (criado/existente) — `ensureSector`, default "Atendimento".
- `webhook` (configurado/inalterado/omitido).
- `conexao` (iniciada/pulada) — se `connect:true`, emite QR via Socket.IO.
- `business` (pendente) — detectada ao conectar.
- `secretaria` / `conhecimento` (pendentes) — passos de plugin/satélite.
> Validado em dev: 1ª chamada → 201 (cria, engine baileys7, setor); 2ª → 200
> ("existente", sem duplicar). Artefatos de teste removidos.
## Pendência restante
- [ ] Detecção Business no `connect` gravando `isBusiness` (passo `business`).
- [ ] Secretária default automática (via plugin `secretaria`).
- [ ] Registro de webhook automatizado a partir do pair (preencher `webhookUrl`).
- [ ] Gatilho de `sync-knowledge` no fim do trajeto (satélite).
- [ ] UI de onboarding consumindo `/provision` + exibindo o trajeto.
</content>
+6 -4
View File
@@ -38,10 +38,12 @@
- [ ] Política de retenção (arquivar/descartar áudio após transcrição salva).
## Ativação do WhatsApp (trajeto inteligente)
- [ ] Transformar `POST /` + `POST /:id/connect` em um **trajeto guiado e idempotente**
que cria e configura a conta no motor automaticamente (instância, pair/tenant,
setor + secretária default, webhook, engine, detecção Business). Ver
[ativacao-whatsapp.md](ativacao-whatsapp.md). O satélite orquestra como braço do motor.
- [x] `POST /api/instances/provision`trajeto guiado e **idempotente** (instância +
engine `baileys7` + setor default + webhook/connect opcionais), devolve o
`trajeto[]` visível. Ver [ativacao-whatsapp.md](ativacao-whatsapp.md).
- [ ] Detecção Business no connect (grava `isBusiness`).
- [ ] Secretária default automática (plugin) + webhook a partir do pair.
- [ ] Gatilho de `sync-knowledge` no fim do trajeto + UI de onboarding.
## Inbox / Secretária (já entregue nesta frente)
- [x] Transcrição/descrição no motor (Gemini) → `messages.transcription`.