fix: rename AI Governance to AI Bridge (#20790)

This pull-request simply renames our `AI Governance` feature to `AI
Bridge` whilst we evaluate the future of how we want to render the
governance of AI related features.
This commit is contained in:
Jake Howell
2025-11-19 16:47:06 +11:00
committed by GitHub
parent 085370ec6d
commit 52f8143ad3
13 changed files with 31 additions and 38 deletions
@@ -18,7 +18,7 @@ interface DeploymentDropdownProps {
canViewAuditLog: boolean;
canViewConnectionLog: boolean;
canViewHealth: boolean;
canViewAIGovernance: boolean;
canViewAIBridge: boolean;
}
export const DeploymentDropdown: FC<DeploymentDropdownProps> = ({
@@ -27,7 +27,7 @@ export const DeploymentDropdown: FC<DeploymentDropdownProps> = ({
canViewAuditLog,
canViewConnectionLog,
canViewHealth,
canViewAIGovernance,
canViewAIBridge,
}) => {
if (
!canViewAuditLog &&
@@ -58,7 +58,7 @@ export const DeploymentDropdown: FC<DeploymentDropdownProps> = ({
canViewAuditLog={canViewAuditLog}
canViewConnectionLog={canViewConnectionLog}
canViewHealth={canViewHealth}
canViewAIGovernance={canViewAIGovernance}
canViewAIBridge={canViewAIBridge}
/>
</PopoverContent>
</Popover>
@@ -71,7 +71,7 @@ const DeploymentDropdownContent: FC<DeploymentDropdownProps> = ({
canViewAuditLog,
canViewHealth,
canViewConnectionLog,
canViewAIGovernance,
canViewAIBridge,
}) => {
return (
<nav>
@@ -115,14 +115,10 @@ const DeploymentDropdownContent: FC<DeploymentDropdownProps> = ({
</MenuItem>
</PopoverClose>
)}
{canViewAIGovernance && (
{canViewAIBridge && (
<PopoverClose asChild>
<MenuItem
component={NavLink}
to="/aigovernance"
css={styles.menuItem}
>
AI Governance
<MenuItem component={NavLink} to="/aibridge" css={styles.menuItem}>
AI Bridge
</MenuItem>
</PopoverClose>
)}
+2 -2
View File
@@ -25,7 +25,7 @@ export const Navbar: FC = () => {
featureVisibility.audit_log && permissions.viewAnyAuditLog;
const canViewConnectionLog =
featureVisibility.connection_log && permissions.viewAnyConnectionLog;
const canViewAIGovernance =
const canViewAIBridge =
featureVisibility.aibridge && permissions.viewAnyAIBridgeInterception;
const uniqueLinks = new Map<string, LinkConfig>();
@@ -46,7 +46,7 @@ export const Navbar: FC = () => {
canViewHealth={canViewHealth}
canViewAuditLog={canViewAuditLog}
canViewConnectionLog={canViewConnectionLog}
canViewAIGovernance={canViewAIGovernance}
canViewAIBridge={canViewAIBridge}
proxyContextValue={proxyContextValue}
/>
);
@@ -35,7 +35,7 @@ interface NavbarViewProps {
canViewAuditLog: boolean;
canViewConnectionLog: boolean;
canViewHealth: boolean;
canViewAIGovernance: boolean;
canViewAIBridge: boolean;
proxyContextValue?: ProxyContextValue;
}
@@ -56,7 +56,7 @@ export const NavbarView: FC<NavbarViewProps> = ({
canViewHealth,
canViewAuditLog,
canViewConnectionLog,
canViewAIGovernance,
canViewAIBridge,
proxyContextValue,
}) => {
const webPush = useWebpushNotifications();
@@ -97,7 +97,7 @@ export const NavbarView: FC<NavbarViewProps> = ({
canViewDeployment={canViewDeployment}
canViewHealth={canViewHealth}
canViewConnectionLog={canViewConnectionLog}
canViewAIGovernance={canViewAIGovernance}
canViewAIBridge={canViewAIBridge}
/>
</div>
@@ -10,15 +10,15 @@ import {
import type { FC } from "react";
import { docs } from "utils/docs";
export const AIGovernanceHelpTooltip: FC = () => {
export const AIBridgeHelpTooltip: FC = () => {
return (
<HelpTooltip>
<HelpTooltipIconTrigger />
<HelpTooltipContent>
<HelpTooltipTitle>What is AI Governance?</HelpTooltipTitle>
<HelpTooltipTitle>What is AI Bridge?</HelpTooltipTitle>
<HelpTooltipText>
AI Governance is a proxy that unifies and audits LLM usage across your
AI Bridge is a proxy that unifies and audits LLM usage across your
organization.
</HelpTooltipText>
<HelpTooltipLinksGroup>
@@ -6,16 +6,16 @@ import {
} from "components/PageHeader/PageHeader";
import type { FC, PropsWithChildren } from "react";
import { Outlet } from "react-router";
import { AIGovernanceHelpTooltip } from "./AIGovernanceHelpTooltip";
import { AIBridgeHelpTooltip } from "./AIBridgeHelpTooltip";
const AIGovernanceLayout: FC<PropsWithChildren> = () => {
const AIBridgeLayout: FC<PropsWithChildren> = () => {
return (
<Margins className="pb-12">
<PageHeader>
<PageHeaderTitle>
<div className="flex items-center gap-2">
<span>AI Governance</span>
<AIGovernanceHelpTooltip />
<span>AI Bridge</span>
<AIBridgeHelpTooltip />
</div>
</PageHeaderTitle>
<PageHeaderSubtitle>
@@ -27,4 +27,4 @@ const AIGovernanceLayout: FC<PropsWithChildren> = () => {
);
};
export default AIGovernanceLayout;
export default AIBridgeLayout;
@@ -43,7 +43,7 @@ const RequestLogsPage: FC = () => {
return (
<>
<title>{pageTitle("Request Logs", "AI Governance")}</title>
<title>{pageTitle("Request Logs", "AI Bridge")}</title>
<RequestLogsPageView
isLoading={interceptionsQuery.isLoading}
@@ -28,7 +28,7 @@ const defaultFilterProps = getDefaultFilterProps<FilterProps>({
const interceptions = [MockInterception, MockInterception, MockInterception];
const meta: Meta<typeof RequestLogsPageView> = {
title: "pages/AIGovernancePage/RequestLogsPageView",
title: "pages/AIBridgePage/RequestLogsPageView",
component: RequestLogsPageView,
args: {},
};
@@ -36,8 +36,8 @@ export const RequestLogsPageView: FC<RequestLogsPageViewProps> = ({
if (!isRequestLogsVisible) {
return (
<Paywall
message="AI Governance"
description="AI Governance allows you to monitor and manage AI requests. You need an Premium license to use this feature."
message="AI Bridge"
description="AI Bridge allows you to monitor and manage AI requests. You need an Premium license to use this feature."
documentationLink={docs("/ai-coder/ai-bridge")}
/>
);
@@ -4,7 +4,7 @@ import { Table, TableBody } from "components/Table/Table";
import { RequestLogsRow } from "./RequestLogsRow";
const meta: Meta<typeof RequestLogsRow> = {
title: "pages/AIGovernancePage/RequestLogsRow",
title: "pages/AIBridgePage/RequestLogsRow",
component: RequestLogsRow,
decorators: [
(Story) => (
+6 -9
View File
@@ -334,11 +334,11 @@ const ProvisionerJobsPage = lazy(
);
const TasksPage = lazy(() => import("./pages/TasksPage/TasksPage"));
const TaskPage = lazy(() => import("./pages/TaskPage/TaskPage"));
const AIGovernanceLayout = lazy(
() => import("./pages/AIGovernancePage/AIGovernanceLayout"),
const AIBridgeLayout = lazy(
() => import("./pages/AIBridgePage/AIBridgeLayout"),
);
const AIGovernanceRequestLogsPage = lazy(
() => import("./pages/AIGovernancePage/RequestLogsPage/RequestLogsPage"),
const AIBridgeRequestLogsPage = lazy(
() => import("./pages/AIBridgePage/RequestLogsPage/RequestLogsPage"),
);
const RoutesWithSuspense = () => {
@@ -563,12 +563,9 @@ export const router = createBrowserRouter(
</Route>
</Route>
<Route path="/aigovernance" element={<AIGovernanceLayout />}>
<Route path="/aibridge" element={<AIBridgeLayout />}>
<Route index element={<Navigate to="request-logs" replace />} />
<Route
path="request-logs"
element={<AIGovernanceRequestLogsPage />}
/>
<Route path="request-logs" element={<AIBridgeRequestLogsPage />} />
</Route>
<Route path="/health" element={<HealthLayout />}>