---
id: archive-squad
agent: squad-creator
title: Arquivar um squad que cumpriu a missão
inputs: ['id do squad', motivo do arquivamento]
outputs: ['squads/{id}/ movido para squads/_archive/{id}/ pelo motor', registro do desfecho no manifest]
elicit: true
modes: [interactive]
---

# Arquivar um squad que cumpriu a missão

**Objetivo:** encerrar o ciclo de vida de um squad — missão cumprida (ou cancelada) — movendo-o
para o arquivo com o desfecho registrado, preservando o histórico. Arquivar é destrutivo para a
operação (o squad some do roster ativo); por isso exige confirmação explícita (Lei 1).

**Pré-condições:**
- `squads/{id}/` existe. Squad inexistente → reporte e HALT, nada a arquivar.
- O motivo do desfecho é conhecido: `completed` (missão cumprida) ou `cancelled` (missão
  abandonada, com causa). Arquivar "para limpar" sem desfecho não é motivo.

## Passos

1. **Leia o squad real** (`squad.yaml`) e verifique o estado: a missão foi cumprida? Há trabalho em
   voo (handoffs pendentes do squad em `.nexus/handoffs/`, frentes abertas)? Trabalho em voo é
   listado ANTES da decisão — arquivar squad com frente aberta órfã trabalho em silêncio.
2. **Apresente o resumo e PEÇA CONFIRMAÇÃO explícita** (ponto de elicitação — sagrado, por ser
   ação destrutiva): id, missão, desfecho proposto (`completed`/`cancelled` + causa), trabalho em
   voo encontrado. Sem o "sim" literal do usuário, HALT — não existe arquivamento em yolo.
3. **Registre o desfecho no manifest:** `status: archived`, desfecho, data e motivo — o arquivo
   conta a história completa para quem escavar depois.
4. **Dispare o motor** (`nexus squad archive`): ele move `squads/{id}/` para
   `squads/_archive/{id}/` — preservação, nunca `rm`. Eu não movo na mão nem deleto nada.
5. **Prove:** confirme que `squads/{id}/` não está mais no roster ativo e que
   `squads/_archive/{id}/` existe íntegro; reporte o resultado real.

## Critério de pronto (DoD)

- [ ] Estado do squad lido do disco; trabalho em voo enumerado antes da decisão
- [ ] Confirmação explícita do usuário registrada (sem ela, nada aconteceu)
- [ ] Desfecho (`completed`/`cancelled` + causa + data) gravado no manifest
- [ ] Motor moveu para `squads/_archive/{id}/` — histórico preservado, zero deleção
- [ ] Verificação pós-arquivamento reportada com resultado real

## Falha / recuperação

- **Usuário não confirma** → HALT limpo: nada foi movido, e o relatório diz isso.
- **Trabalho em voo encontrado** → ofereça as opções numeradas: (1) concluir/handoff das frentes
  antes de arquivar; (2) arquivar assim mesmo com as frentes NOMEADAS no desfecho; (3) cancelar.
  Nunca arquive silenciando frente aberta.
- **O motor falha ao mover** (permissão, conflito em `_archive/`) → reporte o erro exato e o estado
  em que o squad ficou; não tente contornar movendo arquivos na mão.
