prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Add support for running bwctest.sh
  
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `bundle-workflow/src/paths/tree_walker.py`
  Content:
  ```
  1 # SPDX-License-Identifier: Apache-2.0
  2 #
  3 # The OpenSearch Contributors require contributions made to
  4 # this file be licensed under the Apache-2.0 license or a
  5 # compatible open source license.
  6 
  7 import os
  8 
  9 
  10 def walk(root):
  11     print(f'Walking tree from {root}')
  12     for dir, dirs, files in os.walk(root):
  13         for file_name in files:
  14             absolute_path = os.path.join(dir, file_name)
  15             relative_path = os.path.relpath(absolute_path, root)
  16             yield (os.path.realpath(absolute_path), relative_path)
  17
  ```
  
  Path: `bundle-workflow/src/system/execute.py`
  Content:
  ```
  1 # SPDX-License-Identifier: Apache-2.0
  2 #
  3 # The OpenSearch Contributors require contributions made to
  4 # this file be licensed under the Apache-2.0 license or a
  5 # compatible open source license.
  6 
  7 import subprocess
  8 
  9 
  10 def execute(command, dir, capture=True, raise_on_failure=True):
  11     """
  12     Execute a shell command inside a directory.
  13     :param command: The shell command to execute.
  14     :param dir: The full path to the directory that the command should be executed in.
  15     :returns a tuple containing the exit code, stdout, and stderr.
  16     """
  17     print(f'Executing "{command}" in {dir}')
  18     result = subprocess.run(command, cwd=dir, shell=True, capture_output=capture, text=True)
  19     if raise_on_failure:
  20         result.check_returncode()
  21     return (result.returncode, result.stdout, result.stderr)
  22
  ```
  --- END FILES ---
  
  Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.
  
  Here is an example:
  
  ```diff
  diff --git a/examples/server_async.py b/examples/server_async.py
  --- a/examples/server_async.py
  +++ b/examples/server_async.py
  @@ -313,4 +313,4 @@
   
   
   if __name__ == "__main__":
  -    asyncio.run(run_async_server("."), debug=True)
  +    asyncio.run(run_async_server(), debug=True)
  diff --git a/examples/server_sync.py b/examples/server_sync.py
  --- a/examples/server_sync.py
  +++ b/examples/server_sync.py
  @@ -313,5 +313,5 @@
   
   
   if __name__ == "__main__":
  -    server = run_sync_server(".")
  +    server = run_sync_server()
       server.shutdown()
  
  ```
  
golden_diff: diff --git a/bundle-workflow/src/paths/tree_walker.py b/bundle-workflow/src/paths/tree_walker.py
  --- a/bundle-workflow/src/paths/tree_walker.py
  +++ b/bundle-workflow/src/paths/tree_walker.py
  @@ -8,7 +8,7 @@
   
   
   def walk(root):
  -    print(f'Walking tree from {root}')
  +    print(f"Walking tree from {root}")
       for dir, dirs, files in os.walk(root):
           for file_name in files:
               absolute_path = os.path.join(dir, file_name)
  diff --git a/bundle-workflow/src/system/execute.py b/bundle-workflow/src/system/execute.py
  --- a/bundle-workflow/src/system/execute.py
  +++ b/bundle-workflow/src/system/execute.py
  @@ -15,7 +15,9 @@
       :returns a tuple containing the exit code, stdout, and stderr.
       """
       print(f'Executing "{command}" in {dir}')
  -    result = subprocess.run(command, cwd=dir, shell=True, capture_output=capture, text=True)
  +    result = subprocess.run(
  +        command, cwd=dir, shell=True, capture_output=capture, text=True
  +    )
       if raise_on_failure:
           result.check_returncode()
       return (result.returncode, result.stdout, result.stderr)
  
verification_info: {"golden_diff": "diff --git a/bundle-workflow/src/paths/tree_walker.py b/bundle-workflow/src/paths/tree_walker.py\n--- a/bundle-workflow/src/paths/tree_walker.py\n+++ b/bundle-workflow/src/paths/tree_walker.py\n@@ -8,7 +8,7 @@\n \n \n def walk(root):\n-    print(f'Walking tree from {root}')\n+    print(f\"Walking tree from {root}\")\n     for dir, dirs, files in os.walk(root):\n         for file_name in files:\n             absolute_path = os.path.join(dir, file_name)\ndiff --git a/bundle-workflow/src/system/execute.py b/bundle-workflow/src/system/execute.py\n--- a/bundle-workflow/src/system/execute.py\n+++ b/bundle-workflow/src/system/execute.py\n@@ -15,7 +15,9 @@\n     :returns a tuple containing the exit code, stdout, and stderr.\n     \"\"\"\n     print(f'Executing \"{command}\" in {dir}')\n-    result = subprocess.run(command, cwd=dir, shell=True, capture_output=capture, text=True)\n+    result = subprocess.run(\n+        command, cwd=dir, shell=True, capture_output=capture, text=True\n+    )\n     if raise_on_failure:\n         result.check_returncode()\n     return (result.returncode, result.stdout, result.stderr)\n", "issue": "Add support for running bwctest.sh\n\n", "before_files": [{"content": "# SPDX-License-Identifier: Apache-2.0\n#\n# The OpenSearch Contributors require contributions made to\n# this file be licensed under the Apache-2.0 license or a\n# compatible open source license.\n\nimport os\n\n\ndef walk(root):\n    print(f'Walking tree from {root}')\n    for dir, dirs, files in os.walk(root):\n        for file_name in files:\n            absolute_path = os.path.join(dir, file_name)\n            relative_path = os.path.relpath(absolute_path, root)\n            yield (os.path.realpath(absolute_path), relative_path)\n", "path": "bundle-workflow/src/paths/tree_walker.py"}, {"content": "# SPDX-License-Identifier: Apache-2.0\n#\n# The OpenSearch Contributors require contributions made to\n# this file be licensed under the Apache-2.0 license or a\n# compatible open source license.\n\nimport subprocess\n\n\ndef execute(command, dir, capture=True, raise_on_failure=True):\n    \"\"\"\n    Execute a shell command inside a directory.\n    :param command: The shell command to execute.\n    :param dir: The full path to the directory that the command should be executed in.\n    :returns a tuple containing the exit code, stdout, and stderr.\n    \"\"\"\n    print(f'Executing \"{command}\" in {dir}')\n    result = subprocess.run(command, cwd=dir, shell=True, capture_output=capture, text=True)\n    if raise_on_failure:\n        result.check_returncode()\n    return (result.returncode, result.stdout, result.stderr)\n", "path": "bundle-workflow/src/system/execute.py"}], "after_files": [{"content": "# SPDX-License-Identifier: Apache-2.0\n#\n# The OpenSearch Contributors require contributions made to\n# this file be licensed under the Apache-2.0 license or a\n# compatible open source license.\n\nimport os\n\n\ndef walk(root):\n    print(f\"Walking tree from {root}\")\n    for dir, dirs, files in os.walk(root):\n        for file_name in files:\n            absolute_path = os.path.join(dir, file_name)\n            relative_path = os.path.relpath(absolute_path, root)\n            yield (os.path.realpath(absolute_path), relative_path)\n", "path": "bundle-workflow/src/paths/tree_walker.py"}, {"content": "# SPDX-License-Identifier: Apache-2.0\n#\n# The OpenSearch Contributors require contributions made to\n# this file be licensed under the Apache-2.0 license or a\n# compatible open source license.\n\nimport subprocess\n\n\ndef execute(command, dir, capture=True, raise_on_failure=True):\n    \"\"\"\n    Execute a shell command inside a directory.\n    :param command: The shell command to execute.\n    :param dir: The full path to the directory that the command should be executed in.\n    :returns a tuple containing the exit code, stdout, and stderr.\n    \"\"\"\n    print(f'Executing \"{command}\" in {dir}')\n    result = subprocess.run(\n        command, cwd=dir, shell=True, capture_output=capture, text=True\n    )\n    if raise_on_failure:\n        result.check_returncode()\n    return (result.returncode, result.stdout, result.stderr)\n", "path": "bundle-workflow/src/system/execute.py"}]}