pub struct TranscriptWriter { /* private fields */ }Expand description
Appends TranscriptEntry lines to a JSONL file.
The file handle is kept open for the writer’s lifetime to avoid race conditions from repeated open/close cycles.
Implementations§
Source§impl TranscriptWriter
impl TranscriptWriter
Sourcepub fn new(path: &Path) -> Result<Self>
pub fn new(path: &Path) -> Result<Self>
Create (or open) a JSONL transcript file in append mode.
Creates parent directories if they do not already exist.
§Errors
Returns io::Error if the directory cannot be created or the file cannot be opened.
Sourcepub fn append(&mut self, seq: u32, message: &Message) -> Result<()>
pub fn append(&mut self, seq: u32, message: &Message) -> Result<()>
Append a single message as a JSON line and flush immediately.
§Errors
Returns io::Error on serialization or write failure.
Sourcepub fn write_meta(
dir: &Path,
agent_id: &str,
meta: &TranscriptMeta,
) -> Result<()>
pub fn write_meta( dir: &Path, agent_id: &str, meta: &TranscriptMeta, ) -> Result<()>
Write the meta sidecar file for an agent.
§Errors
Returns io::Error on serialization or write failure.
Auto Trait Implementations§
impl Freeze for TranscriptWriter
impl RefUnwindSafe for TranscriptWriter
impl Send for TranscriptWriter
impl Sync for TranscriptWriter
impl Unpin for TranscriptWriter
impl UnsafeUnpin for TranscriptWriter
impl UnwindSafe for TranscriptWriter
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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>
Wrap the input message
T in a tonic::Request