(
State(state): State<Arc<ServerState>>,
Path(id): Path<String>,
Json(req): Json<PermissionRulesetInput>,
)
| 580 | } |
| 581 | |
| 582 | async fn set_session_permission( |
| 583 | State(state): State<Arc<ServerState>>, |
| 584 | Path(id): Path<String>, |
| 585 | Json(req): Json<PermissionRulesetInput>, |
| 586 | ) -> Result<Json<SessionInfo>> { |
| 587 | let mut sessions = state.sessions.lock().await; |
| 588 | let updated = sessions |
| 589 | .set_permission( |
| 590 | &id, |
| 591 | opencode_session::PermissionRuleset { |
| 592 | allow: req.allow.unwrap_or_default(), |
| 593 | deny: req.deny.unwrap_or_default(), |
| 594 | mode: req.mode, |
| 595 | }, |
| 596 | ) |
| 597 | .ok_or_else(|| ApiError::SessionNotFound(id.clone()))?; |
| 598 | let info = session_to_info(&updated); |
| 599 | drop(sessions); |
| 600 | persist_sessions_if_enabled(&state).await; |
| 601 | Ok(Json(info)) |
| 602 | } |
| 603 | |
| 604 | async fn get_session_summary( |
| 605 | State(state): State<Arc<ServerState>>, |
nothing calls this directly
no test coverage detected