Netzwerksolution Documentation Report

MVP-001-DOMAIN-MODEL

MVP-001 – Kanonisches Domänenmodell#

Zweck#

Dieses Dokument definiert das technologieunabhängige Domänenmodell für den ersten produktiven Vertical Slice der Engineering Platform.

Es beschreibt , Identitäten, Verantwortlichkeiten, Beziehungen und Invarianten. Es legt ausdrücklich noch keine MariaDB-Tabellen, Go-Typen, REST-Ressourcen oder JavaScript-ViewModels fest.

Fachliche Grenze#

Das Modell umfasst den kleinsten produktiv tragfähigen Zusammenhang für:

UI-Sprache und Artefaktsprache sind unabhängige Dimensionen.

Aggregate und Domänenobjekte#

1. User#

Ein User repräsentiert eine handelnde Person oder einen technischen Akteur.

Identität

Kernattribute

Verantwortung

2. Role#

Eine Role bündelt Berechtigungen.

Identität

Kernattribute

Invariante

Eine Rolle verleiht Berechtigungen; sie ersetzt keine fachliche Ownership eines Artefakts.

3. Artifact#

Ein ist die sprachunabhängige Identität eines fachlichen oder technischen Inhalts.

Identität

Kernattribute

Verantwortung

Invariante

Ein Artefakt darf nicht durch Dateipfad, Dateiname, Sprache oder Datenbank-ID fachlich identifiziert werden.

4. ArtifactRevision#

Eine ArtifactRevision ist ein unveränderlicher fachlicher Stand eines Artefakts.

Identität

Kernattribute

Invarianten

5. ArtifactLocalization#

Eine ArtifactLocalization repräsentiert die sprachliche Ausprägung eines Artefakts.

Identität

Kernattribute

Invarianten

6. ArtifactLocalizationRevision#

Eine ArtifactLocalizationRevision ist ein unveränderlicher Stand einer Sprachvariante.

Identität

Kernattribute

Zulässige Übersetzungszustände

7. Relationship#

Eine ist die stabile Identität einer gerichteten oder ungerichteten fachlichen Beziehung zwischen zwei Artefakten.

Identität

Kernattribute

Invarianten

8. RelationshipRevision#

Eine RelationshipRevision ist ein unveränderlicher Stand einer Relationship.

Identität

Kernattribute

9. DimensionDefinition#

Eine DimensionDefinition beschreibt eine zulässige Klassifikations- oder Kontextdimension.

Identität

Beispiele

Kernattribute

Invariante

Dimensionen werden nicht als beliebige Key-Value-Sammlung ohne Definition geführt.

10. DimensionValue#

Ein DimensionValue ist ein zulässiger Wert einer DimensionDefinition.

Identität

Kernattribute

11. DimensionAssignment#

Ein DimensionAssignment ordnet einem Artefakt, einer Revision, einer Lokalisierung oder einer Beziehung einen Dimensionswert zu.

Identität

Invarianten

12. TranslationJob#

Ein TranslationJob beschreibt einen bewusst gestarteten Übersetzungsauftrag.

Identität

Kernattribute

Lebenszyklus

requested → queued → running → completed | failed | cancelled

Invarianten

13. TerminologyContext#

Ein TerminologyContext legt fest, welche Terminologie für Darstellung oder Übersetzung gilt.

Identität

Kernattribute

Der TerminologyContext ersetzt nicht die ArtifactLocalization, sondern beeinflusst deren Darstellung oder Erzeugung.

14. ReviewDecision#

Eine ReviewDecision dokumentiert Prüfung, Korrektur, Freigabe oder Ablehnung einer Revision.

Identität

Kernattribute

Invariante

Review und Freigabe sind explizite Handlungen und dürfen nicht aus einem bloßen Speichervorgang abgeleitet werden.

15. AuditEvent#

Ein AuditEvent ist ein unveränderlicher Nachweis einer sicherheits-, fach- oder prozessrelevanten Handlung.

Identität

Kernattribute

Invarianten

16. RoundtripJob#

Ein RoundtripJob repräsentiert den fachlichen Auftrag zwischen Mensch, Engineering Platform, Engineering Tools und AI-Transport.

Identität

Kernattribute

Lebenszyklus

draft → prepared → exported → returned → validating → review-required → accepted | rejected → promoted

17. RoundtripPackage#

Ein RoundtripPackage ist eine transportierbare Materialisierung eines RoundtripJob.

Identität

Kernattribute

Das Paket ist nicht die führende fachliche Quelle, sondern eine Austauschmaterialisierung.

Zentrale Beziehungen#

User ──< UserRole >── Role

                Artifact ──< ArtifactRevision
                Artifact ──< ArtifactLocalization ──< ArtifactLocalizationRevision

                Artifact ──< Relationship >── Artifact
                Relationship ──< RelationshipRevision

                DimensionDefinition ──< DimensionValue
                Artifact / Revision / Localization / Relationship ──< DimensionAssignment

                ArtifactLocalizationRevision ──< TranslationJob
                ArtifactLocalizationRevision ──< ReviewDecision

                User / SystemActor ──< AuditEvent

                RoundtripJob ──< RoundtripPackage
                RoundtripJob ──< ArtifactRevisionReference
                RoundtripJob ──< ValidationResult

Aggregate-Grenzen#

Für den ersten Stand gelten folgende fachliche Aggregate:

Eine Transaktion darf mehrere Aggregate koordinieren, sofern Application und Audit die Änderung explizit führen. Kein Aggregate darf interne Zustände eines anderen Aggregates direkt verändern.

Materialisierungsregel#

Aus diesem Domain Model werden später getrennt abgeleitet:

Domain Model
                → Persistence Model
                → Go Domain Types und Ports
                → API Model
                → JavaScript ViewModels
                → Runtime Components

Keine dieser Materialisierungen darf das Domain Model stillschweigend neu definieren.

UAM-Vertragsbezug#

Dieses Domain Model materialisiert den Vertrag aus . Identifier- und Reference-Resolution-Regeln werden in , Materialisierung und Provenance in geführt. Die Domänenobjekte dürfen diese solutionweiten Verträge präzisieren, aber keine konkurrierende Identitäts- oder Roundtrip-Semantik einführen.