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

Function session_to_info

crates/opencode-server/src/routes.rs:197–233  ·  view source on GitHub ↗
(session: &opencode_session::Session)

Source from the content-addressed store, hash-verified

195}
196
197fn session_to_info(session: &opencode_session::Session) -> SessionInfo {
198 SessionInfo {
199 id: session.id.clone(),
200 slug: session.slug.clone(),
201 project_id: session.project_id.clone(),
202 directory: session.directory.clone(),
203 parent_id: session.parent_id.clone(),
204 title: session.title.clone(),
205 version: session.version.clone(),
206 time: SessionTimeInfo {
207 created: session.time.created,
208 updated: session.time.updated,
209 compacting: session.time.compacting,
210 archived: session.time.archived,
211 },
212 summary: session.summary.as_ref().map(|s| SessionSummaryInfo {
213 additions: s.additions,
214 deletions: s.deletions,
215 files: s.files,
216 }),
217 share: session
218 .share
219 .as_ref()
220 .map(|s| SessionShareInfo { url: s.url.clone() }),
221 revert: session.revert.as_ref().map(|r| SessionRevertInfo {
222 message_id: r.message_id.clone(),
223 part_id: r.part_id.clone(),
224 snapshot: r.snapshot.clone(),
225 diff: r.diff.clone(),
226 }),
227 permission: session.permission.as_ref().map(|p| PermissionRulesetInfo {
228 allow: p.allow.clone(),
229 deny: p.deny.clone(),
230 mode: p.mode.clone(),
231 }),
232 }
233}
234
235async fn persist_sessions_if_enabled(state: &Arc<ServerState>) {
236 if let Err(err) = state.sync_sessions_to_storage().await {

Callers 11

create_sessionFunction · 0.85
get_sessionFunction · 0.85
fork_sessionFunction · 0.85
archive_sessionFunction · 0.85
set_session_titleFunction · 0.85
set_session_permissionFunction · 0.85
set_session_summaryFunction · 0.85
session_revertFunction · 0.85
clear_session_revertFunction · 0.85
start_compactionFunction · 0.85
update_sessionFunction · 0.85

Calls 1

cloneMethod · 0.45

Tested by

no test coverage detected