MCPcopy Create free account
hub / github.com/ChrisFeldmeier/OpenCodeRust / persist_session_diffs

Function persist_session_diffs

crates/opencode-session/src/summary.rs:237–246  ·  view source on GitHub ↗

Persist session-level diff results in session metadata. This is the Rust rewrite equivalent of TS `Storage.write(["session_diff", sessionID], diffs)`.

(
    session: &mut Session,
    session_id: &str,
    diffs: &[SummaryFileDiff],
)

Source from the content-addressed store, hash-verified

235/// Persist session-level diff results in session metadata.
236/// This is the Rust rewrite equivalent of TS `Storage.write(["session_diff", sessionID], diffs)`.
237pub fn persist_session_diffs(
238 session: &mut Session,
239 session_id: &str,
240 diffs: &[SummaryFileDiff],
241) -> anyhow::Result<()> {
242 let key = session_diff_storage_key(session_id);
243 let value = serde_json::to_value(diffs)?;
244 session.metadata.insert(key, value);
245 Ok(())
246}
247
248/// Load persisted session-level diff results from session metadata.
249pub fn load_session_diffs(session: &Session, session_id: &str) -> Vec<SummaryFileDiff> {

Callers 2

summarize_into_sessionFunction · 0.85

Calls 1

session_diff_storage_keyFunction · 0.85

Tested by 1