Repository navigation
Releases: littlefallenstar/dsh-bili-scroll
Releases · littlefallenstar/dsh-bili-scroll
Release list
v0.2.8
修「装依赖」按钮在部分网络下必坏
- 根因:pip 镜像写死了清华源。清华源在部分网络会 403,于是 uv/pip 全挂,按钮点了只会在日志里留一串 403。
- 现在按「阿里云 → 清华 → 官方 PyPI」依次回退,成功一个就停;日志里会写"正在试哪个镜像"。
- 想固定某一个仍然可以:环境变量
BILI_DUTY_PIP_MIRROR优先级最高。
修「本地转写」安装同样卡在清华源
- 同一套回退逻辑也用在 faster-whisper / yt-dlp 的安装上。
修自动下 uv 时可能被一个卡住的源拖住
- 拉 uv 版本清单原来只连清华、且没有超时;现在依次试 官方 PyPI / 清华 / 阿里云,每个 8 秒超时,拿不到就跳过(不影响后面几个 GitHub 直连/加速源)。
v0.2.7
修「自动续刷时把历史上所有推荐都塞进稍后再看」
- 根因:收尾里那句
want = pickBvids.length ? … : doc.items—— 这一轮如果一条推荐都没有,
它就退化成"当天全部条目",于是把所有历史推荐重新加了一遍。 - 现在只认这一轮真的标了推荐的(空就是空)。
修「同一轮分开发了两封邮件」
- 笔记是分批写出来的(模型边搜边写),每批 ingest 都触发一次收尾 ⇒ 一封"1 条"、一封"2 条"。
- 现在只登记到
pendingMail,90 秒没有新条目才渲染并发出一封;定时器 + 每分钟 tick 双保险。
轮次文件夹默认收起
- 两个根(推荐列表 / 不推荐)展开;「第 N 轮」默认折叠,点一下再展开。
删笔记文件 = 从列表里消失
- 对账时发现
notePath指向的文件不在了,就把这条从今日表里去掉(以磁盘为准)。
v0.2.6
修「一直循环刷」
- 上一轮一条推荐都没加进待看时,待看当然是空的 —— 但旧逻辑把这判成"看完了",于是又开新一轮,
模型偶尔一轮 0 推荐就会无限空转。 - 现在记下每轮实际加进待看的条数;为 0 就明确说「没东西可看,先不续刷」。
- 续刷间隔默认从 1 分钟改成 5 分钟(1 分钟太密)。
v0.2.5
修「第二轮以后不发报告、不进文件夹、不加待看,然后一直循环」
- 根因:0.2.3 给今日页加了 15 秒自动刷新,而「读今日列表」这个接口会顺手把新笔记并进今日表
(对账),它用的是mail:false。于是面板轮询先把笔记吞了,等定时器那一轮再对账时
新增 = 0,收尾(发信 / 归文件夹 / 加稍后再看)就永远不触发。 - 表现完全对得上:笔记产出了、信没发、视频挂在根目录、稍后再看里没有 ⇒ 待看一直"空" ⇒
自动续刷一直判"看完了"⇒ 无限开新一轮。 - 修法:面板那条对账也走
mail:true(重复发信由mailedKey挡住);
另外只有真的收进今日表才算"新增"(BV 号不合法的不再虚报)。
修屏幕中间那条提示一直挡着
- 「上一轮还在跑…」这类 toast 之前偶发不消失(定时器被重渲染吃掉)。
- 现在加了一道兜底:任何 toast 最多留 7 秒自动消失。
v0.2.4
修「正在后台运行」一直不结束(真凶:同时起了三份)
- 现场:16:49、16:51、16:51 各起了一个 dsh 子进程,三个模型同时往同一份产物目录和今日表里写,
面板那个绿标就一直挂着。 - 根因:
runDuty()和「自动续刷」都没有检查"上一轮还在跑"。自动续刷每 2 分钟判一次,
上一轮没结束时它又起新一轮,越堆越多。 - 修法:
dutyRunning单轮闸:已经在跑就直接拒掉,日志写刷B站跳过:上一轮还没跑完;- 自动续刷先看这个闸,在跑就不判;
- 单轮超过 45 分钟自动收掉(不会再出现"永远在跑")。
面板上的反馈更清楚了
- 点「现在跑一轮」时如果上一轮还没完,会直接说
上一轮还在跑 —— 等它跑完,别两个同时跑,
不再显示"已经在后台跑一轮了"骗人。 - 绿标旁边多一个
N 分钟,一眼看出是刚起还是卡住了。
v0.2.3
面板自动刷新(后台跑完那一轮现在自己就上来了)
- 症状:后台跑完一轮、笔记也写了,但「今日」页的推荐/不推荐列表不动,要手动切一下才更新。
- 修法:今日页每 15 秒静默重取一次;页面切回来立刻补一次(在后台时跳过,不乱轮询)。
自动续刷:默认不限轮数
- 原来写死「今天最多续刷 3 轮」,日志里天天是
自动续刷跳过:今天已经续刷 3 轮(上限 3)——
看着就像功能不работает(实际是到了上限就停)。 - 现在
autoNextMaxRounds默认 0 = 不限(想限制就设 1~50)。等一分钟的间隔也默认改成 1 分钟。
自动点赞:核实过了
- 日志证据:
已点赞:BV1iLaX6REba / BV1NXH661EpG / BV1x2Jq6NEbT(那一轮的 3 条推荐全部点上了,
判"不推荐"的没点)。功能是好的,之前只是被上一版的崩溃挡住。
v0.2.2
修一个把整轮收尾吞掉的致命错误(三个症状同一个根因)
- 症状:第二次点「现在跑一轮」收不到报告、推荐视频没进「第 N 轮」文件夹、自动点赞没动静。
- 根因:0.2.1 加「自动点赞」时,把代码写在了
const roundItems声明之前。
autoLike一开就抛ReferenceError: Cannot access 'roundItems' before initialization,
而这句后面的「归文件夹 → 发信 → 写 Obsidian → 记 rounds」全在同一个函数里,整段被跳过,
而且异常没人接(对账那边只 catch 了自己)。 - 修法:把
roundItems提到最前面;对账里调收尾也加了 try/catch + 日志(以后再出错能在日志里看到,不会再静默吞掉一整轮)。
修:不推荐的视频「拖不进轮次文件夹」
- 根因:0.2.1 的迁移规则没区分 parent,把「不推荐 → 第 N 轮」里的视频又搬回了「不推荐」根目录,
表现就是拖过去又弹回来;拖进自己新建的文件夹没事(那不是 kind=round)。 - 现在只搬「推荐列表下面」的轮次文件夹里的漏网条目。
修:每轮都会发信
- 去掉「10 分钟内发过就不再发」的时间窗(它把手动再跑一轮的信吃掉了)。
- 重复跑同一份笔记仍由
mailedKey防住,不会重复发。
自动续刷加了日志
- 开没开、为什么没触发(待看读不到 / 今天没加过待看 / 上限到了)现在都会写一行日志,
下次"没发挥作用"能直接看出卡在哪一步。
点「放入」真的进推荐列表
- 原来在不推荐里的视频点「放入」只改状态、人还留在不推荐下,看着像没生效。现在会挪到推荐列表。
v0.2.1
两个根的顺序与分层
- 「推荐列表」固定在最上面,「不推荐」在下面。
- 不推荐也能分层了:不推荐的视频按轮次进「不推荐 → 第 N 轮 HH:MM」,跟推荐列表一个结构。
修:不推荐还是会跑到推荐列表里
- 根因:0.2.0 迁移老数据时,只给"没有归属"的条目分了类,而判成「不推荐」的那些已经待在第 N 轮文件夹里(旧版把两者混在一起建目录),迁移没动它们。
- 现在每次打开面板都会检查一遍:判「不推荐」的如果待在轮次文件夹里,自动挪回「不推荐」。你昨天那批已经归位。
新:推荐的自动点赞
- 「功能设置」里多了一个开关:推荐的自动点赞(默认关)。
- 只点赞,不投币、不收藏、不关注;判「不推荐」的不点。
- 每条只点一次(记在今日表里),重复跑一轮不会再点。
v0.2.0
今日列表改成分级文件夹
- 最外层固定两个:推荐列表 / 不推荐。不推荐的视频不再混进推荐列表里。
- 推荐列表下面按轮次分:推荐列表 → 第 N 轮 HH:MM → 视频(三层)。
- 每一层都有「新建」:点一下就地出现输入框,回车即建(不再弹系统对话框)。
- 视频可以直接拖进任意一层;删文件夹时里面的东西回到上一层,不会变成"未分组"。
修三个点了没反应的按钮
- 「新建文件夹」没反应 —— 根因:这个面板在侧栏槽位里,
window.prompt弹不出来。改成就地输入框。 - 「一起清掉」清完又回来 —— 根因:面板一刷新就重新对账,把
_skip-*.txt和判重表里的记录又导了一遍。
现在删/清空会记进黑名单(meta.skipIgnored),清空时还会把当天的_skip-*.txt改名,不再回头。 - 单条删除后数字不变 —— 同上,也是被对账加回来了。
邮件「总结」分行
- 原来是一大段挤在一起。现在是项目符号:看了几条 / 最该先看哪条 / 其余值得看 / 不推荐的几条。
「待看空了自动续刷」修好
- 根因一:
sawNonEmpty(见过待看非空)只存在内存里,重启就清零 ⇒ 永远认为"没见过非空",不续刷。
现在落盘到today/<日期>.json。 - 根因二:提示词里还留着「今天最多挑 N 条」,而 N 就是每轮条数 —— 第一轮挑满后,续刷的每一轮都"超额度"。
这句话删了,改成"别拿今天已经刷过当理由少刷"。 - 轮询从 5 分钟缩到 2 分钟,"连续两次确认空"改成一次(空就是看完)。
v0.1.9
照着你最爱的那封旧日报,把版式重做了一遍
- ⭐ 标题变大了(一级标题一行大字),不会再糊在正文里。
- ⭐ 每个字段单独一行:UP / 链接 / 播放量 / 时长 / 评分 / 推荐 / 为什么值得 / 我的一句话,
都改成项目符号分行 —— 上一版全挤成一段,读起来太累。 - ⭐ 每条都有「我的一句话」,缺了会补一句默认的,不会再整行消失。
- ⭐ 「为什么值得」压到 80~120 字(上一版写到两三百字),说清楚"给谁看 / 能拿走什么 / 有什么坑"就停。
- ⭐ 末尾「总结」照旧:哪几条值得看、先看哪条。
面板「今日」按文件夹分级
- 每轮自动生成一个文件夹(第 N 轮 HH:MM),也可以「新建文件夹」自己命名;
视频可以直接拖进任意文件夹,拖错了删掉文件夹就回到「未分组」。 - 每条视频多了「删除」按钮。
「本次跳过」修好
- 标题不再是清一色「(无标题)」—— 提示词要求模型写跳过时必须带标题,旧记录宿主会去补。
- 每行加了「删除」,顶部加了「一起清掉」一键清空。
自动续刷
- 修一个真 bug:重启后第一分钟会立刻又续刷一轮(12:53 刷完、12:54 又来一次)。
现在任何一轮跑完都会盖时间戳,间隔由「自动续刷间隔」控制。 - 搜到的视频多数已在判重表里时,允许换 1~2 组词补足,不再"一次白搜就收工"。