@@ -62,6 +62,23 @@ type MakeUnknownsNotOptional<T> =
6262 }
6363 : T ;
6464
65+ // Targeted fix: in spec, treat ClientCapabilities.elicitation?: object as Record<string, unknown>
66+ type FixSpecClientCapabilities < T > = T extends { elicitation ?: object }
67+ ? Omit < T , 'elicitation' > & { elicitation ?: Record < string , unknown > }
68+ : T ;
69+
70+ type FixSpecInitializeRequestParams < T > = T extends { capabilities : infer C }
71+ ? Omit < T , 'capabilities' > & { capabilities : FixSpecClientCapabilities < C > }
72+ : T ;
73+
74+ type FixSpecInitializeRequest < T > = T extends { params : infer P }
75+ ? Omit < T , 'params' > & { params : FixSpecInitializeRequestParams < P > }
76+ : T ;
77+
78+ type FixSpecClientRequest < T > = T extends { params : infer P }
79+ ? Omit < T , 'params' > & { params : FixSpecInitializeRequestParams < P > }
80+ : T ;
81+
6582const sdkTypeChecks = {
6683 RequestParams : ( sdk : SDKTypes . RequestParams , spec : SpecTypes . RequestParams ) => {
6784 sdk = spec ;
@@ -75,7 +92,10 @@ const sdkTypeChecks = {
7592 sdk = spec ;
7693 spec = sdk ;
7794 } ,
78- InitializeRequestParams : ( sdk : SDKTypes . InitializeRequestParams , spec : SpecTypes . InitializeRequestParams ) => {
95+ InitializeRequestParams : (
96+ sdk : SDKTypes . InitializeRequestParams ,
97+ spec : FixSpecInitializeRequestParams < SpecTypes . InitializeRequestParams >
98+ ) => {
7999 sdk = spec ;
80100 spec = sdk ;
81101 } ,
@@ -480,23 +500,32 @@ const sdkTypeChecks = {
480500 sdk = spec ;
481501 spec = sdk ;
482502 } ,
483- InitializeRequest : ( sdk : WithJSONRPCRequest < SDKTypes . InitializeRequest > , spec : SpecTypes . InitializeRequest ) => {
503+ InitializeRequest : (
504+ sdk : WithJSONRPCRequest < SDKTypes . InitializeRequest > ,
505+ spec : FixSpecInitializeRequest < SpecTypes . InitializeRequest >
506+ ) => {
484507 sdk = spec ;
485508 spec = sdk ;
486509 } ,
487510 InitializeResult : ( sdk : SDKTypes . InitializeResult , spec : SpecTypes . InitializeResult ) => {
488511 sdk = spec ;
489512 spec = sdk ;
490513 } ,
491- ClientCapabilities : ( sdk : SDKTypes . ClientCapabilities , spec : SpecTypes . ClientCapabilities ) => {
514+ ClientCapabilities : (
515+ sdk : SDKTypes . ClientCapabilities ,
516+ spec : FixSpecClientCapabilities < SpecTypes . ClientCapabilities >
517+ ) => {
492518 sdk = spec ;
493519 spec = sdk ;
494520 } ,
495521 ServerCapabilities : ( sdk : SDKTypes . ServerCapabilities , spec : SpecTypes . ServerCapabilities ) => {
496522 sdk = spec ;
497523 spec = sdk ;
498524 } ,
499- ClientRequest : ( sdk : RemovePassthrough < WithJSONRPCRequest < SDKTypes . ClientRequest > > , spec : SpecTypes . ClientRequest ) => {
525+ ClientRequest : (
526+ sdk : RemovePassthrough < WithJSONRPCRequest < SDKTypes . ClientRequest > > ,
527+ spec : FixSpecClientRequest < SpecTypes . ClientRequest >
528+ ) => {
500529 sdk = spec ;
501530 spec = sdk ;
502531 } ,
0 commit comments