Files
BiliNote/CHANGELOG.md
huangjianwu f32a6944d1 docs: v2.1.2 CHANGELOG + README 版本
补 v2.1.1 ghcr.io 镜像构建失败。详见 CHANGELOG.md。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 14:06:16 +08:00

98 lines
6.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Changelog
本项目所有重要变更记录于此。格式参考 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.1.0/),遵循 [语义化版本](https://semver.org/lang/zh-CN/)。
## [2.1.2] - 2026-05-07
补 v2.1.1 上 ghcr.io 镜像构建失败的坑。
### Fixed
- Docker 镜像构建失败v2.1.1 tag 触发的 ghcr.io 推送在 frontend-builder 第 7/7 步 `pnpm run build` 挂掉vite `loadConfigFromBundledFile` 加载 `@tailwindcss/vite` plugin 时 1.5s 内异常退出)。
- `Dockerfile.complete``BillNote_frontend/Dockerfile``node:18-alpine``node:20-alpine`Tailwind v4 已不再支持 Node 18Vite 6 也推荐 Node 20+
- `Dockerfile.complete` 的 frontend 阶段同时复制 `pnpm-lock.yaml` 并改用 `--frozen-lockfile`,杜绝每次构建重解析 semver 拉到比本地新的 native dep
- `BillNote_frontend/pnpm-lock.yaml` 强制入库(之前一直未提交,导致 CI / 本地依赖图持续漂移)
- README 联系社区段补上微信群二维码(之前只写"年会恢复更新以后放出最新社区地址"
## [2.1.1] - 2026-05-07
工程化与文档收尾,无运行时行为变化。
### Added
- [`CONTRIBUTING.md`](./CONTRIBUTING.md) — 贡献指南,落地简化 Git Flowmaster + develop + 短生命周期分支)+ 提交规范 + 合并规范
- [`RELEASING.md`](./RELEASING.md) — 发版手册Release Manager 视角),含 release/* 流程 + 各商店人工上传步骤 + 自动发布所需 secrets
- `.github/ISSUE_TEMPLATE/{config,bug_report,feature_request}.yml` — 表单形式的 issue 模板,按工作区分类
- `.github/pull_request_template.md` — PR 模板,把 CONTRIBUTING §5.2 落成 checklist
- `.commitlintrc.json` + `.github/workflows/commitlint.yml` — commitlint CIPR + push develop/master 时校验,自定义 type 白名单,兼容中文 subject
- `.github/workflows/release-extension.yml``v*` tag push 时自动构建插件 .zip / .xpi / .crx 并挂到对应 GitHub Release商店自动发布以注释形式预留
### Changed
- 关于页二维码改为 `import @/assets/wechat.png`,不再依赖腾讯云 COS CDN更新只需替换文件 + 跑构建
- 群聊 QR 替换为最新版本(`doc/wechat.png` + `BillNote_frontend/src/assets/wechat.png`
### Removed
- 关于页 QQ 群联系方式(号 785367111已不再活跃维护
- 旧版 `.md` 格式 issue 模板(被新 yml 表单模板取代)
## [2.1.0] - 2026-05-07
本次发布的主线是**浏览器插件**和 **B 站字幕优先链路**。配合一些后端 / 前端体验修复。
### Added — 浏览器插件 (`BillNote_extension/`)
全新 Chrome / Edge / Firefox MV3 扩展。Vue 3 + Vite + UnoCSS骨架基于 vitesse-webext。
- **入口四件套**
- 工具栏 popup识别当前 tab → 一键提交,紧凑展示标题 + 封面 + 进度
- 视频页悬浮按钮:仅在支持平台注入,点击即触发任务
- 右键菜单"用 BiliNote 总结此视频":限定 4 个支持域名
- 侧边栏side panel详情视图 + 三模式切换
- **侧边栏三视图**
- Markdown渲染笔记复制 / 下载 .md
- 思维导图:基于 markmap-lib + markmap-view 的可缩放 mind map
- AI 问答:复用后端 RAG `/chat/index``/chat/status``/chat/ask` 三件套,自动索引 + 多轮历史
- **设置页五大块**(搬入 web 端全部配置能力,今后插件即配置中心)
- 通用:后端地址、连通性测试、默认供应商 / 模型 / 画质 / 截图 / 跳转 / 风格
- 模型供应商:完整 CRUD、启用切换、连接测试、模型增删
- 音频转写配置fast-whisper / mlx-whisper / Groq / 必剪 / 快手 切换、Whisper 模型大小、本地下载状态、触发下载
- 下载配置:每平台 cookie 显示、浏览器一键同步、手动粘贴
- 部署监控:后端 / FFmpeg / CUDA / Whisper 状态总览
- **浏览器 cookie 直通**`chrome.cookies.getAll` 一键把 `.bilibili.com` 等域 cookie 同步到后端 `/api/update_downloader_cookie`
- **B 站字幕浏览器抓取**:插件直接调 player API 拿字幕,借 host_permissions 自动带本地登录态 cookie绕过 CORS随提交以 `prefetched_transcript` 字段附给后端,后端跳过 `download_subtitles` + 音频转写,直接进 GPT 总结
### Added — 后端
- `BilibiliSubtitleFetcher``app/downloaders/bilibili_subtitle.py`):直接调 B 站 player API 拿字幕,作为非插件场景下 yt-dlp 路径的更可靠替代
- `VideoRequest.prefetched_transcript` 字段:客户端预取的字幕直接落到 `<task_id>_transcript.json`NoteGenerator cache-hit 自动复用
### Added — 前端 Web
- Zustand persist 迁移到 IndexedDB#318
### Changed
- 后端 CORS从静态 origin 列表改为 regex兼容 `chrome-extension://``moz-extension://``localhost``tauri.localhost`
- mlx-whisper 仓库 ID 改用 `MLX_MODEL_MAP``whisper-{size}-mlx` 命名(`large-v3-turbo` 例外),不再 hardcode 出 404
- BilibiliDownloader 从 `CookieConfigManager` 读取 cookie 并注入 yt-dlp cookiefile#333
- CLAUDE.md 补充 v2.0.0 引入的子系统说明RAG / Chat、可选 Nacos+RabbitMQ、i18n、cookie/transcriber 管理器)以及浏览器插件 workspace
### Fixed
- AILogo自定义供应商`logo='custom'`)走兜底渲染时不再误报 `console.error`,未匹配的名称降级为 warn
- SettingPage `Model.tsx` 双栏布局加 `min-h-0 overflow-y-auto`:供应商列表过长时无法滚动
- 供应商开关切换不能实时生效(#336
- `/get_all_providers` 中 301 行历史伪内置脏数据清理 + `add_provider` 加防御(强制 `type='custom'`、同名查重、错误向上抛)
- `/api/task_status` 拆 ResponseWrapper插件侧进度条因未拆 `data` 全灰;同时把 `R.error` 翻译为 `status:'FAILED'`,避免 UI 卡在轮询循环
- ESLint / ESM `__dirname` 在 production build 中未定义(多个 docker / vite 配置修复)
- GitHub Actions 构建错误 + apt-get 安装失败 + 删除仓库内 ffmpeg 二进制
- 渲染时剥掉 backend 注入的 `> 来源链接URL` 行(与 web 端 MarkdownViewer 一致),导出文件保留原行便于溯源
- 侧边栏布局收紧:完成后不再渲染 8 段进度条;标题压成单行;视图切换 + 复制 / 下载并入一行;历史任务从底部 details 改为顶栏下拉
### Internal
- 新增分支策略:`develop` / `release/x.y.z` / `master` git-flow
- 备份 backend SQLite DB 前 / 清理脏数据后均落盘存档