diff --git a/electron/services/config.ts b/electron/services/config.ts
index 959d889..c096d06 100644
--- a/electron/services/config.ts
+++ b/electron/services/config.ts
@@ -736,7 +736,7 @@ export class ConfigService {
// === 工具方法 ===
/**
- * 获取当前 wxid 对应的图片密钥,优先从 wxidConfigs 中取,找不到则回退到全局��置
+ * 获取当前 wxid 对应的图片密钥,优先从 wxidConfigs 中取,找不到则回退到全局配置
*/
getImageKeysForCurrentWxid(): { xorKey: unknown; aesKey: string } {
const wxid = this.get('myWxid')
diff --git a/electron/services/imageDecryptService.ts b/electron/services/imageDecryptService.ts
index 34f755c..84c908c 100644
--- a/electron/services/imageDecryptService.ts
+++ b/electron/services/imageDecryptService.ts
@@ -949,7 +949,7 @@ export class ImageDecryptService {
} catch { }
}
- // --- 绛栫暐 B: 鏂扮増 Session 鍝堝笇璺緞鐚滄祴 ---
+ // --- 策略 B: 新版 Session 哈希路径猜测 ---
try {
const entries = await fs.readdir(root, { withFileTypes: true })
const sessionDirs = entries
@@ -1854,7 +1854,7 @@ export class ImageDecryptService {
}
/**
- * 浠?wxgf 鏁版嵁涓彁鍙?HEVC NALU 瑁告祦
+ * 从 wxgf 数据中提取 HEVC NALU 裸流
*/
private extractHevcNalu(buffer: Buffer): Buffer | null {
const nalUnits: Buffer[] = []
diff --git a/electron/services/insightService.ts b/electron/services/insightService.ts
index 3d7a092..47295ad 100644
--- a/electron/services/insightService.ts
+++ b/electron/services/insightService.ts
@@ -316,7 +316,7 @@ class InsightService {
}
/**
- * 测��� API 连接,返回 { success, message }。
+ * 测试 API 连接,返回 { success, message }。
* 供设置页"测试连接"按钮调用。
*/
async testConnection(): Promise<{ success: boolean; message: string }> {
@@ -475,7 +475,7 @@ class InsightService {
}
/**
- * 获取今日全局已触发次数(所有会话合计),用于 prompt 中告知模���全局上下文。
+ * 获取今日全局已触发次数(所有会话合计),用于 prompt 中告知模型全局上下文。
*/
private getTodayTotalTriggerCount(): number {
this.resetIfNewDay()
@@ -709,7 +709,7 @@ class InsightService {
return
}
- // ── 构建 prompt ─────────────���───────────────────────────────���────────────
+ // ── 构建 prompt ────────────────────────────────────────────────────────────
// 今日触发统计(让模型具备时间与克制感)
const sessionTriggerTimes = this.recordTrigger(sessionId)
diff --git a/electron/windows/notificationWindow.ts b/electron/windows/notificationWindow.ts
index f3c8eca..21bbf01 100644
--- a/electron/windows/notificationWindow.ts
+++ b/electron/windows/notificationWindow.ts
@@ -115,12 +115,14 @@ export async function showNotification(data: any) {
// 检查会话过滤
const filterMode = config.get("notificationFilterMode") || "all";
const filterList = config.get("notificationFilterList") || [];
- const sessionId = data.sessionId;
+ const sessionId = typeof data.sessionId === "string" ? data.sessionId : "";
+ // 系统通知(如 "WeFlow 准备就绪")不是聊天消息,不应受会话白/黑名单影响
+ const isSystemNotification = sessionId.startsWith("weflow-");
- if (sessionId && filterMode !== "all" && filterList.length > 0) {
- const isInList = filterList.includes(sessionId);
+ if (!isSystemNotification && filterMode !== "all") {
+ const isInList = sessionId !== "" && filterList.includes(sessionId);
if (filterMode === "whitelist" && !isInList) {
- // 白名单模式:不在列表中则不显示
+ // 白名单模式:不在列表中则不显示(空列表视为全部拦截)
return;
}
if (filterMode === "blacklist" && isInList) {
diff --git a/src/pages/SettingsPage.tsx b/src/pages/SettingsPage.tsx
index 5c13eb1..92e3cc5 100644
--- a/src/pages/SettingsPage.tsx
+++ b/src/pages/SettingsPage.tsx
@@ -125,7 +125,7 @@ function SettingsPage({ onClose }: SettingsPageProps = {}) {
setHttpApiToken(token)
await configService.setHttpApiToken(token)
- showMessage('已生成��保存新的 Access Token', true)
+ showMessage('已生成并保存新的 Access Token', true)
}
const clearApiToken = async () => {
@@ -618,7 +618,7 @@ function SettingsPage({ onClose }: SettingsPageProps = {}) {
showMessage(`已切换到${channelLabel}更新渠道,正在检查更新`, true)
await handleCheckUpdate()
} catch (e: any) {
- showMessage(`切换更新渠道��败: ${e}`, false)
+ showMessage(`切换更新渠道失败: ${e}`, false)
}
}
@@ -1213,7 +1213,7 @@ function SettingsPage({ onClose }: SettingsPageProps = {}) {
if (result.success && result.aesKey) {
if (typeof result.xorKey === 'number') setImageXorKey(`0x${result.xorKey.toString(16).toUpperCase().padStart(2, '0')}`)
setImageAesKey(result.aesKey)
- setImageKeyStatus('已获取图片��钥')
+ setImageKeyStatus('已获取图片密钥')
showMessage('已自动获取图片密钥', true)
const newXorKey = typeof result.xorKey === 'number' ? result.xorKey : 0
const newAesKey = result.aesKey
@@ -2872,7 +2872,7 @@ function SettingsPage({ onClose }: SettingsPageProps = {}) {
type="password"
className="field-input"
style={{ width: '100%' }}
- placeholder="110201543:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw"
+ placeholder="在此处填入你的 Telegram Bot Token"
value={aiInsightTelegramToken}
onChange={(e) => {
const val = e.target.value
@@ -3207,7 +3207,7 @@ function SettingsPage({ onClose }: SettingsPageProps = {}) {
value={`http://${httpApiHost}:${httpApiPort}`}
readOnly
/>
-
)}
diff --git a/src/pages/SnsPage.tsx b/src/pages/SnsPage.tsx
index b9bf6b0..88909a3 100644
--- a/src/pages/SnsPage.tsx
+++ b/src/pages/SnsPage.tsx
@@ -1127,7 +1127,7 @@ export default function SnsPage() {
activeContactsCountTaskIdRef.current = null
}
finishBackgroundTask(taskId, 'completed', {
- detail: '鑱旂郴浜烘湅鍙嬪湀鏉℃暟琛ョ畻瀹屾垚',
+ detail: '联系人朋友圈条数补算完成',
progressText: `${totalTargets}/${totalTargets}`
})
}
diff --git a/src/services/config.ts b/src/services/config.ts
index c949613..494a528 100644
--- a/src/services/config.ts
+++ b/src/services/config.ts
@@ -520,7 +520,7 @@ export async function setExportDefaultTxtColumns(columns: string[]): Promise {
const value = await config.get(CONFIG_KEYS.EXPORT_DEFAULT_CONCURRENCY)
if (typeof value === 'number' && Number.isFinite(value)) return value