Skip to content

th-server-12212: chat_stream 5xx-retry (core 0.16.2) + gpt-oss chips-parse#222

Merged
brentrager merged 2 commits into
mainfrom
th-server-12212-stream-retry
Jul 10, 2026
Merged

th-server-12212: chat_stream 5xx-retry (core 0.16.2) + gpt-oss chips-parse#222
brentrager merged 2 commits into
mainfrom
th-server-12212-stream-retry

Conversation

@brentrager

Copy link
Copy Markdown
Contributor

Cuts server 1.22.12, bundling two fixes for the chat/empty-reply + chips symptoms surfaced on the Transformation Posture agent (gpt-oss-120b).

1. chat_stream 5xx-retry (core 0.16.2)

chat_stream (every chat turn) retried only transient transport errors, then bailed immediately on any non-success HTTP status. A transient gateway 5xx (groq/LiteLLM 502/503 — as happened in the recent valkey→api-prime→litellm incident) propagated as an AGENT_ERROR and the widget rendered an empty reply. Core 0.16.2 (already published) makes chat_stream retry policy.retry_on_status before reading any stream bytes, mirroring chat(). This bumps the workspace core dep 0.16.1→0.16.2.

2. gpt-oss markdown-list chips-parse

gpt-oss-120b often ignores the <suggested_replies> marker and ends its reply with a markdown Suggested replies: list, so extract_suggested_replies found no marker → empty chips. It now also parses that trailing list (conservative: only when the header is followed by a pure bullet/numbered list to the end). 4 new unit tests on the real gpt-oss shape.

Validation (no Rust CI in this repo)

Local: cargo check --workspace clean with core 0.16.2; cargo test -p ...-server --lib suggestions:: 14/14; cargo test -p ...-core --lib chat_stream_retries (in core PR #79) pass; clippy clean for changed code.

Lockstep version bump to 1.22.12 across all published artifacts via version:bump.

brentrager and others added 2 commits July 10, 2026 16:41
Workspace cargo check clean across server + operator + ingestion + 5 adapters
(no E0053). Confirms core 0.16.2 live on crates.io.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
extract_suggested_replies now also parses a trailing markdown "Suggested replies:"
list, so models that ignore the <suggested_replies> marker (gpt-oss-120b — the TP
agent's default model) still populate chips instead of shipping empty
suggestedNextActions. Conservative: fires only when the header is followed by a
pure bullet/numbered list to the end of the reply.

Ships alongside the core 0.16.2 chat_stream 5xx-retry (dep already bumped in
af6d3f2). Lockstep version bump to 1.22.12 across all published artifacts.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@changeset-bot

changeset-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 3c3d21f

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@brentrager brentrager merged commit af08043 into main Jul 10, 2026
6 checks passed
@brentrager brentrager deleted the th-server-12212-stream-retry branch July 10, 2026 21:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant