fix: backend and discord-gateway improvements

- Update shared database schema
- Add shared utils
- Refactor backend middleware, auth routes, and dashboard repository
- Improve media analysis client with better error handling
- Fix searxng search URL construction
- Update URL fetcher for robustness

Co-authored-by: workflow agents
This commit is contained in:
asepharyana
2026-07-02 06:02:07 +07:00
co-authored by workflow agents
parent 81a004d250
commit ade5d6a7c3
9 changed files with 174 additions and 53 deletions
+11 -9
View File
@@ -19,6 +19,7 @@ import { createUiStateRouter } from "../modules/ui-state/ui-state.routes.js";
import { createGuildsRouter } from "../modules/voice/guilds.routes.js";
import { createVoiceRouter } from "../modules/voice/voice.routes.js";
import {
adminAuth,
errorHandler,
} from "../shared/middlewares/index.js";
import { config } from "../shared/config/index.js";
@@ -73,17 +74,18 @@ export function createHttpApp(): Express {
app.use("/api", createConfigRouter());
app.use("/api", createDashboardRouter());
// Protected routes — all routes are now public
app.use("/api", createMessagesRouter());
app.use("/api", createAnalysisRouter());
app.use("/api", createMascotChatRouter());
app.use("/api", createMediaRouter());
app.use("/api", createVoiceRouter());
app.use("/api", createRecordingsRouter());
app.use("/api", createUiStateRouter());
// Protected routes — require admin authentication (X-Admin-Password header)
const adminAuthMiddleware = adminAuth(ADMIN_PASSWORD);
app.use("/api", adminAuthMiddleware, createMessagesRouter());
app.use("/api", adminAuthMiddleware, createAnalysisRouter());
app.use("/api", adminAuthMiddleware, createMascotChatRouter());
app.use("/api", adminAuthMiddleware, createMediaRouter());
app.use("/api", adminAuthMiddleware, createVoiceRouter());
app.use("/api", adminAuthMiddleware, createRecordingsRouter());
app.use("/api", adminAuthMiddleware, createUiStateRouter());
// Guilds routes
app.use("/api/guilds", createGuildsRouter());
app.use("/api/guilds", adminAuthMiddleware, createGuildsRouter());
// 404 handler
app.use((_req: Request, res: Response) => {