From 84018413a7d7b1bc8a38b180bccf4dfb3e50adef Mon Sep 17 00:00:00 2001 From: AIOSAI Date: Sat, 25 Apr 2026 21:16:43 -0700 Subject: [PATCH] =?UTF-8?q?feat(system):=20fix(ci):=20make=20json=5Fhandle?= =?UTF-8?q?r.log=5Foperation=20non-fatal=20in=20copy=5Ftemplate=20?= =?UTF-8?q?=E2=80=94=20prevents=20CI=20failure=20when=20spawn=20log=20dir?= =?UTF-8?q?=20missing?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: @devpulse --- .claude/hooks/.diagnostics_state.json | 1 - src/aipass/spawn/apps/handlers/file_ops.py | 5 ++++- 2 files changed, 4 insertions(+), 2 deletions(-) delete mode 100644 .claude/hooks/.diagnostics_state.json diff --git a/.claude/hooks/.diagnostics_state.json b/.claude/hooks/.diagnostics_state.json deleted file mode 100644 index 3f6df996..00000000 --- a/.claude/hooks/.diagnostics_state.json +++ /dev/null @@ -1 +0,0 @@ -{"file": "/home/patrick/Projects/AIPass/src/aipass/api/tests/test_usage_tracker.py", "errors": [{"line": 372, "message": "E501: Line too long (139 > 120)"}, {"line": 387, "message": "E501: Line too long (126 > 120)"}, {"line": 394, "message": "E501: Line too long (139 > 120)"}, {"line": 408, "message": "E501: Line too long (123 > 120)"}, {"line": 415, "message": "E501: Line too long (139 > 120)"}, {"line": 438, "message": "E501: Line too long (139 > 120)"}]} \ No newline at end of file diff --git a/src/aipass/spawn/apps/handlers/file_ops.py b/src/aipass/spawn/apps/handlers/file_ops.py index 17de0e9b..c3fc907c 100644 --- a/src/aipass/spawn/apps/handlers/file_ops.py +++ b/src/aipass/spawn/apps/handlers/file_ops.py @@ -76,7 +76,10 @@ def copy_template(template_dir, target_dir, replacements): shutil.copy2(item, dest) copied.append(f"{dest_rel} (binary)") - json_handler.log_operation("template_copied", data={"target": str(target_dir)}) + try: + json_handler.log_operation("template_copied", data={"target": str(target_dir)}) + except Exception as exc: + logger.info("json_handler.log_operation failed (non-fatal): %s", exc) return copied, skipped