From 17a01df61158747a01a708ccb8d9af969b63c9c8 Mon Sep 17 00:00:00 2001 From: master <> Date: Sat, 28 Mar 2026 11:23:58 +0200 Subject: [PATCH] Remove redundant h2 titles from governance tab panels Each governance sub-component had its own h2 title + subtitle that duplicated the tab label and the parent "Policy Governance" context. Removed the redundant headers from 13 tab components while preserving action buttons (Configure Budget, Add Weight, New Profile, etc.) as standalone right-aligned action bars. Detail sub-routes (risk-profile-editor, conflict-resolution-wizard) keep their titles since they are not tab panels. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../governance-audit.component.ts | 24 -------- .../impact-preview.component.ts | 31 +--------- .../policy-conflict-dashboard.component.ts | 29 ++-------- .../policy-validator.component.ts | 24 -------- .../risk-budget-config.component.ts | 30 +--------- .../risk-budget-dashboard.component.ts | 29 ++-------- .../risk-profile-list.component.ts | 32 +--------- .../schema-docs.component.ts | 32 +--------- .../schema-playground.component.ts | 32 +--------- .../sealed-mode-control.component.ts | 24 -------- .../sealed-mode-overrides.component.ts | 58 ++----------------- .../staleness-config.component.ts | 24 -------- .../trust-weighting.component.ts | 29 ++-------- 13 files changed, 36 insertions(+), 362 deletions(-) diff --git a/src/Web/StellaOps.Web/src/app/features/policy-governance/governance-audit.component.ts b/src/Web/StellaOps.Web/src/app/features/policy-governance/governance-audit.component.ts index 8f72bd689..67b98b22d 100644 --- a/src/Web/StellaOps.Web/src/app/features/policy-governance/governance-audit.component.ts +++ b/src/Web/StellaOps.Web/src/app/features/policy-governance/governance-audit.component.ts @@ -29,13 +29,6 @@ import { injectPolicyGovernanceScopeResolver } from './policy-governance-scope'; changeDetection: ChangeDetectionStrategy.OnPush, template: `
-
-
-

Audit Log

-

Track all governance configuration changes.

-
-
-
-
-
-

Impact Preview

-

Review the projected impact of your proposed changes before applying.

-
-
+
Cancel
-
@if (impact(); as i) { @@ -208,30 +202,11 @@ import { injectPolicyGovernanceScopeResolver } from './policy-governance-scope'; padding: 1.5rem; } - .preview__header { - display: flex; - justify-content: space-between; - align-items: flex-start; - margin-bottom: 1.5rem; - gap: 1rem; - } - - .preview__title { - margin: 0; - font-size: 1.25rem; - font-weight: var(--font-weight-semibold); - color: var(--color-text-heading); - } - - .preview__subtitle { - margin: 0.25rem 0 0; - color: var(--color-text-muted); - font-size: 0.9rem; - } - .preview__actions { display: flex; + justify-content: flex-end; gap: 0.5rem; + margin-bottom: 1rem; } .btn { diff --git a/src/Web/StellaOps.Web/src/app/features/policy-governance/policy-conflict-dashboard.component.ts b/src/Web/StellaOps.Web/src/app/features/policy-governance/policy-conflict-dashboard.component.ts index 79f7d9712..9a2d46ac7 100644 --- a/src/Web/StellaOps.Web/src/app/features/policy-governance/policy-conflict-dashboard.component.ts +++ b/src/Web/StellaOps.Web/src/app/features/policy-governance/policy-conflict-dashboard.component.ts @@ -31,18 +31,14 @@ import { injectPolicyGovernanceScopeResolver } from './policy-governance-scope'; changeDetection: ChangeDetectionStrategy.OnPush, template: `
-
-
-

Policy Conflicts

-

Identify and resolve rule overlaps and precedence issues.

-
+
-
+
@if (dashboard(); as d) { @@ -254,24 +250,11 @@ import { injectPolicyGovernanceScopeResolver } from './policy-governance-scope'; padding: 1.5rem; } - .conflicts__header { + .conflicts__actions { display: flex; - justify-content: space-between; - align-items: flex-start; - margin-bottom: 1.5rem; - } - - .conflicts__title { - margin: 0; - font-size: 1.25rem; - font-weight: var(--font-weight-semibold); - color: var(--color-text-heading); - } - - .conflicts__subtitle { - margin: 0.25rem 0 0; - color: var(--color-text-muted); - font-size: 0.9rem; + justify-content: flex-end; + gap: 0.5rem; + margin-bottom: 1rem; } .btn { diff --git a/src/Web/StellaOps.Web/src/app/features/policy-governance/policy-validator.component.ts b/src/Web/StellaOps.Web/src/app/features/policy-governance/policy-validator.component.ts index bf431d8a6..adf59db7b 100644 --- a/src/Web/StellaOps.Web/src/app/features/policy-governance/policy-validator.component.ts +++ b/src/Web/StellaOps.Web/src/app/features/policy-governance/policy-validator.component.ts @@ -24,13 +24,6 @@ import { changeDetection: ChangeDetectionStrategy.OnPush, template: `
-
-
-

Policy Validator

-

Validate policy documents against the schema.

-
-
-
@@ -172,23 +165,6 @@ import { flex-direction: column; } - .validator__header { - margin-bottom: 1.5rem; - } - - .validator__title { - margin: 0; - font-size: 1.25rem; - font-weight: var(--font-weight-semibold); - color: var(--color-text-heading); - } - - .validator__subtitle { - margin: 0.25rem 0 0; - color: var(--color-text-muted); - font-size: 0.9rem; - } - .validator__content { display: grid; grid-template-columns: 1fr 1fr; diff --git a/src/Web/StellaOps.Web/src/app/features/policy-governance/risk-budget-config.component.ts b/src/Web/StellaOps.Web/src/app/features/policy-governance/risk-budget-config.component.ts index 4d1d4518b..d63713ad2 100644 --- a/src/Web/StellaOps.Web/src/app/features/policy-governance/risk-budget-config.component.ts +++ b/src/Web/StellaOps.Web/src/app/features/policy-governance/risk-budget-config.component.ts @@ -34,18 +34,12 @@ import { injectPolicyGovernanceScopeResolver } from './policy-governance-scope'; changeDetection: ChangeDetectionStrategy.OnPush, template: `
-
-
-

Budget Configuration

-

Configure risk budget limits, thresholds, and enforcement policies.

-
-
+
Cancel
-
@if (loadError()) { @@ -233,29 +227,11 @@ import { injectPolicyGovernanceScopeResolver } from './policy-governance-scope'; padding: 1.5rem; } - .config__header { - display: flex; - justify-content: space-between; - align-items: flex-start; - margin-bottom: 1.5rem; - } - - .config__title { - margin: 0; - font-size: 1.25rem; - font-weight: var(--font-weight-semibold); - color: var(--color-text-heading); - } - - .config__subtitle { - margin: 0.25rem 0 0; - color: var(--color-text-muted); - font-size: 0.9rem; - } - .config__actions { display: flex; + justify-content: flex-end; gap: 0.5rem; + margin-bottom: 1rem; } .error-state { diff --git a/src/Web/StellaOps.Web/src/app/features/policy-governance/risk-budget-dashboard.component.ts b/src/Web/StellaOps.Web/src/app/features/policy-governance/risk-budget-dashboard.component.ts index 511431147..e568d23f3 100644 --- a/src/Web/StellaOps.Web/src/app/features/policy-governance/risk-budget-dashboard.component.ts +++ b/src/Web/StellaOps.Web/src/app/features/policy-governance/risk-budget-dashboard.component.ts @@ -28,15 +28,9 @@ import { injectPolicyGovernanceScopeResolver } from './policy-governance-scope'; changeDetection: ChangeDetectionStrategy.OnPush, template: `
-
-
-

Risk Budget Overview

-

Monitor budget consumption and manage risk thresholds.

-
-
@if (loadError()) { @@ -196,24 +190,11 @@ import { injectPolicyGovernanceScopeResolver } from './policy-governance-scope'; padding: 1.5rem; } - .dashboard__header { + .dashboard__actions { display: flex; - justify-content: space-between; - align-items: flex-start; - margin-bottom: 1.5rem; - } - - .dashboard__title { - margin: 0; - font-size: 1.25rem; - font-weight: var(--font-weight-semibold); - color: var(--color-text-heading); - } - - .dashboard__subtitle { - margin: 0.25rem 0 0; - color: var(--color-text-muted); - font-size: 0.9rem; + justify-content: flex-end; + gap: 0.5rem; + margin-bottom: 1rem; } .error-state { diff --git a/src/Web/StellaOps.Web/src/app/features/policy-governance/risk-profile-list.component.ts b/src/Web/StellaOps.Web/src/app/features/policy-governance/risk-profile-list.component.ts index ac414313c..963cbc0d0 100644 --- a/src/Web/StellaOps.Web/src/app/features/policy-governance/risk-profile-list.component.ts +++ b/src/Web/StellaOps.Web/src/app/features/policy-governance/risk-profile-list.component.ts @@ -29,12 +29,7 @@ import { StellaFilterChipComponent } from '../../shared/components/stella-filter changeDetection: ChangeDetectionStrategy.OnPush, template: `
-
-
-

Risk Profiles

-

Manage risk evaluation profiles and signal weights.

-
-
+
-
@if (profiles().length > 0) {
@@ -179,32 +173,12 @@ import { StellaFilterChipComponent } from '../../shared/components/stella-filter padding: 1.5rem; } - .profiles__header { - display: flex; - justify-content: space-between; - align-items: flex-start; - margin-bottom: 1.5rem; - gap: 1rem; - flex-wrap: wrap; - } - - .profiles__title { - margin: 0; - font-size: 1.25rem; - font-weight: var(--font-weight-semibold); - color: var(--color-text-heading); - } - - .profiles__subtitle { - margin: 0.25rem 0 0; - color: var(--color-text-muted); - font-size: 0.9rem; - } - .profiles__actions { display: flex; + justify-content: flex-end; align-items: center; gap: 1rem; + margin-bottom: 1rem; } .btn { diff --git a/src/Web/StellaOps.Web/src/app/features/policy-governance/schema-docs.component.ts b/src/Web/StellaOps.Web/src/app/features/policy-governance/schema-docs.component.ts index 346b0ed8d..272b90c3c 100644 --- a/src/Web/StellaOps.Web/src/app/features/policy-governance/schema-docs.component.ts +++ b/src/Web/StellaOps.Web/src/app/features/policy-governance/schema-docs.component.ts @@ -40,12 +40,7 @@ interface SchemaSection { changeDetection: ChangeDetectionStrategy.OnPush, template: `
-
-
-

Risk Profile Schema Documentation

-

Reference documentation for risk profile configuration schemas.

-
-
+
-
@@ -300,32 +294,12 @@ interface SchemaSection { padding: 1.5rem; } - .docs__header { - display: flex; - justify-content: space-between; - align-items: flex-start; - margin-bottom: 1.5rem; - gap: 1rem; - flex-wrap: wrap; - } - - .docs__title { - margin: 0; - font-size: 1.25rem; - font-weight: var(--font-weight-semibold); - color: var(--color-text-heading); - } - - .docs__subtitle { - margin: 0.25rem 0 0; - color: var(--color-text-muted); - font-size: 0.9rem; - } - .docs__actions { display: flex; + justify-content: flex-end; gap: 0.75rem; align-items: center; + margin-bottom: 1rem; } .search-input { diff --git a/src/Web/StellaOps.Web/src/app/features/policy-governance/schema-playground.component.ts b/src/Web/StellaOps.Web/src/app/features/policy-governance/schema-playground.component.ts index 355a8fd91..092a9288b 100644 --- a/src/Web/StellaOps.Web/src/app/features/policy-governance/schema-playground.component.ts +++ b/src/Web/StellaOps.Web/src/app/features/policy-governance/schema-playground.component.ts @@ -23,12 +23,7 @@ import { changeDetection: ChangeDetectionStrategy.OnPush, template: `
-
-
-

Schema Validation Playground

-

Test and validate risk profile schemas interactively.

-
-
+