Skip to content

Commit 0453759

Browse files
aksOpsclaude
andcommitted
feat(detector/sql): port SqlMigrationDetector
Mirrors Java SqlMigrationDetector. Extracts schema entities (tables, views, schemas) from: - Raw SQL DDL (CREATE TABLE/VIEW/SCHEMA, ALTER ADD COLUMN, CREATE INDEX, FK) - Flyway: V{version}__name.sql files (parses version) - Prisma: migrations/{version}/migration.sql (version = parent dir) - Alembic: versions/*.py (with from-alembic marker guard) - Rails: db/migrate/{timestamp}_*.rb (parses version) - Liquibase: changelog.{xml,yml} (regex-based XML/YAML extraction) Emits SQL_ENTITY + MIGRATION nodes, REFERENCES_TABLE + MIGRATES edges. Bare .sql files (not in a migration directory) emit SQL_ENTITY only (no MIGRATION node) — matches Java behavior. RE2 rewrite of Java's possessive-quantifier-heavy patterns: plain * suffices since RE2 doesn't backtrack catastrophically. Liquibase YAML intermediate-line lookahead approximated with bounded-quantifier window. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 31fc86d commit 0453759

2 files changed

Lines changed: 531 additions & 0 deletions

File tree

0 commit comments

Comments
 (0)