pub struct DebugDumper { /* private fields */ }Expand description
Cloneable debug dump writer; clones share the same atomic counter.
Implementations§
Source§impl DebugDumper
impl DebugDumper
Sourcepub fn new(base_dir: &Path, format: DumpFormat) -> Result<Self>
pub fn new(base_dir: &Path, format: DumpFormat) -> Result<Self>
Create a new dumper, creating a timestamped subdirectory under base_dir.
§Errors
Returns an error if the directory cannot be created.
Sourcepub fn is_trace_format(&self) -> bool
pub fn is_trace_format(&self) -> bool
Returns true when the dump format is DumpFormat::Trace.
In Trace mode dump_request returns early without using provider_request, so callers
can skip the expensive debug_request_json serialization.
Sourcepub fn dump_request(&self, request: &RequestDebugDump<'_>) -> u32
pub fn dump_request(&self, request: &RequestDebugDump<'_>) -> u32
Dump the messages about to be sent to the LLM.
Returns an ID that must be passed to dump_response to correlate request and response.
When format = Trace, no file is written (spans are collected by trace::TracingCollector).
Sourcepub fn dump_response(&self, id: u32, response: &str)
pub fn dump_response(&self, id: u32, response: &str)
Dump the LLM response corresponding to a prior dump_request call.
When format = Trace, this is a no-op.
Sourcepub fn dump_tool_output(&self, tool_name: &str, output: &str)
pub fn dump_tool_output(&self, tool_name: &str, output: &str)
Dump raw tool output before any truncation or summarization.
When format = Trace, this is a no-op (tool output is recorded via TracingCollector).
Sourcepub fn dump_focus_knowledge(&self, knowledge: &str)
pub fn dump_focus_knowledge(&self, knowledge: &str)
Dump the accumulated Focus Agent knowledge blocks.
When format = Trace, this is a no-op.
Sourcepub fn dump_tool_error(&self, tool_name: &str, error: &ToolError)
pub fn dump_tool_error(&self, tool_name: &str, error: &ToolError)
Dump a tool error with error classification for debugging transient/permanent failures.
When format = Trace, this is a no-op.
Trait Implementations§
Source§impl Clone for DebugDumper
impl Clone for DebugDumper
Source§fn clone(&self) -> DebugDumper
fn clone(&self) -> DebugDumper
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for DebugDumper
impl RefUnwindSafe for DebugDumper
impl Send for DebugDumper
impl Sync for DebugDumper
impl Unpin for DebugDumper
impl UnsafeUnpin for DebugDumper
impl UnwindSafe for DebugDumper
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request