From 0643de337634aec63fe22d9a1c5b36a9bd8e52a4 Mon Sep 17 00:00:00 2001 From: Codeflash Bot Date: Fri, 14 Nov 2025 17:36:42 -0800 Subject: [PATCH 1/7] dont make all commits created as codeflash bot. let it the default settings, until we figure out something better. Signed-off-by: Codeflash Bot --- codeflash/code_utils/git_worktree_utils.py | 5 ----- 1 file changed, 5 deletions(-) diff --git a/codeflash/code_utils/git_worktree_utils.py b/codeflash/code_utils/git_worktree_utils.py index 11faa8902..930a66b13 100644 --- a/codeflash/code_utils/git_worktree_utils.py +++ b/codeflash/code_utils/git_worktree_utils.py @@ -18,11 +18,6 @@ def create_worktree_snapshot_commit(worktree_dir: Path, commit_message: str) -> None: repository = git.Repo(worktree_dir, search_parent_directories=True) - with repository.config_writer() as cw: - if not cw.has_option("user", "name"): - cw.set_value("user", "name", "Codeflash Bot") - if not cw.has_option("user", "email"): - cw.set_value("user", "email", "bot@codeflash.ai") repository.git.add(".") repository.git.commit("-m", commit_message, "--no-verify") From 98eddbd4ff80c1565fa20a859598fd2c476af6bd Mon Sep 17 00:00:00 2001 From: Codeflash Bot Date: Fri, 14 Nov 2025 17:59:50 -0800 Subject: [PATCH 2/7] revert the username to defaults again... Signed-off-by: Codeflash Bot --- codeflash/code_utils/git_worktree_utils.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/codeflash/code_utils/git_worktree_utils.py b/codeflash/code_utils/git_worktree_utils.py index 930a66b13..a5bd6ddce 100644 --- a/codeflash/code_utils/git_worktree_utils.py +++ b/codeflash/code_utils/git_worktree_utils.py @@ -18,9 +18,25 @@ def create_worktree_snapshot_commit(worktree_dir: Path, commit_message: str) -> None: repository = git.Repo(worktree_dir, search_parent_directories=True) + username = None + email = None + with repository.config_reader() as cr: + username = cr.remove_option("user", "name") + email = cr.remove_option("user", "email") + repository.git.config() + with repository.config_writer() as cw: + if not cw.has_option("user", "name"): + cw.set_value("user", "name", "Codeflash Bot") + if not cw.has_option("user", "email"): + cw.set_value("user", "email", "bot@codeflash.ai") repository.git.add(".") repository.git.commit("-m", commit_message, "--no-verify") + with repository.config_writer() as cw: + if username: + cw.set_value("user", "name", username) + if email: + cw.set_value("user", "email", email) def create_detached_worktree(module_root: Path) -> Optional[Path]: From b2b706647c38f4ae6c6aa2d5707168b2d098ec1e Mon Sep 17 00:00:00 2001 From: Codeflash Bot Date: Fri, 14 Nov 2025 18:03:22 -0800 Subject: [PATCH 3/7] fix --- codeflash/code_utils/git_worktree_utils.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/codeflash/code_utils/git_worktree_utils.py b/codeflash/code_utils/git_worktree_utils.py index a5bd6ddce..f89838fde 100644 --- a/codeflash/code_utils/git_worktree_utils.py +++ b/codeflash/code_utils/git_worktree_utils.py @@ -21,8 +21,8 @@ def create_worktree_snapshot_commit(worktree_dir: Path, commit_message: str) -> username = None email = None with repository.config_reader() as cr: - username = cr.remove_option("user", "name") - email = cr.remove_option("user", "email") + username = cr.get("user", "name") + email = cr.get("user", "email") repository.git.config() with repository.config_writer() as cw: if not cw.has_option("user", "name"): From 5451c927dbf73a00bb7fc33bd07f003f2b390375 Mon Sep 17 00:00:00 2001 From: misrasaurabh1 Date: Fri, 14 Nov 2025 18:07:34 -0800 Subject: [PATCH 4/7] handle cases when unset by default --- codeflash/code_utils/git_worktree_utils.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/codeflash/code_utils/git_worktree_utils.py b/codeflash/code_utils/git_worktree_utils.py index f89838fde..773eddc8c 100644 --- a/codeflash/code_utils/git_worktree_utils.py +++ b/codeflash/code_utils/git_worktree_utils.py @@ -1,5 +1,7 @@ from __future__ import annotations +import configparser + import subprocess import tempfile import time @@ -19,10 +21,18 @@ def create_worktree_snapshot_commit(worktree_dir: Path, commit_message: str) -> None: repository = git.Repo(worktree_dir, search_parent_directories=True) username = None + no_username = False email = None + no_email = False with repository.config_reader() as cr: - username = cr.get("user", "name") - email = cr.get("user", "email") + try: + username = cr.get("user", "name") + except configparser.NoSectionError: + no_username = True + try: + email = cr.get("user", "email") + except configparser.NoSectionError: + no_email = True repository.git.config() with repository.config_writer() as cw: if not cw.has_option("user", "name"): @@ -35,8 +45,12 @@ def create_worktree_snapshot_commit(worktree_dir: Path, commit_message: str) -> with repository.config_writer() as cw: if username: cw.set_value("user", "name", username) + elif no_username: + cw.remove_option("user", "name") if email: cw.set_value("user", "email", email) + elif no_email: + cw.remove_option("user", "email") def create_detached_worktree(module_root: Path) -> Optional[Path]: From 1f10dc832e567195956c6f8c195620b78f3e5b6a Mon Sep 17 00:00:00 2001 From: misrasaurabh1 Date: Fri, 14 Nov 2025 18:09:03 -0800 Subject: [PATCH 5/7] fix bug --- codeflash/code_utils/git_worktree_utils.py | 1 - 1 file changed, 1 deletion(-) diff --git a/codeflash/code_utils/git_worktree_utils.py b/codeflash/code_utils/git_worktree_utils.py index 773eddc8c..20c363184 100644 --- a/codeflash/code_utils/git_worktree_utils.py +++ b/codeflash/code_utils/git_worktree_utils.py @@ -33,7 +33,6 @@ def create_worktree_snapshot_commit(worktree_dir: Path, commit_message: str) -> email = cr.get("user", "email") except configparser.NoSectionError: no_email = True - repository.git.config() with repository.config_writer() as cw: if not cw.has_option("user", "name"): cw.set_value("user", "name", "Codeflash Bot") From c6712d56c78a2b6cba751283ed69de232e1338fc Mon Sep 17 00:00:00 2001 From: misrasaurabh1 Date: Fri, 14 Nov 2025 18:15:14 -0800 Subject: [PATCH 6/7] sort imports --- codeflash/code_utils/git_worktree_utils.py | 1 - 1 file changed, 1 deletion(-) diff --git a/codeflash/code_utils/git_worktree_utils.py b/codeflash/code_utils/git_worktree_utils.py index 20c363184..096f32684 100644 --- a/codeflash/code_utils/git_worktree_utils.py +++ b/codeflash/code_utils/git_worktree_utils.py @@ -1,7 +1,6 @@ from __future__ import annotations import configparser - import subprocess import tempfile import time From e1b2c6bab2a7e893f21a4c2dbe539def12926425 Mon Sep 17 00:00:00 2001 From: misrasaurabh1 Date: Fri, 14 Nov 2025 18:17:23 -0800 Subject: [PATCH 7/7] be careful --- codeflash/code_utils/git_worktree_utils.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/codeflash/code_utils/git_worktree_utils.py b/codeflash/code_utils/git_worktree_utils.py index 096f32684..2c50d95d1 100644 --- a/codeflash/code_utils/git_worktree_utils.py +++ b/codeflash/code_utils/git_worktree_utils.py @@ -23,7 +23,7 @@ def create_worktree_snapshot_commit(worktree_dir: Path, commit_message: str) -> no_username = False email = None no_email = False - with repository.config_reader() as cr: + with repository.config_reader(config_level="repository") as cr: try: username = cr.get("user", "name") except configparser.NoSectionError: @@ -32,7 +32,7 @@ def create_worktree_snapshot_commit(worktree_dir: Path, commit_message: str) -> email = cr.get("user", "email") except configparser.NoSectionError: no_email = True - with repository.config_writer() as cw: + with repository.config_writer(config_level="repository") as cw: if not cw.has_option("user", "name"): cw.set_value("user", "name", "Codeflash Bot") if not cw.has_option("user", "email"): @@ -40,7 +40,7 @@ def create_worktree_snapshot_commit(worktree_dir: Path, commit_message: str) -> repository.git.add(".") repository.git.commit("-m", commit_message, "--no-verify") - with repository.config_writer() as cw: + with repository.config_writer(config_level="repository") as cw: if username: cw.set_value("user", "name", username) elif no_username: