题目
如何设计包含成功、失败、部分成功和必要上下文的工具返回格式?
答案
返回值应让模型明确知道“发生了什么,还能做什么”。可使用稳定结构:`status` 表示结果,`data` 放业务数据,`error` 放错误码和说明,`meta` 放来源、时间、分页或执行标识。 例如批量查询十个订单,八个成功、两个失败,应返回 `partial_success`,逐项列出成功数据和失败原因。不能只写“请求成功”,也不能让模型误以为十个都完成。 失败信息可包含是否适合重试、需要补充哪些参数,但最终策略由运行时结合工具副作用判断。敏感原始报错保留在受控日志里。 返回数据应足够支撑下一步,避免整份数据库结果塞入上下文。大结果提供总数、必要摘要和分页游标;写操作提供业务回执和可查询状态,而不只是一句“完成”。