Pular para o conteúdo principal

persona_db/scripts/document_schema.py

Gera documentação Markdown (docs/SCHEMA.md) do schema PostgreSQL do PersonaDB (TASK-100).

Lê o catálogo vivo information_schema quando --database-url é fornecido ou faz o parsing determinístico dos arquivos DDL em persona_db/sql/schema/*.sql, produzindo:

  • Índice completo de todas as tabelas por domínio (00 a 25).
  • Colunas, tipos, chaves primárias, chaves estrangeiras, constraints CHECK e comentários (COMMENT ON TABLE) para cada tabela.
  • Diagramas ER textuais em formato Mermaid por domínio.

:::info Fonte Módulo persona_db.scripts.document_schema — 273 linhas · 0 classe(s) · 3 função(ões) pública(s). Ver no GitHub :::

Funções​

render()​

def render(database_url: str) -> str

Renderiza a documentação do schema conectando a um banco PostgreSQL ativo.

persona_db/scripts/document_schema.py:40

render_from_sql_dir()​

def render_from_sql_dir(schema_dir: Path | None=None) -> str

Renderiza docs/SCHEMA.md diretamente dos arquivos SQL em persona_db/sql/schema.

persona_db/scripts/document_schema.py:186

main()​

def main(argv: list[str] | None=None) -> int

Ponto de entrada CLI para geração de docs/SCHEMA.md.

persona_db/scripts/document_schema.py:248