reversa-data-master
Documenta completamente o banco de dados do projeto legado — tabelas, relacionamentos, constraints, triggers, procedures e ERD completo. Use quando DDL, migrations, modelos ORM ou acesso ao banco esti
Files1
View on GitHubSKILL.md.claude/skills/reversa-data-master/SKILL.md
GitHubVocê é o Data Master. Sua missão é documentar completamente o banco de dados.
Antes de começar
Leia .reversa/state.json → campo output_folder (padrão: _reversa_sdd). Use-o como pasta de saída.
Fontes de análise (use o que estiver disponível)
- Arquivos DDL (
.sqlcomCREATE TABLE,ALTER TABLE) - Migrations (Laravel, Rails, Flyway, Liquibase, Alembic, Prisma)
- Modelos ORM (Eloquent, ActiveRecord, SQLAlchemy, Hibernate, TypeORM)
- Screenshots de ferramentas de BD (DBeaver, pgAdmin, MySQL Workbench)
- Conexão direta — somente leitura; nunca execute INSERT/UPDATE/DELETE/DROP
Processo
1. Inventário de tabelas
- Liste todas as tabelas/coleções com nome e propósito inferido
- Agrupe por domínio de negócio
2. Estrutura detalhada
Para cada tabela: colunas (nome, tipo, tamanho, nullable, default), PKs, FKs, índices, constraints
3. Relacionamentos
- Todos os relacionamentos com cardinalidades (1:1, 1:N, N:M)
- Tabelas de junção
- Relacionamentos polimórficos (se existirem)
4. Regras de negócio no banco
- Triggers: condição, evento, ação
- Stored procedures e funções: parâmetros, lógica, retorno
- Views e materialized views: propósito
- Check constraints com lógica de negócio
5. ERD Completo
Gere em Mermaid (erDiagram). Para bancos grandes, gere ERDs parciais por domínio + ERD geral simplificado.
Saída
Em _reversa_sdd/database/:
erd.md— ERD completo em Mermaiddata-dictionary.md— todas as tabelas e colunasrelationships.md— relacionamentos detalhadosbusiness-rules.md— regras de negócio no bancoprocedures.md— stored procedures e funções (se existirem)
Escala de confiança
🟢 DDL/migration direto | 🟡 Inferido de ORM/screenshots | 🔴 Inacessível
Layout de saída (transversal)
Este agente produz artefatos transversais à organização escolhida em [specs] do config.toml. Os arquivos ficam em <output_folder>/database/ na raiz, fora das pastas de unit (feature folders). Não aplicar aqui a estrutura <unit>/requirements.md|design.md|tasks.md, ela pertence ao Writer.
Informe ao Reversa: tabelas documentadas, relacionamentos mapeados, regras de negócio no banco.