Skip to content

DB 운영 모델 SOT 문서화 (단일 진입점) #371

@thxforall

Description

@thxforall

배경

현재 DB/마이그레이션 운영이 여러 문서에 흩어져 있어 신규 변경 시 "어디에 추가하나" 판단이 어렵다. 2026-04-30 PRD→dev 시드 작업 중 post_magazines.status='failed' drift가 드러나면서, 시스템 3종 (Supabase CLI / SeaORM / TypeScript 상수) 의 역할 명시 부족이 확인됨.

상위 spec: docs/superpowers/specs/2026-04-30-db-operating-model-design.md

산출물

docs/database/operating-model.md (단일 진입점, 1 페이지 + 다이어그램)

범위

  • dev/prod/assets 3 영역 한 장 다이어그램
  • 시스템 3종 (Supabase CLI / SeaORM / TS 상수) 의 역할/적용 매트릭스
  • 변경 시나리오별 "어디 추가하나" 결정 트리:
    • 새 컬럼/제약 → Supabase CLI 마이그레이션
    • status enum/허용값 → TS 상수 + Supabase CLI 마이그레이션 둘 다
    • RLS / RPC → Supabase CLI 마이그레이션
    • 시드 데이터 → scripts/seed.sql (dev 전용)
    • SeaORM 은 "건드리지 말 것" 가이드 (B.3 까지)
  • drift 발생 패턴 + 회피 (이번 사례 인용)
  • 기존 문서 (agent/environments.md, DATABASE-MIGRATIONS.md, agent/database-summary.md) 와의 관계 — 본 문서가 단일 진입점, 나머지는 상세 보충

Acceptance

  • 새 변경에 직면한 개발자가 본 문서 1장만 읽고 어디에 추가할지 판단 가능
  • CLAUDE.md 에서 본 문서가 1순위로 링크됨
  • docs/agent/database-summary.md 가 본 문서를 가리키도록 업데이트

예상 공수

1-2 일

우선순위

P0 (즉시 가치)

Metadata

Metadata

Assignees

No one assigned

    Labels

    data데이터/DBdocumentationImprovements or additions to documentationpriority: high아키텍처 안정화 단계tech-debt기술 부채

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions