diff --git a/packages/chat-client/vite.config.js b/packages/chat-client/vite.config.js index b42d81c..0ef16f2 100644 --- a/packages/chat-client/vite.config.js +++ b/packages/chat-client/vite.config.js @@ -9,13 +9,14 @@ export default defineConfig({ server: { port: 5173, proxy: { - '/chat': 'http://192.168.0.205:4000', - '/sessions': 'http://192.168.0.205:4000', - '/models': 'http://192.168.0.205:4000', - '/projects': 'http://192.168.0.205:4000', - '/episodes': 'http://192.168.0.205:4000', - '/settings': 'http://192.168.0.205:4000', - '/health': 'http://192.168.0.205:4000', + '/chat': 'http://192.168.0.205:4000', + '/sessions': 'http://192.168.0.205:4000', + '/models': 'http://192.168.0.205:4000', + '/projects': 'http://192.168.0.205:4000', + '/episodes': 'http://192.168.0.205:4000', + '/settings': 'http://192.168.0.205:4000', + '/health': 'http://192.168.0.205:4000', + '/summaries': 'http://192.168.0.205:4000', }, }, }); \ No newline at end of file diff --git a/packages/orchestration-service/src/index.js b/packages/orchestration-service/src/index.js index bb9edd5..e8b1feb 100644 --- a/packages/orchestration-service/src/index.js +++ b/packages/orchestration-service/src/index.js @@ -10,6 +10,7 @@ const projectsRouter = require('./routes/projects'); const episodesRouter = require('./routes/episodes'); const settingsRouter = require('./routes/settings'); const healthRouter = require('./routes/health'); +const summariesRouter = require('./routes/summaries') const cors = require('cors'); @@ -48,6 +49,7 @@ app.use('/projects', projectsRouter); app.use('/episodes', episodesRouter); app.use('/settings', settingsRouter); app.use('/health/services', healthRouter); +app.use('/summaries', summariesRouter) /******* Start the server ************/ app.listen(PORT, () => { diff --git a/packages/orchestration-service/src/routes/summaries.js b/packages/orchestration-service/src/routes/summaries.js new file mode 100644 index 0000000..09e277c --- /dev/null +++ b/packages/orchestration-service/src/routes/summaries.js @@ -0,0 +1,26 @@ +const { Router } = require('express'); +const memory = require('../services/memory'); + +const router = Router(); + +router.get('/session/:sessionId', async (req, res) => { + try { + const session = await memory.getSessionByExternalId(req.params.sessionId); + if (!session) return res.status(404).json({ error: 'Session not found' }); + const summaries = await memory.getSummariesBySession(session.id); + res.json(summaries); + } catch (err) { + res.status(500).json({ error: err.message }); + } +}); + +router.get('/project/:projectId', async (req, res) => { + try { + const summaries = await memory.getSummariesByProject(req.params.projectId); + res.json(summaries); + } catch (err) { + res.status(500).json({ error: err.message }); + } +}); + +module.exports = router; \ No newline at end of file diff --git a/packages/orchestration-service/src/services/memory.js b/packages/orchestration-service/src/services/memory.js index 749096b..b581c13 100644 --- a/packages/orchestration-service/src/services/memory.js +++ b/packages/orchestration-service/src/services/memory.js @@ -176,6 +176,13 @@ async function updateSummary(id, { content, tokenCount, episodeRange }) { return res.json(); } +async function getSummariesByProject(projectId) { + const res = await fetch(`${BASE_URL}/projects/${projectId}/summaries`); + if (!res.ok) throw new Error(`Failed to fetch summaries: ${res.status}`); + return res.json(); +} +// add to module.exports too + module.exports = { getSessionByExternalId, createSession, @@ -197,4 +204,5 @@ module.exports = { getSummariesBySession, createSummary, updateSummary, + getSummariesByProject, } \ No newline at end of file