Merge pull request #225 from Gujiassh/fix/save-output-utf8

fix(cli): Write saved output using UTF-8 encoding
This commit is contained in:
Matt Van Horn
2026-04-13 17:55:18 -04:00
committed by GitHub
2 changed files with 9 additions and 1 deletions
+1 -1
View File
@@ -103,7 +103,7 @@ def save_output(report: schema.Report, emit: str, save_dir: str, suffix: str = "
content = emit_output(report, emit)
else:
content = render.render_full(report)
out_path.write_text(content)
out_path.write_text(content, encoding="utf-8")
return out_path
+8
View File
@@ -135,6 +135,14 @@ class CliV3Tests(unittest.TestCase):
payload = json.loads(path.read_text())
self.assertEqual("OpenClaw vs NanoClaw", payload["topic"])
def test_save_output_writes_utf8_encoded_markdown(self):
report = self.make_report()
with tempfile.TemporaryDirectory() as tmp:
with mock.patch("pathlib.Path.write_text", autospec=True, return_value=1) as write_text:
cli.save_output(report, "md", tmp)
_, kwargs = write_text.call_args
self.assertEqual("utf-8", kwargs.get("encoding"))
def test_persist_report_updates_run_status_on_success_and_failure(self):
report = self.make_report()