From c366ca88e623292abaf58ea97298c01ac32d9843 Mon Sep 17 00:00:00 2001 From: yellowcooln Date: Fri, 19 Jun 2026 09:46:19 -0400 Subject: [PATCH 01/55] feat: update Glass for repeater dev policy workflows --- backend/app/contracts/v1/command.py | 1 + frontend/src/components/layout/SidebarNav.vue | 4 +- frontend/src/components/layout/TopHeader.vue | 2 +- frontend/src/router/index.ts | 1 + frontend/src/types.ts | 4 +- frontend/src/views/AlertPoliciesView.vue | 55 ++++++-- frontend/src/views/CommandsView.vue | 44 +++++-- frontend/src/views/DashboardView.vue | 6 +- frontend/src/views/GlobalStatsView.vue | 4 +- frontend/src/views/MapView.vue | 121 ++++++++++++------ 10 files changed, 175 insertions(+), 67 deletions(-) diff --git a/backend/app/contracts/v1/command.py b/backend/app/contracts/v1/command.py index f8319ad..1eae0cd 100644 --- a/backend/app/contracts/v1/command.py +++ b/backend/app/contracts/v1/command.py @@ -20,6 +20,7 @@ class CommandAction(str, Enum): export_config = "export_config" export_identity = "export_identity" run_diagnostic = "run_diagnostic" + transport_keys_sync = "transport_keys_sync" class QueueCommandRequestV1(BaseModel): diff --git a/frontend/src/components/layout/SidebarNav.vue b/frontend/src/components/layout/SidebarNav.vue index f9dcff2..da0c467 100644 --- a/frontend/src/components/layout/SidebarNav.vue +++ b/frontend/src/components/layout/SidebarNav.vue @@ -128,7 +128,7 @@ @@ -214,7 +214,7 @@ const navItems: NavItem[] = [ }, { id: "fleet", - label: "Fleet", + label: "Network", icon: "fleet", children: [ { id: "fleet-repeaters", label: "Repeaters", to: "/repeaters", icon: "repeaters" }, diff --git a/frontend/src/components/layout/TopHeader.vue b/frontend/src/components/layout/TopHeader.vue index 4262b35..25920ce 100644 --- a/frontend/src/components/layout/TopHeader.vue +++ b/frontend/src/components/layout/TopHeader.vue @@ -3,7 +3,7 @@
-

Fleet Operations

+

Network Operations

{{ appState.user?.display_name || appState.user?.email }} · role: {{ appState.user?.role }} diff --git a/frontend/src/router/index.ts b/frontend/src/router/index.ts index 0677853..bae5771 100644 --- a/frontend/src/router/index.ts +++ b/frontend/src/router/index.ts @@ -39,6 +39,7 @@ const routes = [ { path: "alert-policies/actions", name: "alert-policies-actions", component: AlertPoliciesView }, { path: "alert-policies/evaluation", name: "alert-policies-evaluation", component: AlertPoliciesView }, { path: "global-stats", name: "global-stats", component: GlobalStatsView }, + { path: "insights/topology", redirect: "/insights-topology" }, { path: "insights-topology", name: "insights-topology", component: InsightsTopologyView }, { path: "repeaters", name: "repeaters", component: RepeatersView }, { path: "repeaters/:repeaterId", name: "repeater-detail", component: RepeaterDetailView }, diff --git a/frontend/src/types.ts b/frontend/src/types.ts index f616360..ee2d609 100644 --- a/frontend/src/types.ts +++ b/frontend/src/types.ts @@ -136,7 +136,8 @@ export type CommandAction = | "reboot" | "export_config" | "export_identity" - | "run_diagnostic"; + | "run_diagnostic" + | "transport_keys_sync"; export const COMMAND_ACTIONS: CommandAction[] = [ "restart_service", @@ -151,6 +152,7 @@ export const COMMAND_ACTIONS: CommandAction[] = [ "export_config", "export_identity", "run_diagnostic", + "transport_keys_sync", ]; export interface QueueCommandRequest { diff --git a/frontend/src/views/AlertPoliciesView.vue b/frontend/src/views/AlertPoliciesView.vue index cd55bb7..0033289 100644 --- a/frontend/src/views/AlertPoliciesView.vue +++ b/frontend/src/views/AlertPoliciesView.vue @@ -133,6 +133,13 @@ {{ formatTemplateThreshold(template) }} +

@@ -287,7 +294,7 @@
{{ scopeTypeLabel(policy.source_scope_type) }} - {{ policy.source_scope_name || "Fleet-wide" }} + {{ policy.source_scope_name || "Network-wide" }}
{{ formatEffectiveThreshold(policy) }} @@ -757,7 +764,7 @@

Topology advert feed appears stale.

- + Open Topology Insights diff --git a/frontend/src/views/GlobalStatsView.vue b/frontend/src/views/GlobalStatsView.vue index 6c405c0..f8864fe 100644 --- a/frontend/src/views/GlobalStatsView.vue +++ b/frontend/src/views/GlobalStatsView.vue @@ -4,7 +4,7 @@

Global Stats

- Fleet-wide packet analytics across all repeaters, including distribution and recent packet traffic. + Network-wide packet analytics across all repeaters, including distribution and recent packet traffic.

@@ -76,7 +76,7 @@
- +

Showing {{ pageStart }}–{{ pageEnd }} of {{ filteredPackets.length }} packets diff --git a/frontend/src/views/MapView.vue b/frontend/src/views/MapView.vue index eb4f764..71420f8 100644 --- a/frontend/src/views/MapView.vue +++ b/frontend/src/views/MapView.vue @@ -4,7 +4,7 @@

Repeater Map

- Location-based fleet visibility. Location format expected: lat,lng. + Location-based network visibility. Location format expected: lat,lng.