# Magma Mart Seed

> MAGMA 가상 오피스 강의(섹션 7)용 판매·프로모션 더미 데이터 마트 생성 스킬. 시드 고정 생성기로 고객·상품·프로모션·주문·주문상세 5개 CSV(약 5.5만 행)를 만들며, 현실적인 오염 패턴 12종(중복 고객, 결측, 날짜 포맷 4종 혼재, 금액 표기 혼재, 음수 수량, 고아 FK, 이상치 가격, 비정규 코드값 등)이 의도적으로 주입돼 있어 데이터 정제 실습 재료가 된다. 누가 언제 실행해도 완전히 동일한 데이터가 나온다. Use when: '더미 판매 데이터 만들어', 'MAGMA 마트 생성', '정제 실습용 데이터 준비', 'magma-mart-seed 실행', or preparing the Section 7.3 data-cleaning exercise.

- Skill: `dandacompany/magma-mart-seed` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add dandacompany/magma-mart-seed`
- Raw SKILL.md: https://api.skillmd.com/api/skills/dandacompany/magma-mart-seed/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Data & Analytics
- License: MIT
- Author: dandacompany (https://skillmd.com/u/dandacompany)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/dandacompany/magma-mart-seed

---


# magma-mart-seed — 오염 주입 더미 판매 마트 생성기

## 목적

인프런 「Hermes × Codex 가상 오피스」 섹션 7.3(데이터 정제·분석)의 실습 재료.
깨끗한 더미가 아니라 **현실에서 만나는 지저분한 상태**를 재현한 관계형 마트를 만든다.
시드가 고정돼 있어 강사와 모든 수강생이 **완전히 동일한 데이터**로 실습한다.

## 절차

1. 생성기를 실행한다.

   ```bash
   python3 scripts/generate_mart.py --out ./magma-mart
   ```

   표준 라이브러리만 사용한다(추가 설치 없음). 출력:

   | 파일 | 내용 |
   | --- | --- |
   | customers.csv | 고객 1,030행 (중복 등록 30 포함) |
   | products.csv | 상품 200행 |
   | promotions.csv | 프로모션 30행 |
   | orders.csv | 주문 20,060행 |
   | order_items.csv | 주문상세 33,370행 |
   | schema.sql | 스테이징 테이블 DDL (오염을 그대로 받는 텍스트 중심 컬럼) |
   | DIRT_REPORT.md | 주입된 오염의 종류·개수 요약 (정답지) |

2. 사용자에게 생성 결과(행 수·오염 요약)를 보여주고, **데이터베이스 적재 여부를 확인받는다**.
   확인 없이 적재하지 않는다.
3. 적재 승인 시: `schema.sql`로 스테이징 테이블을 만들고 CSV 5종을 넣는다.
   Supabase라면 대시보드 Table Editor의 CSV import 또는 SQL Editor를 쓴다.
4. 적재 후 각 테이블의 행 수를 조회해 CSV 행 수와 일치하는지 검증하고 보고한다.

## 규칙

- `--seed` 값을 임의로 바꾸지 않는다(기본 42). 바꾸면 강의 화면과 수강생 데이터가 어긋난다.
- DIRT_REPORT.md는 정제 실습의 **정답지**다. 실습 전에 학습자에게 먼저 보여주지 않는다.
- 오염을 생성 단계에서 미리 고치지 않는다 — 고치는 일이 실습 그 자체다.
- 생성 데이터는 전부 가상이다. 실존 인물·상호와 무관하며 개인정보가 아니다.

## 오염 패턴 목록 (교육 포인트)

중복 고객(표기 변형) · 전화 결측 · 지역 표기 비정규(서울/SEOUL/서울특별시) · 이메일 오염 ·
음수 가격 · 가격 이상치(단위 오류) · 카테고리 결측 · 날짜 포맷 4종 혼재 · 미래 날짜 ·
채널 표기 비정규(online/ONLINE/온라인) · 중복 주문행 · 고아 상품 FK · 음수 수량 · 금액 표기 4종 혼재(₩·콤마·'원'·소수점)

