pub struct InputAttachmentsDetail {Show 16 fields
pub slowest_producer: Option<String>,
pub slowest_producer_ms: Option<u64>,
pub cpu_ms: Option<u64>,
pub major_faults: Option<u64>,
pub changed_files_reread: Option<u64>,
pub touch_compare: Option<TouchCompareCounts>,
pub setup_ms: Option<u64>,
pub prompt_producers_ms: Option<u64>,
pub ambient_start_ms: Option<u64>,
pub ambient_wait_ms: Option<u64>,
pub render_ms: Option<u64>,
pub producers: Option<u64>,
pub token_counts: Option<u64>,
pub token_count_ms: Option<u64>,
pub changed_files_read_ms: Option<u64>,
pub differs_files: Option<DiffersFilesCounts>,
}Expand description
ResultMessage::input_attachments_detail — what the
input_attachments phase did on the turn (CLI 2.1.288+).
Fields§
§slowest_producer: Option<String>Label of the attachment producer that took longest from its start to its result, among those that began within the phase.
slowest_producer_ms: Option<u64>How long Self::slowest_producer took. Well above
Self::cpu_ms, that producer most likely waited (on a file, the
network or a child process).
cpu_ms: Option<u64>time_to_request_cpu_ms’s counter over this phase alone. Absent
wherever time_to_request_cpu_ms is absent, and when the turn’s
first model request went out before the phase ended.
major_faults: Option<u64>time_to_request_major_faults’s counter over this phase alone.
Absent where Self::cpu_ms is.
changed_files_reread: Option<u64>How many files the changed_files producer set out to read again in
full because their modification time was later than the one recorded
when the conversation last wrote or edited them. Absent when the
conversation’s record of files was empty or the producer did not run.
touch_compare: Option<TouchCompareCounts>How the changed_files producer’s compares ended in the main
thread’s pass (a subagent’s are not counted). Absent when nothing was
counted (CLI 2.1.300+).
setup_ms: Option<u64>Work before any producer starts, such as working out which tools the tool announcements list (CLI 2.1.316+).
prompt_producers_ms: Option<u64>Starting the producers that read the prompt’s own text (at-mentioned files, MCP resources, mentions of agents, skills and peers) and waiting for them (CLI 2.1.316+).
ambient_start_ms: Option<u64>Starting every other producer, each one’s work up to its first wait included, so the thread ran code throughout (CLI 2.1.316+).
ambient_wait_ms: Option<u64>Waiting for the producers Self::ambient_start_ms started
(CLI 2.1.316+).
render_ms: Option<u64>The rest: merging the producers’ results, logging the attachments with their token estimates and making each into a message (CLI 2.1.316+).
producers: Option<u64>How many producers the passes started. Present, 0 included, whenever a pass was kept (CLI 2.1.316+).
token_counts: Option<u64>How many times the passes asked the API to count a file’s tokens (only for text estimated above a quarter of the Read tool’s token limit). Present, 0 included, whenever a pass was kept (CLI 2.1.316+).
token_count_ms: Option<u64>Time at least one token count was under way, overlaps counted once.
Absent when Self::token_counts is 0 (CLI 2.1.316+).
changed_files_read_ms: Option<u64>Time at least one of the changed_files producer’s Read calls was
under way, their token counts included. Absent when it made none
(CLI 2.1.316+).
differs_files: Option<DiffersFilesCounts>The files counted under TouchCompareCounts::differs, sorted by
size on disk, counting only the passes kept here (so the bands can
add up to less than differs). Absent when no compare in a kept pass
ended in differs (CLI 2.1.316+).