MICROSOFT AGENT FRAMEWORK · 0.16.0-rc.1
Stream fidelity and sessions
Verify whitespace, stream termination, session isolation and resumption on the shared backend.
Objectives
- Use this page to understand: Stream fidelity and sessions.
Prepare backend, clients and state
Prerequisites: Demo130, Demo400 and Demo410. Working files: Demo410/Backend, Client, Console, Web and Wpf; tests/Streaming.Tests. Copy the full distribution. Tests use a scripted model client; interactive manipulation requires real chat and the precompiled MCP server. WPF requires Windows and uses MVVM Toolkit.
Resume without confusing display and memory
Follow Demo410 backend/client commands in separate terminals. Use an isolated state directory and retain its path. Send BLUE-731 in a successful turn, clear only the display, then ask for the marker with the same ID. Repeat with a new ID. Restart the backend with the same directory and reuse the original ID.
dotnet test tests/Streaming.Tests/Streaming.Tests.csproj -m:1 -c Release --no-build --no-restoreObserve bytes and terminal state
Controlled cases preserve spaces, tabs, line breaks and Unicode even when an NDJSON line spans reads. Only completed confirms generation and saving. EOF without a terminal remains truncated. Canceling before commit retains the last successful snapshot; losing the connection after commit can leave completion unconfirmed. Model prose does not prove isolation: inspect assertions and session files.
Separate four boundaries
HTTP packet, network read, NDJSON frame and token are different boundaries. Compare reconstructed text with known test fragments, not a model paraphrase. Check incremental UTF-8 decoding and a partial line at EOF. A 409 signals the global generation gate with no hidden queue.
Correction with visible stream evidence
The correction uses Streaming.Tests: exact character preservation, explicit termination, cancellation before commit and concurrent-request rejection. Separate test results, interactive observation and business conclusions in your report. Do not automatically retry a request whose acknowledgement was lost.
Interface reservations
A session ID is not authentication. Clearing client history does not delete all snapshots. Graphical WPF acceptance and model recall quality remain separate from protocol tests. No exactly-once HTTP-turn guarantee is promised.
