feat: guided setup — clickable next steps, signature relaxation, fresh-install auto-open

Post-apply the wizard now renders real Studio actions instead of CLI
text: a start-hub button that polls until the daemon answers,
per-module install buttons (capability-name install via the hub's
store index) with done/progress states, and an open-the-starter-flow
button that navigates to the Flows page. Regulated plans explain in
plain language that modules come from a signed source; the preview
offers 'allow installing from the public store' as one deliberate,
reversible switch that re-assembles the plan (allow_unsigned_modules).

Fresh installs (no config, no setup-plan.yaml) auto-open the wizard
once per run — the wizard IS the onboarding — and it steps back once
a setup exists. The welcome CTA is framed honestly ('get started in
3 questions'), and after the wizard closes the onboarding checklist
remounts, re-probes, and says what the assistant already covered
(profile line from setup-plan.yaml) instead of acting as a second,
disconnected onboarding surface.

Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
This commit is contained in:
flemming-it 2026-07-12 23:18:41 +02:00
parent 140408d26a
commit 1f1e050b42
8 changed files with 704 additions and 51 deletions

View file

@ -4,7 +4,7 @@
"errModuleDownloadHint": "Die Bundle-URL des Moduls ist nicht erreichbar (Statuscode unten). Der Hub läuft — URL/Host korrigieren oder anderen Store wählen.",
"storeFromSource": "aus {store}",
"guidedSetupTitle": "Setup-Assistent",
"guidedSetupIntro": "Beantworte drei Fragen — Ch∆In stellt passende Konfiguration, Modul-Set und Start-Flow zusammen.",
"guidedSetupIntro": "Beantworten Sie drei Fragen — Ch∆In stellt passende Konfiguration, Modul-Set und Beispiel-Flow zusammen.",
"guidedSetupScenario": "Szenario",
"guidedSetupIntent": "Aufgabe",
"guidedSetupTarget": "Wo läuft es?",
@ -1747,7 +1747,23 @@
"setupApplied": "Fertig — Ch∆In ist eingerichtet.",
"setupNextTitle": "Nächste Schritte",
"setupNextHubStart": "Hub starten",
"setupNextInstall": "Die Module installieren",
"setupNextRunFlow": "Den Beispiel-Flow ausführen",
"setupStartCta": "In 3 Fragen loslegen"
"setupHubRunning": "Der Hub läuft.",
"setupStartHubFirst": "Starten Sie zuerst den Hub — dann lassen sich die Module hier installieren.",
"setupActionInstall": "{module} installieren",
"@setupActionInstall": {"placeholders": {"module": {"type": "String"}}},
"setupActionInstalled": "{module} ist installiert.",
"@setupActionInstalled": {"placeholders": {"module": {"type": "String"}}},
"setupActionOpenFlow": "Beispiel-Flow „{flow}“ öffnen",
"@setupActionOpenFlow": {"placeholders": {"flow": {"type": "String"}}},
"setupModulesOfflineHint": "Die Module kommen ohne Internet als Offline-Paket auf den Server — die Anleitung dazu steht in der Dokumentation unter „Betrieb ohne Internet“.",
"setupModulesSignedHint": "Die Module kommen aus einer eigenen, signierten Quelle — nicht aus dem öffentlichen Store.",
"setupSigPublicStoreNotice": "Diese Einrichtung lässt nur signierte Module zu. Der öffentliche Store liefert zurzeit unsignierte Pakete — die vorbereiteten Module kommen daher aus einer eigenen, signierten Quelle.",
"setupAllowUnsigned": "Installation aus dem öffentlichen Store erlauben",
"setupAllowUnsignedSub": "Lockert die Signaturpflicht bewusst. Gut zum Ausprobieren — für den regulierten Betrieb später wieder aktivieren.",
"setupStartCta": "In 3 Fragen loslegen",
"setupProfileDev": "unkomplizierter Arbeitsplatz",
"setupProfileEnterprise": "abgesicherter Team-Betrieb",
"setupProfileAirgapped": "vollständig lokaler, regulierter Betrieb",
"welcomeChecklistSetupDone": "Die Grundeinrichtung ({profile}) hat der Einrichtungs-Assistent bereits erledigt — hier sehen Sie, was auf dem Hub schon passiert ist.",
"@welcomeChecklistSetupDone": {"placeholders": {"profile": {"type": "String"}}}
}