mirror of
https://github.com/openai/codex.git
synced 2026-11-13 14:46:14 +00:00
Make external session detection limits configurable (#34449)
## What changed - Add `maxSessionAgeDays` and `maxSessions` to the external-agent config detection request. - Apply the requested limits when discovering sessions from supported migration sources. - Preserve the existing defaults of a 30-day maximum age and 50 sessions when either option is omitted. GitOrigin-RevId: 46376e94b64f1f61d8776e34d82cdd2cdeb36ca0
This commit is contained in:
1 parent
9078e32371
commit
3bc49e1721
18 files changed
+195
-25
No files matched your search
@@ -1,4 +1,5 @@
|
||||
use std::sync::Arc;
|
||||
use std::time::Duration;
|
||||
|
||||
use crate::config_manager::ConfigManager;
|
||||
use crate::error_code::internal_error;
|
||||
@@ -30,6 +31,7 @@ use codex_external_agent_migration::ExternalAgentConfigImportItemResult as CoreI
|
||||
use codex_external_agent_migration::ExternalAgentConfigImportOutcome as CoreImportOutcome;
|
||||
use codex_external_agent_migration::ExternalAgentConfigMigrationItemType as CoreMigrationItemType;
|
||||
use codex_external_agent_migration::ExternalAgentConfigService;
|
||||
use codex_external_agent_migration::ExternalAgentSessionImportLimits;
|
||||
use codex_external_agent_migration::PluginImportOutcome;
|
||||
use codex_external_agent_migration::record_import_error;
|
||||
use codex_external_agent_migration::sessions::ExternalAgentSessionMigration as CoreSessionMigration;
|
||||
@@ -119,6 +121,18 @@ impl ExternalAgentConfigRequestProcessor {
|
||||
let migration_service = self
|
||||
.migration_service
|
||||
.with_migration_source(params.migration_source.as_deref());
|
||||
let default_session_import_limits = ExternalAgentSessionImportLimits::default();
|
||||
let migration_service =
|
||||
migration_service.with_session_import_limits(ExternalAgentSessionImportLimits {
|
||||
max_age: params
|
||||
.max_session_age_days
|
||||
.map(|days| Duration::from_secs(u64::from(days) * 24 * 60 * 60))
|
||||
.unwrap_or(default_session_import_limits.max_age),
|
||||
max_sessions: params
|
||||
.max_sessions
|
||||
.map(|max_sessions| max_sessions as usize)
|
||||
.unwrap_or(default_session_import_limits.max_sessions),
|
||||
});
|
||||
let options = ExternalAgentConfigDetectOptions {
|
||||
include_home: params.include_home,
|
||||
include_memory: self.external_agent_memory_import_enabled().await,
|
||||
|
||||
Reference in new issue
Block a user