diff --git a/metagpt/roles/engineer.py b/metagpt/roles/engineer.py index 6962b1bb5..5055037f5 100644 --- a/metagpt/roles/engineer.py +++ b/metagpt/roles/engineer.py @@ -270,11 +270,11 @@ class Engineer(Role): design_doc = None code_plan_and_change_doc = await self._get_any_code_plan_and_change() if await self._is_fixbug() else None for i in dependencies: - if str(i.parent) == TASK_FILE_REPO: + if str(i.parent.as_posix()) == TASK_FILE_REPO: task_doc = await self.project_repo.docs.task.get(i.name) - elif str(i.parent) == SYSTEM_DESIGN_FILE_REPO: + elif str(i.parent.as_posix()) == SYSTEM_DESIGN_FILE_REPO: design_doc = await self.project_repo.docs.system_design.get(i.name) - elif str(i.parent) == CODE_PLAN_AND_CHANGE_FILE_REPO: + elif str(i.parent.as_posix()) == CODE_PLAN_AND_CHANGE_FILE_REPO: code_plan_and_change_doc = await self.project_repo.docs.code_plan_and_change.get(i.name) if not task_doc or not design_doc: logger.error(f'Detected source code "{filename}" from an unknown origin.') diff --git a/metagpt/utils/dependency_file.py b/metagpt/utils/dependency_file.py index 0a375051c..d34e7ae9a 100644 --- a/metagpt/utils/dependency_file.py +++ b/metagpt/utils/dependency_file.py @@ -91,7 +91,7 @@ class DependencyFile: try: key = Path(filename).relative_to(root).as_posix() except ValueError: - key = filename + key = Path(filename).as_posix() return set(self._dependencies.get(str(key), {})) def delete_file(self):