labtasker-webui 0.2.0__tar.gz → 0.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/PKG-INFO +36 -23
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/README.md +35 -22
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/docs/reference/specification.md +50 -3
- labtasker_webui-0.4.0/docs/releases/v0.2.1.md +6 -0
- labtasker_webui-0.4.0/docs/releases/v0.4.0.md +17 -0
- labtasker_webui-0.4.0/frontend/dist/assets/index-BLS-SDvc.js +56 -0
- labtasker_webui-0.4.0/frontend/dist/assets/index-V-48iAs9.css +1 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/frontend/dist/index.html +2 -2
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/frontend/package-lock.json +2 -2
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/frontend/package.json +1 -1
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/pyproject.toml +1 -1
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/__init__.py +1 -1
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/app.py +18 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/schemas.py +7 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/upstream.py +6 -2
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/fixture_server.py +37 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_app.py +54 -0
- labtasker_webui-0.4.0/tests/test_custom_columns.py +35 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_upstream.py +17 -3
- labtasker_webui-0.2.0/frontend/dist/assets/index-4SEd7ZLC.js +0 -54
- labtasker_webui-0.2.0/frontend/dist/assets/index-CLoY3LJ8.css +0 -1
- labtasker_webui-0.2.0/tests/test_custom_columns.py +0 -13
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/.agents/skills/release/SKILL.md +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/.agents/skills/ui-change/SKILL.md +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/.agents/sops/development.md +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/.agents/sops/qa.md +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/.agents/sops/releasing.md +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/.gitignore +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/AGENTS.md +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/CONTRIBUTING.md +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/LICENSE +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/assets/screenshot.png +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/docs/releases/v0.2.0.md +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/frontend/dist/labtasker-icon.png +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/scripts/check_package.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/scripts/check_versions.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/__main__.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/cli.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/compatibility.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/config.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/local.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/operations.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/profile.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/py.typed +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/security.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/src/labtasker_webui/sessions.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/packaging_smoke.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_compatibility.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_config.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_local.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_name_fuzzy.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_observations.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_operations.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_profile.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_real_server.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_release_versions.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_sessions.py +0 -0
- {labtasker_webui-0.2.0 → labtasker_webui-0.4.0}/tests/test_upstream_source.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: labtasker-webui
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.4.0
|
|
4
4
|
Summary: A focused web interface for Labtasker v2
|
|
5
5
|
Project-URL: Homepage, https://github.com/luocfprime/labtasker-webui
|
|
6
6
|
Project-URL: Repository, https://github.com/luocfprime/labtasker-webui
|
|
@@ -29,19 +29,23 @@ workspace, with reusable views for different experiments.
|
|
|
29
29
|
The key features are:
|
|
30
30
|
|
|
31
31
|
- **Queue progress at a glance:** Track pending, running, succeeded, failed, and
|
|
32
|
-
cancelled Tasks.
|
|
32
|
+
cancelled Tasks. Running Tasks can show a compact circular completion indicator
|
|
33
|
+
from their latest reported progress. Status counts follow the applied Task name
|
|
34
|
+
and advanced filter, across all statuses; the Status selector narrows only the
|
|
35
|
+
Task list and its total.
|
|
33
36
|
- **Routes and Workers:** Collapse route navigation when you need more table space.
|
|
34
37
|
Inspect Idle/Busy Worker counts and last-seen reports; include inactive routes when
|
|
35
|
-
reviewing historical work.
|
|
36
|
-
|
|
38
|
+
reviewing historical work. Resize Worker columns or double-click them to fit loaded
|
|
39
|
+
content. These features require Server 2.2 or later; Worker reports require Workers
|
|
40
|
+
that support observations.
|
|
37
41
|
- **Flexible result exploration:** Filter Task fields and nested values, or add
|
|
38
42
|
custom columns such as `args.test_num` and `result.succ_rate`. Resize, reorder,
|
|
39
43
|
and double-click columns to fit their contents.
|
|
40
44
|
- **Reusable data views:** Save filters, sorting, and column layouts for each
|
|
41
45
|
connection and Queue. Switch views without rebuilding the table each time.
|
|
42
46
|
- **Complete Task inspection:** Open a Task to inspect its arguments, metadata,
|
|
43
|
-
execution timeline, errors, and results. Cancel, requeue, or
|
|
44
|
-
Tasks through explicit controls.
|
|
47
|
+
execution timeline, errors, and results. Cancel, requeue, delete, or set the priority
|
|
48
|
+
of selected Tasks through explicit controls.
|
|
45
49
|
- **Easy local use:** Launch from Python without Node.js. Remember connections
|
|
46
50
|
and UI preferences in the WebUI working directory's `.labtasker/` folder.
|
|
47
51
|
|
|
@@ -104,7 +108,26 @@ The list loads more Tasks as you scroll and preserves existing selections.
|
|
|
104
108
|
While reading older rows, background refresh does not reorder the list.
|
|
105
109
|
Returning to the top resumes live refresh; **Refresh** updates it explicitly.
|
|
106
110
|
Click a Task to open its details. Dates use local time, with full timestamps
|
|
107
|
-
available on hover.
|
|
111
|
+
available on hover. When a Task has reported progress, its retained progress JSON,
|
|
112
|
+
report attempt, and update time appear before the final Result section.
|
|
113
|
+
|
|
114
|
+
Workers may opt into the circular indicator by reporting finite numeric
|
|
115
|
+
`completed` and `total` values:
|
|
116
|
+
|
|
117
|
+
```python
|
|
118
|
+
labtasker.report_progress(
|
|
119
|
+
{
|
|
120
|
+
"completed": completed_cases,
|
|
121
|
+
"total": total_cases,
|
|
122
|
+
"metrics": {"validation_loss": validation_loss},
|
|
123
|
+
}
|
|
124
|
+
)
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
These names are a display convention, not a Server schema. Other progress keys
|
|
128
|
+
remain user-defined. A running Task without a valid `completed / total` ratio
|
|
129
|
+
shows `—`; non-running rows leave the Progress column blank. The Progress column
|
|
130
|
+
starts compact and can be resized like the other data columns.
|
|
108
131
|
|
|
109
132
|
## Project profiles
|
|
110
133
|
|
|
@@ -153,13 +176,13 @@ responses.
|
|
|
153
176
|
## Scope
|
|
154
177
|
|
|
155
178
|
Labtasker WebUI inspects existing workloads and supports cancellation, requeue,
|
|
156
|
-
and permanent deletion of explicitly selected Task IDs. Batch
|
|
157
|
-
|
|
179
|
+
priority updates, and permanent deletion of explicitly selected Task IDs. Batch
|
|
180
|
+
operations report partial failures; deletion is not an atomic operation.
|
|
158
181
|
|
|
159
|
-
Use the Labtasker Client, CLI, or Workers to submit and execute Tasks.
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
opens its database.
|
|
182
|
+
Use the Labtasker Client, CLI, or Workers to submit and execute Tasks. Apart from
|
|
183
|
+
setting priority for an explicit selection, the WebUI does not submit or edit Tasks,
|
|
184
|
+
schedule work, allocate resources, or manage the Labtasker process. Local mode only
|
|
185
|
+
attaches to an existing instance and never opens its database.
|
|
163
186
|
|
|
164
187
|
## Documentation
|
|
165
188
|
|
|
@@ -185,13 +208,3 @@ and installation of the built package without Node.js.
|
|
|
185
208
|
## License
|
|
186
209
|
|
|
187
210
|
[Apache-2.0](https://github.com/luocfprime/labtasker-webui/blob/main/LICENSE), matching Labtasker.
|
|
188
|
-
|
|
189
|
-
### Search Task names
|
|
190
|
-
|
|
191
|
-
The Task name input supports case-insensitive subsequence search: `tr ev` or
|
|
192
|
-
`ev tr` finds `train_model_eval`. Every whitespace-separated word must match.
|
|
193
|
-
Press Enter or leave the input to apply; clearing it removes the name restriction.
|
|
194
|
-
For a strict name match, use `name == "train_model_eval"` in Advanced filter.
|
|
195
|
-
The Server applies the same search to the Task list and counts across the Queue,
|
|
196
|
-
with the existing sorting preserved. This requires a Server supporting
|
|
197
|
-
`name_fuzzy`; saved Task name inputs also use fuzzy matching.
|
|
@@ -10,19 +10,23 @@ workspace, with reusable views for different experiments.
|
|
|
10
10
|
The key features are:
|
|
11
11
|
|
|
12
12
|
- **Queue progress at a glance:** Track pending, running, succeeded, failed, and
|
|
13
|
-
cancelled Tasks.
|
|
13
|
+
cancelled Tasks. Running Tasks can show a compact circular completion indicator
|
|
14
|
+
from their latest reported progress. Status counts follow the applied Task name
|
|
15
|
+
and advanced filter, across all statuses; the Status selector narrows only the
|
|
16
|
+
Task list and its total.
|
|
14
17
|
- **Routes and Workers:** Collapse route navigation when you need more table space.
|
|
15
18
|
Inspect Idle/Busy Worker counts and last-seen reports; include inactive routes when
|
|
16
|
-
reviewing historical work.
|
|
17
|
-
|
|
19
|
+
reviewing historical work. Resize Worker columns or double-click them to fit loaded
|
|
20
|
+
content. These features require Server 2.2 or later; Worker reports require Workers
|
|
21
|
+
that support observations.
|
|
18
22
|
- **Flexible result exploration:** Filter Task fields and nested values, or add
|
|
19
23
|
custom columns such as `args.test_num` and `result.succ_rate`. Resize, reorder,
|
|
20
24
|
and double-click columns to fit their contents.
|
|
21
25
|
- **Reusable data views:** Save filters, sorting, and column layouts for each
|
|
22
26
|
connection and Queue. Switch views without rebuilding the table each time.
|
|
23
27
|
- **Complete Task inspection:** Open a Task to inspect its arguments, metadata,
|
|
24
|
-
execution timeline, errors, and results. Cancel, requeue, or
|
|
25
|
-
Tasks through explicit controls.
|
|
28
|
+
execution timeline, errors, and results. Cancel, requeue, delete, or set the priority
|
|
29
|
+
of selected Tasks through explicit controls.
|
|
26
30
|
- **Easy local use:** Launch from Python without Node.js. Remember connections
|
|
27
31
|
and UI preferences in the WebUI working directory's `.labtasker/` folder.
|
|
28
32
|
|
|
@@ -85,7 +89,26 @@ The list loads more Tasks as you scroll and preserves existing selections.
|
|
|
85
89
|
While reading older rows, background refresh does not reorder the list.
|
|
86
90
|
Returning to the top resumes live refresh; **Refresh** updates it explicitly.
|
|
87
91
|
Click a Task to open its details. Dates use local time, with full timestamps
|
|
88
|
-
available on hover.
|
|
92
|
+
available on hover. When a Task has reported progress, its retained progress JSON,
|
|
93
|
+
report attempt, and update time appear before the final Result section.
|
|
94
|
+
|
|
95
|
+
Workers may opt into the circular indicator by reporting finite numeric
|
|
96
|
+
`completed` and `total` values:
|
|
97
|
+
|
|
98
|
+
```python
|
|
99
|
+
labtasker.report_progress(
|
|
100
|
+
{
|
|
101
|
+
"completed": completed_cases,
|
|
102
|
+
"total": total_cases,
|
|
103
|
+
"metrics": {"validation_loss": validation_loss},
|
|
104
|
+
}
|
|
105
|
+
)
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
These names are a display convention, not a Server schema. Other progress keys
|
|
109
|
+
remain user-defined. A running Task without a valid `completed / total` ratio
|
|
110
|
+
shows `—`; non-running rows leave the Progress column blank. The Progress column
|
|
111
|
+
starts compact and can be resized like the other data columns.
|
|
89
112
|
|
|
90
113
|
## Project profiles
|
|
91
114
|
|
|
@@ -134,13 +157,13 @@ responses.
|
|
|
134
157
|
## Scope
|
|
135
158
|
|
|
136
159
|
Labtasker WebUI inspects existing workloads and supports cancellation, requeue,
|
|
137
|
-
and permanent deletion of explicitly selected Task IDs. Batch
|
|
138
|
-
|
|
160
|
+
priority updates, and permanent deletion of explicitly selected Task IDs. Batch
|
|
161
|
+
operations report partial failures; deletion is not an atomic operation.
|
|
139
162
|
|
|
140
|
-
Use the Labtasker Client, CLI, or Workers to submit and execute Tasks.
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
opens its database.
|
|
163
|
+
Use the Labtasker Client, CLI, or Workers to submit and execute Tasks. Apart from
|
|
164
|
+
setting priority for an explicit selection, the WebUI does not submit or edit Tasks,
|
|
165
|
+
schedule work, allocate resources, or manage the Labtasker process. Local mode only
|
|
166
|
+
attaches to an existing instance and never opens its database.
|
|
144
167
|
|
|
145
168
|
## Documentation
|
|
146
169
|
|
|
@@ -166,13 +189,3 @@ and installation of the built package without Node.js.
|
|
|
166
189
|
## License
|
|
167
190
|
|
|
168
191
|
[Apache-2.0](https://github.com/luocfprime/labtasker-webui/blob/main/LICENSE), matching Labtasker.
|
|
169
|
-
|
|
170
|
-
### Search Task names
|
|
171
|
-
|
|
172
|
-
The Task name input supports case-insensitive subsequence search: `tr ev` or
|
|
173
|
-
`ev tr` finds `train_model_eval`. Every whitespace-separated word must match.
|
|
174
|
-
Press Enter or leave the input to apply; clearing it removes the name restriction.
|
|
175
|
-
For a strict name match, use `name == "train_model_eval"` in Advanced filter.
|
|
176
|
-
The Server applies the same search to the Task list and counts across the Queue,
|
|
177
|
-
with the existing sorting preserved. This requires a Server supporting
|
|
178
|
-
`name_fuzzy`; saved Task name inputs also use fuzzy matching.
|
|
@@ -7,8 +7,9 @@ Browser (React, Query, Table)
|
|
|
7
7
|
```
|
|
8
8
|
|
|
9
9
|
The BFF owns upstream credentials, session cookies, origin validation and destructive
|
|
10
|
-
operation snapshots. The UI observes Tasks and supports cancel, requeue
|
|
11
|
-
deletion; it does not submit
|
|
10
|
+
operation snapshots. The UI observes Tasks and supports cancel, requeue, selected-ID
|
|
11
|
+
deletion and selected-ID priority updates; it does not submit Tasks or edit other Task
|
|
12
|
+
fields. Local attachment discovers and uses the existing
|
|
12
13
|
socket without managing the Labtasker process or opening its database.
|
|
13
14
|
|
|
14
15
|
## Server version warnings
|
|
@@ -44,7 +45,7 @@ Neither credentials nor version observations are written to the profile.
|
|
|
44
45
|
| Connection URL/local project | Backend profile in WebUI working directory |
|
|
45
46
|
| Bearer token | Backend only; separate owner-only `webui-token` file |
|
|
46
47
|
| Queue, applied selectors, drawer Task ID | URL/history plus React state |
|
|
47
|
-
| Current
|
|
48
|
+
| Current Task column layout and Worker column widths | Connection + queue scope; browser and profile |
|
|
48
49
|
| Named data view | Explicit snapshot scoped to connection + queue |
|
|
49
50
|
| Task selection | Current workspace memory; exact Task IDs |
|
|
50
51
|
| Pending profile write | Browser recovery record until the backend acknowledges saving |
|
|
@@ -83,9 +84,51 @@ Task selection survives sorting, including browser Back/Forward through sort cha
|
|
|
83
84
|
Applying or resetting a saved view also preserves selection when only sorting or
|
|
84
85
|
column layout changes.
|
|
85
86
|
Changing the filter range clears selection, including through browser history.
|
|
87
|
+
The selection column remains pinned while the Task table scrolls horizontally.
|
|
88
|
+
An explicit Task selection exposes Cancel Tasks, Requeue Tasks, Delete Tasks and Set
|
|
89
|
+
priority actions. Clear selection only removes the current checkmarks. Each lifecycle
|
|
90
|
+
action is enabled only when every selected Task has a compatible status, using the same
|
|
91
|
+
rules as the Task drawer: Cancel accepts pending/running, Requeue accepts
|
|
92
|
+
pending/failed/cancelled, while Delete and priority updates reject running. Priority
|
|
93
|
+
accepts any JavaScript-safe integer, including zero and negative values. Disabled actions
|
|
94
|
+
explain the required and incompatible statuses on hover or keyboard focus. Batch Cancel,
|
|
95
|
+
Requeue and priority updates retain failed Task IDs for retry while clearing successful
|
|
96
|
+
IDs from the selection.
|
|
86
97
|
Resizing uses per-column widths and a filler for remaining space. JSON paths are read-only
|
|
87
98
|
lookups; missing fields are blank.
|
|
88
99
|
|
|
100
|
+
Default Task column widths are Status 117 px, Progress 88 px, Attempt 83 px,
|
|
101
|
+
Priority 79 px, Created and Updated 103 px, and Duration 86 px. Saved widths
|
|
102
|
+
continue to override these defaults within their connection and Queue scope.
|
|
103
|
+
Progress can be resized down to 56 px, and this minimum width survives reload.
|
|
104
|
+
|
|
105
|
+
The built-in Progress column is 88 px wide by default and centered. It retains
|
|
106
|
+
the table's column-resizing behavior. Non-running Task rows leave it blank. A
|
|
107
|
+
running Task shows a 14 px circular progress indicator only
|
|
108
|
+
when its `progress` object contains finite numeric `completed` and `total`
|
|
109
|
+
values with `0 <= completed <= total` and `total > 0`. The accessible value and
|
|
110
|
+
popover show the floor of `completed / total * 100`, correcting floating-point
|
|
111
|
+
roundoff at integer boundaries (29 of 100 shows 29%). Incomplete progress never
|
|
112
|
+
shows 100%. The compact ring has no
|
|
113
|
+
center text, follows the primary UI color and transitions over 250 ms. Other
|
|
114
|
+
running Tasks show `—`, including Tasks without progress, incomplete display fields
|
|
115
|
+
and values above the declared total. The column is not sortable. It follows the
|
|
116
|
+
existing Task-list polling and pause rules rather than creating another refresh
|
|
117
|
+
loop. The Status column has a 104 px minimum so every status badge remains fully
|
|
118
|
+
visible, including when an older saved layout requested a narrower width.
|
|
119
|
+
|
|
120
|
+
Hovering or focusing the ring opens a viewport-contained summary with the exact
|
|
121
|
+
completed and total values, progress attempt, Server report time and a generic
|
|
122
|
+
JSON preview. Clicking pins the same summary until an outside interaction or
|
|
123
|
+
Escape. Clicking inside the summary does not open the Task drawer. Escape works
|
|
124
|
+
from the summary's contents and returns focus to the ring. Task row keyboard
|
|
125
|
+
navigation only handles keys on the row itself; Space on its checkbox toggles
|
|
126
|
+
selection without opening details. The UI assigns no meaning to other progress keys. Task details show a
|
|
127
|
+
Progress JSON section immediately before Result whenever progress is non-null,
|
|
128
|
+
including for terminal Tasks whose last snapshot was retained. Its heading
|
|
129
|
+
shows the Server-owned attempt and report time. Null progress adds no details
|
|
130
|
+
section.
|
|
131
|
+
|
|
89
132
|
The Task name input uses the upstream `name_fuzzy` selector: case-insensitive
|
|
90
133
|
Unicode subsequences, split on whitespace, with every word required and word
|
|
91
134
|
order unrestricted. Empty or whitespace-only searches add no restriction.
|
|
@@ -198,6 +241,10 @@ Worker IDs, routes and times retain full-value hover tooltips; associated Tasks
|
|
|
198
241
|
the existing detail drawer.
|
|
199
242
|
Switching between associated Task links keeps the drawer open. Explicitly closing it
|
|
200
243
|
restores focus to the most recently opened Worker Task link.
|
|
244
|
+
Worker, Status, Route, Task and Last seen columns have independent resize handles. Their
|
|
245
|
+
default widths are 240, 100, 200, 240 and 210 px respectively. Pointer dragging and
|
|
246
|
+
Left/Right keyboard adjustment change only the chosen column; double-click fits that
|
|
247
|
+
column to loaded content. Widths persist per connection and Queue.
|
|
201
248
|
|
|
202
249
|
Change opens connection settings without discarding the current workspace. Back to
|
|
203
250
|
workspace restores it; a successful connection change clears the query cache.
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# v0.2.1
|
|
2
|
+
|
|
3
|
+
- Add status-aware Cancel, Requeue and Delete actions for selected Tasks, with disabled-state guidance and partial-failure recovery.
|
|
4
|
+
- Fix Task selection controls so checkboxes remain visible while horizontally scrolling wide tables.
|
|
5
|
+
|
|
6
|
+
Full Changelog: https://github.com/luocfprime/labtasker-webui/compare/v0.2.0...v0.2.1
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# v0.4.0
|
|
2
|
+
|
|
3
|
+
- Add compact Task progress indicators with exact, keyboard-accessible progress
|
|
4
|
+
details and retained Progress JSON in the Task drawer.
|
|
5
|
+
- Add priority updates for explicitly selected Tasks, including negative and zero
|
|
6
|
+
priorities, status guidance and partial-failure recovery.
|
|
7
|
+
- Add resizable Worker columns with pointer, keyboard and double-click fit interactions,
|
|
8
|
+
persisted per connection and Queue.
|
|
9
|
+
- Change selected-Task action labels so cancelling Tasks and clearing the current
|
|
10
|
+
selection are unambiguous.
|
|
11
|
+
- Fix Task table defaults and interactions for compact Progress, status visibility and
|
|
12
|
+
horizontal scrolling.
|
|
13
|
+
|
|
14
|
+
Priority updates use the Labtasker v2 Task update endpoint and remain unavailable for
|
|
15
|
+
running Tasks. Existing profiles and saved views require no migration.
|
|
16
|
+
|
|
17
|
+
Full Changelog: https://github.com/luocfprime/labtasker-webui/compare/v0.2.1...v0.4.0
|