taskchef 7.25.2 → 7.26.0

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "taskchef",
3
- "version": "7.25.2",
3
+ "version": "7.26.0",
4
4
  "description": "Dispatch work from a data-only workspace to visible Codex project tasks.",
5
5
  "author": {
6
6
  "name": "Favo Yang",
package/README.md CHANGED
@@ -339,6 +339,13 @@ cost unavailable rather than a misleading `$0.00`. Per-turn cost is also
339
339
  unavailable when its cumulative boundaries used different ccusage versions or
340
340
  pricing modes. ccusage 20.0.20 may omit GPT-5.6 cache-write charges, so TaskChef
341
341
  labels that analyzer limitation instead of presenting the estimate as complete.
342
+ The same detail view reports lifecycle wall-clock elapsed time independently of
343
+ ccusage. Each terminal turn shows **Elapsed** from `startedAt` to
344
+ `result.updatedAt`; **Total reported work** sums only valid terminal-turn
345
+ durations, excluding idle gaps and unfinished work. A working turn shows live
346
+ **Elapsed so far** without contributing to the total. This is reported
347
+ wall-clock elapsed time, not model compute time, and malformed or reversed
348
+ timestamp ranges are shown as unavailable.
342
349
  The header shows the running TaskChef package version reported by the same
343
350
  bounded health identity used for compatible-listener checks.
344
351
  The canonical port is owned by a dashboard session process initialized by the
@@ -35,6 +35,29 @@ pending is reserved for tasks that do not have a usage snapshot yet.
35
35
 
36
36
  ![Pending token usage in the task detail view](images/dashboard-token-pending.jpg)
37
37
 
38
+ ## Reported work presentation
39
+
40
+ The task detail view reports wall-clock elapsed time from TaskChef lifecycle
41
+ timestamps. Each terminal turn's **Elapsed** value is `result.updatedAt` minus
42
+ `startedAt`. **Total reported work** is the sum of valid terminal-turn elapsed
43
+ times, so idle gaps between follow-up turns and the unfinished portion of an
44
+ active turn are excluded. A working turn shows a live **Elapsed so far** value
45
+ from `startedAt` to the current time without adding it to the task total.
46
+
47
+ Durations below one minute use whole seconds; durations below one hour use
48
+ minutes and seconds; durations below one day use hours and minutes; longer
49
+ durations use days and hours. Each displayed unit is floored, and positive
50
+ sub-second durations display as `<1s`. Missing, malformed, reversed, or
51
+ unsupported timestamp ranges display an explicit unavailable state. Zero-width
52
+ terminal ranges are also unavailable because existing records cannot reliably
53
+ distinguish synthesized boundaries from same-millisecond measured work. Timing
54
+ is derived independently of `.taskchef-usage.json` and is reported wall-clock
55
+ elapsed time, not model compute time.
56
+
57
+ ![Reported work across a multi-turn task](images/reported-work-duration-desktop.jpg)
58
+
59
+ ![Unavailable reported work on a narrow layout](images/reported-work-duration-mobile.jpg)
60
+
38
61
  ## Start and reuse
39
62
 
40
63
  Unless `dashboard.autostart` is explicitly `false`, MCP activation runs the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "taskchef",
3
- "version": "7.25.2",
3
+ "version": "7.26.0",
4
4
  "description": "A non-blocking interactive dispatcher for visible Codex tasks.",
5
5
  "license": "MIT",
6
6
  "author": "Favo Yang",
@@ -33,6 +33,8 @@
33
33
  "docs/images/result-history-dashboard.jpg",
34
34
  "docs/images/interrupted-turn-recovery.jpg",
35
35
  "docs/images/dashboard-token-pending.jpg",
36
+ "docs/images/reported-work-duration-desktop.jpg",
37
+ "docs/images/reported-work-duration-mobile.jpg",
36
38
  "index.js",
37
39
  "mcp",
38
40
  "scripts/benchmark-dispatch-prepare.js",