Skip to content

Commit 048686a

Browse files
committed
fix: coderabbitai comments
1 parent 2a7c44e commit 048686a

2 files changed

Lines changed: 26 additions & 5 deletions

File tree

services/workspace_listing.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,11 @@ def _safe_fetchall(query: str, params: tuple = ()) -> list:
134134
e,
135135
)
136136
except Exception as e:
137-
_logger.error("Failed to load composer rows from global storage: %s", e)
137+
_logger.error(
138+
"Failed to load composer rows from global storage: %s",
139+
e,
140+
exc_info=True,
141+
)
138142

139143
# Group workspace entries by normalized folder path
140144
folder_to_entries: dict[str, list] = {}

services/workspace_tabs.py

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from __future__ import annotations
22

3+
import hashlib
34
import json
45
import logging
56
import os
@@ -46,6 +47,17 @@ def _try_loads_kv_value(raw: str | None) -> Any | None:
4647
return None
4748

4849

50+
def _kv_payload_log_meta(value: object | None) -> tuple[int, str | None]:
51+
"""Byte length and short SHA-256 prefix for logs without emitting raw KV payloads."""
52+
if value is None:
53+
return 0, None
54+
if isinstance(value, bytes):
55+
payload = value
56+
else:
57+
payload = str(value).encode("utf-8", errors="replace")
58+
return len(payload), hashlib.sha256(payload).hexdigest()[:12]
59+
60+
4961
def assemble_workspace_tabs(
5062
workspace_id: str,
5163
workspace_path: str,
@@ -123,11 +135,13 @@ def _safe_fetchall(query: str, params: tuple = ()) -> list:
123135
try:
124136
parsed = json.loads(row["value"])
125137
except json.JSONDecodeError as e:
138+
payload_len, payload_fp = _kv_payload_log_meta(row["value"])
126139
_logger.warning(
127-
"Failed to decode Bubble from %s: %s (value: %r)",
140+
"Failed to decode Bubble from %s: %s (payload_len=%d, payload_sha256=%s)",
128141
row["key"],
129142
e,
130-
row["value"],
143+
payload_len,
144+
payload_fp,
131145
)
132146
continue
133147
try:
@@ -207,11 +221,14 @@ def _safe_fetchall(query: str, params: tuple = ()) -> list:
207221
try:
208222
parsed = json.loads(row["value"])
209223
except json.JSONDecodeError as e:
224+
payload_len, payload_fp = _kv_payload_log_meta(row["value"])
210225
_logger.warning(
211-
"Failed to decode Composer from composerData:%s: %s (value: %r)",
226+
"Failed to decode Composer from composerData:%s: %s (key=%s, payload_len=%d, payload_sha256=%s)",
212227
composer_id,
213228
e,
214-
row["value"],
229+
row["key"],
230+
payload_len,
231+
payload_fp,
215232
)
216233
continue
217234
try:

0 commit comments

Comments
 (0)