ADR-0022 — Cabeçalho de arquivo com referências para agentes de IA
Status
Section titled “Status”Aprovado
Contexto
Section titled “Contexto”O projeto EBDbe possui regras de negócio (PRD, TDD), regras de implementação (ADRs, padrões de código) e dependências de ambiente (Firebase, Flutter, Firestore). Agentes de IA e desenvolvedores precisam saber rapidamente quais regras se aplicam a cada arquivo, sem ter de ler o documento inteiro nem replicar trechos no código.
Replicar o texto das regras no cabeçalho do arquivo poluiria o código e criaria duplicação; o que se deseja é apontar (referenciar) os documentos e seções relevantes.
Decisão
Section titled “Decisão”Todo arquivo de código-fonte do projeto (TypeScript, Dart e demais linguagens de implementação) deve ter, no início do arquivo, um bloco de comentário que inclua:
- Context e Responsibility (já adotados conforme ADR-0020), identificando camada e responsabilidade do arquivo.
- Apontamentos opcionais (quando aplicável), em linhas dedicadas, referenciando por identificador curto — sem replicar o texto da regra:
- Regras de negócio: PRD, TDD ou documento equivalente (ex.:
PRD perfil-usuario,TDD perfil-ebd,TDD api gateway). - Regras de implementação: ADRs ou convenções (ex.:
ADR-0007,ADR-0013,ADR-0021). - Ambiente / dependências: quando relevante para o arquivo (ex.:
Cloud Functions,Firestore,Flutter Web).
- Regras de negócio: PRD, TDD ou documento equivalente (ex.:
O objetivo é orientar o agente de IA e o leitor humano: onde buscar a regra, não qual é a regra. Os apontamentos devem ser concisos (nomes de doc, números de ADR, referência de seção quando útil).
Formato recomendado
Section titled “Formato recomendado”TypeScript (JSDoc):
/** * Context: Application * Responsibility: Gateway de ações do usuário (perfil, papéis, aprovações). * Business rules: PRD perfil-usuario, TDD perfil-ebd, TDD api gateway * Implementation: ADR-0007, ADR-0013, ADR-0014, ADR-0021 * Environment: Cloud Functions */Dart (dartdoc):
/// Context: Infrastructure/// Responsibility: Perfil via HTTP (userGatewayHttp)./// Business rules: PRD perfil-usuario, TDD perfil-ebd/// Implementation: ADR-0007, ADR-0013, ADR-0021- Context e Responsibility são obrigatórios (consistente com ADR-0020).
- Business rules, Implementation e Environment são opcionais; incluir apenas quando houver regras ou ambiente relevantes para aquele arquivo.
- Usar identificadores curtos (nome do doc, número do ADR). Não colar trechos das regras no comentário.
Consequências
Section titled “Consequências”- Agentes de IA podem, ao abrir um arquivo, saber onde procurar regras de negócio e implementação.
- Reduz-se a necessidade de replicar texto de PRD/TDD/ADR no código.
- Novos arquivos passam a ser criados já com cabeçalho que aponta para as regras aplicáveis.
- A convenção complementa o ADR-0020 (comentários intencionais) e o ADR-0007 (organização de código), sem substituí-los.