use crate::memories::extensions::EXTENSION_RESOURCE_RETENTION_DAYS; use crate::memories::extensions::RemovedExtensionResource; use crate::memories::memory_extensions_root; use crate::memories::memory_root; use crate::memories::phase_one; use crate::memories::storage::rollout_summary_file_stem_from_parts; use codex_protocol::openai_models::ModelInfo; use codex_state::Phase2InputSelection; use codex_state::Stage1Output; use codex_state::Stage1OutputRef; use codex_utils_absolute_path::AbsolutePathBuf; use codex_utils_output_truncation::TruncationPolicy; use codex_utils_output_truncation::truncate_text; use codex_utils_template::Template; use std::fmt::Write as _; use std::path::Path; use std::sync::LazyLock; use tokio::fs; use tracing::warn; static CONSOLIDATION_PROMPT_TEMPLATE: LazyLock