Extract the event model into its own crate, shared with client-core
RUST.md's recommendation item 1 starts here: Event, QuestionOption, SessionStatus, ImageRef, AttachmentRef, SeqEvent, context_tokens and context_after move to a new event-model crate so a future Rust client shares one definition with server/ instead of Events.kt's hand-kept mirror. session/driver.rs and session/transcript.rs re-export everything they used to define, so nothing downstream of either module changed. cargo test (127 passed), clippy --all-targets and fmt clean in both server/ and event-model/. Co-Authored-By: Claude Sonnet <noreply@anthropic.com>
This commit is contained in:
1 parent
1fcaa2d72d
commit
bc3db183e3
140 files changed
+863
-365
No files matched your search
@@ -13,20 +13,14 @@ use std::os::unix::fs::OpenOptionsExt;
|
||||
use std::path::Path;
|
||||
|
||||
use anyhow::{Context, Result};
|
||||
use serde::{Deserialize, Serialize};
|
||||
use serde::Deserialize;
|
||||
|
||||
use super::driver::{Event, SessionStatus, context_after};
|
||||
|
||||
/// One transcript line: an [`Event`] plus its position and time. The event
|
||||
/// is flattened so the wire shape stays one flat object.
|
||||
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
|
||||
pub struct SeqEvent {
|
||||
pub seq: u64,
|
||||
/// Epoch seconds.
|
||||
pub ts: f64,
|
||||
#[serde(flatten)]
|
||||
pub event: Event,
|
||||
}
|
||||
// `SeqEvent` moved to `event-model` on 2026-09-04 along with the rest of the
|
||||
// event model, so `client-core` can read the same wire shape; re-exported
|
||||
// here since every caller in this crate reaches it through this module.
|
||||
pub use event_model::SeqEvent;
|
||||
|
||||
pub struct Transcript {
|
||||
file: File,
|
||||
|
||||
Reference in new issue
Block a user