mirror of
https://github.com/rookiestar28/ComfyUI-OpenClaw.git
synced 2026-08-14 08:52:45 +00:00
72 lines
1.9 KiB
Python
72 lines
1.9 KiB
Python
"""Explicit internal-only content markers and sanitizer."""
|
|
|
|
from __future__ import annotations
|
|
|
|
import copy
|
|
from collections.abc import Mapping
|
|
from typing import Any
|
|
|
|
INTERNAL_CONTENT_FLAG = "openclaw_internal"
|
|
INTERNAL_CONTENT_ORIGIN = "openclaw.internal_maintenance"
|
|
|
|
_DROP = object()
|
|
|
|
|
|
def mark_internal_content(
|
|
text: str,
|
|
*,
|
|
kind: str = "maintenance_prompt",
|
|
metadata: Mapping[str, Any] | None = None,
|
|
) -> dict[str, Any]:
|
|
"""Create an explicit internal-only payload block."""
|
|
return {
|
|
INTERNAL_CONTENT_FLAG: True,
|
|
"origin": INTERNAL_CONTENT_ORIGIN,
|
|
"visibility": "internal",
|
|
"kind": str(kind or "maintenance_prompt"),
|
|
"content": str(text or ""),
|
|
"metadata": dict(metadata or {}),
|
|
}
|
|
|
|
|
|
def is_internal_content(value: Any) -> bool:
|
|
"""Return True only for explicit OpenClaw internal-content markers."""
|
|
if not isinstance(value, Mapping):
|
|
return False
|
|
if value.get(INTERNAL_CONTENT_FLAG) is True:
|
|
return True
|
|
return str(value.get("origin") or "") == INTERNAL_CONTENT_ORIGIN
|
|
|
|
|
|
def sanitize_internal_content(value: Any) -> Any:
|
|
"""Remove explicitly marked internal-only content recursively."""
|
|
cleaned = _sanitize(value)
|
|
if cleaned is _DROP:
|
|
return {}
|
|
return cleaned
|
|
|
|
|
|
def _sanitize(value: Any) -> Any:
|
|
if is_internal_content(value):
|
|
return _DROP
|
|
|
|
if isinstance(value, dict):
|
|
result: dict[Any, Any] = {}
|
|
for key, raw_child in value.items():
|
|
child = _sanitize(raw_child)
|
|
if child is _DROP:
|
|
continue
|
|
result[key] = child
|
|
return result
|
|
|
|
if isinstance(value, list):
|
|
result_list = []
|
|
for item in value:
|
|
child = _sanitize(item)
|
|
if child is _DROP:
|
|
continue
|
|
result_list.append(child)
|
|
return result_list
|
|
|
|
return copy.deepcopy(value)
|