// website/src/pages/Sentinel.jsx // Live: SpacePromoter topology (from /health), infra event log, trigger buttons import { useState, useEffect, useCallback } from 'react'; import { api } from '../lib/api'; import { relativeTime } from '../lib/utils'; import Card from '../components/Card'; import Badge from '../components/Badge'; const EVENT_COLORS = { promotion: 'yellow', recovery: 'green', health_degraded: 'red', kv_write_failed: 'red', }; function NodeCard({ name, node }) { const alive = node?.is_alive; const status = node?.last_status; return (
{node?.role ?? name}
{node?.name ?? name}
{node?.url ?? '—'}
failures
{node?.consecutive_failures ?? 0}
successes
{node?.consecutive_successes ?? 0}
last check
{node?.last_check_at ? relativeTime(node.last_check_at) : '—'}
{parsed.message ?? '—'}
{parsed.timestamp && ({relativeTime(parsed.timestamp)}
)}God Layer. Gemini 2.5 Pro. Dedicated key. Watches everything.
{label}
{sub}
No topology data.
SpacePromoter inactive or Brain offline.
No events. System stable.
No reports yet.
First report: this Sunday 23:59 UTC.