mirror of
https://github.com/pchuan98/codex.git
synced 2026-07-01 00:31:56 +08:00
## Why This stack crosses World State, executor skills, selected plugin metadata, MCP processes, connectors, dynamic environments, and resume. This PR adds two end-to-end scenarios that validate those pieces together. Both tests enable `deferred_executor`, so they exercise the real delayed-environment path. ## Scenario 1: availability across turns and resume ```text 1. Start a thread with one selected plugin root bound to E1. 2. E1 is unavailable. - executor skill is absent - selected MCP is absent - connector has no selected-plugin attribution 3. Start E1 and register the same stable environment ID. 4. Start a new turn. - the executor skill appears through World State - its body beats a colliding host skill - the selected MCP tool is advertised and executes inside E1 - the connector is attributed to the selected plugin 5. Start another turn without changing E1. - the MCP PID stays the same, proving runtime reuse 6. Restart app-server and resume the thread. - durable selected-root intent is restored - skills, MCP, and connector attribution are restored - a new MCP PID proves ephemeral process state was rebuilt ``` ## Scenario 2: availability changes inside one turn ```text 1. Start a turn while E1 is unavailable. 2. The first model sample sees no executor skill, MCP, or selected connector. 3. The turn pauses on request_user_input. 4. Start E1 and register it while that same turn is still active. 5. Continue the turn. 6. The very next model sample sees: - the executor skill catalog - the selected MCP tool - selected-plugin connector attribution 7. The model calls the MCP, and its output proves execution happened inside E1. ``` This second scenario specifically protects the aeon-style behavior: capability state is captured again for every sampling step, not only at the next user turn. ## Scope These are integration tests only. They do not add a combinatorial matrix for unsupported plugin-file mutation, environment generations, transport disconnects, or delayed `required = true` executor MCPs.
87 lines
1.8 KiB
Rust
87 lines
1.8 KiB
Rust
mod account;
|
|
mod analytics;
|
|
mod app_list;
|
|
mod attestation;
|
|
mod auto_env;
|
|
mod client_metadata;
|
|
mod collaboration_mode_list;
|
|
#[cfg(unix)]
|
|
mod command_exec;
|
|
mod compaction;
|
|
mod config_rpc;
|
|
mod connection_handling_websocket;
|
|
#[cfg(unix)]
|
|
mod connection_handling_websocket_unix;
|
|
mod current_time;
|
|
mod dynamic_tools;
|
|
mod environment_add;
|
|
#[cfg(not(target_os = "windows"))]
|
|
mod executor_mcp;
|
|
mod executor_skills;
|
|
mod experimental_api;
|
|
mod experimental_feature_list;
|
|
mod external_agent_config;
|
|
mod fs;
|
|
mod hooks_list;
|
|
mod imagegen_extension;
|
|
mod initialize;
|
|
mod marketplace_add;
|
|
mod marketplace_remove;
|
|
mod marketplace_upgrade;
|
|
mod mcp_resource;
|
|
mod mcp_server_elicitation;
|
|
mod mcp_server_status;
|
|
mod mcp_tool;
|
|
mod memory_reset;
|
|
mod model_list;
|
|
mod model_provider_capabilities_read;
|
|
mod output_schema;
|
|
mod permission_profile_list;
|
|
mod plan_item;
|
|
mod plugin_install;
|
|
mod plugin_list;
|
|
mod plugin_read;
|
|
mod plugin_share;
|
|
mod plugin_uninstall;
|
|
mod process_exec;
|
|
mod rate_limit_reset_credits;
|
|
mod rate_limits;
|
|
mod realtime_conversation;
|
|
mod recommended_plugins;
|
|
mod remote_control;
|
|
#[cfg(debug_assertions)]
|
|
mod remote_thread_store;
|
|
mod request_permissions;
|
|
mod request_user_input;
|
|
mod request_validation;
|
|
mod review;
|
|
mod safety_check_downgrade;
|
|
#[cfg(not(target_os = "windows"))]
|
|
mod selected_capability_stack;
|
|
mod skills_list;
|
|
mod sleep;
|
|
mod thread_archive;
|
|
mod thread_delete;
|
|
mod thread_fork;
|
|
mod thread_inject_items;
|
|
mod thread_list;
|
|
mod thread_loaded_list;
|
|
mod thread_memory_mode_set;
|
|
mod thread_metadata_update;
|
|
mod thread_name_websocket;
|
|
mod thread_read;
|
|
mod thread_resume;
|
|
mod thread_rollback;
|
|
mod thread_settings_update;
|
|
mod thread_shell_command;
|
|
mod thread_start;
|
|
mod thread_status;
|
|
mod thread_unarchive;
|
|
mod thread_unsubscribe;
|
|
mod turn_interrupt;
|
|
mod turn_start;
|
|
mod turn_start_zsh_fork;
|
|
mod turn_steer;
|
|
mod web_search;
|
|
mod windows_sandbox_setup;
|