diff --git a/README.md b/README.md index 5c22525..aa088ee 100644 --- a/README.md +++ b/README.md @@ -1957,3 +1957,8 @@ MIT License - 테스트는 [AgentMessageInvariantHelperTests.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot.Tests/Services/AgentMessageInvariantHelperTests.cs)에 fingerprint 재바인딩 회귀를 추가했고, golden 회귀는 [PptxSkillGoldenDeckTests.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot.Tests/Services/PptxSkillGoldenDeckTests.cs), [ExcelSkillGoldenWorkbookTests.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot.Tests/Services/ExcelSkillGoldenWorkbookTests.cs), [DocxSkillGoldenDocumentTests.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot.Tests/Services/DocxSkillGoldenDocumentTests.cs), [HtmlSkillGoldenReportTests.cs](/E:/AX%20Copilot%20-%20Codex/src/AxCopilot.Tests/Services/HtmlSkillGoldenReportTests.cs) 기준으로 다시 확인했습니다. - 검증: `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify_run_finalize\\ -p:IntermediateOutputPath=obj\\verify_run_finalize\\` 경고 0 / 오류 0 - 검증: `dotnet test src/AxCopilot.Tests/AxCopilot.Tests.csproj -c Release -v minimal --filter "AgentCommandQueueTests|AgentQueuedCommandProjectorTests|AgentMessageInvariantHelperTests|AgentQueryContextBuilderTests|ChatStorageServiceTests|PptxSkillGoldenDeckTests|ExcelSkillGoldenWorkbookTests|DocxSkillGoldenDocumentTests|HtmlSkillGoldenReportTests" -p:OutputPath=bin\\verify_run_finalize_tests2\\ -p:IntermediateOutputPath=obj\\verify_run_finalize_tests2\\` 통과 18 + +업데이트: 2026-04-15 10:10 (KST) +- 남은 고도화를 한 번에 끝내기 위한 통합 마감 계획을 확정했습니다. 다음 배치는 `문서 포맷 최종 마감 -> 에이전틱 루프 iteration pipeline 분리 -> 개발언어 no-LSP fallback 심화 -> 명령/스킬 합성 및 릴리즈 게이트` 순서로 진행합니다. +- 기준 레퍼런스는 `claude-code`의 [query.ts](/E:/AX%20Copilot%20-%20Codex/claw-code/claw-code-f5a40b86dede580f6543bf8926c9af017eea9409/src/query.ts), [QueryEngine.ts](/E:/AX%20Copilot%20-%20Codex/claw-code/claw-code-f5a40b86dede580f6543bf8926c9af017eea9409/src/QueryEngine.ts), [toolResultStorage.ts](/E:/AX%20Copilot%20-%20Codex/claw-code/claw-code-f5a40b86dede580f6543bf8926c9af017eea9409/src/utils/toolResultStorage.ts), [messageQueueManager.ts](/E:/AX%20Copilot%20-%20Codex/claw-code/claw-code-f5a40b86dede580f6543bf8926c9af017eea9409/src/utils/messageQueueManager.ts), [commands.ts](/E:/AX%20Copilot%20-%20Codex/claw-code/claw-code-f5a40b86dede580f6543bf8926c9af017eea9409/src/commands.ts)이며, AX 쪽에서는 `AgentLoopService`, `AgentCommandQueue`, `AgentQueryContextBuilder`, `ContextCondenser`, `CodeLanguageCatalog`, `SlashCommandCatalog`, `SkillService`, 각 문서 생성 스킬을 마감 대상으로 잡았습니다. +- 완료 기준은 `dotnet build` 경고 0 / 오류 0, `PPTX/XLSX/DOCX/HTML golden`, `중단/재개/권한/branch/replay`, `언어 fallback` 회귀까지 모두 통과하는 상태입니다. diff --git a/docs/DEVELOPMENT.md b/docs/DEVELOPMENT.md index 41425a4..57ada1f 100644 --- a/docs/DEVELOPMENT.md +++ b/docs/DEVELOPMENT.md @@ -1045,3 +1045,36 @@ UI ?붿옄???€洹쒕え 由ы뙥?좊쭅 ???꾪뿕 ?묒뾽 ??湲곕줉???덉쟾 - 검증: - `dotnet build src/AxCopilot/AxCopilot.csproj -c Release -v minimal -p:OutputPath=bin\\verify_run_finalize\\ -p:IntermediateOutputPath=obj\\verify_run_finalize\\` - `dotnet test src/AxCopilot.Tests/AxCopilot.Tests.csproj -c Release -v minimal --filter "AgentCommandQueueTests|AgentQueuedCommandProjectorTests|AgentMessageInvariantHelperTests|AgentQueryContextBuilderTests|ChatStorageServiceTests|PptxSkillGoldenDeckTests|ExcelSkillGoldenWorkbookTests|DocxSkillGoldenDocumentTests|HtmlSkillGoldenReportTests" -p:OutputPath=bin\\verify_run_finalize_tests2\\ -p:IntermediateOutputPath=obj\\verify_run_finalize_tests2\\` + +업데이트: 2026-04-15 10:10 (KST) +- 통합 마감 계획 확정: + 1. `문서 포맷 최종 마감` + - 참조 대상: `claw-code/src/query.ts`, `claw-code/src/utils/toolResultStorage.ts`, `claw-code/src/commands/init-verifiers.ts` + - AX 적용 위치: `PptxSkill.cs`, `DeckPlanningService.cs`, `DeckQualityReviewService.cs`, `DocxSkill.cs`, `DocumentAssemblerTool.cs`, `ExcelSkill.cs`, `HtmlSkill.cs`, `ArtifactQualityReviewService.cs`, `ArtifactRepairGuideService.cs` + - 완료 조건: PPTX/DOCX/XLSX/HTML 모두 `plan -> critic -> repair` 흐름과 golden fixture 확장 완료 + - 품질 판정 기준: strong fixture는 `Needs work: none`, weak fixture는 포맷별 적절한 repair guide를 반환 + 2. `에이전틱 루프 iteration pipeline 분리` + - 참조 대상: `claw-code/src/QueryEngine.ts`, `claw-code/src/query.ts`, `claw-code/src/utils/messageQueueManager.ts` + - AX 적용 위치: `AgentLoopService.cs`, `AgentLoopRunLifecycle.cs`, `AgentQueuedCommandProjector.cs`, `AgentQueryContextBuilder.cs` + - 완료 조건: `RunAsync`의 bootstrap, query-view 생성, LLM 호출, tool dispatch, finalize를 더 작은 helper/service로 분리 + - 품질 판정 기준: 중단/재개/권한 승인/분기/장기 세션 replay 테스트 통과 + 3. `tool_result replacement state 장기 세션 고정` + - 참조 대상: `claw-code/src/utils/toolResultStorage.ts` + - AX 적용 위치: `AgentMessageInvariantHelper.cs`, `AgentToolResultBudget.cs`, `ContextCondenser.cs`, `ChatStorageService.cs` + - 완료 조건: `tool_use_id` 변경, compact 이후, branch/replay 상황에서도 preview와 replacement 정책이 안정 유지 + - 품질 판정 기준: replay/branch 저장본에서 preview 흔들림 0건 + 4. `개발언어 no-LSP fallback 심화` + - 참조 대상: `claw-code/src/query.ts`, `claw-code/src/context.ts` + - AX 적용 위치: `CodeLanguageCatalog.cs`, `LspTool.cs`, `WorkspaceContextGenerator.cs`, `ChatWindow.SystemPromptBuilder.cs`, `SettingsWindow.xaml` + - 완료 조건: 언어별 `manifest/build/test/lint` 힌트가 실제 fallback 분석과 워크스페이스 컨텍스트에 더 깊게 연결 + - 품질 판정 기준: 로컬 LSP 없는 저장소에서도 Auto 모드가 기본 실행 흐름과 영향 범위를 안정적으로 안내 + 5. `명령/스킬 합성 및 릴리즈 게이트` + - 참조 대상: `claw-code/src/commands.ts`, `claw-code/src/skills/loadSkillsDir.ts` + - AX 적용 위치: `SlashCommandCatalog.cs`, `SkillService.cs`, `README.md`, `docs/DEVELOPMENT.md`, `docs/NEXT_ROADMAP.md` + - 완료 조건: builtin/skill/plugin/workflow 토큰 충돌의 노출/실행 우선순위 완전 일치, 릴리즈 체크리스트 최신화 + - 품질 판정 기준: 같은 토큰 충돌 시 팔레트 표시와 실제 실행이 완전 일치하고, 릴리즈 전 수동 확인 항목 최소화 +- 최종 게이트: + - `dotnet build` 경고 0 / 오류 0 + - 문서 golden: `PPTX/XLSX/DOCX/HTML` + - 루프/큐/컨텍스트: `중단/재개/권한/branch/replay` + - 언어 fallback: `CodeLanguageCatalogTests`, `WorkspaceContextGeneratorTests`, 관련 fallback 회귀 diff --git a/docs/NEXT_ROADMAP.md b/docs/NEXT_ROADMAP.md index c187041..46acaa8 100644 --- a/docs/NEXT_ROADMAP.md +++ b/docs/NEXT_ROADMAP.md @@ -157,3 +157,33 @@ 1. 에이전틱 루프는 이제 `queued command projector + run lifecycle helper` 구조까지 들어와 시작/종료 책임이 분리됐습니다. 다음 마감 단계는 `RunAsync` 본체의 iteration pipeline을 더 잘게 나누는 작업입니다. 2. `tool_result replacement state`는 synthetic preview를 넘어 fingerprint 재바인딩까지 들어갔습니다. 남은 방향은 compact/branch 이후의 replacement policy를 세션 단위 상태로 더 오래 유지하는 것입니다. 3. 문서 포맷은 `ArtifactQualityOutputFormatter`가 HTML/XLSX뿐 아니라 DOCX/PPTX까지 확장되었습니다. 다음 마감은 포맷별 critic/repair 자체를 더 깊게 하고, golden fixture 샘플을 확대하는 단계입니다. + +업데이트: 2026-04-15 10:10 (KST) + +### 통합 마감 계획 +1. 문서 포맷 최종 마감 + - 참조 대상: `claw-code/src/query.ts`, `claw-code/src/utils/toolResultStorage.ts`, `claw-code/src/commands/init-verifiers.ts` + - AX 적용 위치: `PptxSkill`, `DeckPlanningService`, `DeckQualityReviewService`, `DocxSkill`, `DocumentAssemblerTool`, `ExcelSkill`, `HtmlSkill`, `ArtifactQualityReviewService` + - 완료 조건: PPTX/DOCX/XLSX/HTML golden fixture 확대, critic/repair loop 최종 보강 + - 품질 판정 기준: strong fixture `Needs work: none`, weak fixture는 포맷별 정확한 repair guide 반환 +2. AgentLoop/Queue/Context 최종 분리 + - 참조 대상: `claw-code/src/QueryEngine.ts`, `claw-code/src/query.ts`, `claw-code/src/utils/messageQueueManager.ts`, `claw-code/src/utils/toolResultStorage.ts` + - AX 적용 위치: `AgentLoopService`, `AgentLoopRunLifecycle`, `AgentQueuedCommandProjector`, `AgentMessageInvariantHelper`, `AgentToolResultBudget`, `AgentQueryContextBuilder`, `ContextCondenser` + - 완료 조건: `RunAsync` iteration pipeline 분리, replacement state 장기 세션 고정 + - 품질 판정 기준: 중단/재개/권한/branch/replay 회귀 전건 통과 +3. 개발언어 fallback 심화 + - 참조 대상: `claw-code/src/query.ts`, `claw-code/src/context.ts` + - AX 적용 위치: `CodeLanguageCatalog`, `LspTool`, `WorkspaceContextGenerator`, `SystemPromptBuilder`, 설정 도움말 + - 완료 조건: no-LSP 환경에서도 manifest/build/test/lint 힌트와 영향 범위 설명 강화 + - 품질 판정 기준: Auto 모드가 LSP 없는 주요 언어 저장소에서도 안정적으로 안내 +4. 명령/스킬 합성 및 릴리즈 게이트 + - 참조 대상: `claw-code/src/commands.ts`, `claw-code/src/skills/loadSkillsDir.ts` + - AX 적용 위치: `SlashCommandCatalog`, `SkillService`, `README`, `DEVELOPMENT`, `NEXT_ROADMAP` + - 완료 조건: builtin/skill/plugin/workflow 충돌 해소와 릴리즈 체크리스트 최신화 + - 품질 판정 기준: 토큰 충돌 시 팔레트와 실제 실행이 완전 일치 + +### 실행 순서 +1. 문서 포맷 마감 +2. 루프/큐/컨텍스트 분리 +3. 개발언어 fallback 심화 +4. 명령/스킬 합성 및 릴리즈 게이트