피드로 돌아가기
How to AI Code: Your AI is editing your migration files
Dev.toDev.to
Database

PreToolUse Hook 기반 Migration 파일 수정 차단으로 DB 정합성 보장

How to AI Code: Your AI is editing your migration files

Roel2026년 6월 9일3intermediate

Context

AI 코딩 툴이 DB Migration 파일을 임의로 수정하여 기존 배포 환경의 데이터 이력과 정합성이 깨지는 위험 발생. 기존 Migration 시스템은 Append-only Ledger 구조임에도 AI가 과거 이력을 덮어쓰는 Rewrite 패턴을 수행하는 설계적 한계 노출.

Technical Solution

  • AI Agent의 파일 쓰기 권한을 제어하는 PreToolUse Hook 메커니즘 도입
  • Edit, Write, MultiEdit 툴 호출 전 실행되는 Bash 쉘 스크립트 기반의 Guard 레이어 구축
  • JSON 페이로드 분석을 통한 타겟 경로의 Migrations 디렉터리 포함 여부 판별
  • 조건 일치 시 permissionDecision: deny 반환을 통한 원천적 수정 차단
  • CLI(dotnet ef migrations add)를 통한 정상적인 Append-only 워크플로우 강제

- AI Agent 도입 시 Migration, Snapshot 등 Immutable 성격의 파일 경로 식별 - 도구 수준의 Write 권한 제어 Hook 또는 .gitignore/AI-ignore 설정 검토 - AI에게 Migration 수정 대신 신규 Migration 파일 생성을 유도하는 프롬프트 및 가이드라인 수립

원문 읽기