feat(studio): guided-setup wizard (reuses chain init engine)

A Welcome 'Setup assistant' button opens a wizard that collects
scenario / intent / target (+ approval & data-local toggles), then calls
`chain init --answers` to preview the assembled plan and `--apply --force`
to write the config — reusing the Rust deterministic engine, no logic
duplicated. New SystemActions.chainInit; copyable errors via
showFaiProcessError; EN+DE l10n. analyze clean; smoke test + existing
welcome/sidebar tests pass.

Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
This commit is contained in:
flemming-it 2026-06-21 21:04:13 +02:00
parent 36a8252f67
commit c9fa068991
9 changed files with 509 additions and 0 deletions

View file

@ -8,6 +8,52 @@ import 'app_localizations.dart';
class AppLocalizationsEn extends AppLocalizations {
AppLocalizationsEn([String locale = 'en']) : super(locale);
@override
String get guidedSetupTitle => 'Setup assistant';
@override
String get guidedSetupIntro =>
'Answer three questions and Ch∆In assembles a tailored config, module set and starter flow.';
@override
String get guidedSetupScenario => 'Scenario';
@override
String get guidedSetupIntent => 'Task';
@override
String get guidedSetupTarget => 'Where will it run?';
@override
String get guidedSetupApproval =>
'Require a human approval step before the AI step';
@override
String get guidedSetupDataLocal =>
'Data must stay local (air-gapped posture)';
@override
String get guidedSetupReviewHeading => 'This is the plan Ch∆In will apply:';
@override
String get guidedSetupApply => 'Apply setup';
@override
String get guidedSetupApplied =>
'Setup applied. Finish with the steps below:';
@override
String get guidedSetupBack => 'Back';
@override
String get guidedSetupNext => 'Next';
@override
String get guidedSetupCancel => 'Cancel';
@override
String get guidedSetupClose => 'Close';
@override
String get appTitle => 'Ch∆In Studio';