@@ -187,20 +187,21 @@ func TestBuildConfigChangeDetails_SecretsAndCounts(t *testing.T) {
187187
188188func TestBuildConfigChangeDetails_FlagsAndKeys (t * testing.T ) {
189189 oldCfg := & config.Config {
190- Port : 1000 ,
191- AuthDir : "/old" ,
192- Debug : false ,
193- LoggingToFile : false ,
194- UsageStatisticsEnabled : false ,
195- DisableCooling : false ,
196- RequestRetry : 1 ,
197- MaxRetryCredentials : 1 ,
198- MaxRetryInterval : 1 ,
199- WebsocketAuth : false ,
200- QuotaExceeded : config.QuotaExceeded {SwitchProject : false , SwitchPreviewModel : false , AntigravityCredits : false },
201- ClaudeKey : []config.ClaudeKey {{APIKey : "c1" }},
202- CodexKey : []config.CodexKey {{APIKey : "x1" }},
203- RemoteManagement : config.RemoteManagement {DisableControlPanel : false , PanelGitHubRepository : "old/repo" , SecretKey : "keep" },
190+ Port : 1000 ,
191+ AuthDir : "/old" ,
192+ Debug : false ,
193+ LoggingToFile : false ,
194+ UsageStatisticsEnabled : false ,
195+ DisableCooling : false ,
196+ TransientErrorCooldownSeconds : 0 ,
197+ RequestRetry : 1 ,
198+ MaxRetryCredentials : 1 ,
199+ MaxRetryInterval : 1 ,
200+ WebsocketAuth : false ,
201+ QuotaExceeded : config.QuotaExceeded {SwitchProject : false , SwitchPreviewModel : false , AntigravityCredits : false },
202+ ClaudeKey : []config.ClaudeKey {{APIKey : "c1" }},
203+ CodexKey : []config.CodexKey {{APIKey : "x1" }},
204+ RemoteManagement : config.RemoteManagement {DisableControlPanel : false , PanelGitHubRepository : "old/repo" , SecretKey : "keep" },
204205 SDKConfig : sdkconfig.SDKConfig {
205206 RequestLog : false ,
206207 ProxyURL : "http://old-proxy" ,
@@ -210,17 +211,18 @@ func TestBuildConfigChangeDetails_FlagsAndKeys(t *testing.T) {
210211 },
211212 }
212213 newCfg := & config.Config {
213- Port : 2000 ,
214- AuthDir : "/new" ,
215- Debug : true ,
216- LoggingToFile : true ,
217- UsageStatisticsEnabled : true ,
218- DisableCooling : true ,
219- RequestRetry : 2 ,
220- MaxRetryCredentials : 3 ,
221- MaxRetryInterval : 3 ,
222- WebsocketAuth : true ,
223- QuotaExceeded : config.QuotaExceeded {SwitchProject : true , SwitchPreviewModel : true , AntigravityCredits : true },
214+ Port : 2000 ,
215+ AuthDir : "/new" ,
216+ Debug : true ,
217+ LoggingToFile : true ,
218+ UsageStatisticsEnabled : true ,
219+ DisableCooling : true ,
220+ TransientErrorCooldownSeconds : - 1 ,
221+ RequestRetry : 2 ,
222+ MaxRetryCredentials : 3 ,
223+ MaxRetryInterval : 3 ,
224+ WebsocketAuth : true ,
225+ QuotaExceeded : config.QuotaExceeded {SwitchProject : true , SwitchPreviewModel : true , AntigravityCredits : true },
224226 ClaudeKey : []config.ClaudeKey {
225227 {APIKey : "c1" , BaseURL : "http://new" , ProxyURL : "http://p" , Headers : map [string ]string {"H" : "1" }, ExcludedModels : []string {"a" }},
226228 {APIKey : "c2" },
@@ -250,6 +252,7 @@ func TestBuildConfigChangeDetails_FlagsAndKeys(t *testing.T) {
250252 expectContains (t , details , "logging-to-file: false -> true" )
251253 expectContains (t , details , "usage-statistics-enabled: false -> true" )
252254 expectContains (t , details , "disable-cooling: false -> true" )
255+ expectContains (t , details , "transient-error-cooldown-seconds: 0 -> -1" )
253256 expectContains (t , details , "disable-image-generation: false -> true" )
254257 expectContains (t , details , "request-log: false -> true" )
255258 expectContains (t , details , "request-retry: 1 -> 2" )
@@ -273,17 +276,18 @@ func TestBuildConfigChangeDetails_FlagsAndKeys(t *testing.T) {
273276
274277func TestBuildConfigChangeDetails_AllBranches (t * testing.T ) {
275278 oldCfg := & config.Config {
276- Port : 1 ,
277- AuthDir : "/a" ,
278- Debug : false ,
279- LoggingToFile : false ,
280- UsageStatisticsEnabled : false ,
281- DisableCooling : false ,
282- RequestRetry : 1 ,
283- MaxRetryCredentials : 1 ,
284- MaxRetryInterval : 1 ,
285- WebsocketAuth : false ,
286- QuotaExceeded : config.QuotaExceeded {SwitchProject : false , SwitchPreviewModel : false , AntigravityCredits : false },
279+ Port : 1 ,
280+ AuthDir : "/a" ,
281+ Debug : false ,
282+ LoggingToFile : false ,
283+ UsageStatisticsEnabled : false ,
284+ DisableCooling : false ,
285+ TransientErrorCooldownSeconds : 0 ,
286+ RequestRetry : 1 ,
287+ MaxRetryCredentials : 1 ,
288+ MaxRetryInterval : 1 ,
289+ WebsocketAuth : false ,
290+ QuotaExceeded : config.QuotaExceeded {SwitchProject : false , SwitchPreviewModel : false , AntigravityCredits : false },
287291 GeminiKey : []config.GeminiKey {
288292 {APIKey : "g-old" , BaseURL : "http://g-old" , ProxyURL : "http://gp-old" , Headers : map [string ]string {"A" : "1" }},
289293 },
@@ -320,17 +324,18 @@ func TestBuildConfigChangeDetails_AllBranches(t *testing.T) {
320324 },
321325 }
322326 newCfg := & config.Config {
323- Port : 2 ,
324- AuthDir : "/b" ,
325- Debug : true ,
326- LoggingToFile : true ,
327- UsageStatisticsEnabled : true ,
328- DisableCooling : true ,
329- RequestRetry : 2 ,
330- MaxRetryCredentials : 3 ,
331- MaxRetryInterval : 3 ,
332- WebsocketAuth : true ,
333- QuotaExceeded : config.QuotaExceeded {SwitchProject : true , SwitchPreviewModel : true , AntigravityCredits : true },
327+ Port : 2 ,
328+ AuthDir : "/b" ,
329+ Debug : true ,
330+ LoggingToFile : true ,
331+ UsageStatisticsEnabled : true ,
332+ DisableCooling : true ,
333+ TransientErrorCooldownSeconds : - 1 ,
334+ RequestRetry : 2 ,
335+ MaxRetryCredentials : 3 ,
336+ MaxRetryInterval : 3 ,
337+ WebsocketAuth : true ,
338+ QuotaExceeded : config.QuotaExceeded {SwitchProject : true , SwitchPreviewModel : true , AntigravityCredits : true },
334339 GeminiKey : []config.GeminiKey {
335340 {APIKey : "g-new" , BaseURL : "http://g-new" , ProxyURL : "http://gp-new" , Headers : map [string ]string {"A" : "2" }, ExcludedModels : []string {"x" , "y" }},
336341 },
@@ -380,6 +385,7 @@ func TestBuildConfigChangeDetails_AllBranches(t *testing.T) {
380385 expectContains (t , changes , "logging-to-file: false -> true" )
381386 expectContains (t , changes , "usage-statistics-enabled: false -> true" )
382387 expectContains (t , changes , "disable-cooling: false -> true" )
388+ expectContains (t , changes , "transient-error-cooldown-seconds: 0 -> -1" )
383389 expectContains (t , changes , "disable-image-generation: false -> true" )
384390 expectContains (t , changes , "request-retry: 1 -> 2" )
385391 expectContains (t , changes , "max-retry-credentials: 1 -> 3" )
0 commit comments