refactor(core): migrate to Bun and converge acquisition policies and Agent boundaries

This commit is contained in:
root committed 2026-10-13 14:37:03 +08:00
1 parent 3f1c6d02f6
commit 27c0f27434
268 files changed
+7468 -7852

No files matched your search

+8 -4
View File
@@ -64,7 +64,7 @@ TMDB 条目保存时先调 `POST /files/entity-from-candidate` 建档(同一 TMD
## 多版本自动补全
- 开关 `params.autoFill: inherit | on | off`(缺省 inherit):inherit 取订阅生效规则链(私有组 → `params.ruleGroupIds` 或订阅默认链)上**最后一个设了 `auto_fill` 的组**,都没设为开。总览 `autoFill.source` 标来源(subscription / rule_group / default)。
- 开关 `params.autoFill: inherit | on | off`(缺省 inherit):inherit 取主版本收录链(私有组 → 主版本 `ruleGroupIds` 或兼容订阅组或默认链)上**最后一个设了 `auto_fill` 的组**,都没设为关;显式 on/off 优先。总览 `autoFill.source` 标来源(subscription / rule_group / default)。
- 预算 `params.fillBudget {unitsPerDay?, bytesPerDay?}`:按订阅、按自然日,只计自动补全计划(`acquisition_plan.evaluation.autoFill = true`,草案/取消/失败/过期不计),同时仍受全局每日预算与缓存卷阈值约束。
- 评估(`evaluateForSlot` 建计划前 `autoFillCheck`):
- 主版本、没有订阅的版本目标、只有一个版本目标:照旧;
@@ -75,7 +75,11 @@ TMDB 条目保存时先调 `POST /files/entity-from-candidate` 建档(同一 TMD
- 手动补全 `POST /subscriptions/{id}/slots/{slotId}/fill {unitKeys?}`:入队 `evaluateAcquisition{acquisitionSlotId, forceFill}`,不受开关与补全预算限制(全局预算/缓存卷照常),`unitKeys` 限定只补这些单元;订阅须在追踪中(active/pending)。
- 定时:不新增任务。`slots.reevaluate`(到期 Slot 重评)覆盖补全与预算延后;`subscriptions.search` 按 `next_search_at` 到期搜索。
## 编辑表单字段(POST / PATCH `params`)
## 订阅字段与 API 兼容(POST / PATCH `params`)
界面分工见设计 §3:新建时选择策略,质量、组合规则和洗版统一逐版本编辑。下面的 MP 质量与统一洗版字段仅留作 API 兼容,普通表单保存保留旧值,不重新生成。
存量订阅在「共同过滤与搜索词」显示旧质量预设,可明确清除:保存时解除旧预设生成且未手改的条件;已单独调整的版本规则、策略和多版本的分辨率范围保留。
写入时规范化,库里只存规范键(未知键原样保留)。PATCH 的 `params` 仍是整体替换。
@@ -107,7 +111,7 @@ TMDB 条目保存时先调 `POST /files/entity-from-candidate` 建档(同一 TMD
- 私有组不在规则页 `GET /rules` 列出;它排在引用链最前,不影响订阅默认链 / 显式规则组的选择。
- 迁移为存量订阅(未取消、params 有 include / exclude)各建一个私有组。评估不再读 params 的 include / exclude(`withSubscriptionFilters` 已删)。
## 质量预设(MP resolution / quality / effect)
## 质量预设兼容(MP resolution / quality / effect)
保存时写到**该订阅自己的**版本目标(`subscription_id = 订阅`;作品共享的无主版本目标不动):
@@ -123,7 +127,7 @@ TMDB 条目保存时先调 `POST /files/entity-from-candidate` 建档(同一 TMD
| atmos | 私有组包含 `Atmos` | |
改预设(`applySlotPreset`):新预设给出的字段覆盖;旧预设给过、新预设不再给的字段,只有版本目标上的值仍等于旧预设生成的值时才删(手改过的保留)。有变化 revision+1。
新建订阅时作品还没有版本目标:收录策略有 `defaultSlots` 按模板建;没有模板但给了预设 → 建一个"默认版本"承载预设;都没有则不建(同以前)。
新建订阅时收录策略有 `defaultSlots` 按模板创建,否则创建一个默认版本;作品尚未关联时,在关联后创建。旧 API 预设作用于自己的版本,不改模板或多版本已有的分辨率边界。
## 下载提交与整理去向