hermes-bsd/tests/tui_gateway
teknium1 61622bb56a fix(tui): use role=user for model switch marker to avoid HTTP 400 on strict providers (#48338)
_append_model_switch_marker() appended the post-/model-switch context marker
to session history as {"role": "system"}. The cached system prompt is
prepended to the API message list (conversation_loop.py), so this marker
became a SECOND system message mid-array after prior user/assistant turns.
Strict OpenAI-compatible providers (vLLM, Qwen) reject any system message
that is not at the beginning of the array, returning HTTP 400 and killing
the conversation on the next turn.

Flip the marker to role="user" (history entry + both session-DB persist
sites), matching the existing personality-overlay marker which already uses
role="user". repair_message_sequence() then coalesces it with adjacent user
turns as needed.

Co-authored-by: liuhao1024 <sunsky.lau@gmail.com>
Co-authored-by: Lucas Nicolas <lucas.nicolas@proton.me>
2026-06-28 04:34:55 -07:00
..
__init__.py
test_billing_rpc.py
test_compaction_status.py
test_custom_provider_session_persistence.py
test_entry_sys_path.py
test_finalize_session_persist.py
test_goal_command.py feat(moa): make /moa one-shot only; route preset switching through the model picker 2026-06-27 03:09:09 -07:00
test_make_agent_provider.py
test_moa_reference_emit.py feat(moa): render reference-model blocks in TUI and desktop, not just CLI (#53855) 2026-06-27 18:46:20 -07:00
test_model_switch_marker_role.py fix(tui): use role=user for model switch marker to avoid HTTP 400 on strict providers (#48338) 2026-06-28 04:34:55 -07:00
test_pet_generate_rpc.py feat(pets): polish generate flow and reduce hatch CPU pressure 2026-06-24 19:08:06 -05:00
test_project_tree.py feat(gateway): build authoritative project tree 2026-06-25 16:40:27 -05:00
test_projects_rpc.py feat(gateway): build authoritative project tree 2026-06-25 16:40:27 -05:00
test_protocol.py fix(tui): route completion RPCs to the pool so they can't freeze the TUI (#53895) 2026-06-27 19:06:01 -07:00
test_render.py
test_review_summary_callback.py
test_subagent_child_mirror.py
test_undo_command.py
test_wait_for_mcp_discovery.py