(c echo.Context)
| 207 | } |
| 208 | |
| 209 | func (s *Server) getSessions(c echo.Context) error { |
| 210 | sessions, err := s.sm.GetSessions(c.Request().Context()) |
| 211 | if err != nil { |
| 212 | return echo.NewHTTPError(http.StatusInternalServerError, fmt.Sprintf("failed to get sessions: %v", err)) |
| 213 | } |
| 214 | |
| 215 | responses := make([]api.SessionsResponse, len(sessions)) |
| 216 | for i, sess := range sessions { |
| 217 | responses[i] = api.SessionsResponse{ |
| 218 | ID: sess.ID, |
| 219 | Title: sess.Title, |
| 220 | CreatedAt: sess.CreatedAt.Format(time.RFC3339), |
| 221 | NumMessages: len(sess.GetAllMessages()), |
| 222 | InputTokens: sess.InputTokens, |
| 223 | OutputTokens: sess.OutputTokens, |
| 224 | WorkingDir: sess.WorkingDir, |
| 225 | } |
| 226 | } |
| 227 | return c.JSON(http.StatusOK, responses) |
| 228 | } |
| 229 | |
| 230 | func (s *Server) createSession(c echo.Context) error { |
| 231 | var sessionTemplate session.Session |
nothing calls this directly
no test coverage detected