From 83cefccbdd3658becfc35d121f8d646e95c36d67 Mon Sep 17 00:00:00 2001 From: altair823 Date: Sun, 10 May 2026 14:25:24 +0900 Subject: [PATCH] =?UTF-8?q?fix(v032):=20AiWorker=20Promise.all=20closure?= =?UTF-8?q?=20type=20narrowing=20=ED=9A=8C=EB=B3=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Task 6 의 Promise.all 도입 시 async callback closure 가 this.telemetry? narrowing 잃어 TS2532 발생. const telemetry = this.telemetry 로 narrowed reference capture 후 closure 안에서 사용. --- src/main/ai/AiWorker.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/ai/AiWorker.ts b/src/main/ai/AiWorker.ts index ae4306d..809530a 100644 --- a/src/main/ai/AiWorker.ts +++ b/src/main/ai/AiWorker.ts @@ -176,7 +176,8 @@ export class AiWorker { candidatesCount: candidates.length }); if (this.telemetry) { - await this.telemetry.emit({ + const telemetry = this.telemetry; + await telemetry.emit({ kind: 'ai_succeeded', payload: { noteId: job.noteId, @@ -192,13 +193,13 @@ export class AiWorker { if (vocabSet.has(tagName.toLowerCase())) { const tagId = this.repo.getTagIdByName(tagName); if (tagId !== null) { - await this.telemetry.emit({ + await telemetry.emit({ kind: 'tag_vocab_hit', payload: { tagId, vocabSize: vocab.length } }).catch(() => {}); } } else { - await this.telemetry.emit({ + await telemetry.emit({ kind: 'tag_vocab_miss', payload: { vocabSize: vocab.length } }).catch(() => {});