Skip to content

fix(trafficassistant): support BrushFlow V5 tasks - #361

Merged
InfinityPacer merged 1 commit into
mainfrom
codex/fix/trafficassistant-brushflow-v5
Jul 28, 2026
Merged

fix(trafficassistant): support BrushFlow V5 tasks#361
InfinityPacer merged 1 commit into
mainfrom
codex/fix/trafficassistant-brushflow-v5

Conversation

@InfinityPacer

@InfinityPacer InfinityPacer commented Jul 28, 2026

Copy link
Copy Markdown
Owner

问题与背景

站点流量管理 1.6 仍通过 brushsites 增删站点来控制自动刷流。站点刷流 5.x 已改为多任务模型,因此保存和热加载虽然能够执行,但目标站点任务的开关不会变化。

原因分析

站点刷流 V4 使用全局 brushsites 列表表达参与刷流的站点;V5 使用 tasks 列表,并由每个任务的 site_idenabled 决定调度状态。站点流量管理没有识别新配置契约,继续写入的旧字段会被 V5 忽略。

解决方案

  • tasks 列表作为 V5 配置能力标识,按 site_id 开启或暂停同一站点的全部任务。
  • 开启 V5 任务时同步保证站点刷流全局开关已启用;暂停任务时不影响全局开关和其他站点。
  • 没有匹配任务或状态已经符合预期时不保存配置、不触发热加载。
  • 保留 V4 brushsites 的原有增删逻辑。
  • 使用包内相对导入加载 V2 插件配置模型,避免测试或全新环境依赖已安装的运行时副本。

影响与风险

  • 仅影响 V2 TrafficAssistantBrushFlow / BrushFlowLowFreq 的刷流开关联动。
  • 同一站点配置多个 V5 任务时会统一开启或暂停,符合站点流量管理的站点级动作语义。
  • 不需要迁移 TrafficAssistant 配置;V4 行为保持兼容。
  • TrafficAssistant 与 BrushFlow 页面若同时保存整份配置,仍遵循现有的最后写入覆盖模型,本 PR 不调整跨插件配置并发机制。

验证

  • pytest tests/v2/trafficassistant -q:7 passed。
  • 插件版本门禁、JSON 解析、Python 编译和 git diff --check 通过。
  • tests/run.py -q:CI 工具 33 passed,V2 2192 passed。
  • 独立 implementation review 已通过。

发布事实

  • TrafficAssistant.plugin_version:1.7。
  • package.v2.json:版本与 v1.7 更新说明已同步。
  • 本 PR 走发版路径,合并后由 Plugin Release workflow 生成版本 tag、Release 和 zip 资产。

关联

Fixes #360

@InfinityPacer
InfinityPacer force-pushed the codex/fix/trafficassistant-brushflow-v5 branch from 8c01b71 to a06f465 Compare July 28, 2026 08:23
@InfinityPacer
InfinityPacer marked this pull request as ready for review July 28, 2026 08:23
@InfinityPacer
InfinityPacer merged commit f58f82f into main Jul 28, 2026
4 checks passed
@InfinityPacer
InfinityPacer deleted the codex/fix/trafficassistant-brushflow-v5 branch July 28, 2026 08:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[错误报告]: TrafficAssistant 1.6 无法控制 BrushFlow 5.0.0 的刷流任务开关

1 participant