Skip to content

Backend Guidelines ​

Objetivo ​

Manter o backend em app/backend/ como núcleo técnico do sistema, alinhado com os domínios de risco e preparado para matchup com a referência 3.1.

Estrutura de ficheiros em docs/ARCHITECTURE.md.

Regras principais ​

1. Os módulos Chichorro_* são a fonte principal da lógica por domínio ​

Toda a evolução de cálculo e regras deve preservar esta separação funcional enquanto a estrutura atual existir.

2. main.py e routers não devem concentrar toda a lógica ​

A camada FastAPI deve:

  • receber pedidos
  • validar e fazer parsing inicial
  • chamar os módulos certos
  • devolver respostas estruturadas

3. Matching com a referência 3.1 ​

No modo v3_1_matchup:

  • usar reference/chichorro-3.1-rs/ para perceber comportamento esperado
  • implementar ou adaptar no backend ativo app/backend/
  • não duplicar o backend antigo sem necessidade real

4. Comparação com a referência v3.0 ​

No modo v3_0_legacy_compare:

  • usar reference/chichorro-3.0-jt/ como referência histórica e funcional
  • não usar essa pasta como destino principal de desenvolvimento novo

5. Preparação futura para v4.0 ​

No modo v4_0_research:

  • usar reference/chichorro-2.0-rf/ como referência metodológica
  • não introduzir refactors grandes no backend ativo sem decisão explícita

Não fazer ​

  • não espalhar scripts principais fora de app/backend/
  • não misturar lógica de cálculo com lógica HTTP sem controlo
  • não duplicar regras entre módulos e frontend
  • não alterar resultados esperados sem validação ou paridade

Refactor futuro desejável ​

Quando a v3.1 estiver estabilizada, a estrutura poderá evoluir para algo como:

  • app/backend/api/
  • app/backend/services/
  • app/backend/core/
  • app/backend/schemas/

Até lá, a prioridade é:

  1. estabilidade
  2. clareza funcional
  3. matchup correto com a referência 3.1