Files
git.stella-ops.org/docs/features/unchecked/web/policy-gates-preview-with-air-gap-mode-and-feed-freshness.md

2.1 KiB

Policy Gates Preview with Air-Gap Mode and Feed Freshness

Module

Web

Status

IMPLEMENTED

Description

Policy gates preview panel with air-gap mode toggle (sealed/connected with offline verification status), feed freshness status badges (fresh/warning/stale counts), bundle simulation for promotions, gate simulation results display, and policy profile selection.

Implementation Details

  • Feature directory: src/Web/StellaOps.Web/src/app/features/policy-gates/
  • Routes: policy-gates.routes.ts
  • Components:
    • airgap-mode-switch (src/Web/StellaOps.Web/src/app/features/policy-gates/components/airgap-mode-switch/airgap-mode-switch.component.ts)
    • bundle-simulator (src/Web/StellaOps.Web/src/app/features/policy-gates/components/bundle-simulator/bundle-simulator.component.ts)
    • feed-freshness-badges (src/Web/StellaOps.Web/src/app/features/policy-gates/components/feed-freshness-badges/feed-freshness-badges.component.ts)
    • gate-simulation-results (src/Web/StellaOps.Web/src/app/features/policy-gates/components/gate-simulation-results/gate-simulation-results.component.ts)
    • policy-preview-panel (src/Web/StellaOps.Web/src/app/features/policy-gates/components/policy-preview-panel/policy-preview-panel.component.ts)
    • profile-selector (src/Web/StellaOps.Web/src/app/features/policy-gates/components/profile-selector/profile-selector.component.ts)
  • Source: Feature matrix scan

E2E Test Plan

  • Setup:
    • Log in with a user that has appropriate permissions
    • Navigate to /policy
    • Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
  • Core verification:
    • Verify the component renders correctly with sample data
    • Verify interactive elements respond to user input
    • Verify data is fetched and displayed from the correct API endpoints
  • Edge cases:
    • Verify graceful handling when backend API is unavailable (error state)
    • Verify responsive layout at different viewport sizes
    • Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)