feat(webui): render indexed context metadata

This commit is contained in:
Lumen Yang committed 2026-05-19 18:52:50 +00:00
1 parent 0310fcc466
commit 8d2b9d4a16
6 files changed
+161 -4

No files matched your search

+20
View File
@@ -53,6 +53,24 @@ def _content_has_part_type(content, part_types):
)
def _is_context_compression_marker(message):
"""Return true for synthetic compression/reference cards, not user turns."""
if not isinstance(message, dict):
return False
role = message.get("role")
if not role or role == "tool":
return False
text = _content_text(
message.get("content", ""),
part_types={"text", "input_text", "output_text"},
).lower().lstrip()
return (
text.startswith("[context compaction")
or text.startswith("context compaction")
or text.startswith("[your active task list was preserved across context compression]")
)
def visible_messages_for_anchor(messages, *, auto_compression: bool = False):
"""Return transcript messages that can anchor compression UI metadata.
@@ -70,6 +88,8 @@ def visible_messages_for_anchor(messages, *, auto_compression: bool = False):
role = message.get("role")
if not role or role == "tool":
continue
if _is_context_compression_marker(message):
continue
content = message.get("content", "")
has_attachments = bool(message.get("attachments"))