QoderWake会话干预session_inspect/approve指南
在QoderWake任务执行过程中,human-approval状态的阻塞是运维人员最常遇到的瓶颈。最有效的应对方式是通过命令行直接干预:先运行qoderwake session inspect --pending列出待处理的会话,再使用qoderwake session approve或session reject决定放行还是终止。移动端弹窗或控制台点击都不如命令行可靠。
当你需要中断任务以检查会话状态并做出下一步决策时,切勿被动等待自动超时或降级。核心操作就是session inspect加上session approve/session reject这一组合。
查看待审核会话详情
运行qoderwake session inspect --pending,系统会返回所有处于human-approval状态、尚未响应的会话ID及其触发时间戳。
每条输出记录包含session_id、event_type、created_at和timeout_at字段。关键点:若timeout_at早于当前时间,该会话已自动降级,无法再执行approve操作。
找到你需要干预的session_id(格式如sess_8a3f7c1d),复制下来后续使用。
批准指定会话继续运行
方法一:显式批准并附带反馈文本
执行qoderwake session approve --session-id=sess_8a3f7c1d --feedback="确认根因分析准确,同意修复方案A"。
该命令立即向本地QoderWake进程发送确认信号,并在feedback非空的情况下将内容写入/memory/approval_rejections目录下的同名日志文件。
方法二:无反馈快速批准
运行qoderwake session approve --session-id=sess_8a3f7c1d,不加--feedback参数。
直接回车即可,但不会留下人工决策痕迹,审计日志仅标记为“auto-approved”。
拒绝会话并强制终止流程
第一步:执行拒绝命令
qoderwake session reject --session-id=sess_8a3f7c1d --reason="权限越界风险未评估"
第二步:验证拒绝结果
再次运行qoderwake session inspect --pending,确认该session_id已从等待列表中消失。
第三步:检查终端输出
如果QoderWake在前台运行,你会看到类似[APPROVAL] Rejected sess_8a3f7c1d: permissions risk未评估的日志行;若为后台服务,此日志会写入/var/log/qoderwake/audit.log。
注意,reject操作不可逆,对应子任务永久终止,不会触发fallback重试。务必确认后再执行。
