@@ -803,20 +803,33 @@ pub struct McpToolCallProgressNotification {
803803#[ derive( Serialize , Deserialize , Debug , Clone , PartialEq , JsonSchema , TS ) ]
804804#[ serde( rename_all = "camelCase" ) ]
805805#[ ts( export_to = "v2/" ) ]
806- pub struct ItemRequestApprovalParams {
806+ pub struct CommandExecutionRequestApprovalParams {
807807 pub thread_id : String ,
808808 pub turn_id : String ,
809809 pub item_id : String ,
810- pub request : ItemApprovalRequest ,
810+ pub request : CommandExecutionRequest ,
811+ }
812+
813+ #[ derive( Serialize , Deserialize , Debug , Clone , PartialEq , JsonSchema , TS ) ]
814+ #[ ts( export_to = "v2/" ) ]
815+ pub struct CommandExecutionRequestApprovalResponse {
816+ pub decision : ReviewDecision ,
817+ }
818+
819+ #[ derive( Serialize , Deserialize , Debug , Clone , PartialEq , JsonSchema , TS ) ]
820+ #[ serde( rename_all = "camelCase" ) ]
821+ #[ ts( export_to = "v2/" ) ]
822+ pub struct FileChangeRequestApprovalParams {
823+ pub thread_id : String ,
824+ pub turn_id : String ,
825+ pub item_id : String ,
826+ pub request : FileChangeRequest ,
811827}
812828
813829#[ derive( Serialize , Deserialize , Debug , Clone , PartialEq , JsonSchema , TS ) ]
814- #[ serde( tag = "type" , rename_all = "camelCase" ) ]
815- #[ ts( tag = "type" ) ]
816830#[ ts( export_to = "v2/" ) ]
817- pub enum ItemApprovalRequest {
818- CommandExecution ( CommandExecutionRequest ) ,
819- FileEdit ( FileEditRequest ) ,
831+ pub struct FileChangeRequestApprovalResponse {
832+ pub decision : ReviewDecision ,
820833}
821834
822835#[ derive( Serialize , Deserialize , Debug , Clone , PartialEq , JsonSchema , TS ) ]
@@ -835,21 +848,14 @@ pub struct CommandExecutionRequest {
835848#[ derive( Serialize , Deserialize , Debug , Clone , PartialEq , JsonSchema , TS ) ]
836849#[ serde( rename_all = "camelCase" ) ]
837850#[ ts( export_to = "v2/" ) ]
838- pub struct FileEditRequest {
851+ pub struct FileChangeRequest {
839852 pub call_id : String ,
840853 pub file_changes : HashMap < PathBuf , FileChange > ,
841854 /// Optional explanatory reason (e.g. request for extra write access).
842855 pub reason : Option < String > ,
843856 pub grant_root : Option < PathBuf > ,
844857}
845858
846- #[ derive( Serialize , Deserialize , Debug , Clone , PartialEq , JsonSchema , TS ) ]
847- #[ serde( rename_all = "camelCase" ) ]
848- #[ ts( export_to = "v2/" ) ]
849- pub struct ItemRequestApprovalResponse {
850- pub decision : ReviewDecision ,
851- }
852-
853859#[ derive( Serialize , Deserialize , Debug , Clone , PartialEq , JsonSchema , TS ) ]
854860#[ serde( rename_all = "camelCase" ) ]
855861#[ ts( export_to = "v2/" ) ]
0 commit comments