.agent/DOCUMENTACAO/templates/regra-negocio.md.template

63 lines
1.9 KiB
Text

---
type: template
name: regra-negocio
description: Template canônico para especificação de regras de negócio em linguagem natural
updatedAt: "2026-09-02"
---
<!--
DESTINO CANÔNICO NO PROJETO:
- Wiki de Desenvolvimento (Pilar 4): <modulo-wiki>/dev/<modulo-id>/{nome-servico}.regras-negocio.md
ou <modulo-wiki>/dev/<modulo-id>/regras-negocio/{nome-regra}.md
REFERÊNCIA NO CÓDIGO TYPESCRIPT (primeira linha útil):
// Regras de negócio: ver <modulo-wiki>/dev/<modulo-id>/{nome-servico}.regras-negocio.md
-->
# Regras de Negócio — [Nome do Serviço / Funcionalidade]
- **Módulo:** `<modulo-id>`
- **Arquivo TypeScript:** `caminho/relativo/ao/_arquivo.ts`
- **Última Atualização:** `<AAAA-MM-DD>`
---
## Contexto Operacional
<Por que esta regra existe? Qual decisão ou cálculo ela formaliza e qual problema operacional evita?>
---
## Critérios de Entrada / Acionamento
<Quais condições e dados ativam a avaliação desta regra?>
- [ ] Critério 1: [...]
- [ ] Critério 2: [...]
---
## Regras de Processamento (Ordem Determinística)
As regras devem ser avaliadas na ordem numérica estrita abaixo:
1. **Regra 1 — [Nome]:** <Descrição da validação ou transformação.>
2. **Regra 2 — [Nome]:** <Descrição da validação ou transformação.>
3. **Regra 3 — [Nome]:** <Descrição da validação ou transformação.>
---
## Casos de Revisão Manual (Exceções)
<Quando o sistema não deve decidir automaticamente e deve solicitar intervenção de um operador humano?>
- **Cenário A:** [...]
- **Cenário B:** [...]
---
## Estratégia de Persistência / Saída
<Qual é o resultado final gerado? Campos persistidos no banco, status atualizados, eventos disparados.>
- **Status Resultante:** [...]
- **Campos Atualizados:** [...]
---
## Dependências Externas e Filas
<Quais filas BullMQ, endpoints externos, rotas ou tabelas de banco são afetadas por esta regra?>
- **Filas:** [...]
- **Tabelas / Schemas:** [...]