Commit inicial: app de exportação da SD + deploy Docker/Coolify
Aplicação Flask (enviar SD.md -> corrigir pendências -> exportar JSON), scripts de contrato (scripts/) e infraestrutura de deploy (Dockerfile, docker-compose.yml) para VPS via Coolify. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
"""Caminhos canônicos do repositório — o único lugar que sabe onde a árvore está.
|
||||
|
||||
Mudança de estrutura é mudança aqui, e em mais lugar nenhum. A lição veio da
|
||||
reorganização V0: eram 103 referências de caminho espalhadas por scripts,
|
||||
Makefile e harness, e mover uma pasta quebrava tudo entre a mudança e a
|
||||
reescrita.
|
||||
"""
|
||||
from pathlib import Path
|
||||
|
||||
RAIZ = Path(__file__).resolve().parent.parent
|
||||
CLIENTE = RAIZ / "clientes" / "ses-mg"
|
||||
CONTRATO = CLIENTE / "contrato"
|
||||
GOVERNANCA = CLIENTE / "governanca"
|
||||
PROJETOS = CLIENTE / "projetos"
|
||||
ENTRADA = CLIENTE / "_entrada"
|
||||
RELATORIOS = CLIENTE / "relatorios"
|
||||
COMUNICACOES = CLIENTE / "comunicacoes"
|
||||
METODOS = RAIZ / "metodos"
|
||||
|
||||
# _derivados/ é resultado, nunca fonte: gitignored, regenerável por make derivar.
|
||||
DERIVADOS = RAIZ / "_derivados"
|
||||
|
||||
ITENS = CONTRATO / "itens.yaml"
|
||||
|
||||
# Visões GERADAS a partir das SDs (inversão da V0, 13/08/2026). Quem lê
|
||||
# portfólio, carteira ou catálogo lê o resultado de `make derivar` — os
|
||||
# mantidos à mão estão congelados em governanca/levantamentos/.
|
||||
PORTFOLIO = DERIVADOS / "portfolio.yaml"
|
||||
CARTEIRA = DERIVADOS / "carteira.yaml"
|
||||
CATALOGO = DERIVADOS / "catalogo.md"
|
||||
|
||||
NUMERACAO = GOVERNANCA / "numeracao.yaml"
|
||||
TRANSVERSAL = GOVERNANCA / "transversal.yaml"
|
||||
TEMPLATE_SD = PROJETOS / "_template" / "SD.md"
|
||||
|
||||
# Modelo Word do material de leitura prévia (`make leitura-previa`): layout da
|
||||
# nota técnica com logo no cabeçalho. Vive em metodos/modelos/ — cópia neutra;
|
||||
# a original é evidência da P5·SD24 e evidência não é dependência de script.
|
||||
MODELO_NOTA_TECNICA = METODOS / "modelos" / "nota-tecnica.docx"
|
||||
|
||||
# Projeção financeira: gerada em _derivados/, congelada datada em comunicacoes/.
|
||||
PROJECAO_HTML = DERIVADOS / "projecao-executiva.html"
|
||||
APRESENTACOES = COMUNICACOES / "apresentacoes"
|
||||
|
||||
|
||||
def sds_reais():
|
||||
"""Todos os SD.md sob projetos/*/sds/.
|
||||
|
||||
O template vive em projetos/_template/, fora de qualquer */sds/* — é o que
|
||||
o mantém fora desta varredura por construção, em todos os consumidores de
|
||||
uma vez. Era ele contaminando a varredura de faturamento na árvore antiga.
|
||||
"""
|
||||
return sorted(PROJETOS.glob("*/sds/*/SD.md"))
|
||||
Reference in New Issue
Block a user