{"repo":"NousResearch/hermes-agent","public_id":"20866","display_label":"Fix misplaced system/marker messages causing HTTP 400 errors","summary":"These issues and fixes address two related problems: system messages appearing mid-conversation instead of at the start, and model-switch markers using role='system' mid-conversation, both causing HTTP 400 errors on strict providers like vLLM and Qwen.","subsystem":"agent","counts":{"members":3,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":0,"attempt_prs":2},"landed_fix":null,"resolution":{"state":"unresolved","by":null},"freshness":{"state":"never_verified","last_verified_at":null,"is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[],"members":[{"kind":"issue","number":20866,"title":"[Bug]: 400 format_error on Qwen3.6-27B — \"System message must be at the beginning\" in auxiliary tasks","url":null,"state":"closed"},{"kind":"pr","number":20913,"title":"fix(auxiliary): ensure system messages precede other roles before LLM call","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#20866","number":20866}],"category":"uncategorized","implication":"needs_llm"},"merged":false},{"kind":"pr","number":22624,"title":"fix(auxiliary-client): hoist misplaced system messages to front before dispatch (#20866)","url":null,"state":"closed","close_reason":{"category":"silent_close","implication":"active"},"merged":false}],"trust":{"default_tier":"verified","includes_suggested":false}}