Skip to content

补全日韩语切换,优化周报功能#97

Merged
firefly-hefeng merged 17 commits into
abraxas914:mainfrom
221250144:main
Jul 6, 2026
Merged

补全日韩语切换,优化周报功能#97
firefly-hefeng merged 17 commits into
abraxas914:mainfrom
221250144:main

Conversation

@221250144

Copy link
Copy Markdown
Contributor

No description provided.

221250144 and others added 17 commits June 14, 2026 10:49
- explore-tab: labels 改为结构化 ExploreLabels;MODE_STAGES/STARTER_DECKS/TOOL_LABELS 等模块常量、helper 返回值、内联文案全部接入 i18n
- 补齐 zh 缺失的 14 个 dashboard.settings.* key(原本中文界面显示 undefined)
- 摘要/周报/压缩 prompt 从 getLanguageSettings() 自解析 locale,模板加中英分支,兜底字符串本地化
- 探索答案(searchService):RAG/周报/自定义摘要 system prompt 加输出语言指令,澄清问句与本地 fallback 全部跟随 UI 语言
- DataManagementPanel/network/library 接入 labels;修复 library-tab labels 作用域问题
- 验证:frontend tsc 0、vesti-ui tsc 0、en↔zh 双向 parity 0 不一致

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- 润色 zh 生硬译文、统一术语(周报等)、修复被丢的占位符与字符串
- 新增 ja:locales 注册 ja、设置页语言下拉加日语、新建 ja.ts(921 键,与 en 结构一致)
- 摘要/周报/压缩/探索答案的 prompt 与代码兜底文案由二元扩为三元:日语 UI 生成日语内容;日期 ja-JP
- 同步 lib/types 中重复的 SupportedLocale 定义
- 验证:frontend tsc 0、vesti-ui tsc 0、en/zh/ja 三向 parity 0、占位符三语一致

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- locales.ts 升级为单一 LOCALE_META 注册表(nativeName/dateTag/llmLanguage/aliases) + 助手 getLocaleNativeName/getLocaleDateTag/getLlmLanguageName/buildLlmOutputDirective/pickLocale;别名表由注册表派生
- 语言切换器改为按 SUPPORTED_LOCALES 数据驱动渲染,不再逐语言硬编码 <option>
- 消除 lib/types 中重复的 SupportedLocale,改为从 i18n/locales 重新导出(杜绝漂移)
- 摘要/周报/压缩/探索 prompt 与 adapter 中散落的 dateLocaleTag 与语言名三元分支,统一收敛到中央助手
- 加新语言流程:1) SUPPORTED_LOCALES 加 code(TS 强制补全 LOCALE_META 与 translationsByLocale) 2) 建 translations/<code>.ts 3) 完成;切换器/日期/LLM 输出语言自动派生
- 验证:frontend tsc 0、vesti-ui tsc 0、en/zh/ja 三向 parity 0

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
prose prose-slate 仅给段落和列表设了 text-primary,强调元素(strong/headings/code/a/blockquote)沿用 slate-900 藏青色,在深色背景(约 11% 亮度)下几乎不可见。
改为将这些元素一并 pin 到主题变量(text-primary/accent-primary/text-secondary),并加 dark:prose-invert 兜底非文字元素。主题变量在 .dark 下自动变为浅色,故两种模式都正常。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
library-tab 原始消息视图的 prose prose-slate 未设任何主题色,深色模式下正文与强调元素都沿用 slate 暗色、对比度不足。与 explore 一致:pin 到 text-primary/accent-primary/text-secondary 并加 dark:prose-invert。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
--accent-primary 在深色模式是近白色(0 0% 96%),但按钮文字硬编码 text-white → 白字压白底看不见(探索页 Agent/Classic、All/Selected 切换、发送按钮、右上 U 头像,以及资料库/网络/仪表盘同类按钮)。
统一改为 text-text-inverse:浅色模式=白、深色模式=近黑(0 0% 10%),与 accent 背景正确配对;浅色模式表现完全不变。共 20 处。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- 新链路 generateWeeklyRecap:代码算 stats(对话数/活跃天/连续周/最常用平台/环比/主题,0 次 LLM) + 仅 1 次 LLM 写温暖短文案
- Plan B 有界兜底:只给分量分最高(轮数×2+消息数+收藏)的那 1 条对话补摘要(已有则复用),绝不再现造最多 4 篇;try/catch 永不抛错,解析失败有 code-only 兜底,始终出卡
- 代码算出的 stats 覆盖模型回显的数字,防编造;schemaVersion weekly_recap.v1,复用周报存储
- 三语 prompt(中/英/日,复用 locale 注册表);新增 8 个 UI label 到 en/zh/ja(parity 一致)
- 加法式:旧 weekly_lite 生成/渲染保留不动;UI 周报区改用 recap 卡(手动触发)
- 自动每周生成/通知/可分享 留作下一步;验证 frontend tsc 0、vesti-ui tsc 0、en/zh/ja 三向 parity 0

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- schema weekly_recap.v1: encouragement/next_nudge → narrative[](2-3 段把数字编织进句子的暖文)
- prompt 产出 narrative 叙事;环比写成"比上周多 11 次"这样的句子,不再出现裸 +11
- UI:删掉 5 个指标卡 + 那个把 delta 误标成"下周建议"的框;改为 问候+人设chip+一行克制数字条 + 叙事段落 + 亮点引用
- 默认范围 近7天 → 上周(完整自然周是 recap 锚点,也是将来唯一自动生成的对象)
- 代码兜底 buildCodeOnlyRecap 同步产出 narrative(中/英/日)
- 验证 frontend tsc 0、vesti-ui tsc 0、en/zh/ja 三向 parity 0

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- 自动生成:打开 Insights 时若"上周"(last_full_week)还没存过 recap,就后台自动生成一次(每个 range 仅一次,失败不重试循环);generateWeeklyRecap 无 LLM 时有 code-only 兜底,自动生成永不卡死
- 近7天(last_7_days)保留手动生成入口(它每天在变,自动会立刻过期)
- 去掉假进度:删掉写死的 12s/14s/15s/10s 四段假阶段 + 假"暂停"按钮,改为 真实 spinner + 真实已用时 + "正在生成本周回顾..."
- 新增 i18n recapGenerating(中/英/日)
- 验证 frontend tsc 0、vesti-ui tsc 0、三向 parity 0

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- 日期预设(全部/今日/本周/本月)从"筛选器→开始时间→展开"(藏 2-3 层)提到列表顶部一行常驻 chip,一眼可见、一键按时间收窄列表、少翻页
- 筛选器面板去掉重复的日期分组,只保留"来源/平台"
- 激活 chip 用 accent + text-inverse(深色模式可读);复用现有 datePreset 逻辑,无新增 i18n key
- 仅改 TimelinePage;frontend tsc 0

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- locales.ts 注册 ko(한국어 / ko-KR / natural Korean (자연스러운 한국어) / 别名 ko,ko-KR)
- 新建 ko.ts:与 en 结构完全一致的 879 个 key,自然韩语;index.tsx 注册一行
- 切换器/日期格式/LLM 输出语言全部由 LOCALE_META 注册表自动派生(无需改 SettingsPage / 类型)——之前可扩展重构的回报
- adapter/insightGenerationService/searchService 的代码兜底文案补齐 ko 分支,对齐日语
- 四语 settings.language 统一补 ko: 한국어
- 验证:frontend tsc 0、vesti-ui tsc 0、en/zh/ja/ko 四向 leaf parity 879×4、占位符 en↔ko 一致

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- README 核心技术选型新增多语言界面条目:界面与 AI 生成内容支持 中文/English/日本語/한국어,由中央 LOCALE_META 注册表驱动
- CHANGELOG [Unreleased] Added 记录多语言支持

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- 新数据层 thinkingMap.ts:从已缓存摘要的 key_insights 抽概念→合并→建边(mentions/relates)→主题簇→缺口检测(不同簇且从未共现的高价值概念对),纯代码无 LLM
- ThinkingMapView.tsx:Canvas 2D 渲染(镜像现有 TemporalGraph;ECharts 非本包依赖,故不引入);x=时间(思维演进)、y=主题簇泳道;点概念聚焦高亮邻域、点对话跳转
- network-tab:对话图谱 ⇄ 思维图谱 模式切换;进入时并发批量取摘要(8/批);缺口洞察条 + 概念详情面板(定义+相关对话可跳转);无摘要时空态提示
- i18n:dashboard.network 新增 8 个 key,en/zh/ja/ko 四语 parity
- 加法式:原对话图谱不动。验证 frontend tsc 0、vesti-ui tsc 0、四向 parity 0

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
… 下 TS2304

中央 locale 注册表重构后 prompt 文件会引入 i18n/locales,导致它进入 eval 编译(scripts/tsconfig.eval.json);该配置不带 @types/chrome,getBrowserLanguage 直接引用全局 chrome 触发 TS2304。改为 globalThis 间接访问,运行时行为不变。eval:prompts --mode=mock --strict 现 gate=PASS。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
合并 upstream (abraxas914/VESTI) 的 58 个新提交,保留本地 15 个提交。

冲突解决说明:
- CHANGELOG.md:两侧新增条目取并集。
- frontend/src/dashboard.tsx:统一为单一自管理主题+i18n 的 VestiDashboardInner 结构。
- frontend/src/lib/i18n/index.tsx:保留 translationsByLocale 命名并保留 Translations 类型导出。
- i18n en.ts / zh.ts:翻译键取并集;移除因合并产生的重复键。
- frontend/src/offscreen/index.ts:接受 upstream 删除(逻辑已迁移至 background 的 handleOffscreenRequest)。
- packages/vesti-ui explore-tab.tsx / library-tab.tsx:统一采用基于 labels 的 i18n 取值,修复 labels 重复声明。
- frontend/src/lib/i18n/contentI18n.ts:补齐 ja/ko 语言以匹配四语言配置。

Co-authored-by: Cursor <cursoragent@cursor.com>
- ja.ts / ko.ts 按 en.ts 骨架补齐 324 个缺失键,结构与英语完全对齐
- 新增 mergeTranslations.ts 深度合并工具,zh/ja/ko 统一叠加英文兜底,
  修复切换日语/韩语时因缺键导致的白屏
- capsule-ui 悬浮胶囊新增日/韩文案,语言解析改用全局 resolveLocale,
  支持全部语言的初始化与运行时切换

Co-authored-by: Cursor <cursoragent@cursor.com>
@firefly-hefeng
firefly-hefeng merged commit 746d14b into abraxas914:main Jul 6, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants