Files
git.stella-ops.org/docs/features/checked/web/policy-decisioning-studio-ui.md
2026-03-08 01:35:18 +02:00

3.4 KiB

Policy Decisioning Studio UI

Module

Web

Status

VERIFIED

Description

Shipped the canonical Policy Decisioning Studio shell at /ops/policy and made it the mutable owner for policy packs, governance, simulation, VEX, exceptions, release gates, and policy/VEX audit. Legacy policy-studio, policy/*, admin/policy/*, admin/vex-hub/*, and security VEX aliases now resolve into the same routed shell instead of leaving writable sibling products active.

Implementation Details

  • Feature directory: src/Web/StellaOps.Web/src/app/features/policy-decisioning/
  • Primary components:
    • policy-decisioning-shell.component.ts
    • policy-decisioning-overview-page.component.ts
    • policy-pack-shell.component.ts
    • policy-decisioning-vex-shell.component.ts
    • policy-decisioning-gates-page.component.ts
    • policy-decisioning-audit-shell.component.ts
  • Canonical routes:
    • /ops/policy/overview
    • /ops/policy/packs/*
    • /ops/policy/governance/*
    • /ops/policy/simulation/*
    • /ops/policy/vex/*
    • /ops/policy/gates/*
    • /ops/policy/audit/*
  • Legacy aliases:
    • /policy-studio/*
    • /policy/*
    • /admin/policy/*
    • /admin/vex-hub/*
    • /security/vex*
    • /security/exceptions*
  • Release-context entry points:
    • approvals detail
    • promotion request
    • release detail
    • workflow editor
    • evidence detail

E2E Test Plan

  • Setup:
    • Log in with a user that has policy, VEX, exception, and release read scopes.
    • Seed pack dashboard data or route fixtures for /api/policy/packs and /api/policy/packs/:packId/dashboard.
    • Start the local UI harness on https://127.0.0.1:4400.
  • Core verification:
    • Verify /ops/policy/overview renders the canonical shell and primary tabs.
    • Verify a legacy pack bookmark lands inside pack-mode decisioning.
    • Verify a release-context gate URL renders context chips and return-to-source affordance.
    • Verify /security/vex redirects into the canonical VEX shell.
  • Regression verification:
    • Verify targeted Angular route and redirect specs cover the alias contract.
    • Verify workflow-editor and evidence-detail deep links open the shared shell.
    • Verify global search VEX normalization lands in the canonical shell.

Verification

  • Run:
    • npm test -- --watch=false --include src/tests/policy_decisioning/policy-decisioning-shell.component.spec.ts --include src/tests/policy_decisioning/policy-decisioning-routes.spec.ts --include src/tests/release_orchestrator/evidence-detail.behavior.spec.ts --include src/tests/release_orchestrator/visual-workflow-editor.behavior.spec.ts --include src/tests/security/security-overview-dashboard.behavior.spec.ts --include src/tests/global_search/search-route-matrix.spec.ts --include src/tests/navigation/legacy-redirects.spec.ts --include src/tests/routes/legacy-route-migration-framework.component.spec.ts --include src/tests/administration/administration-routes.spec.ts --include src/tests/security-risk/security-risk-routes.spec.ts
    • npx playwright test tests/e2e/policy-decisioning-studio.spec.ts
    • npm run build
  • Tier 0 (source): pass
  • Tier 1 (build/tests): pass
  • Tier 2 (behavior): pass
  • Note: the production build still emits existing bundle-budget warnings outside this feature scope; the build itself completes successfully.
  • Verified on (UTC): 2026-03-07T23:22:53Z