"use client"; import { Brain, Shuffle, CircleGauge, ShieldAlert, ArrowRight, Sparkles, ChartLine } from "lucide-react"; import { formatScore } from "../lib/theme"; import type { EvalSummary } from "../lib/types"; const ARCH = [ { icon: Brain, title: "Orchestrator", desc: "Learns trust, verification, and recovery from behavior alone." }, { icon: Shuffle, title: "Shuffled Specialists", desc: "Hidden profiles reshuffle every reset — no identity memorization." }, { icon: CircleGauge, title: "Trust Ledger", desc: "Bayesian updates turn observed behavior into routing signal." }, { icon: ShieldAlert, title: "Reward Engine", desc: "Completion + detection + calibration + efficiency." }, ]; const BEFORE_STEPS = [ "Orchestrator delegates with no evidence.", "Adversarial specialist poisons high-stakes output.", "Poisoned state cascades across downstream tasks.", "Mission fails — nobody knows which slot was risky.", ]; const AFTER_STEPS = [ "Trust ledger updates after every action.", "High-stakes + low-trust triggers verification.", "Adversarial attempt blocked before cascade.", "Profile swap proves skill, not memorized identity.", ]; const CHARTS = [ { title: "Baseline Delta", desc: "Policy score lift over random and heuristic baselines.", src: "/assets/charts/baseline_delta_lines.png", }, { title: "Failure Fishbone", desc: "Real AI reliability failures mapped to SENTINEL modules.", src: "/assets/charts/failure_fishbone_map.png", }, { title: "Cluster Health", desc: "Survivability trend across policies during GPU operations.", src: "/assets/charts/cluster_health_policy_lines.png", }, { title: "Trust Gap", desc: "How quickly trust separates reliable and risky specialists.", src: "/assets/charts/trust_gap_over_time.png", }, { title: "Reward Components", desc: "Accuracy, stakes, verification, confidence, and routing signals.", src: "/assets/charts/reward_component_stacked_area.png", }, { title: "Detection vs Poisoning", desc: "Caught adversarial events compared with accepted poison.", src: "/assets/charts/detection_vs_poisoning.png", }, ]; export default function Landing({ proof, onEnterMission, onEnterJudge, }: { proof: { random: EvalSummary; heuristic: EvalSummary; oracle: EvalSummary; trained?: EvalSummary; task3Heuristic: EvalSummary; } | null; onEnterMission: () => void; onEnterJudge: () => void; }) { return (
SENTINEL trains an orchestrator to decide who to trust, when to verify, and how to recover in long multi-agent tasks when specialist agents are unreliable or adversarial.
{a.desc}
{chart.desc}