Playbook
Versionsdrift und Vertragsdisziplin (Versionsdrift Und Vertragsdisziplin)
Versionsdrift und Vertragsdisziplin — eine Production-Lektion aus Logistik-Ops-Plattformen.
Logistik-Mikro-Frontend-Plattform (Module Federation)
Teil 9 von 10
Serie zur Aufteilung von Logistik-Ops-Panels in Shell, Auth und Feature-Remotes mit Module Federation.
Versionsdrift und Vertragsdisziplin
Keep expose paths and props stable; treat remote public modules as an API.
expose path stable; internals can move
remoteEntry bir API'dir; semver düşünün.
Begriffe, dort definiert, wo sie zuerst auftauchen
📦 Shell (Host)
App, die Remotes lädt und Layout sowie Top-Level-Routing besitzt.
📦 Remote
Unabhängiger Build, der Module über remoteEntry.js exposed.
📦 Expose Path
Öffentlicher Modulpfad für Konsumenten (z. B. auth/Login).
📦 Shared Singleton
Federation-Einstellung für genau eine React-Laufzeit.
Wer diese Begriffe vermischt, verwechselt UI-State mit Integrationswahrheit.
Form des Problems
Keep expose paths and props stable; treat remote public modules as an API.
expose path stable; internals can move
Die Trennung, die trägt
remoteEntry bir API'dir; semver düşünün.
expose path stable; internals can move
↓
explicit contract
Wo Produktion bricht
Incidents wachsen, wenn Radius, Identität oder Deploy-Annahmen implizit bleiben.
Die am häufigsten verwechselten Zuordnungen
❌ Eine App ist immer sicherer
✓ Ohne klare Grenzen ist eine App fragiler
❌ Config hardcoden
✓ Radius, Remote-URLs und Expose-Pfade sind Verträge
❌ Vendor/API-Wahrheit ist UI-State
✓ Vendor-Feed ist Evidenz; Ops-State ist Entscheidung
Checkliste zur Prüfung des eigenen Systems
- Ownership-Grenze in einem Satz schreiben.
- Wenn der Vertrag sich ändert — wer deployt?
- Bei Timeout/Vendor-Delay: was zeigt die UI?
- Embedded und Standalone getrennt testen?
- Deny-list: Vendor/Domain-Leakage in Texten?
Was aus diesem Teil bleiben sollte
- Verträge müssen sichtbar sein: Expose-Pfade, Radius, Ticket-Status, Remote-URLs.
- Die Lücke zwischen UI und Externem ist Design, kein Bug.
- Unabhängiges Deploy heißt unabhängiges Rollback.
Die Grenze, die Sie verstecken, findet Sie in Produktion.
FAQ
Häufige Fragen
Was ist Shell (Host)?
App, die Remotes lädt und Layout sowie Top-Level-Routing besitzt.
Was ist Remote?
Unabhängiger Build, der Module über remoteEntry.js exposed.
Stimmt es, dass „Eine App ist immer sicherer“?
Ohne klare Grenzen ist eine App fragiler
Was legt dieser Teil fest?
remoteEntry bir API'dir; semver düşünün. Keep expose paths and props stable; treat remote public modules as an API.
Gelernte Engineering-Prinzipien
- Ownership- und Release-Grenzen sind so real wie das Domänenmodell.
- Externe Systeme liefern Evidenz; den Ops-Zustand entscheiden Sie.
- Versionieren Sie den Vertrag; Internas dürfen sich bewegen.
Weiterlesen
Weiterlesen
Nachster Teil der Serie
Wann den Monolithen neben MFE (Module Federation) behalten?
Wann den Monolithen neben MFE behalten? — eine Production-Lektion aus Logistik-Ops-Plattformen.
Nachster Teil der Serie
Remotes auf unabhängige Static Hosts deployen
Remotes auf unabhängige Static Hosts deployen — eine Production-Lektion aus Logistik-Ops-Plattformen.
Aus derselben Serie
Routing-Komposition in einer Host-Shell
Routing-Komposition in einer Host-Shell — eine Production-Lektion aus Logistik-Ops-Plattformen.