first commit

This commit is contained in:
2025-11-06 11:08:59 +01:00
commit 3c5117c2c3
85 changed files with 13275 additions and 0 deletions
+15
View File
@@ -0,0 +1,15 @@
const express = require('express');
const router = express.Router();
const { register, login, getProfile, updateProfile } = require('../controllers/authController');
const { authenticate } = require('../middleware/auth');
const { validate, schemas } = require('../middleware/validation');
// Public routes
router.post('/register', validate(schemas.register), register);
router.post('/login', validate(schemas.login), login);
// Protected routes
router.get('/profile', authenticate, getProfile);
router.put('/profile', authenticate, validate(schemas.updateProfile), updateProfile);
module.exports = router;
+27
View File
@@ -0,0 +1,27 @@
const express = require('express');
const router = express.Router();
const {
createConversation,
getConversations,
getConversation,
sendMessage,
updateConversation,
deleteConversation
} = require('../controllers/chatController');
const { authenticate } = require('../middleware/auth');
const { validate, schemas } = require('../middleware/validation');
// All chat routes require authentication
router.use(authenticate);
// Conversation management
router.post('/conversations', validate(schemas.createConversation), createConversation);
router.get('/conversations', getConversations);
router.get('/conversations/:conversationId', getConversation);
router.put('/conversations/:conversationId', updateConversation);
router.delete('/conversations/:conversationId', deleteConversation);
// Messaging
router.post('/message', validate(schemas.sendMessage), sendMessage);
module.exports = router;
+25
View File
@@ -0,0 +1,25 @@
const express = require('express');
const router = express.Router();
const {
uploadDocument,
getDocuments,
getDocument,
searchDocuments,
graphSearchDocuments,
deleteDocument,
upload
} = require('../controllers/documentController');
const { authenticate } = require('../middleware/auth');
// All document routes require authentication
router.use(authenticate);
// Document management
router.post('/upload', upload.single('document'), uploadDocument);
router.get('/', getDocuments);
router.get('/search', searchDocuments);
router.get('/graph-search', graphSearchDocuments);
router.get('/:documentId', getDocument);
router.delete('/:documentId', deleteDocument);
module.exports = router;
+25
View File
@@ -0,0 +1,25 @@
const express = require('express');
const router = express.Router();
const {
submitFeedback,
getFeedback,
getFeedbackList,
processFeedback,
getFeedbackStats
} = require('../controllers/feedbackController');
const { authenticate, authorize } = require('../middleware/auth');
const { validate, schemas } = require('../middleware/validation');
// All feedback routes require authentication
router.use(authenticate);
// Feedback submission (public to authenticated users)
router.post('/submit', validate(schemas.submitFeedback), submitFeedback);
// Feedback management (admin only)
router.get('/stats', authorize('admin'), getFeedbackStats);
router.get('/', authorize('admin'), getFeedbackList);
router.get('/:feedbackId', authorize('admin'), getFeedback);
router.put('/:feedbackId/process', authorize('admin'), processFeedback);
module.exports = router;
+57
View File
@@ -0,0 +1,57 @@
const express = require('express');
const router = express.Router();
const {
getModelStatus,
getModelVersions,
createModelVersion,
updateModelVersion,
activateModel,
getTrainingData
} = require('../controllers/modelController');
const {
generatePlan,
validatePlan,
getPlan,
updatePlan,
getModelStatus: getModel1Status
} = require('../controllers/model1Controller');
const {
executePlan,
executeTool,
getExecutionStatus,
getToolExecutions,
getModelStatus: getQueryModelStatus,
orchestratePlan
} = require('../controllers/queryModelController');
const { authenticate, authorize } = require('../middleware/auth');
const { validate, schemas } = require('../middleware/validation');
// All model routes require authentication
router.use(authenticate);
// Public model status
router.get('/status', getModelStatus);
// MODEL1 routes
router.post('/model1/generate-plan', validate(schemas.generatePlan), generatePlan);
router.post('/model1/validate-plan/:planId', validatePlan);
router.get('/model1/plan/:planId', getPlan);
router.put('/model1/plan/:planId', updatePlan);
router.get('/model1/status', getModel1Status);
// QUERYMODEL routes
router.post('/querymodel/execute-plan', executePlan);
router.post('/querymodel/execute-tool', executeTool);
router.post('/querymodel/orchestrate', orchestratePlan);
router.get('/querymodel/execution-status/:planId', getExecutionStatus);
router.get('/querymodel/tool-executions', getToolExecutions);
router.get('/querymodel/status', getQueryModelStatus);
// Model management (admin only)
router.get('/versions', authorize('admin'), getModelVersions);
router.post('/versions', authorize('admin'), validate(schemas.createModelVersion), createModelVersion);
router.put('/versions/:modelId', authorize('admin'), updateModelVersion);
router.put('/versions/:modelId/activate', authorize('admin'), activateModel);
router.get('/training-data', authorize('admin'), getTrainingData);
module.exports = router;
+25
View File
@@ -0,0 +1,25 @@
const express = require('express');
const router = express.Router();
const {
executeTool,
getToolExecutions,
getToolExecution,
getToolStats,
retryToolExecution
} = require('../controllers/toolController');
const { authenticate, authorize } = require('../middleware/auth');
const { validate, schemas } = require('../middleware/validation');
// All tool routes require authentication
router.use(authenticate);
// Tool execution
router.post('/execute', validate(schemas.executeTool), executeTool);
// Tool management
router.get('/executions', getToolExecutions);
router.get('/executions/:executionId', getToolExecution);
router.get('/stats', authorize('admin'), getToolStats);
router.post('/executions/:executionId/retry', retryToolExecution);
module.exports = router;