hermes-agent/gateway/platforms
Teknium a51a4cb096 fix(api-server): mark replayed tool calls completed in Responses output items
The non-streaming /v1/responses path built function_call and
function_call_output output items with no status field (and no item id),
while the SSE streaming path correctly emits status in_progress ->
completed. Spec-strict OpenAI clients reading the non-streaming output
array could interpret the status-less function_call items as pending
calls the CLIENT must execute — but these tools were already executed
server-side by the Hermes agent and are replayed for structured tool UI
only. Reported by a community user whose GPT-5.6 client concluded 'a
server should not tell an OpenAI client to execute a tool the server
already executed itself'.

- _extract_output_items now stamps status: completed and spec-shaped
  item ids (fc_/fco_) on replayed items, matching the streaming path
- test updated to pin status + id shape
- docs example updated + explicit note that output tool calls are
  replayed, never pending
2026-08-08 05:22:02 -07:00
..
qqbot
…
ADDING_A_PLATFORM.md
…
__init__.py
…
_http_client_limits.py
…
api_server.py
…
base.py
…
bluebubbles.py
…
helpers.py
…
media_cache.py
…
msgraph_webhook.py
…
signal.py
…
signal_format.py
…
signal_rate_limit.py
…
webhook.py
…
webhook_filters.py
…
weixin.py
…
whatsapp_cloud.py
…
whatsapp_common.py
…
yuanbao.py
…
yuanbao_media.py
…
yuanbao_proto.py
…
yuanbao_sticker.py
…