feat(cra): priority frontend — weights control, P0/P1 tier badges, quick wins
CRA tab now shows the priority layer: a weights control (5 business objectives, high/medium/low) that re-computes the assessment live; a Prio column with P0..P3 tier badges (P0 = non-negotiable floor, reason on hover); the table in backend priority order; and a Quick-Wins block (high impact, low effort). Demo flags the safety-cross-linked findings as safety_impact so the P0 floor shows. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -2,19 +2,21 @@
|
||||
|
||||
import { useCRA } from './_hooks/useCRA'
|
||||
import { CRACyberView } from './_components/CRACyberView'
|
||||
import { WeightsControl } from './_components/WeightsControl'
|
||||
|
||||
export default function CRAPage() {
|
||||
const { data, live } = useCRA()
|
||||
const { data, live, weights, setWeights } = useCRA()
|
||||
if (!data) {
|
||||
return <p className="text-sm text-gray-500">CRA-Risikobeurteilung wird geladen …</p>
|
||||
}
|
||||
return (
|
||||
<div>
|
||||
<div className="space-y-6">
|
||||
{!live && (
|
||||
<p className="mb-3 text-[11px] text-amber-600 dark:text-amber-400">
|
||||
<p className="text-[11px] text-amber-600 dark:text-amber-400">
|
||||
Backend nicht erreichbar — statisches Szenario angezeigt.
|
||||
</p>
|
||||
)}
|
||||
<WeightsControl weights={weights} onChange={setWeights} />
|
||||
<CRACyberView data={data} />
|
||||
</div>
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user