# Bug 工单 name: fix/enhance 命令未遵循文件依赖关系进行修改或生成 description: | 在执行 `llm-codegen fix` 或 `llm-codegen enhance` 命令时,代码生成过程没有严格遵循 `design.json` 中定义的文件依赖关系。 例如,如果文件 A 依赖于文件 B,在修改工单中同时包含了 A 和 B,那么在生成 A 的新内容时,其上下文可能仍然是 B 修改前的旧内容, 因为 B 的修改尚未应用到文件系统,或者应用顺序没有被强制保证。 steps_to_reproduce: | 1. 初始化一个项目,使其 `design.json` 中包含具有明确依赖关系的文件(例如,A 依赖于 B)。 2. 创建一个 `enhance` 或 `fix` 工单,该工单要求同时修改文件 A 和 B。 3. 运行 `llm-codegen enhance` 或 `llm-codegen fix` 命令。 4. 观察生成的日志和最终代码,可以发现 A 的内容可能是基于 B 的旧内容生成的,违背了依赖关系。 expected_behavior: | `process_issue` 方法应该像 `run` 方法一样,解析 `design.json` 中的依赖关系。 在处理 `affected_files` 列表时,必须确保在处理文件 A 之前,其所有依赖项(B, C, D...)都已经被成功修改或生成并写入磁盘。 这样可以保证 LLM 在生成 A 时,能够看到最新的依赖文件内容。 actual_behavior: | `process_issue` 方法只是简单地顺序处理 `affected_files` 列表,没有考虑它们之间在 `design.json` 中定义的依赖关系。 这导致了生成的代码可能基于陈旧的上下文,从而产生错误或不一致的代码。 affected_files: - src/llm_codegen/core.py