Pular para conteúdo

Template: Serviço

Objetivo

Padronizar a documentação de uma função ou classe de services.py — a camada real onde regra de negócio reutilizável vive (ver ADR-0002, Backend Standard).


Estrutura

# Serviço: `<nome_da_funcao_ou_classe>`

**Local:** `apps/<modulo>/services.py`
**Chamado por:** views/services que o invocam

## Responsabilidade

O que a função faz, em 1-2 frases — uma responsabilidade só.

## Entrada

| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| ... | ... | ... | ... |

## Saída

Tipo de retorno e o que ele representa.

## Efeitos colaterais

- Grava no banco? Dispara e-mail? Gera log de auditoria? Enfileira uma task Celery?

## Erros

| Exceção | Quando ocorre |
|---|---|
| ... | ... |

## Transações

Usa `transaction.atomic()`? Em que operações.

Regra de preenchimento

Ler a implementação real da função — assinatura, exceções levantadas e efeitos colaterais exatamente como estão no código, não como "deveriam" funcionar.


Referências