[G1-Sync] Manual knowledge update

This commit is contained in:
Antigravity Agent
2026-05-10 22:08:15 +09:00
parent 21ac3ed255
commit 504fd5fb42
3011 changed files with 380280 additions and 206977 deletions
@@ -47,69 +47,137 @@ tech_stack:
- **출처 신뢰도**: A
- **검토 이유**: 신규 팀원의 생산성을 조기에 확보하고 지식 전파의 비용을 낮추기 위한 실천적 가이드라인 정립.
## 📌 한 줄 통찰 (The Karpathy Summary)
## 📌 한 줄 통찰
> **"매 4-step (Inventory → Entry Points → Tracing → Boundaries) + 매 small first task"**. 매 perfectionism 의 reject — 매 fragmented info 의 connect 의 시작. 매 modern: 매 LLM-aided onboarding (RAG + repo).
> *(TODO: 한 문장으로 핵심 통찰을 작성. "X는 Y 조건에서 Z 효과를 낸다" 구조 권장.)*
## 📖 핵심 (간략)
- 매 4-step workflow.
- 매 top-down × bottom-up cross-check.
- 매 small task 의 risk-low 의 시작.
- 매 dynamic analysis (debugger, log).
- 매 doc 의 불완전 — 매 code + test 의 truth.
## 📖 구조화된 지식 (Synthesized Content)
## 🤖 LLM 활용
**언제**: 매 new joiner. 매 codebase migration. 매 acquisition tech due diligence. 매 LLM-aided onboarding RAG.
**언제 X**: 매 single-script project.
**추출된 패턴:**
> *(TODO)*
## 🔗 지식 연결
- 부모: [[Software-Engineering]] · [[Knowledge-Management]]
- Adjacent: [[Asset-Specific-Knowledge]] · [[C4_Model]] · [[Architecture-Styles]] · [[Bounded-Contexts]] · [[CodeScene]]
**세부 내용:**
- *(TODO)*
## 💻 패턴
## 🤖 LLM 활용 힌트 (How to Use This Knowledge)
### Day 1 inventory
```bash
# 매 stack identify
ls package.json pyproject.toml go.mod Cargo.toml pom.xml 2>/dev/null
ls Dockerfile docker-compose.yml .github/workflows/ 2>/dev/null
ls README.md docs/ ARCHITECTURE.md 2>/dev/null
ls -la # 매 hidden config
**언제 이 지식을 쓰는가:**
- *(TODO)*
# 매 size + language breakdown
cloc . # 매 lines per language
**언제 쓰면 안 되는가:**
- *(TODO)*
## 🧬 중복 검사 (Duplicate Check)
- **기존 유사 문서:** *(TODO: 인덱서 클러스터 리포트 참조)*
- **처리 방식:** UPDATE (자동 정규화)
- **처리 이유:** Phase 1 정규화 — 옛 템플릿/누락 필드 보강.
## ⚠️ 모순 및 업데이트 (Contradictions & Updates)
- **과거 데이터와의 충돌:** 없음
- **정책 변화:** 없음
## 🔗 지식 연결 (Graph)
- **Parent:** [[10_Wiki/Topics]]
- **Related:** *(TODO: 최소 2개)*
- **Opposite / Trade-off:** *(TODO)*
- **Raw Source:** 직접 입력
## 🕓 변경 이력 (Changelog)
| 날짜 | 변경 내용 | 처리 방식 | 신뢰도 |
|------|-----------|-----------|--------|
| 2026-05-08 | P-Reinforce Phase 1 정규화 (frontmatter + 헤더 표준화) | UPDATE | A |
## 💻 코드 패턴 (Code Patterns)
**패턴 1:** *(TODO: 이 프로젝트 컨벤션 반영한 구조 스켈레톤)*
```text
# TODO
# 매 directory tree (top 2 level)
tree -L 2 -I node_modules
```
## 🤔 의사결정 기준 (Decision Criteria)
### Find entry points
```bash
# 매 main / index 의 search
grep -rn "if __name__" --include="*.py" # 매 Python entry
grep -rn "func main" --include="*.go" # 매 Go
grep -rn "fn main" --include="*.rs" # 매 Rust
find . -name "index.ts" -o -name "main.ts" -o -name "server.ts"
**선택 A를 써야 할 때:**
- *(TODO)*
# 매 routing
grep -rn "@app.route\|app.get\|router.get" --include="*.{py,ts,js}"
```
**선택 B를 써야 할 때:**
- *(TODO)*
### Trace one request (E2E)
```
1. HTTP request → router.
2. → controller / handler.
3. → service / use case.
4. → repository / data layer.
5. → DB query.
6. → response back up.
**기본값:**
> *(TODO)*
매 each layer 의 break point 의 set.
매 매 layer 의 transformation 의 observe.
```
## ❌ 안티패턴 (Anti-Patterns)
### Small first task (low-risk)
```
1. Fix a typo in README / docs.
2. Update outdated dependency (patch).
3. Add a unit test for existing function.
4. Improve error message clarity.
5. Add a log line.
6. Refactor a small private function.
- **[안티패턴]:** *(TODO: 무엇을 하면 안 되는가 + 이유 + 대신 무엇을)*
→ 매 PR + review + merge 의 cycle 의 학습.
```
### LLM-aided onboarding RAG
```python
from langchain.vectorstores import Chroma
from langchain.text_splitter import RecursiveCharacterTextSplitter
# 매 codebase + ADR + README + commit history 의 index
sources = ['src/**/*.{ts,py}', 'docs/**/*.md', 'adr/*.md', 'README.md']
splitter = RecursiveCharacterTextSplitter(chunk_size=1500, chunk_overlap=200)
vectordb = Chroma.from_documents(load_docs(sources), embeddings, persist_directory='./onboarding-rag')
def ask(q):
return llm.generate_with_context(q, vectordb.similarity_search(q, k=5))
# 매 examples
ask("Where does authentication happen?")
ask("What's the data flow for a user signup?")
ask("Why was Postgres chosen over MongoDB? (ADR)")
```
### Architecture map (output)
```
Codebase: [name]
Stack: [TS / Node / Postgres / Redis]
Entry points:
- HTTP API: [src/server.ts:42]
- CLI: [src/cli.ts:15]
- Worker: [src/worker.ts]
Layers (Clean Arch):
- domain/ (entity, value object)
- application/ (use case)
- infrastructure/ (db, http, queue)
External deps:
- Stripe: [src/infrastructure/stripe/]
- Slack: [src/infrastructure/slack/]
Open questions:
- How does retry work for Stripe webhook?
- Why is OrderService split across 2 modules?
```
## 🤔 결정 기준
| 상황 | Approach |
|---|---|
| Tiny (<10 file) | Read all |
| Small (<500 file) | 4-step + small task |
| Large (10K+ file) | RAG-aided + bounded-context-by-bounded-context |
| Legacy unknown | CodeScene hotspot first |
| Greenfield | Owner walkthrough |
**기본값**: 매 4-step + 매 RAG + 매 small task within week 1.
## ❌ 안티패턴
- **Read everything 의 perfectionism**: 매 paralysis.
- **No small task**: 매 actual learn X.
- **Doc 의 100% trust**: 매 stale.
- **No question journal**: 매 forget.
- **Skip dynamic analysis**: 매 runtime mismatch.
## 🕓 변경 이력
| 날짜 | 변경 |
|---|---|
| 2026-05-08 | Phase 1 |
| 2026-05-10 | Manual cleanup — 4-step + 매 inventory / RAG / small task code |