Skip to content

Commit 18b4be4

Browse files
cdeustclaude
andcommitted
chore(format): ruff format on memories_page + memories_facets
CI Lint:Check formatting was failing on these two new handlers (the only files in the tree not previously through ruff format). No behavior change. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 2953bae commit 18b4be4

2 files changed

Lines changed: 74 additions & 56 deletions

File tree

mcp_server/handlers/memories_facets.py

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -66,35 +66,41 @@ def serve(handler, store) -> None:
6666
agg = dict(agg) if not isinstance(agg, dict) else agg
6767

6868
domains = [
69-
{"name": dict(r)["dom"] if not isinstance(r, dict) else r["dom"],
70-
"count": int(dict(r)["c"] if not isinstance(r, dict) else r["c"])}
69+
{
70+
"name": dict(r)["dom"] if not isinstance(r, dict) else r["dom"],
71+
"count": int(dict(r)["c"] if not isinstance(r, dict) else r["c"]),
72+
}
7173
for r in domain_rows
7274
]
7375

7476
payload = {
75-
"total": int(agg.get("total") or 0),
76-
"domains": domains,
77+
"total": int(agg.get("total") or 0),
78+
"domains": domains,
7779
"stages": {
78-
"labile": int(agg.get("s_labile") or 0),
79-
"early_ltp": int(agg.get("s_early") or 0),
80-
"late_ltp": int(agg.get("s_late") or 0),
81-
"consolidated": int(agg.get("s_cons") or 0),
80+
"labile": int(agg.get("s_labile") or 0),
81+
"early_ltp": int(agg.get("s_early") or 0),
82+
"late_ltp": int(agg.get("s_late") or 0),
83+
"consolidated": int(agg.get("s_cons") or 0),
8284
"reconsolidating": int(agg.get("s_recon") or 0),
8385
},
8486
"emotions": {
85-
"urgent": int(agg.get("e_urgent") or 0),
87+
"urgent": int(agg.get("e_urgent") or 0),
8688
"positive": int(agg.get("e_pos") or 0),
8789
"negative": int(agg.get("e_neg") or 0),
88-
"neutral": int(agg.get("e_neutral") or 0),
90+
"neutral": int(agg.get("e_neutral") or 0),
8991
},
90-
"global": int(agg.get("n_global") or 0),
92+
"global": int(agg.get("n_global") or 0),
9193
"protected": int(agg.get("n_protected") or 0),
92-
"hot": int(agg.get("n_hot") or 0),
94+
"hot": int(agg.get("n_hot") or 0),
9395
}
9496
_send_json(handler, 200, payload)
9597
except Exception as exc:
96-
_send_json(handler, 500, {
97-
"status": "error",
98-
"reason": "facets_query_failed",
99-
"detail": f"{type(exc).__name__}: {exc}",
100-
})
98+
_send_json(
99+
handler,
100+
500,
101+
{
102+
"status": "error",
103+
"reason": "facets_query_failed",
104+
"detail": f"{type(exc).__name__}: {exc}",
105+
},
106+
)

mcp_server/handlers/memories_page.py

Lines changed: 51 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -37,17 +37,17 @@
3737
_SORT_ORDER_BY = {
3838
# heat_base is the persisted base heat; effective_heat is a function
3939
# call that we skip here for listing speed.
40-
"heat": "heat_base DESC, id DESC",
40+
"heat": "heat_base DESC, id DESC",
4141
"recent": "created_at DESC, id DESC",
4242
"oldest": "created_at ASC, id ASC",
4343
}
4444
_SORT_KEY_COLUMN = {
45-
"heat": "heat_base",
45+
"heat": "heat_base",
4646
"recent": "created_at",
4747
"oldest": "created_at",
4848
}
4949
_SORT_DIRECTION = {
50-
"heat": "<", # next page has smaller heat or same heat with smaller id
50+
"heat": "<", # next page has smaller heat or same heat with smaller id
5151
"recent": "<",
5252
"oldest": ">",
5353
}
@@ -102,31 +102,31 @@ def _row_to_node(row: Any) -> dict:
102102
if d.get("importance") and d["importance"] >= 0.75:
103103
emotion = "urgency"
104104
return {
105-
"id": "memory:" + str(d.get("id")),
106-
"memory_id": d.get("id"),
107-
"type": "memory",
108-
"kind": "memory",
109-
"label": d.get("content") or "",
110-
"content": d.get("content") or "",
111-
"domain": d.get("domain") or "",
112-
"domain_id": "domain:" + (d.get("domain") or "__global__"),
113-
"tags": d.get("tags") or [],
114-
"heat": float(d.get("heat_base") or 0.0),
115-
"importance": float(d.get("importance") or 0.0),
116-
"stage": d.get("consolidation_stage") or "labile",
105+
"id": "memory:" + str(d.get("id")),
106+
"memory_id": d.get("id"),
107+
"type": "memory",
108+
"kind": "memory",
109+
"label": d.get("content") or "",
110+
"content": d.get("content") or "",
111+
"domain": d.get("domain") or "",
112+
"domain_id": "domain:" + (d.get("domain") or "__global__"),
113+
"tags": d.get("tags") or [],
114+
"heat": float(d.get("heat_base") or 0.0),
115+
"importance": float(d.get("importance") or 0.0),
116+
"stage": d.get("consolidation_stage") or "labile",
117117
"consolidationStage": d.get("consolidation_stage") or "labile",
118118
"consolidation_stage": d.get("consolidation_stage") or "labile",
119-
"createdAt": d.get("created_at"),
120-
"lastAccessed": d.get("last_accessed"),
121-
"isProtected": bool(d.get("is_protected")),
122-
"is_protected": bool(d.get("is_protected")),
123-
"isGlobal": bool(d.get("is_global")),
124-
"is_global": bool(d.get("is_global")),
125-
"emotion": emotion,
126-
"emotional_valence": float(val) if val is not None else 0.0,
127-
"store_type": d.get("store_type") or "episodic",
128-
"access_count": int(d.get("access_count") or 0),
129-
"useful_count": int(d.get("useful_count") or 0),
119+
"createdAt": d.get("created_at"),
120+
"lastAccessed": d.get("last_accessed"),
121+
"isProtected": bool(d.get("is_protected")),
122+
"is_protected": bool(d.get("is_protected")),
123+
"isGlobal": bool(d.get("is_global")),
124+
"is_global": bool(d.get("is_global")),
125+
"emotion": emotion,
126+
"emotional_valence": float(val) if val is not None else 0.0,
127+
"store_type": d.get("store_type") or "episodic",
128+
"access_count": int(d.get("access_count") or 0),
129+
"useful_count": int(d.get("useful_count") or 0),
130130
}
131131

132132

@@ -212,7 +212,9 @@ def serve(handler, store) -> None:
212212
if emotion not in ("urgent", "positive", "negative", "neutral", None):
213213
emotion = None
214214
try:
215-
min_heat = float(qs.get("min_heat", [""])[0]) if qs.get("min_heat", [""])[0] else None
215+
min_heat = (
216+
float(qs.get("min_heat", [""])[0]) if qs.get("min_heat", [""])[0] else None
217+
)
216218
except (TypeError, ValueError):
217219
min_heat = None
218220
protected_only = qs.get("protected", ["0"])[0] in ("1", "true", "yes")
@@ -252,11 +254,15 @@ def serve(handler, store) -> None:
252254
cur = store._execute(sql, tuple(params))
253255
rows = cur.fetchall()
254256
except Exception as exc:
255-
_send_json(handler, 500, {
256-
"status": "error",
257-
"reason": "query_failed",
258-
"detail": f"{type(exc).__name__}: {exc}",
259-
})
257+
_send_json(
258+
handler,
259+
500,
260+
{
261+
"status": "error",
262+
"reason": "query_failed",
263+
"detail": f"{type(exc).__name__}: {exc}",
264+
},
265+
)
260266
return
261267

262268
has_more = len(rows) > limit
@@ -267,16 +273,22 @@ def serve(handler, store) -> None:
267273
last = dict(items[-1]) if not isinstance(items[-1], dict) else items[-1]
268274
sort_value: Any
269275
if sort == "heat":
270-
sort_value = float(last["heat_base"]) if last.get("heat_base") is not None else 0.0
276+
sort_value = (
277+
float(last["heat_base"]) if last.get("heat_base") is not None else 0.0
278+
)
271279
else:
272280
ts = last.get("created_at")
273281
sort_value = ts.isoformat() if hasattr(ts, "isoformat") else ts
274282
next_cursor = _encode_cursor({"k": sort_value, "id": last["id"]})
275283

276284
nodes = [_row_to_node(r) for r in items]
277-
_send_json(handler, 200, {
278-
"items": nodes,
279-
"next_cursor": next_cursor,
280-
"page_count": len(nodes),
281-
"sort": sort,
282-
})
285+
_send_json(
286+
handler,
287+
200,
288+
{
289+
"items": nodes,
290+
"next_cursor": next_cursor,
291+
"page_count": len(nodes),
292+
"sort": sort,
293+
},
294+
)

0 commit comments

Comments
 (0)