Test conversation package route boundary
This commit is contained in:
+8
-21
@@ -43,6 +43,7 @@ import { ensureMindSpaceConfig } from './mindspace-config.mjs';
|
||||
import { createAssetService } from './mindspace-assets.mjs';
|
||||
import { createPageService, pageInternals, inlinePrivateAssetsInHtml, normalizeWorkspaceRelativePath } from './mindspace-pages.mjs';
|
||||
import { createConversationPackageRegistry } from './mindspace-conversation-package-registry.mjs';
|
||||
import { createGetConversationPackageHandler } from './mindspace-conversation-package-routes.mjs';
|
||||
import { createConversationPackageStore } from './mindspace-conversation-package-store.mjs';
|
||||
import { createMindSpaceServiceFacade } from './mindspace-service.mjs';
|
||||
import { createLocalMindSpaceStorageAdapter } from './mindspace-storage-adapter.mjs';
|
||||
@@ -2487,27 +2488,13 @@ api.post('/internal/agent/jobs/:jobId/complete', async (req, res) => {
|
||||
}
|
||||
});
|
||||
|
||||
api.get('/mindspace/v1/conversation-packages/:sessionId', async (req, res) => {
|
||||
if (!mindSpaceConversationPackageRegistry || !ensureMindSpaceEnabled(res, req)) {
|
||||
if (res.headersSent) return;
|
||||
return res.status(503).json({ message: 'MindSpace 对话包未启用' });
|
||||
}
|
||||
const sessionId = String(req.params.sessionId ?? '').trim();
|
||||
if (!sessionId) return res.status(400).json({ message: '缺少 sessionId' });
|
||||
if (!(await userAuth.ownsSession(req.currentUser.id, sessionId))) {
|
||||
return res.status(403).json({ message: '无权访问该会话' });
|
||||
}
|
||||
try {
|
||||
const manifest = await mindSpaceConversationPackageRegistry.readManifestForSession({
|
||||
userId: req.currentUser.id,
|
||||
sessionId,
|
||||
});
|
||||
if (!manifest) return res.status(404).json({ message: '对话包不存在' });
|
||||
return sendData(res, req, manifest);
|
||||
} catch (error) {
|
||||
return mindSpaceError(res, req, error);
|
||||
}
|
||||
});
|
||||
api.get('/mindspace/v1/conversation-packages/:sessionId', createGetConversationPackageHandler({
|
||||
getRegistry: () => mindSpaceConversationPackageRegistry,
|
||||
getUserAuth: () => userAuth,
|
||||
ensureMindSpaceEnabled,
|
||||
sendData,
|
||||
mindSpaceError,
|
||||
}));
|
||||
|
||||
api.post('/mindspace/v1/uploads', async (req, res) => {
|
||||
if (!mindSpaceAssets || !ensureMindSpaceEnabled(res, req, { upload: true })) return;
|
||||
|
||||
Reference in New Issue
Block a user