File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -92,12 +92,13 @@ def run_client(main: Callable[..., Awaitable[None]]) -> None:
9292 targets = target_from_args (file )
9393 build_auth : AuthBuilder | None = globals_ .get ("build_auth" )
9494 transport = "http" if "--http" in sys .argv else "stdio"
95- # Never rely on the SDK's mode= default — be explicit. stdio is legacy-only until
96- # the SDK's stdio entry can negotiate the era, so only --http gets a modern arm.
95+ # The era is an axis of the story matrix, so ``mode=`` is always passed explicitly
96+ # even though it often matches the ``Client`` default of "auto". stdio is legacy-only
97+ # until the SDK's stdio entry can negotiate the era, so only --http gets a modern arm.
9798 era = "modern" if transport == "http" and "--legacy" not in sys .argv else "legacy"
9899 if cfg ["era" ] == "dual-in-body" :
99- # The story pins its connection modes inside ``main`` itself, so hand it the
100- # real-user "auto" default and let those in-body pins decide. A hard version pin
100+ # The story pins its connection modes inside ``main`` itself, so hand it "auto"
101+ # (the ``Client`` default) and let those in-body pins decide. A hard version pin
101102 # here would skip the discover probe and leave ``server_info`` blank.
102103 era = "in-body"
103104 mode = {"modern" : LATEST_MODERN_VERSION , "legacy" : "legacy" , "in-body" : "auto" }[era ]
Original file line number Diff line number Diff line change @@ -7,11 +7,11 @@ the server resumes from the carried state. The story will show both the
77auto-fulfil helper and a manual resubmit loop.
88
99** Status: not yet implemented** ([ #2898 ] ( https://github.com/modelcontextprotocol/python-sdk/issues/2898 ) ).
10- The lowlevel registration surface exists on ` main ` as of
10+ The lowlevel registration surface is in this base —
1111[ #2967 ] ( https://github.com/modelcontextprotocol/python-sdk/pull/2967 )
12- (` ae13ede ` ), which widened the tool/prompt/resource handler return types to
13- include ` InputRequiredResult ` . This story graduates from a README stub to a
14- runnable example once this branch's base includes that commit .
12+ (` ae13ede ` ) widened the tool/prompt/resource handler return types to include
13+ ` InputRequiredResult ` . The runnable story is deliberately a follow-up PR to
14+ keep this one reviewable .
1515
1616## Spec
1717
Original file line number Diff line number Diff line change @@ -6,12 +6,11 @@ them. Replaces the handshake-era `resources/subscribe` + standalone-GET
66notification path.
77
88** Status: not yet implemented** ([ #2901 ] ( https://github.com/modelcontextprotocol/python-sdk/issues/2901 ) ).
9- The lowlevel registration surface exists on ` main ` as of
9+ The lowlevel registration surface is in this base —
1010[ #2967 ] ( https://github.com/modelcontextprotocol/python-sdk/pull/2967 )
11- (` ae13ede ` ), which added the lowlevel ` on_subscriptions_listen ` handler slot.
12- There is no ` Client.listen() ` or ` ServerEventBus ` yet; this story graduates
13- from a README stub to a runnable example once this branch's base includes that
14- commit.
11+ (` ae13ede ` ) added the lowlevel ` on_subscriptions_listen ` handler slot — but
12+ there is no ` Client.listen() ` or ` ServerEventBus ` yet. The runnable story is
13+ deliberately a follow-up PR to keep this one reviewable.
1514
1615## Spec
1716
Original file line number Diff line number Diff line change 4545_ERA_TO_MODE = {"modern" : LATEST_MODERN_VERSION , "legacy" : "legacy" , "in-body" : "auto" }
4646"""``Client`` rejects handshake-era version strings, so ``legacy`` resolves to
4747``mode='legacy'`` rather than ``LATEST_HANDSHAKE_VERSION``. ``in-body`` legs pin
48- their connection modes inside ``main`` themselves, so they get the real-user default."""
48+ their connection modes inside ``main`` themselves, so they get ``"auto"`` — the
49+ ``Client`` default; the era axis still passes every ``mode=`` explicitly."""
4950
5051
5152def story_cfg (name : str ) -> dict [str , Any ]:
You can’t perform that action at this time.
0 commit comments