mirror of
https://github.com/bytedance/deer-flow.git
synced 2026-11-15 15:50:35 +00:00
* fix(gateway): reject unusable tool_artifacts entries at the input boundary merge_tool_artifacts keys every registry entry by handle, so a caller-supplied entry with a missing or unhashable handle raised while the state update merged; the thread-state route persists reducer values with Overwrite, so the bad shape was stored and every later artifact capture failed on it. Validate the list-of-objects shape with a non-empty string handle on both boundaries, and skip such an entry in the reducer so a poisoned checkpoint heals. * fix(gateway): keep the per-entry metadata strip for tool_artifacts The dedicated registry branch replaced the generic list branch and silently dropped its _strip_external_metadata_from_message_like pass. Registry entries are rich dicts, so a caller-crafted entry could persist server-owned message metadata into the checkpointed registry. Apply the strip to each validated entry; it is a no-op for legitimate registry entries.