 rootandClaude Opus 5.5
|
5b023ad682
|
fix(acquisition): 同一种子被别的计划占用而取消的计划不让位,避免 B/C 两线合并后取消 → 重评 → 再取消的空转
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Cxwgnn2pbzQ7rXv3rq7fei
|
2026-10-03 21:23:52 +08:00 |
|
 rootandClaude Opus 5.5
|
4532587ad5
|
fix(acquisition): 计划幂等键只挡在途 / 已完成,失败 / 取消的旧计划让位
acq:{slot}:{release} 原先对 failed / cancelled 也冲突,站点 Cookie 修好、下载器恢复、
重置订阅后同一资源对该收录版本永不再建计划。现在在收录版本行锁内查旧计划:
- reserved / submitted / completed:照旧挡住;
- failed / cancelled / expired:旧计划幂等键改名为 …:retired:{id} 让位,再插新计划(同一事务,唯一约束兜底);
- 用户明确不要的(download_removed、cancelled_by_user)和整理阶段失败(organize:*)仍挡住;
- failed 的按该资源已失败次数冷却(30 分钟起翻倍,封顶 6 小时),冷却中写延后 retry_cooldown 并排到冷却结束重评,
避免持续失败时每轮都建计划、开待处理。
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Cxwgnn2pbzQ7rXv3rq7fei
|
2026-10-03 20:47:48 +08:00 |
|
 rootandClaude Opus 5.5
|
8c10c12bd7
|
fix(acquisition): 闸门挡住的资源写延后并排重评;并发预算不计 stalled;清理空转延后行
- 自动化开关 / 下载器 / 预算 / 缓存卷挡住时,除候选记录(改为 deferred)外写 slot_deferral,
原因区分 gate:automation / gate:downloader / gate:budget / gate:cache,并排该收录版本重评;
电影收录版本与已满足的剧集收录版本也会被重评(scheduleSlotRetry,不推迟已排得更早的)。
- 重评时间按延后次数退避:30 分钟起翻倍、封顶 6 小时;预算释放 / 缓存卷恢复没有统一事件,不做事件触发。
- 并发预算:stalled 任务不占名额;已预留计划只算还没建下载任务的,不与任务重复计。
- 延后行清理:资源过期 / 不可评估 / 集数待确认时清该资源的延后;订阅完成(含 stopAfter)清其收录版本的延后;
订阅暂停 / 取消后重评跳过时清对应延后。
- continuous-series e2e:三集被接收后 once 订阅即完成、延后行随之清掉,改以候选评估记录断言"另一版本延后"。
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Cxwgnn2pbzQ7rXv3rq7fei
|
2026-10-03 20:47:23 +08:00 |
|