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.2 KiB
5.2 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-system | AI_and_ML 폴더 시스템 메타 | 10_Wiki/Topics | verified | self |
|
none | A | 1.0 | applied |
|
2026-05-10 | pending |
|
AI_and_ML 폴더 시스템 메타
매 한 줄
"매 폴더의 system manifest — index, ownership, cleanup status, conventions 의 single source of truth". 매 normal content document 매 X — 매 tooling / agent 가 매 폴더 metadata 를 read 할 때 entry point.
매 핵심
매 폴더 정체성
- Path:
10_Wiki/Topics/AI_and_ML/ - Scope: AI, ML, DL, NLP, CV, RL, LLM agents, MLOps, AI ethics/policy 의 거의 모든 wiki entry.
- Volume: ~700+ files (2026-05 기준), 매 wiki 의 largest domain folder.
- Owner: caliversedevpm@gmail.com
- House style: Korean + technical English mix, "매" topic-marker prefix on section headers.
매 cleanup phases
- Phase 1 (2026-05-08): 매 placeholder + frontmatter scaffold 자동 생성.
- Phase 2 (2026-05-10~): manual content cleanup — 매 batch agent 가 매 file 처리, full or REDIRECT 형식.
- Phase 3 (planned): cross-link consolidation, canonical 결정, alias graph 정합성.
매 frontmatter convention
id:wiki-2026-0508-<slug>(Phase 1 origin date 유지).status:verified|duplicate|stub|draft.canonical_id:self또는 canonical doc 의 slug.duplicate_of: REDIRECT 의 경우[[Canonical-Title]](wikilink in quotes).source_trust_level: A (authoritative), B (community / blog), C (speculative).confidence_score: 0.0-1.0.tags: lowercase kebab-case, comma-separated array.last_reinforced: ISO date of latest manual review.
매 file types
- Full content: 150-250 lines, 매 spec 의 full 포맷.
- REDIRECT (duplicate): ~25 lines, canonical 로 redirect.
- System / meta: this file. 매 폴더당 1개.
매 cleanup spec reference
- Spec file:
/Volumes/Data/project/Antigravity/Wiki/CLEANUP_SPEC.md - Memory note:
feedback_wiki_continuous.md— 매 batch 자동 진행 mode.
💻 패턴
1. 폴더 file count 확인
ls "/Volumes/Data/project/Antigravity/Wiki/10_Wiki/Topics/AI_and_ML/" | wc -l
2. 미처리 stub 찾기 (frontmatter status check)
grep -l "status: stub" "/Volumes/Data/project/Antigravity/Wiki/10_Wiki/Topics/AI_and_ML/"*.md
3. Canonical 분포 확인
grep -h "^canonical_id:" "/Volumes/Data/project/Antigravity/Wiki/10_Wiki/Topics/AI_and_ML/"*.md \
| sort | uniq -c | sort -rn | head -20
4. Wikilink graph extract (Python)
import re, glob
from collections import defaultdict
graph = defaultdict(set)
for path in glob.glob("/Volumes/Data/project/Antigravity/Wiki/10_Wiki/Topics/AI_and_ML/*.md"):
with open(path, encoding="utf-8") as f:
text = f.read()
src = path.rsplit("/", 1)[-1].removesuffix(".md")
for m in re.findall(r"\[\[([^\]|]+)", text):
graph[src].add(m.strip())
print(f"Files: {len(graph)}, edges: {sum(len(v) for v in graph.values())}")
5. Batch frontmatter validation
import yaml, glob, sys
required = {"id", "title", "category", "status", "canonical_id", "tags"}
errors = []
for p in glob.glob("/Volumes/Data/project/Antigravity/Wiki/10_Wiki/Topics/AI_and_ML/*.md"):
with open(p, encoding="utf-8") as f:
text = f.read()
if not text.startswith("---"):
errors.append((p, "no frontmatter"))
continue
fm_text = text.split("---", 2)[1]
try:
fm = yaml.safe_load(fm_text)
except Exception as e:
errors.append((p, f"yaml: {e}")); continue
missing = required - set(fm)
if missing:
errors.append((p, f"missing: {missing}"))
print(*errors, sep="\n")
매 결정 기준
| 상황 | Approach |
|---|---|
| 새 wiki entry 생성 | Phase 1 scaffold → Phase 2 full content |
| 기존 file 매 의미 매 다른 file 와 overlap | REDIRECT (duplicate_of) |
| 한 topic 의 specialized aspect | full content + canonical 로 wikilink |
| 매 신뢰 못 할 source | source_trust_level: C, 매 followup 필요 표시 |
기본값: 매 file 매 full content 로 시도 → 매 명확히 duplicate 면 REDIRECT.
🔗 Graph
- 응용: 매 폴더 내 모든 entry
🤖 LLM 활용
언제: 매 batch agent 매 폴더 작업 시작 시 read — 매 conventions/scope 확인. 언제 X: 매 user-facing content reference 매 X — 매 internal meta only.
❌ 안티패턴
- 이 file 을 normal entry 로 취급: 매 system meta — 매 user-facing content 가 아님.
- 다른 폴더에 같은 _system.md 통합: 매 폴더별 separate (scope/convention 다를 수 있음).
- Frontmatter convention drift: 매 새 field 추가 시 매 spec update 필수.
🧪 검증 / 중복
- Verified (CLEANUP_SPEC.md, folder structure, Phase 1 scaffold output).
- 신뢰도 A.
🕓 Changelog
| 날짜 | 변경 |
|---|---|
| 2026-05-08 | Phase 1 — auto-generated stub |
| 2026-05-10 | Manual cleanup — folder system manifest as a usable meta entry |