3.9 KiB
3.9 KiB
id, title, category, status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, tags, raw_sources, last_reinforced, github_commit, inferred_by, tech_stack
| id | title | category | status | canonical_id | aliases | duplicate_of | source_trust_level | confidence_score | tags | raw_sources | last_reinforced | github_commit | inferred_by | tech_stack | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| wiki-2026-0508-custom-eslint-rules | Custom ESLint Rules | 10_Wiki/Topics | needs_review | self |
|
none | A | 0.97 |
|
2026-04-20 | pending | Claude Opus 4.7 (auto-normalize 2026-05-08) |
|
Custom-ESLint-Rules
📌 한 줄 통찰 (The Karpathy Summary)
"코딩 컨벤션의 자동화 파수꾼: '말'로만 약속한 코딩 규칙을 '코드'로 강제하여, 개발자가 실수로 금지된 패턴을 쓰거나 부작용이 큰 라이브러리를 호출할 때 즉시 에러를 띄워 품질 저하를 막는 필터링 기술."
📖 구조화된 지식 (Synthesized Content)
커스텀 ESLint 규칙(Custom-ESLint-Rules)은 프로젝트 요구사항에 맞춰 표준 린터가 잡지 못하는 특정 안티 패턴이나 스타일을 검사하기 위해 직접 만든 정적 분석 규칙입니다.
- 메커니즘 (AST 파싱):
- Parser: 소스 코드를 읽어 추상 구문 트리(AST)로 변환.
- Trainee: 특정 노드(예:
Identifier,FunctionDeclaration)를 방문할 때 검사 로직 실행. - Context Report: 규칙 위반 시 문제의 위치와 메시지, 자동 수정(Fixer) 방법 제안.
- 왜 중요한가?:
- 코드 리뷰 시 "세미콜론 찍으세요" 같은 소모적 논쟁을 없애고, 기술 부채 정책을 원천적으로 차단하기 때문임. (Technical-Debt와 연결)
⚠️ 모순 및 업데이트 (Contradictions & Updates)
- 과거 데이터와의 충돌: 과거에는 단순히 '들여쓰기' 같은 스타일 검사 정책이 주였으나, 현대 정책은 함수 사용의 '보안 취약점 정책'이나 '성능 저하 패턴 정책'을 감지하는 논리적 검사 정책으로 고도화됨(RL Update). (Testing와 연결)
- 정책 변화(RL Update): 이제는 사람이 일일이 규칙 정책을 짜는 것을 넘어, AI 가 프로젝트 코드 전체를 학습하여 반복되는 오류 정책을 발견하고 새로운 린트 규칙 정책을 스스로 제안하는 시대로 진화 중임. (Scripts와 연결)
🔗 지식 연결 (Graph)
- Technical-Debt, Testing, Scripts, Quality-Control, Automation, Technical-Architecture
- Key Concepts: Abstract Syntax Tree (AST), Esprima, Estraverse.
🤖 LLM 활용 힌트 (How to Use This Knowledge)
언제 이 지식을 쓰는가:
- (TODO)
언제 쓰면 안 되는가:
- (TODO)
🧪 검증 상태 (Validation)
- 정보 상태: needs_review
- 출처 신뢰도: A
- 검토 이유: (P-Reinforce Phase 1 자동 정규화. 본문 검증 필요.)
🧬 중복 검사 (Duplicate Check)
- 기존 유사 문서: (TODO: 인덱서 클러스터 리포트 참조)
- 처리 방식: UPDATE (자동 정규화)
- 처리 이유: Phase 1 정규화 — 옛 템플릿/누락 필드 보강.
🕓 변경 이력 (Changelog)
| 날짜 | 변경 내용 | 처리 방식 | 신뢰도 |
|---|---|---|---|
| 2026-05-08 | P-Reinforce Phase 1 정규화 (frontmatter + 헤더 표준화) | UPDATE | A |
💻 코드 패턴 (Code Patterns)
패턴 1: (TODO: 이 프로젝트 컨벤션 반영한 구조 스켈레톤)
# TODO
🤔 의사결정 기준 (Decision Criteria)
선택 A를 써야 할 때:
- (TODO)
선택 B를 써야 할 때:
- (TODO)
기본값:
(TODO)
❌ 안티패턴 (Anti-Patterns)
- [안티패턴]: (TODO: 무엇을 하면 안 되는가 + 이유 + 대신 무엇을)