Começar
Aparência

Vale na hora e fica lembrada neste navegador.

Decisões

ORG-0001 — Registrar decisões em dois níveis

Contexto

Uma stack toma dezenas de decisões técnicas, e quem chega depois (uma pessoa ou um agente numa sessão nova) precisa saber o que foi decidido e por quê, sem reconstituir a conversa. Parte dessas decisões vale para toda stack da Hibex; parte vale só para uma. Numa sequência única, as duas se misturam e os números colidem quando a organização acrescenta uma decisão a stacks que já existem.

Decisão

  1. Toda decisão técnica com alternativas vira um registro curto, com contexto, decisão, alternativas consideradas e consequências.
  2. Duas famílias, cada uma com a sua sequência desde 0001:
    • ORG (Organization Architecture Decision Record): vale para toda stack. Nasce no repositório stack-architecture, em docs/decisoes/organizacao/ORG-NNNN-slug.md;
    • ADR (Architecture Decision Record): vale para uma stack. Nasce nela, em docs/decisoes/ADR-NNNN-slug.md.
  3. Cada família tem o seu template.md, e as duas entram no mesmo índice, docs/decisoes/README.md, as ORGs primeiro.
  4. Na stack, as ORGs são uma cópia da pasta docs/decisoes/organizacao/, na versão do arquivo ARQUITETURA, nunca editada à mão.
  5. Registro escrito por agente nasce proposto; só o mantenedor aceita. Registro aceito não se reescreve: vira substituído, com link para o que o substitui. Revisão que só re-fundamenta leva uma linha "Revisão: data — motivo" no cabeçalho.
  6. Divisão de papéis: ORG/ADR dizem como e por quê (técnico); a spec diz o que o produto faz; a solução diz como algo foi montado em detalhe; o guia diz como operar.

Alternativas consideradas

AlternativaPor que não
Uma sequência só, com uma faixa de números reservada à organizaçãoPor que não: limita quantas decisões cada lado pode ter, colide quando a faixa acaba e mistura as origens num mesmo número
As decisões da organização só como link para este repositórioPor que não: o agente precisaria de rede e de acesso a este repositório, e leria a versão mais nova, não a adotada pela stack
Decisões só em documentos corridos, sem registro numeradoPor que não: o porquê se perde no texto e não há como dizer que uma decisão foi substituída

Consequências

  • Quem lê o identificador sabe de onde a decisão veio; as duas famílias nunca colidem.
  • Uma versão nova da arquitetura acrescenta ORGs sem tocar na numeração das ADRs das stacks.
  • A pasta organizacao/ da stack só muda numa change de atualização da arquitetura.

Mais

O detalhe está na documentação da arquitetura.