feat: 后台思考让步前台 — 用户10s内有活动则跳过非post_chat思考

This commit is contained in:
2026-06-23 21:44:31 +08:00
parent cdfe440044
commit e83bd6febb
@@ -1064,6 +1064,17 @@ func (t *Thinker) performThink(triggerReason string) {
log.Printf("[后台思考] 开始思考周期 (触发原因=%s, 计数=%d)...", triggerReason, currentCount) log.Printf("[后台思考] 开始思考周期 (触发原因=%s, 计数=%d)...", triggerReason, currentCount)
// 0. 让步于前台——如果用户最近有活动(非post_chat),跳过本次思考。
if triggerReason != "post_chat" {
t.mu.Lock()
sinceLastUser := time.Since(t.lastUserMessage)
t.mu.Unlock()
if sinceLastUser < 10*time.Second {
log.Printf("[后台思考] 用户 %v 前有活动,让步于前台回复,跳过思考", sinceLastUser.Round(time.Second))
return
}
}
// 1. 加载人格配置 // 1. 加载人格配置
personaConfig, err := t.personaLoader.Get("cyrene") personaConfig, err := t.personaLoader.Get("cyrene")
if err != nil { if err != nil {