MP036CRITICALFree

ban-truncate-cascade

What It Detects

TRUNCATE CASCADE silently truncates all tables referenced by foreign keys.

Why It's Dangerous

TRUNCATE CASCADE follows FK relationships and empties referencing tables too. This can silently destroy data across your entire schema.

Bad Example

TRUNCATE users CASCADE;

Good Example

-- Truncate explicitly without CASCADE
TRUNCATE users;
-- Or use DELETE with WHERE for safer data removal

Configuration

Disable this rule:

# .migrationpilotrc.yml
rules:
  MP036: false

Or change its severity:

# .migrationpilotrc.yml
rules:
  MP036:
    severity: warning