[Phase 37-38] ChatWindow·SettingsWindow 파셜 클래스 분할 + 코드 품질 개선
Phase 37 — ChatWindow God Class 파셜 분할 (10,184 → 4,767줄, -53%) - ChatWindow.MessageRendering.cs (522줄): 메시지 렌더링, 체크 아이콘 - ChatWindow.SlashCommands.cs (579줄): 슬래시 명령, 드래그앤드롭 - ChatWindow.AgentSupport.cs (475줄): 에이전트 루프, 시스템 프롬프트 - ChatWindow.TaskDecomposition.cs (1,170줄): Plan UI, Diff, 이벤트 배너 - ChatWindow.Presets.cs (1,280줄): 프리셋, 하단바, 설정 토글 - ChatWindow.ModelSelector.cs (395줄): 모델 선택, 대화 관리 - ChatWindow.PreviewAndFiles.cs (1,105줄): 미리보기, 파일 탐색기 Phase 38 — SettingsWindow 파셜 분할 (3,216 → 373줄, -88%) - SettingsWindow.UI.cs (802줄): 탭 전환, 독바, 스토리지, 핫키 - SettingsWindow.Tools.cs (875줄): 도구 카드 UI, AX Agent 탭 - SettingsWindow.AgentConfig.cs (1,202줄): 모델, 스킬, 훅, MCP Phase 35-36 — 코드 품질 심층 정리 - bare catch 전량 → catch (Exception) (109개 파일) - ColorConverter → ThemeResourceHelper.HexBrush() (81건) - Application.Current as App → CurrentApp 프로퍼티 (15개 파일) - AgentContext.Settings DI 주입 (11개 에이전트 도구) - PopupMenuHelper 실제 적용 (4개 팝업) CLAUDE.md: 작업 후 깃 푸시 + 오류 시 롤백 지침 추가 docs: TECHNOLOGY_OVERVIEW.md 신규 작성 (762줄 기술 문서) 빌드: 경고 0, 오류 0 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -4538,5 +4538,21 @@ Week 8: [23] AutoCompact + isEnabled + 최종 검증
|
||||
|
||||
---
|
||||
|
||||
최종 업데이트: 2026-04-03 (Phase 22~37 구현 완료 — CC 동등성 37/37 + 코드 품질 리팩터링 5차)
|
||||
## Phase 38 — SettingsWindow 파셜 클래스 분할 (v2.3) ✅ 완료
|
||||
|
||||
> **목표**: 3,216줄 SettingsWindow.xaml.cs를 3개 파셜 클래스 파일로 분할.
|
||||
|
||||
| 파일 | 줄 수 | 내용 |
|
||||
|------|-------|------|
|
||||
| `SettingsWindow.xaml.cs` (메인) | 373 | 생성자, 필드, 저장/닫기, 스니펫 이벤트 |
|
||||
| `SettingsWindow.UI.cs` | 802 | 섹션 헬퍼, 탭 전환, 독바, 스토리지, 핫키, 버전 |
|
||||
| `SettingsWindow.Tools.cs` | 875 | 도구/커넥터 카드 UI, AX Agent 탭, 도구 관리 |
|
||||
| `SettingsWindow.AgentConfig.cs` | 1,202 | 모델 등록, 스킬, 템플릿, AI토글, 네트워크모드, 훅, MCP |
|
||||
|
||||
- **메인 파일**: 3,216줄 → 373줄 (**88.4% 감소**)
|
||||
- **빌드**: 경고 0, 오류 0
|
||||
|
||||
---
|
||||
|
||||
최종 업데이트: 2026-04-03 (Phase 22~38 구현 완료 — CC 동등성 37/37 + 코드 품질 리팩터링 6차)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user