fix: v2.2.202 — 기업모드 Intent Alignment 가 일반 채팅 컨텍스트 무시하던 버그
증상: 일반 채팅에서 프로젝트·요구사항을 충분히 논의한 뒤 기업모드 전환 후 후속 작업을 요청하면 "추가 정보 필요 — 맥락/목표/기준/형식" 화면이 떠 사용자에게 *방금 말한 내용을 다시 묻는* 느낌을 줌. 원인: - Intent Classifier 는 prior chat 컨텍스트(previousBrief/Tail) 받음 → follow-up 분기 정확 - Intent Alignment (clarification 화면 만드는 분석기) 는 IntentAnalysisInput 인터페이스에 chat history 필드가 없음 → 오직 현재 사용자 메시지만 봄 - 결과: 모드 전환 직후 첫 라운드 분석기는 사용자가 이전에 일반 채팅에서 한 모든 설명을 못 봄 → context 빈칸 → openQuestions 에 "맥락은?" 추가 Fix: - IntentAnalysisInput 에 priorChatSummary?: string 필드 추가 - 시스템 프롬프트에 *모드 전환 시 context 우선 추출* 규칙 추가 — 일반 채팅에서 명시된 항목은 추측이 아니라 명시된 사실로 취급 - _buildUserMessage() 가 [모드 전환 직전 일반 채팅 요약] 블록을 user message 상단에 주입 - sidebarProvider.ts 호출 지점에서 this._agent.getHistory() → 최근 10 turn (!internal) 추출 → "role: content" 한 줄씩, content 200자 cap - 후속 라운드 (previousContract 있음) 면 history 중복 첨부 안 함 — 이미 contract 에 흡수됨 효과: 일반 채팅 → 기업모드 전환 시 분석기가 prior chat 의 context/goal/criteria 를 직접 추출. redundant "맥락/목표/기준/형식 다시 말해 주세요" 질문 사라짐. 첫 라운드부터 confidence=high 가능 → 바로 본 작업 진행. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"result": "직답 결과 — single-pass mock 응답입니다.",
|
||||
"createdAt": 1780282136586,
|
||||
"createdAt": 1780366882252,
|
||||
"modelVersion": "unknown"
|
||||
}
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"result": "---\nid: wiki_on\ndate: 2026-06-01T02:48:56.587Z\ntype: knowledge_artifact\nstandard: P-Reinforce v3.0\ntags: [automated, connect_ai, brain_sync]\n---\n\n## 📌 Brief Summary\n직답 결과 — single-pass mock 응답입니다.\n\n직답 결과 — single-pass mock 응답입니다.\n---\n## 🛡️ Reliability & Audit Summary\n> [!NOTE]\n> 이 문서는 ConnectAI의 **Intelligent Resilience** 엔진에 의해 검증 및 정제되었습니다.\n\n| Metric | Value | Status |\n| :--- | :--- | :--- |\n| **Conflict Risk** | `0/100` | ✅ Low |\n| **Fallbacks Used** | `0` | ✅ None |\n| **Auto Retries** | `0` | ✅ Stable |\n| **Deduplication** | `0` | Standard |\n| **Processing Time** | `0.0s` | ✅ Fast |\n\n### 🔍 Decision Audit Trail\n- **[DIRECT]** 답변 작성 중... (단일 호출 fast-path) (26ms)\n",
|
||||
"createdAt": 1780282136588,
|
||||
"result": "---\nid: wiki_on\ndate: 2026-06-02T02:21:22.254Z\ntype: knowledge_artifact\nstandard: P-Reinforce v3.0\ntags: [automated, connect_ai, brain_sync]\n---\n\n## 📌 Brief Summary\n직답 결과 — single-pass mock 응답입니다.\n\n직답 결과 — single-pass mock 응답입니다.\n---\n## 🛡️ Reliability & Audit Summary\n> [!NOTE]\n> 이 문서는 ConnectAI의 **Intelligent Resilience** 엔진에 의해 검증 및 정제되었습니다.\n\n| Metric | Value | Status |\n| :--- | :--- | :--- |\n| **Conflict Risk** | `0/100` | ✅ Low |\n| **Fallbacks Used** | `0` | ✅ None |\n| **Auto Retries** | `0` | ✅ Stable |\n| **Deduplication** | `0` | Standard |\n| **Processing Time** | `0.0s` | ✅ Fast |\n\n### 🔍 Decision Audit Trail\n- **[DIRECT]** 답변 작성 중... (단일 호출 fast-path) (21ms)\n",
|
||||
"createdAt": 1780366882254,
|
||||
"modelVersion": "unknown"
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"missionId": "wiki_on",
|
||||
"status": "completed",
|
||||
"startTime": "2026-06-01T02:48:56.559Z",
|
||||
"totalElapsedMs": 29,
|
||||
"startTime": "2026-06-02T02:21:22.229Z",
|
||||
"totalElapsedMs": 26,
|
||||
"results": {
|
||||
"direct": "직답 결과 — single-pass mock 응답입니다."
|
||||
},
|
||||
@@ -12,16 +12,16 @@
|
||||
{
|
||||
"from": "idle",
|
||||
"to": "direct",
|
||||
"durationMs": 26,
|
||||
"durationMs": 21,
|
||||
"message": "답변 작성 중... (단일 호출 fast-path)",
|
||||
"ts": "2026-06-01T02:48:56.585Z"
|
||||
"ts": "2026-06-02T02:21:22.250Z"
|
||||
},
|
||||
{
|
||||
"from": "direct",
|
||||
"to": "completed",
|
||||
"durationMs": 3,
|
||||
"durationMs": 5,
|
||||
"message": "미션 완료",
|
||||
"ts": "2026-06-01T02:48:56.588Z"
|
||||
"ts": "2026-06-02T02:21:22.255Z"
|
||||
}
|
||||
],
|
||||
"resilienceMetrics": {
|
||||
|
||||
Reference in New Issue
Block a user