feat: implement dashboard with authentication and event logging

- Added dashboard functionality at /status with Basic Auth using DASHBOARD_PASSWORD.
- Created server-side event logging to track catalog and university status.
- Implemented traffic metrics tracking and display on the dashboard.
- Enhanced API tests to cover new dashboard features and authentication.
- Introduced CSS and JS for dashboard styling and functionality.
- Added tests for dashboard access control and data retrieval.
This commit is contained in:
2026-10-21 00:04:33 +03:00
parent de72d003b8
commit 3ae7b38fca
15 changed files with 1216 additions and 74 deletions

View File

@@ -31,7 +31,8 @@ export function diagnose(schedule) {
code,
message: message[code],
...(lesson && {
groups: lesson.groups,
// Word repeats a group in some headers ("24-ИЯ (РА)и-1_…и-2"): once is enough.
groups: [...new Set(lesson.groups)],
day: lesson.day,
start: lesson.start || null,
raw: lesson.raw,