From 17419039837d633b2807c83c11bdf87e62c40355 Mon Sep 17 00:00:00 2001 From: Emir Yenikale Date: Thu, 27 Aug 2026 15:01:58 +0300 Subject: [PATCH] chore: add copyright headers to web UI sources Prepend the per-file copyright line to the 16 sources from #204 that still exist. apps/web/src/commands/doctor.ts is also listed in the issue but was deleted upstream in bc9c438 ("refactor: remove unfocused product surfaces"). Restoring removed product code is out of scope for a header-only chore, so it is left out. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_0187tinPTSTLHxYcEa62BreS --- apps/web/src/App.tsx | 1 + apps/web/src/components/AgentPanels.tsx | 1 + apps/web/src/components/AttackDemo.tsx | 1 + apps/web/src/components/AuditorView.tsx | 1 + apps/web/src/components/CohortPanel.tsx | 1 + apps/web/src/components/ConfigBanner.tsx | 1 + apps/web/src/components/DrandCountdownChip.tsx | 1 + apps/web/src/components/LifecycleView.tsx | 1 + apps/web/src/components/MainnetProofCard.tsx | 1 + apps/web/src/components/MandateCapLab.tsx | 1 + apps/web/src/components/ObserverView.tsx | 1 + apps/web/src/components/OutcomePanel.tsx | 1 + apps/web/src/components/PasskeyPanel.tsx | 1 + apps/web/src/components/RoundStatusBadge.tsx | 1 + apps/web/src/components/SettlementRail.tsx | 1 + apps/web/src/components/dashboard/BidderProgressCard.tsx | 1 + 16 files changed, 16 insertions(+) diff --git a/apps/web/src/App.tsx b/apps/web/src/App.tsx index 00c2aa0..ee6af86 100644 --- a/apps/web/src/App.tsx +++ b/apps/web/src/App.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import { useEffect, useState } from "react"; import { getUseCase } from "./config/useCases"; import type { UseCaseId } from "./config/useCases"; diff --git a/apps/web/src/components/AgentPanels.tsx b/apps/web/src/components/AgentPanels.tsx index 119ef82..b5f1ddd 100644 --- a/apps/web/src/components/AgentPanels.tsx +++ b/apps/web/src/components/AgentPanels.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import type { DemoTrace } from "../demo/trace"; import { shortAddr, shortHash, usdc } from "../lib/format"; diff --git a/apps/web/src/components/AttackDemo.tsx b/apps/web/src/components/AttackDemo.tsx index 6991ad2..9e2163b 100644 --- a/apps/web/src/components/AttackDemo.tsx +++ b/apps/web/src/components/AttackDemo.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import { useState } from "react"; import type { AttackStep } from "../lib/demoTypes"; import { useToast } from "../ui/Toast"; diff --git a/apps/web/src/components/AuditorView.tsx b/apps/web/src/components/AuditorView.tsx index a75d630..e3c4bf2 100644 --- a/apps/web/src/components/AuditorView.tsx +++ b/apps/web/src/components/AuditorView.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import { useMemo, useState } from "react"; import type { DemoTrace } from "../demo/trace"; import { shortAddr } from "../lib/format"; diff --git a/apps/web/src/components/CohortPanel.tsx b/apps/web/src/components/CohortPanel.tsx index 54acafc..64124ef 100644 --- a/apps/web/src/components/CohortPanel.tsx +++ b/apps/web/src/components/CohortPanel.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import { useEffect, useState } from "react"; import { AnimatePresence, motion } from "framer-motion"; import type { Peer, UseCase } from "../config/useCases"; diff --git a/apps/web/src/components/ConfigBanner.tsx b/apps/web/src/components/ConfigBanner.tsx index d4b9ce8..5d7e1be 100644 --- a/apps/web/src/components/ConfigBanner.tsx +++ b/apps/web/src/components/ConfigBanner.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import { useEffect, useState } from "react"; import { validatePublicConfig, type ConfigIssue } from "../lib/config"; diff --git a/apps/web/src/components/DrandCountdownChip.tsx b/apps/web/src/components/DrandCountdownChip.tsx index d22d98f..a761d2c 100644 --- a/apps/web/src/components/DrandCountdownChip.tsx +++ b/apps/web/src/components/DrandCountdownChip.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import { formatCountdown, useDrandCountdown } from "../hooks/useDrandCountdown"; type ChipMode = "live-round" | "proof" | "idle"; diff --git a/apps/web/src/components/LifecycleView.tsx b/apps/web/src/components/LifecycleView.tsx index 0c62c15..c3ed7e4 100644 --- a/apps/web/src/components/LifecycleView.tsx +++ b/apps/web/src/components/LifecycleView.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import type { DemoTrace } from "../demo/trace"; import { formatCountdown, useDrandCountdown } from "../hooks/useDrandCountdown"; import { phaseIcon, usdc } from "../lib/format"; diff --git a/apps/web/src/components/MainnetProofCard.tsx b/apps/web/src/components/MainnetProofCard.tsx index cf9ac18..160b7f5 100644 --- a/apps/web/src/components/MainnetProofCard.tsx +++ b/apps/web/src/components/MainnetProofCard.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import { MAINNET_ARTIFACTS } from "@sub-rosa/sdk"; import { shortAddr } from "../lib/format"; diff --git a/apps/web/src/components/MandateCapLab.tsx b/apps/web/src/components/MandateCapLab.tsx index a8a4480..5281252 100644 --- a/apps/web/src/components/MandateCapLab.tsx +++ b/apps/web/src/components/MandateCapLab.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import { useState } from "react"; import { CAP_SAFETY_COPY } from "../demo/trace"; import type { CapDemoResult } from "../lib/demoTypes"; diff --git a/apps/web/src/components/ObserverView.tsx b/apps/web/src/components/ObserverView.tsx index b4eb05d..6732e01 100644 --- a/apps/web/src/components/ObserverView.tsx +++ b/apps/web/src/components/ObserverView.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import type { DemoTrace } from "../demo/trace"; import { isTraceSettled } from "../demo/trace"; import type { LiveSnapshot } from "../hooks/useLiveRound"; diff --git a/apps/web/src/components/OutcomePanel.tsx b/apps/web/src/components/OutcomePanel.tsx index 1fefc59..670abe8 100644 --- a/apps/web/src/components/OutcomePanel.tsx +++ b/apps/web/src/components/OutcomePanel.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import { motion } from "framer-motion"; import type { UseCase } from "../config/useCases"; diff --git a/apps/web/src/components/PasskeyPanel.tsx b/apps/web/src/components/PasskeyPanel.tsx index 7dcbb28..0b2ecb9 100644 --- a/apps/web/src/components/PasskeyPanel.tsx +++ b/apps/web/src/components/PasskeyPanel.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import { useMemo, useState } from "react"; import { CAP_SAFETY_COPY } from "../demo/trace"; import { diff --git a/apps/web/src/components/RoundStatusBadge.tsx b/apps/web/src/components/RoundStatusBadge.tsx index 44c08c2..aaf3f81 100644 --- a/apps/web/src/components/RoundStatusBadge.tsx +++ b/apps/web/src/components/RoundStatusBadge.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import type { BadgeState } from "../lib/round-status"; export interface RoundStatusBadgeProps { diff --git a/apps/web/src/components/SettlementRail.tsx b/apps/web/src/components/SettlementRail.tsx index 6752ba3..5045f86 100644 --- a/apps/web/src/components/SettlementRail.tsx +++ b/apps/web/src/components/SettlementRail.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import type { DemoTrace } from "../demo/trace"; import { usdc } from "../lib/format"; diff --git a/apps/web/src/components/dashboard/BidderProgressCard.tsx b/apps/web/src/components/dashboard/BidderProgressCard.tsx index 4546581..59018c7 100644 --- a/apps/web/src/components/dashboard/BidderProgressCard.tsx +++ b/apps/web/src/components/dashboard/BidderProgressCard.tsx @@ -1,3 +1,4 @@ +// Copyright (c) 2026 Sub Rosa contributors import { shortAddr, usdc } from "../../lib/format"; import type { DashboardData } from "../../dashboard/types";