Bump version to v1.0.7 with Race Condition fix and UI cleanup

This commit is contained in:
Jay
2026-04-11 23:41:02 +09:00
parent cfb64f4e43
commit 2fba787b0d
2 changed files with 8 additions and 5 deletions
+1 -1
View File
@@ -2,7 +2,7 @@
"name": "connect-ai-lab", "name": "connect-ai-lab",
"displayName": "Connect AI LAB", "displayName": "Connect AI LAB",
"description": "100% 로컬 AI 코딩 에이전트 — 파일 생성, 코드 편집, 터미널 실행을 오프라인으로. Ollama + Gemma/Llama/DeepSeek 지원.", "description": "100% 로컬 AI 코딩 에이전트 — 파일 생성, 코드 편집, 터미널 실행을 오프라인으로. Ollama + Gemma/Llama/DeepSeek 지원.",
"version": "1.0.6", "version": "1.0.7",
"publisher": "connectailab", "publisher": "connectailab",
"license": "MIT", "license": "MIT",
"icon": "assets/icon.png", "icon": "assets/icon.png",
+7 -4
View File
@@ -208,16 +208,16 @@ class SidebarChatProvider implements vscode.WebviewViewProvider {
enableScripts: true, enableScripts: true,
localResourceRoots: [this._extensionUri], localResourceRoots: [this._extensionUri],
}; };
webviewView.webview.html = this._getHtml();
// 중요: HTML을 그리기 전에 메시지 리스너를 먼저 붙여야 Race Condition이 발생하지 않습니다!
webviewView.webview.onDidReceiveMessage(async (msg) => { webviewView.webview.onDidReceiveMessage(async (msg) => {
switch (msg.type) { switch (msg.type) {
case 'prompt':
await this._handlePrompt(msg.value, msg.model);
break;
case 'getModels': case 'getModels':
await this._sendModels(); await this._sendModels();
break; break;
case 'prompt':
await this._handlePrompt(msg.value, msg.model);
break;
case 'newChat': case 'newChat':
this.resetChat(); this.resetChat();
break; break;
@@ -227,6 +227,9 @@ class SidebarChatProvider implements vscode.WebviewViewProvider {
break; break;
} }
}); });
// 리스너를 붙인 후 HTML을 렌더링합니다.
webviewView.webview.html = this._getHtml();
} }
// -------------------------------------------------------- // --------------------------------------------------------