Effective Codex settings observed for a loaded thread.
App-created threads retain the private instruction seed needed to replay the settings exactly. Legacy resumes still expose their effective settings to the runtime, but are not replayable into a fork.
Summary
Functions
Applies the complete sticky settings notification to an existing snapshot.
Decodes the private persisted seed without guessing at missing values.
Builds effective settings and records whether their instruction seed is replayable.
Returns the private persisted seed needed to reconstruct root instructions on resume.
Applies a persisted source seed to a new thread/fork request.
Returns exact thread/fork overrides with side-chat developer constraints appended.
Types
@type t() :: %CodexEx.AppServer.ThreadSettings{ active_permission_profile_id: binary() | nil, approval_policy: approval_policy(), approvals_reviewer: binary(), cwd: binary(), developer_instructions: binary() | nil, model: binary(), model_provider: binary(), personality: binary() | nil, reasoning_effort: binary() | nil, reasoning_summary: binary() | nil, replayable?: boolean(), runtime_workspace_roots: [term()], sandbox_policy: map(), service_tier: binary() | nil }
Functions
Applies the complete sticky settings notification to an existing snapshot.
@spec decode_persisted_seed(term()) :: {:ok, instruction_seed()} | {:error, :invalid_thread_settings_seed}
Decodes the private persisted seed without guessing at missing values.
@spec from_protocol(map(), instruction_seed_input() | nil) :: t() | nil
Builds effective settings and records whether their instruction seed is replayable.
Returns the private persisted seed needed to reconstruct root instructions on resume.
@spec put_persisted_seed(map(), map() | nil) :: {:ok, map()} | {:error, :invalid_thread_settings_seed}
Applies a persisted source seed to a new thread/fork request.
Returns exact thread/fork overrides with side-chat developer constraints appended.