// [nexus] Phase 11 — shared placeholder for Builder tabs whose underlying // list components do not (yet) accept a `projectId` filter prop. // // Per the Phase 11 plan, Phase 11 MAY NOT modify existing list components // (AgentList, ApprovalsList, CostsBreakdown, etc.). The plan also says // STOP/BLOCKED if the components don't already accept a projectId filter. // The shared `Approval` type has no `projectId` field, there is no // standalone `CostsBreakdown` component, Activity filtering at the API // level only accepts entityType/entityId, and the Agents page does not // expose an AgentList with a project filter. // // Rather than fabricate per-project data or duplicate the global pages, // Phase 11 ships explicit placeholder tabs that mark each data gap. The // Phase 11 report enumerates the gaps and the controller will schedule // follow-up tickets to add projectId props post-Wave. import type { ReactNode } from "react"; export interface TabPlaceholderProps { testId: string; title: string; gapReason: ReactNode; } export function TabPlaceholder({ testId, title, gapReason }: TabPlaceholderProps) { return (

{title}

Phase 11 data gap {gapReason}

); }