/** * Experimental branch switcher — RTO.25A * * Smallest branch representation needed to test passive late-result indication. * Does NOT replace production branch navigation. Temporary fixture only. */ "use client"; import React, { useState, useEffect } from "react"; /* ── Keyframes (injected once via ); /* ── Status dot (passive new-result indicator) ─────────── */ function NewIndicator({ visible }) { if (!visible) return null; return ( ); } /* ── Single branch row ─────────────────────────────────── */ function BranchRow({ id, label, active, isNew, isPaused, origin, onClick }) { const isActive = Boolean(active); return ( ); } /* ── Card wrapper ────────────────────────────────────────── */ export default function ExperimentalBranchSwitcher({ branches = [], activeBranchId, branchNewResults = {}, branchPauseState = [], onBranchSelect, }) { if (!branches.length) return null; return (
{/* Label — clearly experimental */}

Branches{" "} (exp)

Browse branches. Current focus is preserved.

{branches.map((branch) => ( onBranchSelect?.(branch.id)} /> ))}
); } export { PulseStyle };