## CV-4 — Sair do bolão por vontade própria

**PRD:** `docs/prd/ciclo-de-vida-do-bolao.md`

**Como** participante casual, **quero** sair do bolão sem virar assunto no
grupo, **para** não continuar recebendo cobrança de um bolão que eu não vou
mais jogar.

**Prioridade:** Should — resolve atrito real, mas nenhuma rodada depende disso.

**Critérios de aceite:**

- Dado que sou participante, quando saio do bolão, então paro de palpitar e
  saio do ranking ativo.
- Dado que eu saí, então os jogos já apurados **permanecem no histórico do
  bolão** e a pontuação de quem ficou **não é recalculada**.
- Dado que eu saí, então paro de receber lembrete de prazo daquele bolão.
- Dado que sou o único admin do bolão, quando tento sair, então a ação é
  recusada — preciso promover outro admin antes (CC-8).
- Dado que eu saí, quando abro o link de convite de novo, então a entrada é
  **recusada** — a saída é definitiva e não há reentrada.
- Dado que vou sair, quando confirmo, então a confirmação diz explicitamente
  que **não há como voltar** a este bolão.

**Tasks:**

_Backend_
- [x] `BE-1` Endpoint de saída do bolão, removendo o participante do ranking ativo (depende de CC-1 BE-2)
- [x] `BE-2` Preservar palpites e pontos apurados no histórico, sem recalcular o ranking dos outros (depende de BE-1)
- [x] `BE-3` Recusar a saída do último admin (depende de CC-8 BE-3)
- [x] `BE-4` Parar os lembretes de prazo de quem saiu (depende de PP-8 BE-1)
- [x] `BE-5` Recusar nova entrada no bolão de quem já saiu, pela mesma conta (depende de BE-1, CC-5 BE-1)

_Mobile_
- [x] `FE-1` Ação de sair do bolão, com confirmação que avisa **antes** que a saída é definitiva (depende de BE-1)
- [x] `FE-2` Mensagem clara na recusa do último admin, apontando para promover outro (depende de BE-3)

_QA_
- [x] `QA-1` Escrever o plano de casos de teste a partir desta story
- [x] `QA-2` Executar o plano como único admin, e conferindo que o ranking de quem ficou não muda

**Riscos/Dependências:**

- Depende de CC-8 e PP-8.
- **Não confundir com remover participante (CC-9, bloqueada):** ali a decisão
  de tirar os palpites do ranking ainda está aberta; aqui o PRD decidiu
  preservar o histórico.
- **Decidido em 03/08: sair é definitivo — não há reentrada.** `BE-1` marca o
  vínculo como encerrado sem apagar o histórico, e `BE-5` recusa nova entrada
  de quem já saiu. ⚠️ Como a ação é irreversível, `FE-1` tem que **avisar isso
  antes** de confirmar, não depois.
- ⚠️ **O criador do bolão nunca consegue sair** (CC-8): a saída do último admin
  é recusada e ele é admin para sempre. `FE-2` precisa dizer isso de forma
  honesta para o criador, em vez de sugerir que basta promover outro admin.

- **06/08:** a ação **não aparece para o criador**, que é admin permanente e
  sempre receberia 409. Antes a tela oferecia a saída a ele — o mesmo defeito do
  ícone de convite para participante comum.

- **07/08 — QA:** plano em `docs/testes/CV-4-plano.md`, execução em
  `docs/testes/CV-4-execucao.md` (**11/11 ✅**). Dois casos novos: o ponto de quem
  fica não é recalculado pela saída voluntária (a mesma garantia de `CC-9-03`,
  pelo outro caminho) e o criador não sai **nem havendo outro admin** — a recusa
  não é a regra do último admin, é a de admin permanente.
