Version: 0.9.41.dev.260424
后端: 1. 随口记从 Execute 工具链路迁移到独立 QuickTask 轻量节点——单轮流式提取意图直接调 service,绕过 ReAct 循环 - 新增 QuickTask graph 节点 + Chat→QuickTask→END 分支 - Chat 路由提示词新增 quick_task 路由判别规则,execute 路由收窄为日程类 - Execute 提示词(有 plan / ReAct 两套)移除 quick_note_create / query_tasks 指令 - ToolRegistry 注销 quick_note_create / query_tasks,移除相关依赖与注册 - 依赖注入从 ToolRegistry 改为 Service 层直接注入 QuickTaskDeps 2. urgency_threshold_at 代码兜底 + API 返回补全 - priorityGroup=2 且有 deadline 但 LLM 未填时,自动设为 deadline-24h - 任务查询接口返回结构补充 UrgencyThresholdAt 字段与转换映射 3. 记忆召回条数 5→10
This commit is contained in:
@@ -20,6 +20,9 @@ const (
|
||||
|
||||
// ChatRoutePlan 复杂规划:需要先制定计划,进 Plan 节点。
|
||||
ChatRoutePlan ChatRoute = "plan"
|
||||
|
||||
// ChatRouteQuickTask 快捷任务:随口记增查改删等轻量任务操作,走 QuickTask 轻量路径。
|
||||
ChatRouteQuickTask ChatRoute = "quick_task"
|
||||
)
|
||||
|
||||
// ChatRoutingDecision 是 Chat 节点单次路由决策的结构化输出。
|
||||
@@ -59,7 +62,7 @@ func (d *ChatRoutingDecision) Validate() error {
|
||||
d.Normalize()
|
||||
|
||||
switch d.Route {
|
||||
case ChatRouteDirectReply, ChatRouteExecute, ChatRouteDeepAnswer, ChatRoutePlan:
|
||||
case ChatRouteDirectReply, ChatRouteExecute, ChatRouteDeepAnswer, ChatRoutePlan, ChatRouteQuickTask:
|
||||
// ok
|
||||
case "":
|
||||
return fmt.Errorf("chat routing decision.route 不能为空")
|
||||
|
||||
@@ -13,6 +13,7 @@ const (
|
||||
PhasePlanning Phase = "planning"
|
||||
PhaseWaitingConfirm Phase = "waiting_confirm"
|
||||
PhaseExecuting Phase = "executing"
|
||||
PhaseQuickTask Phase = "quick_task"
|
||||
PhaseDone Phase = "done"
|
||||
)
|
||||
|
||||
|
||||
@@ -96,6 +96,21 @@ type AgentGraphDeps struct {
|
||||
// PersistVisibleMessage 按 Service 注入,newAgent 每个节点产出的可见 speak
|
||||
// 都会在 AppendHistory 之后立刻调用这个回调,把消息同步落到 Redis + MySQL。
|
||||
PersistVisibleMessage PersistVisibleMessageFunc
|
||||
|
||||
// QuickTaskDeps 快捷任务节点的直接依赖,绕过 ToolRegistry 走轻量路径。
|
||||
QuickTaskDeps QuickTaskDeps
|
||||
}
|
||||
|
||||
// QuickTaskDeps 描述快捷任务节点所需的服务层依赖。
|
||||
//
|
||||
// 职责边界:
|
||||
// 1. QuickTask 节点直接调这些函数,不经过 ToolRegistry,不走 ReAct 循环;
|
||||
// 2. CreateTask 和 QueryTasks 的签名与 tools 包的 QuickNoteDeps / TaskQueryDeps 一致。
|
||||
type QuickTaskDeps struct {
|
||||
// CreateTask 创建一条四象限任务,返回 task_id。
|
||||
CreateTask func(userID int, title string, priorityGroup int, deadlineAt *time.Time, urgencyThresholdAt *time.Time) (taskID int, err error)
|
||||
// QueryTasks 按条件查询用户任务列表。
|
||||
QueryTasks func(ctx context.Context, userID int, params newagenttools.TaskQueryParams) ([]newagenttools.TaskQueryResult, error)
|
||||
}
|
||||
|
||||
// --- 记忆 pinned block 常量(供 agentsvc 和 node 层共享) ---
|
||||
|
||||
Reference in New Issue
Block a user