diff --git a/frontend/src/App.vue b/frontend/src/App.vue
index 1e9e537..a72a5b0 100644
--- a/frontend/src/App.vue
+++ b/frontend/src/App.vue
@@ -5,29 +5,34 @@
-
-
-
- ⚡ Reconnecting...
-
-
-
{{ task.id }}
-
- {{ Math.round(task.progress * 100) }}%
-
-
{{ task.detail }}
-
{{ task.status }}
+
+
+
+
+
{{ root.rootLabel }}
+
{{ root.scanTarget }}
+
+ {{ root.phaseLabel }}
+ {{ root.progressLabel }}
+
+
+
{{ root.phaseDetail }}
+
+
+ {{ libraryUpdateMessage }}
+
+
(() => Array.from(tasks.value.values()))
+type RootTaskInfo = TaskInfo & { root_id: string }
+
+interface ProgressRootState {
+ rootId: string
+ rootLabel: string
+ scanTarget: string | null
+ phaseLabel: string
+ phaseDetail: string | null
+ progressPercent: number
+ progressLabel: string | null
+ isDeterminate: boolean
+ toneClass: string
+}
+
+const activeTasks = computed(() => Array.from(tasks.value.values()))
// Poll for active roots and connect WS to them
-const rootStatuses = ref