cfafa31ea2
Roadmap item 5. GAP analysis and measure-prioritisation are the SAME computation: Required − Known = the Capability Delta. The Capability Delta Engine (RS-005) computes it once; renderers read that ONE delta. Interview Renderer (missing info → questions) was already built; this adds the Roadmap/Management Renderer (missing capabilities → measures ranked by regulatory leverage). - compliance/optimization/: regulatory_leverage() + select_within_budget() (pure leverage math) + roadmap_from_delta(assessment, ...) — the keystone binding optimization to the RS-005 delta (dependency optimization → transition_reasoning, acyclic; the delta engine stays hermetic). leverage(measure) = number of regulatory requirements it closes at once (e.g. patch management → CRA+MaschinenVO+IEC62443+ISO27001 = 4). No new corpus, no new meta-model class (freeze v1.0). - Welt-1 honesty: percentages are exact count ratios over the IDENTIFIED requirements (the known delta), never "% gesetzeskonform". - reference suite: "Regulatory Optimization" section runs the SAME convergence delta → ranked measures + budget answer + the management sentence "of N identified requirements you close M with the top-K measures (X%) — highest regulatory leverage". - ADR-003: Capability Delta Engine — one delta, many renderers; rename Gap → Capability Delta. 13 optimization tests (31 with transition+company), mypy --strict clean, check-loc 0. Product code with no app caller + ADR/reference = non-runtime → no deploy (ADR-001). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
22 lines
813 B
Python
22 lines
813 B
Python
"""Regulatory Optimization — the Roadmap / Management renderer of the Capability Delta Engine.
|
|
|
|
Ranks the OPEN Capability Delta (from RS-005) by regulatory leverage: which measure closes the
|
|
most regulatory requirements at once. Answers the Geschäftsführer question "Womit anfangen?".
|
|
Pure, deterministic, computed-not-stored. Consumes the RS-005 delta (acyclic dependency); the
|
|
delta engine stays hermetic. No new corpus, no new meta-model class (freeze v1.0).
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
from .engine import regulatory_leverage, roadmap_from_delta, select_within_budget
|
|
from .schemas import BudgetPlan, OptimizationPlan, RankedMeasure
|
|
|
|
__all__ = [
|
|
"regulatory_leverage",
|
|
"select_within_budget",
|
|
"roadmap_from_delta",
|
|
"OptimizationPlan",
|
|
"RankedMeasure",
|
|
"BudgetPlan",
|
|
]
|