feat(programs): open Domain Knowledge Program v1 — 7-stage production line + per-domain KPI

The real bottleneck is domain MODELLING. Phase B is organized as one program with sub-programs per
domain, each run through the SAME 7-stage production line. No new runtime framework, no new module
(ADR-009, Freeze v1.0) — only program data + a derived reporting view.

- Customer enters by INDUSTRY, not regulation: Industry -> Domain Model -> Requirement Sources ->
  Requirements -> Capabilities -> ... -> Completeness.
- 7-stage checklist identical for every domain (Domain Model / Requirement Sources / Capability
  Registry / Transition Patterns / Playbooks / Reference Scenarios / Completeness) with per-stage
  ownership. README generalized to the framework.
- Each domain lists typical_requirement_sources + typical_certifications -> pre-onboarding capability
  HYPOTHESIS (the ETO insight; feeds Company 2A as inferred, never confirmed).
- Backlog v1 (by customer value): 1 Industrial Automation, 2 Environmental, 3 Automotive, 4 Medical,
  5 Energy. Five domain-definition shells (environmental restructured to the unified shape, law-first
  preserved).
- Per-domain KPI is DERIVED from the real corpus (computed-not-stored; sources modelled / transition
  patterns / playbooks / reference scenarios), NOT a curated number. Reference suite renders maturity
  bars: Industrial Automation 43% (3/7 sources) leads, Environmental 0% (work ahead). Backlog (value)
  and KPI (corpus state) are deliberately separated.
- ADR-009: Domain Knowledge Program framework. Honest known refinement: regulation-ID normalization
  (CRA vs Cyber Resilience Act) aliased in the KPI.

7 program-contract tests (backlog order + industry-first + derived-not-stored), check-loc 0.
Knowledge data + ADR + reference harness = non-runtime -> no deploy (ADR-001).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Benjamin Admin
2026-06-27 18:49:06 +02:00
parent c737e1ad7d
commit 1a9439d013
10 changed files with 312 additions and 159 deletions
@@ -1,57 +1,33 @@
# Environmental Knowledge Program — a regulatory DOMAIN, not an ISO-14001 project.
# Machine-readable program definition consumed by the reference suite to track progress.
# Domain Knowledge Program — Environmental (backlog rank 2). A domain DEFINITION, not corpus content.
# LAW-FIRST: Umweltrecht -> Obligations -> Capabilities -> ISO 14001 -> Delta (never the reverse).
# 7-stage progress is DERIVED from the corpus (computed-not-stored). See programs/README.md.
id: PROG-environmental
name: "Environmental Knowledge Program"
customer_question: "Welche Umweltanforderungen gelten für mein Produkt (z. B. Industriespülmaschine)?"
status: started # planned | started | in_progress | complete
name: "Environmental Domain"
industry: "Hersteller mit Umweltpflichten (z. B. Industriespülmaschinen, Anlagenbau)"
customer_entry: "Welche Umweltanforderungen gelten für mein Produkt (z. B. Industriespülmaschine)?"
backlog_rank: 2
rationale: "konkreter Kundenbezug (Abwasser/Chemikalien) — direkt nach Industrial Automation."
status: started
principle: >
ISO 14001 ist KEIN Umweltrecht, sondern ein Managementsystem. Wir starten beim Recht und fragen
erst danach, welche vorhandenen Managementsysteme davon wahrscheinlich schon etwas abdecken.
ISO 14001 ist KEIN Umweltrecht, sondern ein Managementsystem (= ein Quellzustand). LAW-FIRST:
erst das Recht, dann welche vorhandenen Managementsysteme davon wahrscheinlich schon etwas abdecken.
# the reusable production line, instantiated for this domain
blueprint: [corpus, obligations, capabilities, transition_patterns, playbooks, reference_scenarios, completeness]
# Stage 2 — the requirement-source areas of this domain (each becomes laws/obligations at Stage 2-3)
typical_requirement_sources: [water, chemicals, emissions, energy, waste, product_responsibility]
typical_certifications: [ISO14001, ISO9001] # pre-onboarding capability HYPOTHESIS (nicht Wahrheit)
stages:
- id: B1
name: "Environmental Regulatory Corpus"
owner: "Legal Knowledge / Obligation Registry"
status: open # handed off — not built here
note: "Zunächst NUR Rechtsquellen + Pflichten (noch keine ISO, keine Capabilities)."
areas: # the six environmental obligation areas the customer actually faces
- water # Wasser / Abwasser
- chemicals # Chemikalien (REACH/CLP)
- emissions # Emissionen
- energy # Energie
- waste # Abfall
- product_responsibility # Produktverantwortung
# Reasoning capabilities to be modelled (Stage 3, @Execution) once the corpus lands
target_capabilities:
- chemical_management
- wastewater_management
- emissions_monitoring
- hazardous_substance_management
- energy_data_capture
- environmental_incident_management
- id: B2
name: "Environmental Capability Model"
owner: "Compliance Execution"
status: open # depends on B1; Registry grows here
depends_on: [B1]
capabilities:
- chemical_management
- wastewater_management
- emissions_monitoring
- hazardous_substance_management
- energy_data_capture
- environmental_incident_management
- id: B3
name: "Transition Patterns (ISO 14001 -> Environmental Corpus)"
owner: "Reasoning (Knowledge Acquisition)"
status: blocked # LAST — only once both sides (corpus + capabilities) are known
depends_on: [B1, B2]
note: "Erst jetzt sinnvoll: ISO 14001 als Quellzustand gegen den Umwelt-Korpus (User: law-first)."
# once B1-B3 land these extend AUTOMATICALLY via the existing engines (no new runtime architecture)
downstream_auto: [playbooks, reference_scenarios, optimization, scope, capability_delta, completeness]
acceptance: >
Regulatory Completeness kippt `Environmental` von unsupported/open auf assessed; die sechs Bereiche
sind als Obligations + Capabilities im validierten Korpus, das ISO-14001-Delta als Transition Pattern.
Messbar an der Reference Suite (Environmental-Zelle UNSUPPORTED -> PASS).
ownership: "Stufe 1 Reasoning · 2 Legal-KG (HANDOFF, nur Recht+Pflichten) · 3 Execution (HANDOFF) · 4-7 Reasoning"
note: >
B3 (ISO 14001 -> Korpus-Transition) entsteht ZULETZT, erst wenn Recht + Capabilities bekannt sind.
Acceptance: Regulatory Completeness kippt `Environmental` von unsupported/open auf assessed.