## CC-8 — Promover e remover segundo administrador

**PRD:** `docs/prd/criacao-e-convite.md`

**Como** administrador, **quero** ter um segundo admin no bolão, **para** o
bolão não parar se eu viajar.

**Prioridade:** Should — evita o bolão travar, mas não bloqueia nenhuma
rodada enquanto o admin original está presente.

**Critérios de aceite:**

- Dado que sou admin, quando promovo um participante a admin, então ele passa
  a ter as ações de admin do bolão.
- Dado que existem dois admins, quando um remove a administração do outro,
  então o removido volta a ser participante comum e continua no bolão.
- Dado que sou o único admin, quando tento remover minha própria
  administração, então a ação é recusada — **o bolão não pode ficar sem admin**.
- Dado que sou participante comum, quando tento promover alguém, então a
  requisição é recusada.
- Dado que fui promovido a admin, então eu **continuo sem ver palpite de jogo
  que não terminou** (PP-7).

**Tasks:**

_Backend_
- [x] `BE-1` Modelar papel de admin por bolão, permitindo mais de um (depende de CC-1 BE-2)
- [x] `BE-2` Endpoints de promover e rebaixar admin, com autorização de admin (depende de BE-1)
- [x] `BE-3` Impedir que o bolão fique sem nenhum admin (depende de BE-2)
- [x] `BE-4` Confirmar que ser admin não concede acesso a palpite oculto (depende de PP-7 BE-2)

_Mobile_
- [x] `FE-1` Ações de promover e rebaixar na lista de participantes (depende de BE-2)
- [x] `FE-2` Confirmação antes de rebaixar, e mensagem clara na recusa do último admin (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 tentando remover o último admin, e conferindo que admin novo não vê palpite oculto

**Riscos/Dependências:**

- Depende de CC-1, CC-7 e PP-7.
- **Bolão sem admin é estado irrecuperável pelo app** — BE-3 é o critério que
  mais importa aqui.
- **Decidido em 03/08: quem cria o bolão é sempre admin e não pode transferir
  nem perder a administração.** Portanto `BE-2` precisa recusar o rebaixamento
  do criador, mesmo por outro admin — e o critério "não pode remover a própria
  administração" vale para o criador em qualquer situação, não só quando ele é
  o último admin.
- ⚠️ **Consequência:** o criador nunca consegue sair do bolão (ver CV-4), já
  que a saída do último admin é recusada e ele nunca deixa de ser admin.

- **06/08 — QA:** plano em `docs/testes/CC-8-plano.md`, execução em
  `docs/testes/CC-8-execucao.md` (**12/12 ✅**). Nenhum defeito de produto; 6
  casos novos (promover quem já é admin, quem saiu, quem é de fora; rebaixado
  perde o poder na hora; confirmação e recusa na UI).
- **06/08 — registrado para o futuro:** "o bolão não fica sem admin" é hoje
  verdadeiro **por construção** (o criador é admin permanente e não sai nem é
  removido), não por checagem em `remover`/`rebaixar`. Se algum dia o criador
  puder sair ou transferir a administração, essas duas rotas passam a precisar da
  checagem de "último admin" que não têm.
