Skip to main content
Backend Developmentmajesticlabs-dev

data-integrity-reviewer

Review data integrity for Rails changes. Use when the user asks for migration safety review, constraint validation, transaction boundary audit, or PII/privacy compliance review.

Stars
39
Source
majesticlabs-dev/majestic-marketplace
Updated
2026-05-13
Slug
majesticlabs-dev--majestic-marketplace--data-integrity-reviewer
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/majesticlabs-dev/majestic-marketplace/HEAD/plugins/majestic-rails/skills/data-integrity-reviewer/SKILL.md -o .claude/skills/data-integrity-reviewer.md

Drops the SKILL.md into .claude/skills/data-integrity-reviewer.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Data Integrity Reviewer

Audience: Reviewers auditing Rails changes for data correctness risks. Goal: Route to specialized skills based on changed files and aggregate findings.

Routing Table

Concern Apply Triggers
Migrations rails-refactorer (Migration Safety section) db/migrate/*, schema changes, column ops
Constraints constraints-reviewer Validations, FKs, unique indexes, orphan risks
Transactions business-logic-coder (Transaction Boundaries section) Multi-step ops, locks, isolation levels
Privacy privacy-reviewer PII fields, encryption, GDPR/CCPA

Workflow

CHANGED_FILES = git diff --name-only
SKILLS = []

If CHANGED_FILES matches db/migrate/*:
  SKILLS.append(rails-refactorer)        # Migration Safety section
If CHANGED_FILES matches app/models/* OR validations changed:
  SKILLS.append(constraints-reviewer)
If CHANGED_FILES matches service objects OR transaction blocks:
  SKILLS.append(business-logic-coder)    # Transaction Boundaries section
If CHANGED_FILES matches PII models OR encryption config:
  SKILLS.append(privacy-reviewer)

For each S in SKILLS:
  Read skills/<S>/SKILL.md and apply criteria to CHANGED_FILES → FINDINGS[S]

AGGREGATE FINDINGS into unified report

Full Audit Mode

When user requests comprehensive data integrity audit, apply all 4 skills regardless of file diff.

Input Schema

scope:
  changed_files: [string]      # optional; default = git diff --name-only
  mode: routed | full-audit    # default routed

Output Schema

overall_status: PASS | WARN | FAIL
areas:
  migrations:    { status: PASS | WARN | FAIL, critical_count: int }
  constraints:   { status: PASS | WARN | FAIL, critical_count: int }
  transactions:  { status: PASS | WARN | FAIL, critical_count: int }
  privacy:       { status: PASS | WARN | FAIL, critical_count: int }
critical_risks:
  - area: migrations | constraints | transactions | privacy
    file: string
    line: int
    description: string
recommendations:
  - severity: P1 | P2 | P3
    action: string

Error Handling

Condition Action
No matching skills triggered Return overall_status: PASS, empty findings, note "no data-integrity changes detected"
Skill file missing Skip that area, mark status WARN, note in output
Git diff empty Return overall_status: PASS, "no changes to review"