c24165b8bc
에이전트 8종(대화형/프로그래머 C·S/디자이너/설계자/기획자/QA/PD/PM)에게 [공통 기본 능력 + 롤별 Specialty] 2층으로 지식을 주입하기 위한 재분류. 문서 내용·포맷은 무수정, 폴더 이동만 (6,372개 문서 수 보존 확인). - Topic_Programming → Domain_Programming (내부 구조 보존) - Topic_Graphic → Domain_Design - Topic_Business → Domain_Product - Topic_General → Domain_General - _Common 신설: Math(구 Topic_Math_Specialty), Reasoning(구 General/From_Thinking & Reasoning), Reasoning_Creativity(구 General/From_창의성), Communication(Poetic_Blog_Writing + From_writing) - 타 도메인의 From_* 폴더는 유지 (출처 표기일 뿐, 이미 도메인에 맞게 분류된 문서) - 빈 폴더 정리 (memory/procedures) - 에이전트→폴더 매핑은 workspace의 .astra/agent-knowledge-map.json (9개 에이전트) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
3.0 KiB
3.0 KiB
id, title, category, status, verification_status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, created_at, updated_at, review_reason, merge_history, tags, raw_sources, applied_in, github_commit
| id | title | category | status | verification_status | canonical_id | aliases | duplicate_of | source_trust_level | confidence_score | created_at | updated_at | review_reason | merge_history | tags | raw_sources | applied_in | github_commit | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| pattern-navigation | Navigation Pattern | Pattern_Mobile | draft | conceptual |
|
A | 0.83 | 2026-06-13 | 2026-06-13 |
|
|
Navigation Pattern
🎯 한 줄 통찰 (One-line insight)
내비게이션은 "화면 간 이동과 스택/상태를 관리" 하는 패턴으로, 경로를 선언적·직렬화 가능하게 두고 딥링크/뒤로가기/상태 복원을 1급으로 다뤄야 한다.
🧠 핵심 개념 (Core concepts)
- 선언적 라우트: URL/route 로 화면을 표현(직렬화 가능).
- 스택/탭/드로어: 내비 구조 유형.
- 딥링크: 외부에서 특정 화면 직접 진입.
- 파라미터 전달: 라우트 인자 + 타입 안전.
- 상태 복원: 프로세스 죽어도 내비 상태 복구.
📖 세부 내용 (Details · 패턴 명세)
- Problem (언제 쓰나): 다화면 앱의 이동/히스토리/딥링크 관리.
- 사용 조건: 라우트 정의; 화면 식별자; 인자 직렬화.
- 장점: 일관된 이동, 딥링크, 뒤로가기, 테스트성.
- 단점: 설정 복잡, 깊은 스택 메모리, 타입 안전 관리.
- 대안: 단일 화면(소규모), 조건부 렌더(상태 기반), 코디네이터 패턴.
- 실패 사례: 객체를 라우트 인자로 직접(직렬화 불가/딥링크 깨짐); 스택 누수(화면 안 떼어냄); 뒤로가기 상태 불일치; 딥링크 시 부모 스택 없어 길 잃음.
💻 코드 패턴 (Code patterns)
routes = { '/home': Home, '/item/:id': ItemDetail } # 선언적 + 직렬화 가능 인자
navigate('/item/42') # id 만 전달(객체 X)
deepLink('myapp://item/42') -> rebuild stack [Home, ItemDetail]
restore(savedNavState) # 프로세스 복원
⚖️ 모순 및 업데이트 (Contradictions & updates)
"상태로 화면 전환" vs "라우터" — 작은 앱은 상태 조건부가 단순하나, 딥링크/히스토리가 필요하면 선언적 라우터가 필수.
🛠️ 적용 사례 (Applied in summary)
일반 모바일/SPA. (ConnectAI 는 패널 기반이라 직접 사례 없음 — 화면 식별/복원 원리는 동일.)
🔗 지식 그래프 (Knowledge Graph)
- 상위/루트: 패턴 카탈로그 인덱스
- 관련 개념: State Management Pattern, React State Pattern, 모바일 개발 가이드
- 참조 맥락: 작은 모델이 다화면 앱의 이동을 설계할 때 참조.
📚 출처 (Sources)
- [S1] 일반 내비게이션/라우팅 지식
📝 변경 이력 (Change history)
- 2026-06-13: 프로젝트 독립 패턴 카드 작성.