taskchef 7.28.1 → 7.29.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.28.1",
3
+ "version": "7.29.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
@@ -342,7 +342,10 @@ server path also rejects requests before discovering or invoking the CLI.
342
342
  Task details also show whole-task and per-turn token usage when `ccusage` can
343
343
  map the linked Codex thread. A completed turn briefly shows “Calculating token
344
344
  usage…” while TaskChef performs bounded deferred reconciliation, because
345
- the terminal lifecycle callback precedes Codex's final output write. Historical
345
+ the terminal lifecycle callback precedes Codex's final output write. The
346
+ dashboard also preloads missing, interrupted, and retry-eligible usage in a
347
+ bounded background queue at startup, after task changes, and on a periodic
348
+ recovery pass; opening task details is not required to start collection. Historical
346
349
  tasks may show a trustworthy task total while older turns remain “Token usage
347
350
  unavailable” when no cumulative turn boundaries were recorded. Input, cached
348
351
  input, output, reasoning, and total counts retain ccusage's categories. Dollar
@@ -361,6 +364,8 @@ wall-clock elapsed time, not model compute time, and malformed or reversed
361
364
  timestamp ranges are shown as unavailable.
362
365
  The header shows the running TaskChef package version reported by the same
363
366
  bounded health identity used for compatible-listener checks.
367
+ The Settings page shows the ccusage version reported by the executable that
368
+ TaskChef resolves at runtime.
364
369
  The canonical port is owned by a dashboard session process initialized by the
365
370
  TaskChef MCP before its tool transport connects. Health identity records a
366
371
  `session` launcher, and MCP recovery reuses only another exact-compatible,
@@ -33,6 +33,13 @@ the token total and API-equivalent USD estimate. Task cards keep the latest
33
33
  cumulative value visible during a newer active turn and label it as updating;
34
34
  pending is reserved for tasks that do not have a usage snapshot yet.
35
35
 
36
+ The dashboard owns a small background recovery queue for derived usage. It
37
+ deduplicates tasks, limits concurrent ccusage reads, preserves successful cache
38
+ records, and revisits missing, interrupted, or cooldown-expired records without
39
+ requiring a detail request. The queue starts with the dashboard, reacts to task
40
+ log revisions, performs periodic recovery passes, and stops with the dashboard.
41
+ Settings reports the version returned by the resolved ccusage executable.
42
+
36
43
  ![Pending token usage in the task detail view](images/dashboard-token-pending.jpg)
37
44
 
38
45
  ## Reported work presentation
package/docs/spec.md CHANGED
@@ -162,6 +162,13 @@ into totals a second time.
162
162
 
163
163
  After a terminal report, TaskChef MUST mark the turn `calculating` and perform
164
164
  bounded deferred reconciliation without delaying the lifecycle response.
165
+ The dashboard MUST also preload eligible derived usage in its existing service
166
+ lifecycle without requiring a task-detail request. Startup, task-log changes,
167
+ and periodic recovery passes MUST consider missing, interrupted, and
168
+ cooldown-expired records; successful current-generation records MUST remain
169
+ cached. Background work MUST be deduplicated, MUST enforce a small global
170
+ concurrency limit, MUST use bounded delayed retries, and MUST stop when the
171
+ dashboard closes.
165
172
  Per-turn usage MUST be a non-negative delta between adjacent reliable cumulative
166
173
  boundaries. A first recorded turn MAY use zero as its baseline. Historical
167
174
  turns without boundaries and decreasing or ambiguous snapshots MUST be labeled
@@ -183,6 +190,8 @@ cumulative boundaries use different analyzer versions, requested pricing modes,
183
190
  or declared cost coverage. For GPT-5.6 with ccusage 20.0.20, provenance MUST
184
191
  disclose unverified cache-write coverage and TaskChef MUST NOT claim that the
185
192
  estimate includes those charges.
193
+ The dashboard Settings response MUST report the provider version returned by
194
+ the executable resolved for runtime use, not merely copy the dependency pin.
186
195
 
187
196
  Task IDs and non-null thread identities MUST be unique. The immutable intent
188
197
  fields MUST NOT change after recording.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "taskchef",
3
- "version": "7.28.1",
3
+ "version": "7.29.0",
4
4
  "description": "A non-blocking interactive dispatcher for visible Codex tasks.",
5
5
  "license": "MIT",
6
6
  "author": "Favo Yang",