Release Admin v0.1.19 guided configuration packages
Module Package Release / publish-packages (push) Successful in 12s

This commit is contained in:
2026-08-22 18:04:34 +02:00
parent c22da17c64
commit ed424c729c
9 changed files with 248 additions and 20 deletions
+32 -2
View File
@@ -78,7 +78,7 @@ ADMIN_ROLE_TEMPLATES = (
manifest = ModuleManifest(
id="admin",
name="Admin",
version="0.1.18",
version="0.1.19",
permissions=ADMIN_PERMISSIONS,
role_templates=ADMIN_ROLE_TEMPLATES,
required_capabilities=(
@@ -168,11 +168,28 @@ manifest = ModuleManifest(
title="Govern configuration and module lifecycle",
summary="Admin owns reusable governance templates, configuration packages, and the operator-facing module lifecycle queue.",
body=(
"Configuration packages import or export module-owned configuration; they do not install software. Module catalog actions create reviewed install, update, activation, deactivation, or retirement requests for the trusted installer process. Governance templates materialize approved role and group structures through the owning Access contracts. Template assignment validation bulk-loads the selected tenants before mutation, and synchronization delegates one bounded versioned batch to Access instead of issuing per-tenant calls. Operators may preview or apply synchronization for up to 100 selected templates and 500 assignments. Every assignment returns an explicit outcome and provenance; missing tenants, protected memberships, role mappings, and module vetoes remain visible as blockers rather than being skipped. Retries are idempotent and preview/application runs are audited."
"Configuration packages import or export module-owned configuration; they do not install software. The operator selects a package and tenant, runs preflight, and supplies only the deployment values declared by that package through generated fields. Editing the package, tenant, or supplied data makes the previous preflight stale and disables Apply until a new blocker-free preflight succeeds. Provider applies may commit independently, so the result states whether nothing changed, a retained database snapshot is the rollback path, or a partial apply requires recovery; the screen never promises atomic cross-module undo. Export selects the providers named by the package fragments, redacts secret requirements, and records source version, module versions, exporter, scope, and timestamp as provenance. Module catalog actions create reviewed install, update, activation, deactivation, or retirement requests for the trusted installer process. Governance templates materialize approved role and group structures through the owning Access contracts. Template assignment validation bulk-loads the selected tenants before mutation, and synchronization delegates one bounded versioned batch to Access instead of issuing per-tenant calls. Operators may preview or apply synchronization for up to 100 selected templates and 500 assignments. Every assignment returns an explicit outcome and provenance; missing tenants, protected memberships, role mappings, and module vetoes remain visible as blockers rather than being skipped. Retries are idempotent and preview/application runs are audited."
),
documentation_types=("admin",),
audience=("system_admin", "operator", "module_admin"),
related_modules=("access", "audit", "ops"),
translations={
"de": {
"title": "Konfiguration und Modul-Lebenszyklus steuern",
"summary": "Admin stellt wiederverwendbare Governance-Vorlagen, Konfigurationspakete und die Bedienoberfläche für den Modul-Lebenszyklus bereit.",
"body": (
"Konfigurationspakete importieren oder exportieren modul-eigene Konfiguration; sie installieren keine Software. "
"Die ausführende Person wählt Paket und Mandant, startet die Vorprüfung und erfasst ausschließlich die vom Paket deklarierten Einsatzwerte in erzeugten Feldern. "
"Eine Änderung an Paket, Mandant oder Eingabedaten macht die vorherige Vorprüfung ungültig und sperrt Anwenden, bis eine neue Vorprüfung ohne Blocker erfolgreich ist. "
"Provider können ihre Änderungen unabhängig festschreiben. Das Ergebnis weist deshalb ausdrücklich aus, ob nichts geändert wurde, ob der aufbewahrte Datenbank-Snapshot der Rücksetzweg ist oder ob eine Teilanwendung Wiederherstellung verlangt; eine atomare modulübergreifende Rücknahme wird nicht zugesagt. "
"Beim Export werden die in den Fragmenten genannten Provider ausgewählt, geheime Anforderungen geschwärzt und Quellversion, Modulversionen, exportierende Identität, Umfang und Zeitpunkt als Herkunftsnachweis festgehalten. "
"Aktionen im Modulkatalog erzeugen geprüfte Installations-, Aktualisierungs-, Aktivierungs-, Deaktivierungs- oder Stilllegungsaufträge für den vertrauenswürdigen Installer-Prozess. "
"Governance-Vorlagen materialisieren freigegebene Rollen- und Gruppenstrukturen über die zuständigen Access-Verträge. "
"Die Validierung lädt ausgewählte Mandanten gesammelt; die Synchronisierung übergibt einen begrenzten, versionierten Stapel an Access. Bis zu 100 Vorlagen und 500 Zuordnungen werden je Lauf verarbeitet. "
"Jede Zuordnung liefert Ergebnis und Herkunft; fehlende Mandanten, geschützte Mitgliedschaften, Rollenabbildungen und Modul-Vetos bleiben als Blocker sichtbar. Wiederholungen sind idempotent, Vorschau und Anwendung werden protokolliert."
),
}
},
metadata={
"kind": "reference",
"help_contexts": [
@@ -181,7 +198,20 @@ manifest = ModuleManifest(
"admin.configuration-packages",
"admin.governance-templates",
],
"limitations": [
"Configuration packages do not install modules or grant permissions.",
"Generic rollback is snapshot recovery; providers may expose narrower compensation separately.",
"Secret values are never included in export provenance or portable fragments.",
],
"operational_consequences": [
"Changing package inputs invalidates the previous preflight and requires another review.",
"A partial apply stops before later fragments and must be recovered before retrying.",
"Retain the pre-apply database snapshot until post-apply verification is complete.",
],
"api_paths": [
"/api/v1/admin/configuration-packages/dry-run",
"/api/v1/admin/configuration-packages/apply",
"/api/v1/admin/configuration-packages/export",
"/api/v1/admin/system/governance-templates",
"/api/v1/admin/system/governance-templates/synchronize",
],