@@ -10,8 +10,10 @@ import {
1010 createAttributedPermissionResult ,
1111 CopilotClient ,
1212 createCanvas ,
13+ DisableBypassPermissionsModes ,
1314 RuntimeConnection ,
1415 type GitHubTelemetryNotification ,
16+ type ManagedSettings ,
1517 type ModelInfo ,
1618} from "../src/index.js" ;
1719import { CopilotSession } from "../src/session.js" ;
@@ -3905,26 +3907,38 @@ describe("managedSettings serialization", () => {
39053907 }
39063908
39073909 it ( "forwards the full permissions object on session.create" , async ( ) => {
3908- const params = await captureCreateParams ( {
3909- managedSettings : {
3910- permissions : {
3911- disableBypassPermissionsMode : "disable" ,
3912- deny : [ "Shell(git push)" ] ,
3913- ask : [ "Domain(publish.example)" ] ,
3914- allow : [ "Read(**)" ] ,
3915- } ,
3910+ const managedSettings = {
3911+ permissions : {
3912+ disableBypassPermissionsMode : DisableBypassPermissionsModes . AllowAutoOnly ,
3913+ deny : [ "Shell(git push)" ] ,
3914+ ask : [ "Domain(publish.example)" ] ,
3915+ allow : [ "Read(**)" ] ,
39163916 } ,
3917+ } satisfies ManagedSettings ;
3918+ const params = await captureCreateParams ( {
3919+ managedSettings,
39173920 } ) ;
39183921 expect ( params . managedSettings ) . toEqual ( {
39193922 permissions : {
3920- disableBypassPermissionsMode : "disable " ,
3923+ disableBypassPermissionsMode : "allow-auto-only " ,
39213924 deny : [ "Shell(git push)" ] ,
39223925 ask : [ "Domain(publish.example)" ] ,
39233926 allow : [ "Read(**)" ] ,
39243927 } ,
39253928 } ) ;
39263929 } ) ;
39273930
3931+ it ( "forwards unknown bypass-permissions modes" , async ( ) => {
3932+ const managedSettings = {
3933+ permissions : {
3934+ disableBypassPermissionsMode : "future-fail-closed-mode" ,
3935+ } ,
3936+ } satisfies ManagedSettings ;
3937+ const params = await captureCreateParams ( { managedSettings } ) ;
3938+
3939+ expect ( params . managedSettings ) . toEqual ( managedSettings ) ;
3940+ } ) ;
3941+
39283942 it ( "marks directly injected sessions as managed" , async ( ) => {
39293943 const client = new CopilotClient ( ) ;
39303944 await client . start ( ) ;
0 commit comments