From b327eef57e5f25f1062de5fd3bc2f25b1af42060 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 24 Sep 2026 09:07:22 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EC=9E=91=EC=97=85=EC=8B=A4=20=ED=94=84?= =?UTF-8?q?=EB=A1=AC=ED=94=84=ED=8A=B8=EC=97=90=20=EC=A0=80=EC=9E=A5=20?= =?UTF-8?q?=EC=95=A1=EC=85=98=20=EC=8B=A4=ED=98=B8=20=EA=B7=9C=EC=B9=99=20?= =?UTF-8?q?=E2=80=94=20=EB=8F=84=EA=B5=AC=20=EC=97=86=EC=9D=B4=20"?= =?UTF-8?q?=EC=A0=80=EC=9E=A5=ED=96=88=EC=8A=B5=EB=8B=88=EB=8B=A4"=20?= =?UTF-8?q?=ED=97=9B=EB=B3=B4=EA=B3=A0=20=EA=B8=88=EC=A7=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 09-24 실측: "메모에 저장" 요청에 도구 0건인데 "메모탭에 저장했습니다"라고 보고, 사용자가 "메모탭에 저장했너?"에 물어서야 실제 호출로 이어짐(2차 시도엔 실제 저장 확인 — notes 795자). 09-23 BOM 주입(4d6afc1)과 같은 계열 — ws_ 세션 프롬프트에 "모든 저장 액션은 이번 턴에 workshop_project를 실제 호출했을 때만 성립, 먼저 호출하고 그 결과로 보고" 규칙 추가. Co-Authored-By: Claude Code --- src/gateway/chat/handle-chat.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gateway/chat/handle-chat.ts b/src/gateway/chat/handle-chat.ts index 25174eb..eafa0f9 100644 --- a/src/gateway/chat/handle-chat.ts +++ b/src/gateway/chat/handle-chat.ts @@ -329,7 +329,12 @@ async function handleChat( return `[작업실(workshop) 세션 — 지금 사용자가 보고 있는 프로젝트: "${proj.name}" (id: ${proj.id}). ` + `이 프로젝트의 파일(STL/scad/사진 등)은 워크스페이스 기준 workshop/${proj.id}/ 아래에만 있다. ` + `파일을 찾거나 만들 때 이 프로젝트 폴더만 보고, 다른 프로젝트 폴더(workshop/<다른id>/)는 ` + - `사용자가 명시적으로 그 프로젝트를 언급하지 않는 한 후보로 내놓지 말 것.${scadHint}${partsBlock}]`; + `사용자가 명시적으로 그 프로젝트를 언급하지 않는 한 후보로 내놓지 말 것.` + + `도구 없이는 대시보드에 아무것도 반영되지 않는다 — 메모 저장/부품 추가/작업 체크 같은 ` + + `모든 저장 액션은 이번 턴에 workshop_project를 실제로 호출했을 때만 성립하므로, ` + + `호출 없이 "저장했습니다/등록했습니다"라고 보고하지 말 것.` + + `먼저 호출하고 그 결과로 보고할 것(2026-09-24 실측: 도구 0건인데 "메모탭에 저장했다"고 ` + + `헛보고했다가 사용자가 다시 물어 실제 호출로 이어짐).${scadHint}${partsBlock}]`; } catch { return ''; } })(); const callerContextWithWorkshop = workshopProjectCtx