MemPalace/mempalace · error · ValueError
source_file contains null bytes
Error message
source_file contains null bytes
What it means
Error "source_file contains null bytes" thrown in MemPalace/mempalace.
Source
Thrown at mempalace/mcp_server.py:1817
Unlike wing/room, a source_file is a path: ``/``, ``\\`` and ``.`` are
legal, so it is NOT run through ``sanitize_name`` (which rejects path
characters as traversal attempts). The value is matched verbatim as a
ChromaDB metadata-equality / parameterized-SQL value — never used as a
filesystem path — so there is no traversal risk to guard against. A null
byte or a pathological length can still upset the backend (chromadb
add/upsert chokes on null bytes / lone surrogates, #1235), so guard those
for parity with ``sanitize_name``. Blank / whitespace-only is "no filter".
"""
if value is None:
return None
if not isinstance(value, str):
raise ValueError("source_file must be a string")
value = value.strip()
if not value:
return None
if "\x00" in value:
raise ValueError("source_file contains null bytes")
if value != strip_lone_surrogates(value):
raise ValueError("source_file contains invalid surrogate characters")
if len(value) > _MAX_SOURCE_FILE_LENGTH:
raise ValueError(
f"source_file exceeds maximum length of {_MAX_SOURCE_FILE_LENGTH} characters"
)
return value
# The #1128 date-filter helpers moved to ``mempalace.date_window`` so the
# search-side window (#463) can share them without importing this module
# (whose import installs MCP stdio protection). Aliased under their
# historical private names — every call site and test keeps working.
_parse_date_filter = parse_date_bound
_filed_at_in_window = filed_at_in_window
# ==================== READ TOOLS ====================View on GitHub (pinned to 06cb6987f0)
Solutions
- Remove null bytes from the source_file value
When it happens
Trigger: Thrown at mempalace/mcp_server.py:1817 when the library encounters an invalid state.
Common situations: Client payload contained a NUL character in the path.
AI-assisted analysis of MemPalace/mempalace@06cb6987f0 (2026-08-15).
Data as JSON: /api/errors/ca11926a88f54348.
Report an issue: GitHub.