import type { Metadata } from "next";
import Link from "next/link";
import { EventRow } from "@/components/event-row";
import { Chip, Empty, PageHeader, Panel, Score, StateLabelText } from "@/components/ui";
import { api } from "@/lib/api";
import { relTime, typeLabel } from "@/lib/format";
export const dynamic = "force-dynamic";
export const metadata: Metadata = { title: "Radar", description: "Weak signals that are not yet breaking: unusual source activity, clusters of silent changes, documentation and repository bursts, fresh status changes." };
/** Radar (spec §101): indicators, not facts. */
export default async function RadarPage() {
const r = await api.radar();
if (!r) return Radar is warming up.;
return (
<>
Indicators, not facts} title="Radar" description="What might become important next. Each item is a pattern in raw observations — a source far above its baseline, several silent changes around one entity, a burst of documentation or repository edits, a fresh status change — that has not (yet) produced a high-importance event." />
{r.unusual_source_activity.length ? (
{r.unusual_source_activity.map((s) => (
{s.name}
×{s.ratio}
{s.changes_3h} raw changes in 3 h · baseline {s.baseline_per_day}/day · no high-importance event yet