From 40db41cda5c489a7cfa7b99035d76808caa62e1d Mon Sep 17 00:00:00 2001 From: mannaandpoem <1580466765@qq.com> Date: Thu, 4 Jan 2024 17:58:55 +0800 Subject: [PATCH] 1. Added 4 compressed package of code examples 2. Update test_incremental_dev.py and engineer.py --- data/dice_simulator_new.zip | Bin 0 -> 27923 bytes data/number_guessing_game.zip | Bin 0 -> 65020 bytes data/pygame_2048.zip | Bin 0 -> 19338 bytes data/simple_add_calculator.zip | Bin 0 -> 53760 bytes data/word_cloud.zip | Bin 0 -> 54076 bytes metagpt/roles/engineer.py | 19 +++- ...t_increment.py => test_incremental_dev.py} | 97 ++++++++++++++++-- 7 files changed, 104 insertions(+), 12 deletions(-) create mode 100644 data/dice_simulator_new.zip create mode 100644 data/number_guessing_game.zip create mode 100644 data/pygame_2048.zip create mode 100644 data/simple_add_calculator.zip create mode 100644 data/word_cloud.zip rename tests/metagpt/{test_increment.py => test_incremental_dev.py} (63%) diff --git a/data/dice_simulator_new.zip b/data/dice_simulator_new.zip new file mode 100644 index 0000000000000000000000000000000000000000..307e41541899d742a97d1209813169f672fe13cd GIT binary patch literal 27923 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 t`cn=62#v`Dtr9SA^3b literal 0 HcmV?d00001 diff --git a/data/pygame_2048.zip b/data/pygame_2048.zip new file mode 100644 index 0000000000000000000000000000000000000000..476d0b438b207f594418d2e8fb78a29371590f66 GIT binary patch literal 19338 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 z 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

Ei(XwNOEtpM1u_&thFjw8IQWXi0_ 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 UqTY8I_-Dh4fe{3}4Flu<0l%(&;s5{u literal 0 HcmV?d00001 diff --git a/data/word_cloud.zip b/data/word_cloud.zip new file mode 100644 index 0000000000000000000000000000000000000000..fd395c5bd2c2770fb8a1f2482d16a2a3cd9f0686 GIT binary patch literal 54076 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 An*aa+ literal 0 HcmV?d00001 diff --git a/metagpt/roles/engineer.py b/metagpt/roles/engineer.py index d4947a8f8..a1e93be40 100644 --- a/metagpt/roles/engineer.py +++ b/metagpt/roles/engineer.py @@ -117,9 +117,22 @@ class Engineer(Role): action = WriteCodeReview(context=coding_context, llm=self.llm) self._init_action_system_message(action) coding_context = await action.run() + + # Get dependencies + if guideline: + dependencies = { + coding_context.design_doc.root_relative_path, + coding_context.task_doc.root_relative_path, + "code_guideline.json", + } + else: + dependencies = { + coding_context.design_doc.root_relative_path, + coding_context.task_doc.root_relative_path, + } await src_file_repo.save( coding_context.filename, - dependencies={coding_context.design_doc.root_relative_path, coding_context.task_doc.root_relative_path}, + dependencies=dependencies, content=coding_context.code_doc.content, ) msg = Message( @@ -347,6 +360,10 @@ class Engineer(Role): context = CODE_GUIDELINE_CONTEXT.format(requirement=requirement, tasks=tasks, design=design, code=old_codes) node = await WriteCodeGuideline().run(context=context) guideline = node.instruct_content.model_dump_json() + + await CONFIG.git_repo.new_file_repository(CONFIG.git_repo.workdir).save( + filename="code_guideline.json", content=guideline + ) return guideline @staticmethod diff --git a/tests/metagpt/test_increment.py b/tests/metagpt/test_incremental_dev.py similarity index 63% rename from tests/metagpt/test_increment.py rename to tests/metagpt/test_incremental_dev.py index 25769ff6a..a4131f1ef 100644 --- a/tests/metagpt/test_increment.py +++ b/tests/metagpt/test_incremental_dev.py @@ -3,11 +3,14 @@ """ @Time : 2024/01/03 @Author : mannaandpoem -@File : test_increment.py +@File : test_incremental_dev.py """ +import os + import pytest from typer.testing import CliRunner +from metagpt.const import DATA_PATH from metagpt.logs import logger from metagpt.startup import app @@ -15,11 +18,14 @@ runner = CliRunner() def test_refined_simple_calculator(): + project_path = f"{DATA_PATH}/simple_add_calculator" + check_or_create_base_tag(project_path) + args = [ "Add subtraction, multiplication and division operations to the calculator. The current calculator can only perform basic addition operations, and it is necessary to introduce subtraction, multiplication, division operation into the calculator", "--inc", "--project-path", - "data/simple_add_calculator", + project_path, ] result = runner.invoke(app, args) logger.info(result) @@ -27,11 +33,14 @@ def test_refined_simple_calculator(): def test_refined_number_guessing_game(): + project_path = f"{DATA_PATH}/number_guessing_game" + check_or_create_base_tag(project_path) + args = [ "Adding graphical interface functionality to enhance the user experience in the number-guessing game. The existing number-guessing game currently relies on command-line input for numbers. The goal is to introduce a graphical interface to improve the game's usability and visual appeal", "--inc", "--project-path", - "data/number_guessing_game", + project_path, ] result = runner.invoke(app, args) logger.info(result) @@ -39,11 +48,14 @@ def test_refined_number_guessing_game(): def test_refined_dice_simulator_1(): + project_path = f"{DATA_PATH}/dice_simulator_new" + check_or_create_base_tag(project_path) + args = [ "Add functionality to view the history of scores. The original dice rolling game could only display the current game result, but the new requirement allows players to view the history of scores", "--inc", "--project-path", - "data/dice_simulator_new", + project_path, ] result = runner.invoke(app, args) logger.info(result) @@ -51,11 +63,14 @@ def test_refined_dice_simulator_1(): def test_refined_dice_simulator_2(): + project_path = f"{DATA_PATH}/dice_simulator_new" + check_or_create_base_tag(project_path) + args = [ "Add functionality to view the history of scores and perform statistical analysis on them. The original dice rolling game could only display the current game result, but the new requirement allows players to view the history of scores and display the statistical analysis results of the current score", "--inc", "--project-path", - "data/dice_simulator_new", + project_path, ] result = runner.invoke(app, args) logger.info(result) @@ -63,11 +78,14 @@ def test_refined_dice_simulator_2(): def test_refined_dice_simulator_3(): + project_path = f"{DATA_PATH}/dice_simulator_new" + check_or_create_base_tag(project_path) + args = [ "Add functionality to set the number of sides on a die; Add functionality to view the history of scores; Add functionality to perform statistical analysis on all scores. The original dice rolling game could roll the dice multiple times and only display the current game result. But the new requirement add function that players to customize the number of sides of the dice and to view the history of scores and display the statistical analysis", "--inc", "--project-path", - "data/dice_simulator_new", + project_path, ] result = runner.invoke(app, args) logger.info(result) @@ -75,11 +93,14 @@ def test_refined_dice_simulator_3(): def test_refined_pygame_2048_1(): + project_path = f"{DATA_PATH}/pygame_2048" + check_or_create_base_tag(project_path) + args = [ "Changed score target for 2048 game from 2048 to 4096. Please change the game's score target from 2048 to 4096, and change the interface size from 4*4 to 8*8", "--inc", "--project-path", - "data/pygame_2048", + project_path, ] result = runner.invoke(app, args) logger.info(result) @@ -87,11 +108,14 @@ def test_refined_pygame_2048_1(): def test_refined_pygame_2048_2(): + project_path = f"{DATA_PATH}/pygame_2048" + check_or_create_base_tag(project_path) + args = [ "Display the history score of the player in the 2048 game. Add a record board that can display players' historical score records so that players can trace their scores", "--inc", "--project-path", - "data/pygame_2048", + project_path, ] result = runner.invoke(app, args) logger.info(result) @@ -99,11 +123,14 @@ def test_refined_pygame_2048_2(): def test_refined_pygame_2048_3(): + project_path = f"{DATA_PATH}/pygame_2048" + check_or_create_base_tag(project_path) + args = [ "Add limited time mode. The original game only had a default classic mode. The improved game should be able to support limited-time mode, allowing users to choose classic mode or limited-time mode from the available options before starting the game.", "--inc", "--project-path", - "data/pygame_2048", + project_path, ] result = runner.invoke(app, args) logger.info(result) @@ -111,11 +138,14 @@ def test_refined_pygame_2048_3(): def test_refined_word_cloud_1(): + project_path = f"{DATA_PATH}/word_cloud" + check_or_create_base_tag(project_path) + args = [ "Add a feature to remove deprecated words from the word cloud. The current word cloud generator does not support removing deprecated words. Now, The word cloud generator should support removing deprecated words. Customize deactivated words to exclude them from word cloud. Let users see all the words in the text file, and allow users to select the words they want to remove.", "--inc", "--project-path", - "data/word_cloud", + project_path, ] result = runner.invoke(app, args) logger.info(result) @@ -123,16 +153,61 @@ def test_refined_word_cloud_1(): def test_refined_word_cloud_2(): + project_path = f"{DATA_PATH}/word_cloud" + check_or_create_base_tag(project_path) + args = [ "Add a feature to customize the resolution of the word cloud.The new version allows users to customize the size and resolution of the generated word cloud after uploading a text file, and then generate the word cloud.", "--inc", "--project-path", - "data/word_cloud", + project_path, ] result = runner.invoke(app, args) logger.info(result) logger.info(result.output) +def check_or_create_base_tag(project_path): + # Change the current working directory to the specified project path + os.chdir(project_path) + + # Initialize a Git repository + os.system("git init") + + # Check if the 'base' tag exists + check_base_tag_cmd = "git show-ref --verify --quiet refs/tags/base" + has_base_tag = os.system(check_base_tag_cmd) == 0 + + if has_base_tag: + logger.info("base tag exists") + # Switch to the 'base' branch if it exists + switch_to_base_branch_cmd = "git checkout base" + if os.system(switch_to_base_branch_cmd) == 0: + logger.info("switched to base branch") + else: + logger.debug("Failed to switch to base branch.") + else: + logger.info("Base tag doesn't exist.") + # Add and commit the current code if 'base' tag doesn't exist + add_cmd = "git add ." + commit_cmd = 'git commit -m "Initial commit"' + add_and_commit_success = os.system(add_cmd) == 0 & os.system(commit_cmd) == 0 + + if add_and_commit_success: + logger.info("Added and committed all files with the message 'Initial commit'.") + else: + logger.debug("Failed to add and commit all files.") + + # Add 'base' tag + add_base_tag_cmd = "git tag base" + + # Check if the 'git tag' command was successful + tag_cmd_success = os.system(add_base_tag_cmd) == 0 + if tag_cmd_success: + logger.info("Successfully added 'base' tag.") + else: + logger.debug("Failed to add 'base' tag.") + + if __name__ == "__main__": pytest.main([__file__, "-s"])