feat: goal_met 默认不绑任何 agent + 去掉 planner 相关提示词

- goal_met 绕过逐个 prove_goal 直接宣布整个任务完成,权重大、有误判风险,又与
  「prove_goal 标记最后一个目标→自动收官」重复,故默认不给任何 agent(仍入目录、
  web 可见、可手动按需绑)。
- toolcatalog 新增 defaultUnbound 集合:goal_met seed 时绑定强制为空 [](保留在
  PlannerTools base 里,手动绑回后运行时仍可用)。
- db 新增 RemoveAgentFromTool(agentKey,toolKey);server 新增一次性迁移
  unbindGoalMetDefault(flag goal_met_unbind_default_v1)剥掉旧库 goal_met 的
  planner 绑定,只剥 planner、不动用户手动加的其它绑定,flag 守卫故重启不重复。
- planner 提示词去掉两处 goal_met 引导(system 模板 + 每轮 input 结尾),保留
  prove_goal 与自动收官说明。任务收官不受影响(prove_goal 自动置 GoalMet)。
This commit is contained in:
Autumn-27 committed 2026-08-17 09:26:59 -04:00
1 parent 8e03043548
commit bf2410baee
4 files changed
+44 -5

No files matched your search

+8
View File
@@ -61,6 +61,14 @@ func (d *DB) RemoveAgentFromToolBindings(agentKey string) error {
return err
}
// RemoveAgentFromTool strips one agent key from a SINGLE tool's `agents` array —
// used by one-time migrations that change a tool's default binding on existing DBs
// (SeedTool is first-insert-only, so a changed default never reaches a seeded row).
func (d *DB) RemoveAgentFromTool(agentKey, toolKey string) error {
_, err := d.Exec(`UPDATE tools SET agents = agents - $1 WHERE key=$2 AND agents ? $1`, agentKey, toolKey)
return err
}
// UpsertToolForce overwrites a tool row with the given code-default values (used by
// the per-tool "reset" action). It resets description/schema/agents and re-enables
// the tool, but keeps system=true.