chain-studio/lib/data
flemming-it 14f9217007 feat(studio): show what a running update is doing, not just that it runs
Applying an update downloads and swaps a binary and takes minutes; the
doctor showed a spinner inside a disabled button for the whole time.
SystemActions gained a streaming CLI runner that hands each line to the
caller as it arrives, with CHAIN_PLAIN=1 set for the child so the CLI
emits one line per transition instead of its redraw-in-place block.

The update card now shows an indeterminate bar labelled with the
running step and an elapsed counter on its own timer, so the counter
keeps moving between lines that can be minutes apart. No invented
percentage: the CLI reports steps, not a measurable total.

The streaming path still defers to debugRunFaiOverride, so tests stay
hermetic and never spawn a process; three guards pin that.

Signed-off-by: flemming-it <stefan.a.flemming@googlemail.com>
2026-09-08 17:41:21 +02:00
..
about_info.dart chore: 0.82.0 — switcher-rebuild changelog, anchor caption, capture harness 2026-08-28 00:28:02 +02:00
chain_log.dart feat(settings): hub auth-policy panel — T4/T5 security parity in the GUI 2026-07-15 03:19:33 +02:00
error_presentation.dart refactor: FaiError -> ChainError (SDK stub rename lockstep) 2026-07-11 23:14:33 +02:00
flow_output.dart refactor: rename app fai_studio -> chain_studio 2026-06-16 17:48:11 +02:00
flow_run_driver.dart feat: workspace switcher, per-project filters and run stamping (stage 1) 2026-07-12 13:49:51 +02:00
format.dart feat(studio): typed flow outputs + on-disk docs + UX polish 2026-05-25 11:17:58 +02:00
friendly_error.dart feat(errors): classify the install 'no store entry' failure 2026-07-22 13:48:31 +02:00
hub.dart feat(studio): real install progress in the store dialog and the wizard 2026-09-08 14:00:24 +02:00
hub_auth_token.dart feat(settings): hub auth-policy panel — T4/T5 security parity in the GUI 2026-07-15 03:19:33 +02:00
install_verification.dart fix(store,doctor): doc-verifier findings on the trust surfaces 2026-07-21 13:23:58 +02:00
registry_token.dart feat(settings): hub auth-policy panel — T4/T5 security parity in the GUI 2026-07-15 03:19:33 +02:00
reviewer_identity.dart feat(approvals,audit): record the reviewer as the unchecked claim it is 2026-08-03 23:50:34 +02:00
sealed_areas.dart fix(workspace): close the sealed-switch privacy race, restore the parked filter 2026-08-27 23:48:03 +02:00
sidebar_prefs.dart feat(nav): discoverable sidebar — instant tooltips, shortcuts made visible, pinnable rail 2026-07-17 23:36:33 +02:00
store_caps.dart fix(flows): only offer install for capabilities the store resolves 2026-07-22 13:46:08 +02:00
system_actions.dart feat(studio): show what a running update is doing, not just that it runs 2026-09-08 17:41:21 +02:00
theme_plugin.dart refactor: rename internal Fai* design system + fai_ helpers to chain 2026-06-16 17:53:17 +02:00
today_story_loader.dart feat(settings): hub auth-policy panel — T4/T5 security parity in the GUI 2026-07-15 03:19:33 +02:00
workspace.dart fix(workspace): close the sealed-switch privacy race, restore the parked filter 2026-08-27 23:48:03 +02:00
workspace_prefs.dart feat(workspace): one global switcher anchor in the shell sidebar 2026-08-28 00:00:06 +02:00