@threadcrumbs/common 0.1.6 → 0.1.8

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.
package/package.json CHANGED
@@ -1,10 +1,15 @@
1
1
  {
2
2
  "name": "@threadcrumbs/common",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "type": "module",
5
5
  "description": "Code the Threadcrumbs apps share, starting with the readers for each coding-agent harness.",
6
6
  "license": "SEE LICENSE IN LICENSE.md",
7
- "author": "Threadcrumbs LLC",
7
+ "author": "Threadcrumbs LLC <hello@threadcrumbs.io> (https://threadcrumbs.io)",
8
+ "homepage": "https://threadcrumbs.io",
9
+ "bugs": {
10
+ "url": "https://threadcrumbs.io",
11
+ "email": "hello@threadcrumbs.io"
12
+ },
8
13
  "repository": {
9
14
  "type": "git",
10
15
  "url": "git+https://github.com/threadcrumbs/common.git"
@@ -342,6 +342,8 @@ function statusOf({ running, state, calls, subagents, awaiting, lastAt, mark, un
342
342
  return ['asking', asked.some((c) => c.questions) ? 'question' : asked.length ? 'approval' : 'waiting']
343
343
  }
344
344
  const busy = running.status ? running.status === 'busy' : midTurn
345
+ const handedBack = Boolean(state.ending?.handedBack)
346
+ if (busy && handedBack && (subagents || awaiting.length)) return ['delegating', subagents ? 'subagents' : 'awaiting']
345
347
  if (busy) return onlyAgents ? ['delegating', 'subagents'] : ['working', running.status ? 'process-busy' : 'turn-open']
346
348
  if (subagents || awaiting.length) return ['delegating', subagents ? 'subagents' : 'awaiting']
347
349
  if (blocked) return ['asking', 'marked-blocked']
package/ui/rows.mjs CHANGED
@@ -56,7 +56,7 @@ export function nowHTML(s, now) {
56
56
 
57
57
  export function rowDetail(s, now) {
58
58
  if (s.status === 'working') {
59
- if (!s.tool) return { cls: 'rich', html: '<span class="nd-tool">Thinking</span>' }
59
+ if (!s.tool) return null
60
60
  const since = Number.isFinite(s.tool.startedAt) ? s.tool.startedAt : now
61
61
  return {
62
62
  cls: 'rich',