fix: avoid full session export in session list

This commit is contained in:
Burak
2026-04-17 12:56:41 -04:00
parent bf726a9ec0
commit bcfbaa6a24
4 changed files with 317 additions and 0 deletions
@@ -1,5 +1,6 @@
import Router from '@koa/router'
import * as hermesCli from '../../services/hermes/hermes-cli'
import { listSessionSummaries } from '../../services/hermes/sessions-db'
export const sessionRoutes = new Router()
@@ -7,6 +8,15 @@ export const sessionRoutes = new Router()
sessionRoutes.get('/api/hermes/sessions', async (ctx) => {
const source = (ctx.query.source as string) || undefined
const limit = ctx.query.limit ? parseInt(ctx.query.limit as string, 10) : undefined
try {
const sessions = await listSessionSummaries(source, limit && limit > 0 ? limit : 2000)
ctx.body = { sessions }
return
} catch (err) {
console.warn('[Hermes Session DB] summary query failed, falling back to CLI:', err)
}
const sessions = await hermesCli.listSessions(source, limit)
ctx.body = { sessions }
})