pub struct SpanSummary {
pub model_id: String,
pub prompt_version: String,
pub summary_hash: String,
}Expand description
TR-7 (T20) audit metadata for a ReductionKind::TurnsCleared span whose
placeholder carries an LLM-generated summary. Recorded on the reduction
itself (persisted in the <name>.reduction.json sidecar-family file) so
the audit trail survives independent of the exact placeholder rendering
(SPEC.md TR-7 dev/04: “reduction log records model id, prompt version,
and summary hash for every summarized span”).
Fields§
§model_id: StringIdentifier of the model that generated the summary (e.g.
"claude-haiku-4-5"), taken verbatim from
summarize::SpanSummarizer::model_id.
prompt_version: StringVersion of the fixed, in-repo summarization prompt used
(summarize::PROMPT_VERSION at mint time) — never recomputed
later, so a prompt-wording change never rewrites history for spans
already summarized under an earlier version.
summary_hash: Stringblake3 hex digest of the summary paragraph text (BEFORE the honesty banner/id are appended) — verifiable independent of the placeholder’s exact surrounding punctuation.
Trait Implementations§
Source§impl Clone for SpanSummary
impl Clone for SpanSummary
Source§fn clone(&self) -> SpanSummary
fn clone(&self) -> SpanSummary
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SpanSummary
impl Debug for SpanSummary
Source§impl<'de> Deserialize<'de> for SpanSummary
impl<'de> Deserialize<'de> for SpanSummary
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<SpanSummary, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<SpanSummary, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
impl Eq for SpanSummary
Source§impl PartialEq for SpanSummary
impl PartialEq for SpanSummary
Source§impl Serialize for SpanSummary
impl Serialize for SpanSummary
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for SpanSummary
Auto Trait Implementations§
impl Freeze for SpanSummary
impl RefUnwindSafe for SpanSummary
impl Send for SpanSummary
impl Sync for SpanSummary
impl Unpin for SpanSummary
impl UnsafeUnpin for SpanSummary
impl UnwindSafe for SpanSummary
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.