mirror of
https://github.com/openai/codex.git
synced 2026-08-23 13:09:46 +00:00
## Why External agent session files can gain messages after their initial import. Re-importing those files should extend the existing Codex thread instead of creating a duplicate. ## What changed - Map a changed source session back to its uniquely imported thread and append only the missing transcript suffix. - Update the import ledger after verifying that the source and destination transcripts match. - Defer the update when the target is active, archived, ambiguous, diverged, or otherwise unsafe to modify. ## Testing Added unit and app-server coverage for suffix planning, ledger checkpointing, concurrent updates, and unsafe targets that must be deferred. GitOrigin-RevId: 3d9e71cd66e8b31cf5128e8869063868bfb3eb05
42 lines
1.2 KiB
TOML
42 lines
1.2 KiB
TOML
[package]
|
|
name = "codex-external-agent-migration"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
|
|
[lib]
|
|
doctest = false
|
|
name = "codex_external_agent_migration"
|
|
path = "src/lib.rs"
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
chrono = { workspace = true }
|
|
codex-analytics = { workspace = true }
|
|
codex-config = { workspace = true }
|
|
codex-core = { workspace = true }
|
|
codex-core-plugins = { workspace = true }
|
|
codex-hooks = { workspace = true }
|
|
codex-memories-write = { workspace = true }
|
|
codex-otel = { workspace = true }
|
|
codex-plugin = { workspace = true }
|
|
codex-protocol = { workspace = true }
|
|
codex-rollout = { workspace = true }
|
|
codex-thread-store = { workspace = true }
|
|
codex-utils-output-truncation = { workspace = true }
|
|
serde = { workspace = true, features = ["derive"] }
|
|
serde_json = { workspace = true }
|
|
serde_yaml = { workspace = true }
|
|
sha2 = { workspace = true }
|
|
toml = { workspace = true }
|
|
tokio = { workspace = true, features = ["rt", "sync"] }
|
|
tracing = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
codex-app-server-protocol = { workspace = true }
|
|
pretty_assertions = { workspace = true }
|
|
tempfile = { workspace = true }
|
|
tokio = { workspace = true, features = ["macros", "rt-multi-thread"] }
|