ADR-0012 — wiki 운영 기본 모델 (1인 단계)¶
Context¶
ADR-0011은 "wiki 중간 레이어 유지 + 각 sub 디렉토리 책임"까지 정했다. 그러나 누가·언제·어떻게 ingest하는지 + 반영 카테고리(반영·참고·금지) + 회의 메모 같은 새 입력원 정책이 비어 있어 운영 규칙이 모호했다.
본 ADR은 그 위에 1인 단계의 운영 규칙을 못 박는다. 협업 진입점(비-CLI 팀원이 GitHub Issue·Slack·Notion 등으로 wiki 갱신 트리거하는 방식)과 코드 PR ↔ wiki 강제(Hook·CI path-filter)는 1인 운영 모델과 차원이 달라 ADR-0013·ADR-0014로 분리 (다음 라운드).
외부 조사 요약 (2026-05-23~25)¶
축 A — Knowledge sink 패턴 (회의록·1:1·디자인·마케팅 → docs): - Granola·Fireflies·Notion AI 모두 "transcript → LLM summary → action item → DB row" 파이프라인. 단 자동 push는 신뢰 문제로 기본 off — Granola·Fireflies 공통 - Tom Nguyen Karpathy LLM wiki 6개월 실운영기: "LLM 작성 + 사람 review, 자동 쓰기는 aspirational" - 카로트(당근): 팀 wiki + 월요일 회의록 + 개인 wiki를 한 Notion에 공존
축 B — LLM ingest guardrail 패턴: - 3계층 sensitivity 라벨이 사실상 표준: Public / Internal / Confidential (+ Restricted) — MS Purview·AWS Bedrock·NIST AI RMF 공통 - 금지 카테고리 거의 합의: PII / PHI / PCI / credentials / trade secret - "추측·험담" 명시 사례 거의 없음 — confidence threshold(Mem0) 또는 사람 review로 우회 - provenance가 NIST AI RMF 2025 핵심 키워드 — frontmatter 한 줄로 충분
Decision¶
A. Input sources (knowledge sink)¶
| Source | raw 디렉토리 | 트리거 | 책임자 |
|---|---|---|---|
| Notion PRD | raw/notion/ (기존) |
/sync-notion <page-id> |
변경 주체 (Notion 작성자) |
| 회의·1:1 메모 | raw/meetings/<yyyy-mm-dd>-<slug>.md (신규) |
회의 직후 /wiki-ingest |
회의 진행자·1:1 작성자 |
| 코드 변경 | (commit message) | TBD (ADR-0013) | TBD |
| 디자인·마케팅·1:1 (raw 분리) | TBD | TBD | 팀 합류 시 ADR-0014~ |
raw/meetings/도 .claude/hooks/deny-raw-write.sh glob 확장으로 사람·LLM 직접 쓰기 차단 (CLAUDE.md §12 raw 불가침 일관성). 실제 작성은 슬래시 명령 또는 MCP 경유.
B. 갱신 주체 (D1 — 변경 주체 책임)¶
ADR-0011 Decision 표 그대로 인용:
| 위치 | 갱신 주체 |
|---|---|
wiki/concepts/<X>.md |
LLM 갱신, 사람 review |
wiki/decisions/ADR-NNNN.md |
사람·LLM 공동 작성 |
wiki/domains/<X>.md |
LLM 갱신, 사람 review |
wiki/log.md |
슬래시 명령 /log-append 만 |
wiki/index.md |
슬래시 명령 /wiki-ingest 자동 |
D1 강화: 위 표에 더해, "변경 주체가 ingest 호출 책임"을 명시한다. Notion 갱신자·회의 진행자·1:1 작성자가 각자 본인 변경분을 /sync-notion + /wiki-ingest로 raw → wiki 흐름을 트리거한다. 누락 시 주간 /wiki-lint가 stale로 잡아 사용자가 사후 보완 (CLAUDE.md §10).
C. LLM ingest 가이드레일 (3 카테고리)¶
| 카테고리 | 처리 | d-edu 예시 |
|---|---|---|
| 반영 | LLM이 영향 페이지 후보 surface → 사용자 승인 → wiki 갱신 + /log-append |
의사결정·도메인 모델 변경·API 추가·가격 정책·컴플라이언스 요구·새 ADR 트리거 사유 |
| 참고 | /wiki-ingest가 draft 후보로만 표시, wiki/log.md에 "검토 보류" entry append |
회색 영역·source URL 없는 주장·contradiction(CLAUDE.md §11) 의심·확정 안 된 결정 |
| 금지 | raw에만 보관, wiki 격리. /wiki-ingest가 사용자에게 "이 항목은 skip" 명시 보고 |
PII (이름·이메일·주소·전화)·미공개 협상 (가격/계약/채용)·trade secret·credentials·개인 의견·험담·검증 안 된 추측·1차 raw 데이터 그 자체 |
용어 통일 (2026-05-25): 본 표의 카테고리 명명을 ADR-0013 §D와 일치시키기 위해 갱신함. 이전 표현은 "반드시 반영 / 반영 금지 / 보류 (HITL)"였으며, 의미는 동일.
frontmatter 라벨 (sensitivity·provenance·ingest_policy) 도입은 본 ADR에선 권고만. 실제 confidential 콘텐츠가 들어오거나 팀이 합류해 출처 추적 필요해질 때 ADR-0013·ADR-0014에서 필수화한다 (D6 점진).
D. 1인 단계 daily 흐름 (ADR-0011 흐름도 + raw/meetings 보강)¶
Notion 변경 → /sync-notion → raw/notion/ ┐
회의·1:1 메모 → (수동 작성) → raw/meetings/ ├─→ /wiki-ingest → 사용자 승인 → wiki/ 갱신 + /log-append
코드 변경 (D4) → (ADR-0013으로 분리) ┘
1인 단계 핵심: /wiki-ingest 슬래시 명령이 단일 진입점. 명시적 프롬프트 ("X 페이지에 ~~~ 추가해줘")도 보조로 OK. 자동 surface (Claude Code Hook) / CI 강제는 ADR-0013에서 협업 진입점과 함께 결정.
Consequences¶
긍정¶
- 1인 단계 운영 정책 명문화 — 6개월 후 재방문해도 책임·트리거가 명확
- 회의 메모도 wiki에 누적 — Notion만이 아니라 음성 메모·1:1 결정도 compounding artifact의 일부가 됨
- 반영 카테고리가 LLM·사람 모두 명확 —
/wiki-ingest가 카테고리별로 처리 분기, PII 사고 위험 ↓ - 점진적 도입 — 1인 단계에선 마찰 최소, 팀 합류·confidential 콘텐츠 시점에 ADR-0013·ADR-0014로 강화
부정¶
- 변경 주체 누락 시 stale — 주간
/wiki-lint에 의존. lint 자체 누락 시 sky's the limit - frontmatter 라벨 점진이라 초기엔 LLM 자율 판단 비중 ↑ — Mem0 confidence threshold·human review로 보완하나 100% 안전 X
raw/meetings/운영 부담 — 회의 끝나고 메모를 raw로 박제하는 단계가 한 번 더 들어감. 짧은 회의엔 과할 수 있어 ingest 결정 사용자 재량
Alternatives 거부¶
| 옵션 | 평가 |
|---|---|
| "1인이므로 운영 규칙 X — 자율 운영" | ❌ ADR-0011 결정 무효화. 누락 시 책임 모호. 1인이라도 6개월 후 본인이 잊음 |
| 모든 input source 한 번에 정의 (1on1·design·marketing 포함) | ❌ 1인 단계엔 design·marketing 입력 없음. 과도한 디렉토리 — 팀 합류 시점에 ADR-0014로 정의가 정직 |
frontmatter sensitivity·provenance·ingest_policy 즉시 필수화 |
❌ OWASP·NIST 권장이지만 1인 단계엔 마찰 ↑. 실제 confidential 콘텐츠 들어올 때 ADR-0014로 (D6 점진) |
| Hook + CI path-filter 일괄 도입 | ❌ 협업 진입점이 안 정해진 상태에서 강제는 의미 약함. ADR-0013과 묶어 결정 |
| Granola/Fireflies 자동 push 도입 | ❌ 조사 결과 — 신뢰 문제로 두 서비스 모두 기본 off. d-edu 1인 단계엔 수동 raw 작성이 안전 |
향후 검토 항목¶
- ADR-0013 — 협업 wiki 진입점 (비-CLI 팀원): GitHub Issue / Slack / Notion comment / Google Form 비교. 외부 조사 + 사용자의 현재 팀 도구 사용 현황 확인 후. D4 (코드 ↔ wiki Hook/CI)도 이 ADR과 동반 결정 — 협업 진입점이 정해져야 강제 수단이 의미를 가짐
- ADR-0014 — 센서티비티 라벨 필수화: 실제 confidential 콘텐츠 (가격 협상·계약·채용 등) 들어올 때. frontmatter
sensitivity: public|internal|confidential+provenance+ingest_policy필수화 +/wiki-lint에 누락 검사 추가 raw/meetings/자동화 도입 시점: Granola/Fireflies/Notion AI Meeting Notes 중 하나 도입 검토 — 단 자동 push는 off로 유지 (조사 권고)
Status¶
- 2026-05-25: accepted
Date¶
2026-05-25