feat: Ownership-Konflikt #1 RESOLVED (Capability = geteilter Knoten) + Reasoning#1 Re-Link
User-Entscheidung: Feature->Capability + Certificate->Capability = Session 3 (Domaene 3), NICHT Compliance. Capability = GETEILTER Knoten: eingehende Kanten (Feature/Cert->Cap) = Domaene 3 · Knoten+IDs+ausgehende Kanten (Cap->Obligation/Procedure/Control/Evidence) = Domaene 2. Expliziter Vertrag: „Domaene 2 besitzt NIE Wissen, welche Produkte/Zertifikate welche Capabilities brauchen." + Ownership-Tabelle in session_ownership_model_v1.md. Reasoning#1 (Domaene 2, Registry-Kanonisierung): obligations/proposed_obligation_canonical_map.json — 5 machine_* -> cra_machinery (re-link, Ziele validiert), 7 data_act_*/cra_* pending (Regulierung nicht geschnitten). RE-LINK, kein Re-Mint. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -148,3 +148,35 @@ Output: je Feature die Lücken — fehlende Capability · fehlende Procedure ·
|
|||||||
Zeigt sofort, was schon vollständig modelliert ist und wo Domäne 2 als Nächstes nacharbeiten muss.
|
Zeigt sofort, was schon vollständig modelliert ist und wo Domäne 2 als Nächstes nacharbeiten muss.
|
||||||
Traversal-Logik gehört Domäne 2 (cap.*→Obligation→Procedure→Evidence); der Feature→cap.*-Input kommt
|
Traversal-Logik gehört Domäne 2 (cap.*→Obligation→Procedure→Evidence); der Feature→cap.*-Input kommt
|
||||||
read-only von Domäne 3. Gated auf Feature Library v1.
|
read-only von Domäne 3. Gated auf Feature Library v1.
|
||||||
|
|
||||||
|
## RESOLVED (2026-06-26): Ownership-Konflikt #1 — Capability ist ein GETEILTER Knoten
|
||||||
|
|
||||||
|
Konflikt: die Reasoning/Company-Session beanspruchte `Feature→Capability`/`Certificate→Capability`
|
||||||
|
für Domäne 2. **User-Entscheidung: beide bleiben bei Domäne 3 (Feature Knowledge Graph).**
|
||||||
|
|
||||||
|
```
|
||||||
|
Feature ------+
|
||||||
|
Certificate --+──▶ CAPABILITY ──▶ Obligation ─▶ Procedure ─▶ Control ─▶ Evidence
|
||||||
|
(Domäne 3: (Domäne 2: (Domäne 2: ausgehende Kanten)
|
||||||
|
eingehende Knoten +
|
||||||
|
Kanten) IDs)
|
||||||
|
```
|
||||||
|
- **Knoten + ausgehende Kanten = Domäne 2:** Capability Registry · Capability-IDs (`cap.*`) ·
|
||||||
|
`Capability→Obligation` (realizes) · `Capability→Procedure→Control→Evidence`.
|
||||||
|
- **eingehende Kanten = Domäne 3:** `Feature→Capability` (requires) · `Certificate→Capability` ·
|
||||||
|
`Product Profile→Features`.
|
||||||
|
|
||||||
|
**Begründung:** „Fernwartung→transport_encryption" oder „IEC 62443-4-2→Capabilities" sind PRODUKT-/
|
||||||
|
Technik-Aussagen — kein Jurist weiß das → Produktwissen (Domäne 3). „Capability→Obligation" ist
|
||||||
|
regulatorisches Wissen (Domäne 2). Gleiches Objekt, andere Kante, andere Domäne.
|
||||||
|
|
||||||
|
**EXPLIZITER VERTRAG:** *Domäne 2 besitzt NIEMALS Wissen darüber, welche Produkte oder Zertifikate
|
||||||
|
welche Capabilities benötigen. Sie besitzt ausschließlich das Wissen, welche Capabilities
|
||||||
|
regulatorische Pflichten erfüllen.* (Verhindert, dass Domäne 2 zur Produktmodellierung abdriftet.)
|
||||||
|
|
||||||
|
| Thema | Owner |
|
||||||
|
|---|---|
|
||||||
|
| Capability Registry · Capability-IDs | Domäne 2 |
|
||||||
|
| Capability → Obligation · Capability → Procedure → Control → Evidence | Domäne 2 |
|
||||||
|
| `proposed → canonical obligation_id` (Reasoning#1) | Domäne 2 |
|
||||||
|
| **Feature → Capability** · **Certificate → Capability** · Product Profile → Features | **Domäne 3** |
|
||||||
|
|||||||
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"schema_version": "proposed_obligation_canonical_map_v1",
|
||||||
|
"purpose": "Reasoning#1: Re-Link der proposed=True-Obligations der Reasoning-Session auf kanonische obligation_ids der Registry (Domaene 2). DISZIPLIN: obligation_id RE-LINKEN, NIE neu vergeben — Reasoning ersetzt ihre proposed_id durch canonical_id.",
|
||||||
|
"owner": "Domaene 2 (Compliance Execution / Obligation Registry)",
|
||||||
|
"canonicalized": {
|
||||||
|
"machine_risk_assessment": "risk_assessment_machinery_lifecycle",
|
||||||
|
"machine_safety_control_systems": "safety_functions_design",
|
||||||
|
"machine_protection_against_corruption": "protection_against_corruption",
|
||||||
|
"machine_instructions_for_use": "operating_instructions",
|
||||||
|
"machine_ce_conformity": "eu_declaration_ce_marking"
|
||||||
|
},
|
||||||
|
"pending_no_target": {
|
||||||
|
"data_act_data_access_by_design": "Data-Act-Registry nicht geschnitten",
|
||||||
|
"data_act_user_data_access": "Data-Act-Registry nicht geschnitten",
|
||||||
|
"cra_secure_by_design": "CRA-Prozesspflicht ohne eigene Obligation (Annex-I-Umbrella)",
|
||||||
|
"cra_risk_assessment": "CRA-weite Risikobeurteilung nicht als eigene Obligation geschnitten",
|
||||||
|
"cra_technical_documentation": "CRA-Technische-Doku nicht als eigene Obligation",
|
||||||
|
"cra_ce_conformity_assessment": "CRA-Konformitaetsbewertung nicht als eigene Obligation",
|
||||||
|
"cra_instructions_for_use": "CRA-Betriebsanleitung nicht als eigene Obligation"
|
||||||
|
},
|
||||||
|
"note": "Sobald Data-Act/CRA-Prozess als Registry-Familien geschnitten sind, werden die pending_no_target-Eintraege kanonisiert. machine_* gegen cra_machinery (MaschVO) validiert."
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user