chain-studio/pubspec.yaml
flemming-it 7416c34d7c
Some checks are pending
Security / Security check (push) Waiting to run
feat(studio): contextual "Add registry token" CTA on install auth wall (v0.46.0)
The hub's v0.10.91 install error message already tells the
operator exactly what to do — set FAI_REGISTRY_TOKEN or save
to ~/.fai/registry-token via Settings. But that text lives in
a FaiErrorBox inside the install dialog. Reading the buried
recovery instruction, finding Settings, scrolling to the
Registry credentials panel, pasting, then re-clicking the
install pill is five hops for what should be one.

When at least one item in the install dialog fails with the
"registry returned an HTML page" / "no registry token
configured" signature, the dialog now surfaces a prominent
filled "Add registry token" button next to Close. Click closes
the install dialog and opens the Settings dialog directly so
the operator pastes + saves without losing context. After
Settings dismisses, the operator is back at the flow card and
re-clicks the same pill to retry.

Detection is signature-based (substring match on the hub's
error text) so it activates whether the install was a single-
pill click or an "Install all" sequence. Other failure modes
(network down, signature invalid, sha mismatch) still show
just the Close button — the CTA is specific to the auth-wall
case it can actually unblock.

Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
2026-05-09 19:32:13 +02:00

48 lines
1.3 KiB
YAML

name: fai_studio
description: "F∆I Studio — desktop GUI for the F∆I hub"
publish_to: 'none'
version: 0.46.0
environment:
sdk: ^3.11.0-200.1.beta
dependencies:
flutter:
sdk: flutter
flutter_localizations:
sdk: flutter
cupertino_icons: ^1.0.8
intl: any
# Sibling package; will move to Forgejo path once published.
fai_dart_sdk:
path: ../fai_dart_sdk
google_fonts: ^8.1.0
shared_preferences: ^2.5.5
# Inline README rendering inside the Store detail sheet.
flutter_markdown: ^0.7.7
# Today-Hero pipeline reads accepted stories from
# ~/.fai/today/active.yaml — see docs/today-pipeline.md.
yaml: ^3.1.2
path: ^1.9.0
# System-native file picker — used by the Flows run-flow
# form for `bytes`-shaped inputs (extract takes a PDF, the
# operator clicks "Choose file" and macOS / Linux / Windows
# routes through the OS dialog so sandboxed Studio still
# gets read access to the chosen file).
file_picker: ^8.0.0
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^6.0.0
flutter:
uses-material-design: true
generate: true
# Bundled operator-facing documentation rendered inline by
# the Welcome page. Each doc has a `_de.md` sibling for the
# German locale; the loader picks the right pair at runtime.
# Air-gap-friendly — no network calls to read these.
assets:
- assets/docs/