Commit 8c6b78b
committed
Record two divergences as intentional, ecosystem-consistent choices
Two interaction-suite divergence notes described their gaps as
unenforced spec MUSTs without saying whether closing them was planned.
Both are deliberate, and the notes now say so.
transport:stdio:stream-purity -- stdio_server does not redirect
sys.stdout, so a handler print() corrupts the protocol stream. No MCP
SDK redirects stdout, and a redirect would only catch print(), not
os.write(1, ...) or C extensions writing to file descriptor 1, so it
would be a partial guard rather than a structural fix.
docs/tutorial/logging.md already tells server authors to log to stderr
and never print() in a stdio server, so no docs change was needed.
protocol:progress:monotonic -- no MCP SDK validates sender-side
progress monotonicity; the spec MUST is a contract on the handler
author, not on the transport, and the test pins the unvalidated
pass-through.
No code or test behaviour changes.1 parent f551eff commit 8c6b78b
1 file changed
Lines changed: 12 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
668 | 668 | | |
669 | 669 | | |
670 | 670 | | |
671 | | - | |
672 | | - | |
673 | | - | |
674 | | - | |
| 671 | + | |
| 672 | + | |
| 673 | + | |
| 674 | + | |
| 675 | + | |
675 | 676 | | |
676 | 677 | | |
677 | 678 | | |
| |||
3626 | 3627 | | |
3627 | 3628 | | |
3628 | 3629 | | |
3629 | | - | |
3630 | | - | |
3631 | | - | |
| 3630 | + | |
| 3631 | + | |
| 3632 | + | |
| 3633 | + | |
| 3634 | + | |
| 3635 | + | |
| 3636 | + | |
3632 | 3637 | | |
3633 | 3638 | | |
3634 | 3639 | | |
| |||
0 commit comments