Artur-Sulej/excellent_migrations
65.8
Adequate · 3 October 2026
676
lines of production code
Elixir
primary language
2
measurements over time
What this system is
Excellent Migrations is an Elixir tool that analyzes database migration files to detect potentially destructive operations, such as non-concurrent index additions, volatile defaults, and raw SQL usage. It integrates with the Elixir ecosystem via a Credo check and dedicated Mix tasks to enforce safety standards before migrations are executed. The system provides granular detection capabilities and allows developers to suppress warnings for known-safe operations.
Features
Initial release of Excellent Migrations v0.1.10
This entry marks the initial commit and release of the Excellent Migrations tool (v0.1.10), which detects potentially dangerous or destructive operations in Elixir/Ecto database migrations. The package provides a Credo check (\MigrationsSafety\), a \mix excellent\_migrations.check\_safety\ task, and a \mix excellent\_migrations.migrate\ wrapper that halts if dangers are found. Key detection capabilities include identifying unsafe check constraints, volatile column defaults, non-concurrent index additions, and raw SQL usage. This specific release (v0.1.10) treats check constraints with \validate: false\ as safe and excludes read-only repository operations (like \one\, \all\, \get\) from being flagged as dangerous.
(repo-wide) · high confidence
New Mix tasks to check migration safety and conditionally run migrations
Two new Mix tasks are introduced: \mix excellent\_migrations.check\_safety\ analyzes database migration files to detect potentially dangerous operations and exits with a non-zero code if issues are found, and \mix excellent\_migrations.migrate\ runs \ecto.migrate\ only after verifying that no dangerous operations are present in the migrations. The safety check task accepts an optional \--paths\ argument to specify migration directories, and both tasks utilize the \ExcellentMigrations.Runner\ to perform the analysis, logging warnings or errors for any detected dangers before terminating.
lib/mix · high confidence
New migration analysis engine with granular danger detection
The library introduces a new analysis pipeline (AstParser, DangersDetector, DangersFilter) that scans migration files for specific database risks, including non-concurrent index creation, volatile defaults, unsafe foreign key references, and raw SQL execution. Users can now suppress warnings using \\# excellent\_migrations: safety-assured\ comments or by configuring skipped check types, and the tool provides detailed file and line information for each detected issue.
lib · high confidence
Behavioural changes
Renamed Credo check to MigrationsSafety
The custom Credo check previously named CheckSafety has been renamed to MigrationsSafety to follow naming conventions. This change updates the module path and name within the lib/credo\_check directory, ensuring the check for dangerous database migration operations is identified by its new, standardized name in the ExcellentMigrations package.
_lib/credo\check · high confidence
Test coverage
Added example migration fixtures for testing safety and index rules; Added tests for the MigrationsSafety Credo check; Initial test suite for migration analysis components.
Dependencies
Initial release of ExcellentMigrations with Credo and ExDoc dependencies
The project is initialized as ExcellentMigrations (version 0.1.10), an analysis tool for checking the safety of database migrations. This release establishes the core dependency configuration, including Credo (version 1.7.12) as an optional dependency for code quality checks and ExDoc (version 0.28.4) as a development-only dependency for documentation generation. The project requires Elixir 1.11.0 or higher.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 65 → 66 (+0.6)
- Rubric changed (rubric-2026.09.15 → rubric-2026.10.1) — scores are not directly comparable.
Lenses
- Code Health 100 → 100 (+0.0)
- Architecture 69 → 69 (+0.0)
- Maturity 54 → 54 (+0.0)
- Readiness 67 → 69 (+2.4)
- Security 100 → 100 (+0.0)
Resolved (1)
- Documentation: no installation or build instructions (README.md)
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
Artur-Sulej/excellent_migrations was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 3 October 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 7a3d7d0b953e3f6ef0edd85deb5c975469fc459d — the exact code this score is about.
- Scored under rubric-2026.10.1 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-24c657e50118.