23 lines
1.8 KiB
Plaintext
23 lines
1.8 KiB
Plaintext
# 需求工单:增强错误处理,避免生成过程中断
|
||
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 # 可能增加错误辅助函数
|