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

@ -143,6 +143,15 @@ class SystemActions {
return _runFai(['daemon', ...args]);
}
/// Run a `chain init ...` subcommand. Used by the guided-setup
/// wizard to preview a plan (`--answers <file>`) and apply it
/// (`--answers <file> --apply --force`).
static Future<({bool ok, String stdout, String stderr})> chainInit(
List<String> args,
) async {
return _runFai(['init', ...args]);
}
/// Run `chain update apply --channel <c>`. Long-running on a slow
/// network caller should show a spinner.
static Future<({bool ok, String stdout, String stderr})> chainUpdateApply(