Skip to content

Releases: luckjokerwang/BiliFlow

v2.0.11 - 升级 TypeScript 7.0 与 Go 内核编译器适配

Choose a tag to compare

@github-actions github-actions released this 05 Oct 08:46

🚀 BiliFlow v2.0.11 更新日志

⚙️ 工具链与构建体系 (Tooling & Build)

  • TypeScript 7.0 升级:依赖升级至 typescript@^7.0.2(基于 Go 原生内核重构,大幅缩短类型检查耗时);
  • 配置与类型系统对齐:移除 TS 7 废弃的编译选项,设置 moduleResolution: "bundler",并将 .wxt/wxt.d.ts 显式纳入类型包含清单;
  • CI/构建钩子:配置 typecheck 与 postinstall 脚本,确保干净环境或 CI 运行 wxt prepare 后零报错执行。

🐛 缺陷修复与交互增强 (Fix & Refactor)

  • 笔记插入微动效反馈:修复 HighlightList 封装时吞掉异步返回值的问题,使卡片能准确响应失败与成功状态;
  • 后台消息长连接:规范化 background.ts 消息监听函数签名并明确返回 true,避免异步通信通道意外提前关闭。

(Fixes #3)

v2.0.10 - 修复Firefox AMO发布工作流入参配置

Choose a tag to compare

@github-actions github-actions released this 29 Sep 06:29

🚀 BiliFlow v2.0.10 更新日志

⚙️ CI/CD 自动化流水线 (DevOps)

  • Firefox AMO 发布工作流修正:修复 browser-actions/release-firefox-addon 入参拼写(调整为 Action 规范的单数 release-note),满足 Mozilla AMO API v5 必填更新说明校验。

v2.0.9 - 修复HUD隐藏后重显对焦与AMO发版更新

Choose a tag to compare

@luckjokerwang luckjokerwang released this 28 Sep 14:18

🚀 BiliFlow v2.0.9 更新日志

🐛 缺陷修复 & 体验优化 (Fixes & UX)

  • HUD 状态恢复与智能聚焦:修复了在长视频播放过程中隐藏 HUD 后重新打开(快捷键 Alt+C 或点击按钮展开)时未自动滚动对焦至当前播放高亮卡片的缺陷。采用双重 RAF (Double RAF) 确保 Shadow DOM 布局就绪后瞬时定位并居中对齐当前卡片。
  • 后台标签页切回自校准:新增页面可见性监听,切回播放页自动校准视口中心高亮项。

⚙️ CI/CD 自动化流水线 (DevOps)

  • Firefox AMO 发版修复:解决 Mozilla AMO API v5 强制要求更新日志导致的发布拦截(release-notes 必填项适配)。

Full Changelog: v2.0.8...v2.0.9

Full Changelog: v2.0.8...v2.0.9

v2.0.8 - HUD 伴随智能跟滚、精准展示5个卡片高度与根除底部空白

Choose a tag to compare

@github-actions github-actions released this 27 Sep 09:44

🚀 界面体验优化与伴随滚动加固 (v2.0.8)

本次更新针对 HUD 面板的视觉层级、视频伴随播放跟滚以及视口布局进行了精细化重构与体验优化:

  1. HUD 高度收敛(精准容纳 5 个高亮卡片):

    • 优化最大高度至 min(585px, calc(100vh - 8rem)),在保持核心总结与头部展示的同时,面板默认状态恰好完整展开 5 个核心节点卡片;
    • 避免此前纵向撑满整个播放器右侧的笨重感,为视频画面底部留出更多呼吸空间。
  2. 顶部微调下移避让控制栏:

    • 面板顶部从 top-14 (56px) 优化下移至 top-[68px] (+12px),避免遮挡或紧贴 Bilibili 播放器顶部控件与标题。
  3. 彻底根除拖动导航栏时的底部大空白:

    • 移除内部滚动容器冗余的 pb-20(80px 巨幅内边距),恢复为紧凑对称的 16px 匀称边距;
    • 拖拽到底部时最后一张卡片紧密贴合在底部,杜绝“能再塞进一张卡片”的深色大空洞。
  4. 伴随视频播放智能跟滚与视口安全区探测:

    • 升级 scrollToActiveItem,当节点已在安全视口内时自然播放保持平稳不跳动;当节点接近边缘、被截断或在视口外时,自动平滑居中并为下方节点腾出视线空间;
    • 深度联动 isUserManualActionActive():用户手动滚轮或滑动翻阅 HUD 时暂缓自动跟滚,绝不与用户“抢滚轮”。
  5. 时间戳多态防御解析与头部保护:

    • findActiveHighlightIndex 防御性兼容 number、string、timestampSec 和 timestampStr;
    • HUDHeader 增加 shrink-0 保护,防止多内容场景下头部被压缩变形。

🧪 自动化测试

  • 12 个测试套件,101 项单元测试全部通过 (100% Pass)。

v2.0.7 - 彻底根治视频总结错位与缓存污染,增加缓存健康自检与时序锁

Choose a tag to compare

@github-actions github-actions released this 25 Sep 12:39

🐛 缺陷彻底根治与系统稳健性加固 (v2.0.7)

本次更新针对特定视频(如长视频、无外挂字幕视频)出现总结内容与视频主题错位(例如闪存视频出现火锅店猝死总结)、以及脏缓存无法自动淘汰的问题进行了排查与全链路防御加固:

  1. 缓存有效性与内容一致性健康自检 (isCachedSummaryValid):

    • 杜绝“命中 key 即盲信返回”的缺陷,读取缓存时自动进行多重自检:
      • 校验 bvid 与 cid 精准匹配;
      • 校验 highlights 要点数组非空且有效;
      • 视频标题一致性校验:深度比对缓存记录标题与当前页面标题,清洗噪音标记后若存在语义冲突立即废弃;
      • 时长覆盖率与截断防范:对于时长 $\ge 10$ 分钟的视频,若总结时间戳仅停留在开篇且覆盖率不足 15%,判定为异常截断脏缓存自动驱逐。
  2. 脏缓存主动销毁与启动级自愈体系 (DELETE_CACHED_SUMMARY):

    • 新增单视频缓存销毁 RPC,物理删除存储 key 并同步清洗 LRU 缓存索引;
    • 在前端遇到自检失效、无官方/AI字幕、解析失败或用户手动重试时,立即触发后台物理销毁,杜绝脏数据滞留;
    • Background 启动安装时自动清除受污染的历史残留错位 key。
  3. 请求令牌单调自增防乱序锁 (requestIdRef):

    • 在前端引入请求代币锁,在快速连续切换视频时,所有异步点(解析视频、查缓存、取字幕、LLM 请求)严格校验请求代币,彻底杜绝慢请求覆盖新视频导致的串流与乱序。
  4. 大模型 Prompt 标题-字幕强相关校验:

    • 在大模型系统提示词中增加第 4 条铁律约束:若字幕与标题完全脱节,强制返回错误拒绝生成,并在前端安全拦截。

🧪 自动化测试

  • 12 个测试套件,100 项单元测试全部通过 (100% Pass),覆盖缓存淘汰、自检校验、时序乱序及长视频覆盖率判定。

v2.0.6

Choose a tag to compare

@github-actions github-actions released this 23 Sep 11:02

Full Changelog: v2.0.5...v2.0.6

v2.0.1 - 修复空字幕穿透引发大模型幻觉,建立四层完整性拦截

Choose a tag to compare

@luckjokerwang luckjokerwang released this 06 Sep 10:14

🐛 Bug 修复与防御性加固 (v2.0.1)

  • 根治空字幕穿透漏洞:修复因 JavaScript 中 ![] 为 false 导致空字幕数组绕过前端校验、向大模型发送空白 Prompt 引发大模型胡乱幻觉脑补(如编造歌词或无关台词)的缺陷。
  • 四层文本完整性拦截体系:
    1. useAutoSummary:加入有效字幕条目校验与长度判定,无字幕时立即展示无字幕提示,拒绝发起 LLM 请求;
    2. llmService:在 generateVideoSummary 中校验字幕有效性,分段结果为空时直接拒发并抛错,保护 API Token;
    3. background.ts:在 GENERATE_SUMMARY 消息监听层防御空数据;
    4. bilibiliApi.ts:过滤全空白字幕条目并在句子融合后校验非空。
  • 测试用例补充:补充针对空字幕与空白字符串字幕的防御单元测试,45 项单测全部通过。

v2.0.0 - 极速心流 2.0 时代:统一功能开关中心、Headless 架构解耦与工业级生命周期治理

Choose a tag to compare

@luckjokerwang luckjokerwang released this 06 Sep 09:20

⚡ BiliFlow (极速心流) v2.0.0 里程碑发布

BiliFlow 正式跨入 2.0 时代!本次大版本升级完成了从“单体预设脚本”到“高度可配置、解耦稳健且极致复用的现代扩展架构”的全面蜕变。


🎛️ 1. 统一功能开关中心 (Feature Flags Matrix)

  • 按需自动化控制:
    • 支持一键开启/关闭“进入页面自动总结”;关闭时转为纯手动模式,HUD 提供清晰的操作面板;
    • 首创最小视频时长阈值(10s ~ 300s 可调,默认 60s):自动跳过短视频与切片,彻底杜绝 Token 滥耗。
  • 播放器原生体验解耦:
    • 进度条“发光高能打点”与“伴随悬浮 AI 卡片”解耦,支持分别独立开关,清爽还给原生播放器。
  • 按键与全屏体验自主定制:
    • 数字键 1~9 快速跳段开关;
    • 视频全屏时是否自动挂载侧边栏 HUD;
    • 操作与跳转提示气泡 (Toasts) 开关;
    • 页面初次加载时 HUD 默认展开或收起。

⚡ 2. 毫秒级响应式热更新通信 (Storage Reactive Broadcast)

  • 打通 chrome.storage.onChanged 实时广播通道;
  • 在设置页 (Options) 或弹窗 (Popup) 调整任何开关,所有已打开的 B 站播放页无刷新毫秒级热响应,无需 F5 重载。

🧩 3. 巨石组件解耦与 Headless Hooks 架构 (-72% 体积)

  • 彻底重构原 1000+ 行巨石组件 HudOverlay.tsx,核心主逻辑收敛至 280 行;
  • 全面落地 Headless Hooks(状态与控制)+ 原子展示组件 分层架构:
    • useSettings:响应式配置订阅与深度兜底;
    • useAutoSummary:封装视频时长检测、本地缓存查找、并发节流与生命周期;
    • useVideoController:播放器状态监控与高精度跳转;
    • useFullscreenDetector:多场景全屏 DOM 挂载监听;
    • 拆分 6 个职责单一的原子展示组件 (HUDHeader, ManualTriggerPanel, HighlightList, OriginalQuotesList, HighlightItemCard, HUDToast)。

🛡️ 4. 工业级 SPA 生命周期与防竞态

  • 重构播放器注入引擎 playerInjector.tsx,打点宿主与悬浮卡片宿主完全隔离;
  • 引入 AbortController 机制:在用户连续切集或 BVID 发生变化时,自动 Abort 掉上一集未决的 LLM 请求,重置 DOM 宿主与定时器,根除内存泄漏与串集 Bug。

🛠️ 5. UI 原子复用与设置页防御加固

  • 抽象出通用 <ToggleSwitch /> 与 <SliderInput /> 配置原子组件;
  • 修复 Options 页面渲染容错,全流程注入 mergeSettingsWithDefaults 保证历史版本数据 100% 平滑兼容迁移。

v1.1.8 - 修复进度条打点坐标偏移与悬浮卡片缩放形变

Choose a tag to compare

@luckjokerwang luckjokerwang released this 06 Sep 07:58

🚀 v1.1.8 更新日志

  • 进度条打点坐标与时间轴精准对齐:重构打点宿主优先级,直接绑定原生轨道 schedule.parentElement,修复因容器选择导致的打点垂直下沉与缩放时间偏移;
  • 打点外观回归经典亮蓝:采用 v1.1.5 经典内嵌平齐亮蓝色微条,高度与轨道 2px/6px 完美平齐,去除多余白边与底色块;
  • 打点与悬浮卡片双宿主解耦:将悬浮卡片移至静态未变形的外层容器 .bpx-player-progress-area,彻底根除鼠标偏上时受 B 站 scaleY 动画影响导致的卡片压扁变形;
  • 双弹窗并排协同:B 站原生画面缩略图与 BiliFlow 经典 Slate-900 风格 AI 深度要点卡片并排展示,互不干扰,零鼠标事件劫持;
  • CI/CD 自动发布:已打通 GitHub Actions 自动向 Microsoft Edge 附加组件商店提交发布。

v1.1.5 - 修复 Zen/Gecko 浏览器全屏模式下 HUD 偶发无法展开与挂载脱落问题

Choose a tag to compare

@luckjokerwang luckjokerwang released this 03 Sep 09:17

🎯 What's New in v1.1.5

🦊 Zen Browser & Gecko 全屏模式健壮性增强

  • 动态宿主内存保活:彻底废弃易受 SPA 重构影响的 document.querySelector 查找,直接保持对 ShadowHost 的全局引用,杜绝 DOM 孤儿节点导致的按键展开失效;
  • 全平台全屏事件与前缀全覆盖:补齐 mozfullscreenchange 及 document.mozFullScreenElement 支持;
  • 快捷键即时校验与重挂载:在用户按下 Alt + S 或打开浮层的瞬间,立即触发 biliflow:ensure-mount 校验与挂载,确保 100% 显示在最顶层;
  • 三级过渡动画补偿与心跳自愈:针对 B 站全屏延迟渲染,设置 50ms、300ms、800ms 阶梯式补偿,并附带 1 秒周期性心跳巡检;
  • :host 盒模型强化:显式声明 block 与绝对定位,防止父容器零宽高裁剪;
  • <video> 标签智能防崩:全屏元素为原生视频标签时自动回退挂载至其父级,防止 HierarchyRequestError。

📦 离线安装包

  • Chrome / Edge / Chromium:biliflow-1.1.5-chrome.zip (205 KB)
  • Firefox / Zen Browser:biliflow-1.1.5-firefox.zip (205 KB)
  • AMO 审核源码包:biliflow-1.1.5-sources.zip (2.78 MB)