Add system alerts log with nav badge and Admin Alerts tab.
Persist job and ingestion warnings/errors for 7 days, surface a dismissible top-nav badge, treat stale OHLCV as a warning (e.g. ticker renames), and show market bar age on the ticker freshness chip.
This commit is contained in:
@@ -6,6 +6,7 @@ import { SentimentProviderSettings } from '../components/admin/SentimentProvider
|
||||
import { DataCleanup } from '../components/admin/DataCleanup';
|
||||
import { JobControls } from '../components/admin/JobControls';
|
||||
import { PipelineReadinessPanel } from '../components/admin/PipelineReadinessPanel';
|
||||
import { SystemEventsPanel } from '../components/admin/SystemEventsPanel';
|
||||
import { RecommendationSettings } from '../components/admin/RecommendationSettings';
|
||||
import { ScheduleSettings } from '../components/admin/ScheduleSettings';
|
||||
import { SettingsForm } from '../components/admin/SettingsForm';
|
||||
@@ -15,7 +16,7 @@ import { UserTable } from '../components/admin/UserTable';
|
||||
import { PageHeader } from '../components/ui/PageHeader';
|
||||
import { Tabs } from '../components/ui/Tabs';
|
||||
|
||||
const tabs = ['Users', 'Tickers', 'Settings', 'Jobs', 'Cleanup'] as const;
|
||||
const tabs = ['Users', 'Tickers', 'Settings', 'Jobs', 'Alerts', 'Cleanup'] as const;
|
||||
type Tab = (typeof tabs)[number];
|
||||
|
||||
export default function AdminPage() {
|
||||
@@ -49,6 +50,11 @@ export default function AdminPage() {
|
||||
<PipelineReadinessPanel />
|
||||
</div>
|
||||
)}
|
||||
{activeTab === 'Alerts' && (
|
||||
<div className="space-y-4">
|
||||
<SystemEventsPanel />
|
||||
</div>
|
||||
)}
|
||||
{activeTab === 'Cleanup' && <DataCleanup />}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user