llmcodegen/issues/enhance-error-handling.issue

23 lines
1.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 需求工单:增强错误处理,避免生成过程中断
name: 增强错误处理机制
description: |
当前工具在生成代码过程中如果某个步骤如调用LLM、写入文件、执行命令等发生错误会直接抛出异常并终止整个生成流程。这种“一错即停”的行为在批量处理或长时间任务中非常不便用户希望即使出现局部错误工具也能记录错误信息并在命令行中友好显示然后继续执行剩余任务例如继续生成其他文件、执行后续检查等
具体改进要求:
- 在代码生成的主循环中捕获所有预期内异常如网络错误、文件权限错误、命令执行失败等记录错误日志使用loguru并在命令行中通过rich打印红色错误信息。
- 对于非致命错误,继续执行下一个文件或下一步骤。
- 致命错误如配置文件缺失、API密钥无效仍可终止但应给出清晰提示。
- 在最终汇总时,显示成功、失败和跳过的统计信息。
acceptance_criteria:
- 当某个文件生成失败时,控制台输出红色错误信息,但工具继续尝试生成下一个文件。
- 所有错误信息均写入日志文件logs/目录)。
- 生成结束后,显示汇总信息:“生成完成:成功 X 个,失败 Y 个,跳过 Z 个。”
- 如果发生致命错误如无法读取design.json工具应终止并给出明确提示。
- 错误处理不应影响已有状态文件的正确记录(断点续写功能需保持有效)。
affected_files:
- src/llm_codegen/core.py # 主要生成逻辑
- src/llm_codegen/cli.py # 命令行入口,可能包含主循环
- src/llm_codegen/utils.py # 可能增加错误辅助函数