test(e2e): verify multi-turn Anthropic sessions - #2711
Merged
Conversation
Exercise six-request Anthropic tool histories across the per-model session matrix, including supported intermediate-system insertion and endpoint-specific assistant formatting thresholds. Journal verifier assertions and hard TITO mismatches before rollout retries can replace failed attempts.
guapisolo
requested review from
Shi-Dong,
Zhichenzzz,
fzyzcjy,
jybsuper,
maocheng23 and
yueming-yuan
as code owners
August 22, 2026 06:54
There was a problem hiding this comment.
Claude Code Review
This repository is configured for manual code reviews. Comment @claude review for a one-time review, or @claude review always to subscribe this PR to a review on every future push.
Tip: disable this comment in your organization's Code Review settings.
Retry length-limited OpenAI and Anthropic generations from the same parent prompt before advancing the verifier. Keep retries bounded and preserve hard completion, history, and TITO checks when the model does not recover.
Retry incomplete endpoint responses before advancing and validate the active six-turn path while the v2 tree retains superseded retry leaves.
Apply the exact trailing comma required by the repository Black hook.
Shi-Dong
approved these changes
Aug 24, 2026
Execute the paired SGLang conversion and serving suites from Miles stage-a CPU CI so SGLang PR #35127 has a policy-independent behavior-preservation gate.
Match the repository's Black line-length configuration so pre-commit does not rewrite the new CPU bridge.
Collaborator
Author
|
Wait for sglang bump and rebase, then we can merge this PR. |
Collaborator
Author
|
Verified on head
The bridge executes SGLang #35127's owned |
guapisolo
force-pushed
the
jiajun/anthropic-session-e2e
branch
from
August 29, 2026 02:08
18d41fd to
eb65212
Compare
Qwen3.6 Anthropic tool-call conversion normalizes assistant delimiters and yields a 1.0 formatting-only mismatch rate. Keep the 0.2 OpenAI threshold and hard mismatch gates unchanged while allowing 1.0 only for the Anthropic pass.
Auto allocation no longer rejects a usable port because another port in a consecutive span is occupied. Explicit --session-server-port values continue to anchor consecutive worker ranges.
guapisolo
force-pushed
the
jiajun/anthropic-session-e2e
branch
2 times, most recently
from
August 30, 2026 01:42
6e16fc6 to
b8f5667
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Verify six-request Anthropic sessions and pin SGLang conversion behavior in Miles CI.
Motivation
Six-request tool/result/text histories, reasoning replay, and supported intermediate-system insertion must preserve TITO prefixes. Incomplete Nemotron and GLM-4.7 responses must retry without advancing invalid history. SGLang PR #35127 refactors the runtime-independent Anthropic conversion seams, but its external-PR policy does not run the owning CPU suites, so Miles needs a temporary paired-checkout gate for behavior preservation.
Usage
Design Notes
SGLANG_SOURCE_ROOTpinned byci-sglang-pr: #35127ate95eae48.--session-server-portstill anchors a consecutive range.1.0assistant-text thresholds for conversion-normalized delimiters; OpenAI thresholds and all hard mismatch gates remain unchanged.Verification
miles-h200-dev-2:38 passedfor session verifier routing onb9bea31d, then12 passedfor router allocation and146 passedfor argument parsing on713df081c; changed-file pre-commit passed.0.0, and the captured assistant diff was only</think>\n\n<tool_call>versus</think><tool_call>.4/4sidecar failed at0.2and passed at the Anthropic-only1.0; pre-commit passed.b8f5667c: 11 commits replayed conflict-free onto11563829a; source metadata and cumulative trees were verified.git diff --check 11563829a...b8f5667c: passed.Review Focus
e95eae48and subprocess failure propagation.