9148c358d0
Topic_Agent/Topic_Blog/Topics/Topics_Biz/Topics_Meeting/Topics_Rag의 마크다운 지식 문서를 Topic_General/Topic_Programming/Topic_Graphic/Topic_Business 4개 카테고리로 재분류. - 중복 제거: frontmatter의 status:duplicate/merged + duplicate_of/redirect_to 필드로 자기 자신을 중복으로 선언한 리다이렉트 stub 1032개 제거, 완전 동일 내용 파일 472개 제거, 동일 파일명·다른 내용 충돌 시 더 큰(완전한) 버전만 유지(162개 제거) — 총 1639개 중복 제거. - 분류: 폴더 단위로 명확한 항목(AI_and_ML/Coding/Architecture 등 → Programming, Comfyui/Visual_Effects → Graphic, Topics_Biz/Topics_Meeting/사업 등 → Business, Poetic_Blog_Writing/창의성/Game_Design 등 → General)은 폴더 우선순위로, 나머지 혼재 폴더(Topic_Agent/Topic_Blog/Topics 루트/Thinking & Reasoning/Other/UI_UX_Assets)는 title/tags 키워드 스코어링으로 파일 단위 분류(불명확한 경우 General로 폴백). 원본 폴더명은 "From_*" 서브폴더로 보존해 추적 가능성 유지. - 최종 배치: Programming 2784 / General 1608 / Graphic 285 / Business 249 = 4926개 문서. - 에이전트 운영 상태(.astra/.agent/.obsidian/sessions/memory/_company/docs/lessons/_shared/src)는 지식 콘텐츠가 아니므로 재분류 대상에서 제외하고 원위치 유지. - Topics/Topic_email(상위 보호 폴더 Topic_email과 파일명 100% 중복) 삭제 — 보호 폴더 자체는 미변경. - 완전히 비게 된 Topic_Agent/Topic_Blog/Topics_Biz/Topics_Rag 폴더 제거.
5.0 KiB
5.0 KiB
id, title, category, status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, verification_status, tags, raw_sources, last_reinforced, github_commit, tech_stack
| id | title | category | status | canonical_id | aliases | duplicate_of | source_trust_level | confidence_score | verification_status | tags | raw_sources | last_reinforced | github_commit | tech_stack | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| wiki-2026-0508-keeper-of-the-vision | Keeper of the Vision | 10_Wiki/Topics | verified | self |
|
none | A | 0.85 | applied |
|
2026-05-10 | pending |
|
Keeper of the Vision
매 한 줄
"매 architect 의 most-underrated 의무". Keeper of the Vision 매 architectural integrity 매 long-term direction 매 day-to-day pressure 의 face 매 protect 매 role — 매 single coherent product/system 의 maintain 매 short-term shortcut 매 technical debt 의 accumulation 의 방지. Brooks ("Mythical Man-Month"), Fowler 매 emphasized.
매 핵심
매 What the Keeper does
- Conceptual integrity: 매 system 매 단일 mind 의 product 처럼 feel 하도록.
- Veto authority: 매 vision-violating change 의 block (or escalate).
- Trade-off articulation: 매 short-term gain vs long-term cost 의 명확.
- Mentorship: 매 team 매 vision 의 internalize 하도록.
- Public memory: 매 ADR (Architecture Decision Record) 매 maintain.
매 Tensions
- Speed vs coherence: 매 PM 매 ship now, 매 keeper 매 do it right.
- Local vs global: 매 team A 매 best for them, 매 worst for system.
- Innovation vs consistency: 매 new framework 매 cool, 매 다양 ization 매 maintenance burden.
매 응용
- Tech lead role: 매 small team 매 lead 의 explicit responsibility.
- Staff/Principal engineer: 매 cross-team 매 keeper.
- Game director / Lead designer: 매 product vision (Miyamoto, Sid Meier model).
- Open source BDFL: 매 Linus, Guido, Matz — 매 codified extreme.
💻 패턴
Architecture Decision Record (ADR)
# ADR-0042: Use SQLite for embedded analytics, not Postgres
Status: Accepted
Date: 2026-04-12
Context: Edge devices need local analytics queries...
Decision: SQLite + Litestream replication.
Consequences:
+ zero ops, single binary
- no advanced window functions until SQLite 3.45
Vision alignment: "operate offline-first" pillar #2.
Vision artifact (one-pager)
# Product North Star (2026)
1. Offline-first: every feature works without network.
2. Single-binary deploy: no docker required for self-host.
3. Plain-text data: SQLite + JSON, no proprietary blobs.
4. Pluggable AI: vendor-neutral, swap Anthropic ↔ local Llama.
Keeper review checklist (PR template)
- [ ] Aligns with North Star pillars (#1–4)?
- [ ] Introduces new dependency? Justify.
- [ ] Adds DB migration? Reversible?
- [ ] Public API change? ADR required.
- [ ] Latency impact measured?
Conceptual integrity test
def integrity_smell(diff: Diff) -> list[str]:
smells = []
if introduces_new_pattern(diff) and not has_adr(diff):
smells.append("New pattern w/o ADR")
if duplicates_existing(diff):
smells.append(f"Duplicates {diff.similar_to}")
if cross_layer_import(diff):
smells.append("Layer boundary violated")
return smells
Office-hours protocol
Weekly architect office hours (1h):
- Anyone bring design Q
- Whiteboard walkthrough
- Output: ADR draft or "go ahead"
Cost: 1h/week. Benefit: prevents 10× cost of misalignment.
매 결정 기준
| 상황 | Approach |
|---|---|
| 매 small team (≤5) | 매 tech lead 매 implicit keeper |
| 매 medium (5–20) | 매 explicit "architect" role 매 part-time |
| 매 large (>20) | 매 architecture guild + Staff/Principal 매 keeper |
| 매 OSS project | 매 BDFL or 매 core team 매 vote |
| 매 startup early | 매 founder/CTO 매 keeper |
기본값: 매 ADR + weekly office hours + 매 명시적 vision document.
🔗 Graph
- 부모: Conceptual Integrity
- 응용: ADR (Architecture Decision Record)
- Adjacent: Conways-Law · Technical_Debt
🤖 LLM 활용
언제: 매 architect role responsibilities 의 articulate; 매 ADR template; 매 architecture review checklist. 언제 X: 매 individual contributor 의 day-to-day coding (다른 layer); 매 PM/product strategy (overlap 있지만 scope 다름).
❌ 안티패턴
- Ivory tower architect: 매 코드 매 안 짜고 매 mandate 만 — 매 lose credibility.
- Veto-only: 매 block 만 하고 매 alternatives 매 propose 안 함.
- Vision drift: 매 6 months 매 vision 매 silent 변경 — 매 team 매 confused.
- Hero dependency: 매 keeper 떠나면 매 collapse — 매 succession plan 필요.
🧪 검증 / 중복
- Verified (Brooks "Mythical Man-Month" Ch.4 conceptual integrity, Fowler "Who Needs an Architect?", Kruchten ADR origin 2011).
- 신뢰도 A.
🕓 Changelog
| 날짜 | 변경 |
|---|---|
| 2026-05-08 | Phase 1 |
| 2026-05-10 | Manual cleanup — full content (architect role, ADR patterns) |