피드로 돌아가기
Dev.toDatabase
원문 읽기
AI 생성 코드의 엔트로피 제어를 위한 Postgres 중심의 Fortress 아키텍처 전환
Your Code is a Sacred Cow Bred by a Slop Machine. Put Your Business Logic in Postgres.
AI 요약
Context
AI 도구의 보급으로 코드 생산 속도가 인간의 리뷰 능력을 초과하며 비즈니스 로직의 무결성이 훼손되는 상황 발생. 기존 Application Layer 중심의 검증 방식은 AI가 생성한 테스트와 PR의 정교함에 가려져 엣지 케이스 누락 및 런타임 오류를 방지하지 못하는 한계 노출.
Technical Solution
- Application Layer를 단순 API 어댑터인 Disposable Zone으로 정의하여 빠른 반복 및 배포 허용
- 데이터베이스 경계를 기준으로 correctness를 보장하는 Fortress Zone 구축을 통한 로직 격리
- Raw Table 접근 권한을 Superadmin으로 제한하고 View를 통해서만 데이터에 접근하는 인터페이스 설계
- INSTEAD OF Trigger와 Postgres Function 내부에 비즈니스 로직을 구현하여 애플리케이션의 우회 진입 차단
- Row-Level Security(RLS)를 활용해 미들웨어가 아닌 DB 계층에서 직접 권한 제어 및 데이터 가시성 확보
- FDW(Foreign Data Wrapper)를 이용해 외부 서버에 Append-only 기반의 포렌식 감사 로그 기록
실천 포인트
1. 비즈니스 핵심 불변성(Invariant)을 Application Code가 아닌 DB 제약 조건이나 Trigger로 이전 가능한지 검토
2. DB User 권한을 최소화하고 View와 RLS 기반의 접근 제어 모델 도입 고려
3. AI 생성 코드가 집중되는 BFF/API 계층과 보수적 관리가 필요한 데이터 계층의 배포 주기 및 승인 프로세스 분리