氛围性触发源(含tier-2旁观信号)统一阶性节流/优先级机制(全ADR对抗审查组B1,含并入的#186) #180

Open
opened 2026-08-21 03:22:56 +00:00 by KumaAgent · 0 comments
Member

来源

全量32条ADR设计合理性对抗审查(评估侧内部执行,2026-08-21),组B1·氛围性触发源共享预算无区分。4条质疑经独立agent对抗式反驳后仍确认成立(2026-08-21 grill issue #186 时把 tier-2 旁观信号并入本票,见下方"issue合并"节;原 issue #186 已关闭)。

问题

四个低优先级/氛围性触发源,均直接共享既有资源池,没有针对性的突发节流或与严肃诉求的优先级区分:

  1. 贴纸学习(ADR-0024):_spawn_sticker_learning 是每条消息各自 fire-and-forget 的后台任务,去重只按贴纸文件标识(永久生效),无按时间的速率限制——一个活跃群刚打开开关、或短时间内刷过大量未学过的贴纸,会短时间内并发触发多次 VLM 调用,共享全局唯一的 multimodal 熔断闸,可能拖累其它群的看图请求。
  2. 群内插句嘴 burst(ADR-0032):决策节声称发生频率"依赖衰减曲线自然收敛",但事件触发满分直通规则下,短时间内密集触发不受任何人工节流限制。
  3. 插句嘴与@提问共享预算无区分(ADR-0029/0032):opt-in 群里纯氛围性主动搭讪,跟同一 chat_id 里"被直接 @ 提问、理应必答"的严肃诉求共享同一个沉默预算令牌桶,budget_capacity/refill_rate/cost 完全不按触发源区分。
  4. tier-2 旁观信号(ADR-0014,2026-08-21 issue #186 grill 并入):ADR-0014 把 tier-2(旁观其它插件/命令产出的显著信号)定性为 P2 优先级、天然吃沉默预算,"拒绝了"节否决了为其单独开辟资源账本。ADR-0029 此后把沉默预算覆盖面扩到"所有触发源",tier-2 从此与@/私聊等核心场景共享同一个预算令牌桶,没有优先级区分。结构上走 environment_pipeline.py,与前三条(entry_reactive.py/贴纸学习路径)代码路径不同,但资源共享问题本质相同。

What to build

给这类"低优先级/氛围性触发源"引入统一的阶性防护机制,可能方向(具体机制留给实现时设计):

  • 突发节流:给 fire-and-forget 型触发源(贴纸学习、插句嘴)加独立的速率限制层,不占用/不拖累对话路径主体的资源池熔断闸
  • 优先级区分:沉默预算令牌桶引入"触发源权重",覆盖全部四类低优先级触发源(贴纸学习/插句嘴/tier-2),让@/私聊等严肃诉求在预算紧张时优先——不要只按字面实现前两类就收工,tier-2走的是不同代码路径(environment_pipeline.py),必须显式纳入同一套权重机制

Acceptance criteria

  • 贴纸学习增加按时间窗口的速率限制,不再是无限制fire-and-forget
  • 插句嘴burst有对应的人工节流(不仅依赖衰减曲线自然收敛)
  • 沉默预算/成本池消费在氛围性触发源(贴纸学习/插句嘴/tier-2)与严肃触发源(@/私聊/命中本人)之间有可区分的优先级或权重,补充测试验证"预算紧张时严肃诉求优先"——测试覆盖必须包含 tier-2 走 environment_pipeline.py 这条路径,不能只测 entry_reactive.py/贴纸学习路径
  • ADR-0014/0024/0029/0032 补更新节记录具体机制
  • 全量测试通过

issue合并:#186 → #180(2026-08-21)

原 #186「tier-2旁观信号在统一沉默预算下的优先级」是独立评估票。grill时核实:本票 AC 已经写了通用的"触发源权重"机制,但只字面点名了贴纸学习/插句嘴——如果实现时只按字面抓这两个具体触发源,tier-2会被漏掉。两者本质是同一个模式(新引入的低优先级触发源共享预算无区分),只是代码路径不同,并入本票统一实现,避免优先级机制建好了却漏了一类触发源。

## 来源 全量32条ADR设计合理性对抗审查(评估侧内部执行,2026-08-21),组B1·氛围性触发源共享预算无区分。4条质疑经独立agent对抗式反驳后仍确认成立(**2026-08-21 grill issue #186 时把 tier-2 旁观信号并入本票,见下方"issue合并"节;原 issue #186 已关闭**)。 ## 问题 四个低优先级/氛围性触发源,均直接共享既有资源池,没有针对性的突发节流或与严肃诉求的优先级区分: 1. **贴纸学习**(ADR-0024):`_spawn_sticker_learning` 是每条消息各自 fire-and-forget 的后台任务,去重只按贴纸文件标识(永久生效),无按时间的速率限制——一个活跃群刚打开开关、或短时间内刷过大量未学过的贴纸,会短时间内并发触发多次 VLM 调用,共享全局唯一的 `multimodal` 熔断闸,可能拖累其它群的看图请求。 2. **群内插句嘴 burst**(ADR-0032):决策节声称发生频率"依赖衰减曲线自然收敛",但事件触发满分直通规则下,短时间内密集触发不受任何人工节流限制。 3. **插句嘴与@提问共享预算无区分**(ADR-0029/0032):opt-in 群里纯氛围性主动搭讪,跟同一 chat_id 里"被直接 @ 提问、理应必答"的严肃诉求共享同一个沉默预算令牌桶,budget_capacity/refill_rate/cost 完全不按触发源区分。 4. **tier-2 旁观信号**(ADR-0014,2026-08-21 issue #186 grill 并入):ADR-0014 把 tier-2(旁观其它插件/命令产出的显著信号)定性为 P2 优先级、天然吃沉默预算,"拒绝了"节否决了为其单独开辟资源账本。ADR-0029 此后把沉默预算覆盖面扩到"所有触发源",tier-2 从此与@/私聊等核心场景共享同一个预算令牌桶,没有优先级区分。结构上走 `environment_pipeline.py`,与前三条(`entry_reactive.py`/贴纸学习路径)代码路径不同,但资源共享问题本质相同。 ## What to build 给这类"低优先级/氛围性触发源"引入统一的阶性防护机制,可能方向(具体机制留给实现时设计): - 突发节流:给 fire-and-forget 型触发源(贴纸学习、插句嘴)加独立的速率限制层,不占用/不拖累对话路径主体的资源池熔断闸 - **优先级区分:沉默预算令牌桶引入"触发源权重",覆盖全部四类低优先级触发源(贴纸学习/插句嘴/tier-2),让@/私聊等严肃诉求在预算紧张时优先——不要只按字面实现前两类就收工,tier-2走的是不同代码路径(environment_pipeline.py),必须显式纳入同一套权重机制** ## Acceptance criteria - [ ] 贴纸学习增加按时间窗口的速率限制,不再是无限制fire-and-forget - [ ] 插句嘴burst有对应的人工节流(不仅依赖衰减曲线自然收敛) - [ ] 沉默预算/成本池消费在氛围性触发源(贴纸学习/插句嘴/**tier-2**)与严肃触发源(@/私聊/命中本人)之间有可区分的优先级或权重,补充测试验证"预算紧张时严肃诉求优先"——测试覆盖必须包含 tier-2 走 `environment_pipeline.py` 这条路径,不能只测 `entry_reactive.py`/贴纸学习路径 - [ ] ADR-0014/0024/0029/0032 补更新节记录具体机制 - [ ] 全量测试通过 ## issue合并:#186 → #180(2026-08-21) 原 #186「tier-2旁观信号在统一沉默预算下的优先级」是独立评估票。grill时核实:本票 AC 已经写了通用的"触发源权重"机制,但只字面点名了贴纸学习/插句嘴——如果实现时只按字面抓这两个具体触发源,tier-2会被漏掉。两者本质是同一个模式(新引入的低优先级触发源共享预算无区分),只是代码路径不同,并入本票统一实现,避免优先级机制建好了却漏了一类触发源。
KumaAgent changed title from 占位标题-稍后回填-02 to 氛围性触发源统一阶性节流/优先级机制(全ADR对抗审查组B1) 2026-08-21 03:26:49 +00:00
KumaAgent changed title from 氛围性触发源统一阶性节流/优先级机制(全ADR对抗审查组B1) to 氛围性触发源(含tier-2旁观信号)统一阶性节流/优先级机制(全ADR对抗审查组B1,含并入的#186) 2026-08-21 04:30:44 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ProjectKuma/arise#180
No description provided.