MCPcopy Index your code
hub / github.com/ChrisFeldmeier/OpenCodeRust / session_revert

Function session_revert

crates/opencode-server/src/routes.rs:657–678  ·  view source on GitHub ↗
(
    State(state): State<Arc<ServerState>>,
    Path(id): Path<String>,
    Json(req): Json<RevertRequest>,
)

Source from the content-addressed store, hash-verified

655}
656
657async fn session_revert(
658 State(state): State<Arc<ServerState>>,
659 Path(id): Path<String>,
660 Json(req): Json<RevertRequest>,
661) -> Result<Json<SessionInfo>> {
662 let mut sessions = state.sessions.lock().await;
663 let updated = sessions
664 .set_revert(
665 &id,
666 opencode_session::SessionRevert {
667 message_id: req.message_id,
668 part_id: req.part_id,
669 snapshot: req.snapshot,
670 diff: req.diff,
671 },
672 )
673 .ok_or_else(|| ApiError::SessionNotFound(id.clone()))?;
674 let info = session_to_info(&updated);
675 drop(sessions);
676 persist_sessions_if_enabled(&state).await;
677 Ok(Json(info))
678}
679
680async fn clear_session_revert(
681 State(state): State<Arc<ServerState>>,

Callers

nothing calls this directly

Calls 4

session_to_infoFunction · 0.85
set_revertMethod · 0.80
cloneMethod · 0.45

Tested by

no test coverage detected