thinkpool-pair 0.7.283 → 0.7.284
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/bridge.mjs +2 -2
- package/hermes-session.mjs +2 -2
- package/package.json +1 -1
package/bridge.mjs
CHANGED
|
@@ -1130,7 +1130,7 @@ const announce = () => {
|
|
|
1130
1130
|
// laneStatusOf: authoritative busy/idle + last-action timestamp/age +
|
|
1131
1131
|
// STUCK/BLOCKED alert. The bridge owns the turn and permission state, so
|
|
1132
1132
|
// every roster consumer reads one status instead of reconstructing it.
|
|
1133
|
-
...[...sessions.entries()].map(([id, s]) => ({ id, cmd: s.cmd, kind: 'structured', runtime: s.runtime || 'claude', alive: true, ...laneStatusOf(s), hasTranscript: s.log.length > 0, commands: s.commands, mode: s.mode || undefined, effort: s.effort || undefined, name: termNames[id] || undefined, model: s.model || undefined, capabilities: { ...structuredRuntimeMetadata(s.runtime || 'claude'), modes: structuredModesForLane(s.runtime || 'claude', s) }, ...(s.runtime === 'codex' ? { approvalPolicy: codexConfigForMode(s.mode).approvalPolicy, models: s.models || [], canSteer: s.session?.canSteer ?? false } : s.runtime === 'hermes' ? { models: s.models || [], canSteer: s.session?.canSteer ?? false } : {}), ...(s.archiveOldestSeq != null ? { oldestSeq: s.archiveOldestSeq } : {}), ...(s.spawnedBy ? { spawned: true, spawnedBy: s.spawnedBy } : {}), ...(s.sideParent ? { sideParent: s.sideParent, sideTask: s.sideTask || undefined, sideHandback: !!s.sideHandback } : {}), ...(s.flowSessionId ? { flowId: s.flowSessionId, flowRole: s.flowTaskKey ? 'lane' : 'conductor' } : {}),
|
|
1133
|
+
...[...sessions.entries()].map(([id, s]) => ({ id, cmd: s.cmd, kind: 'structured', runtime: s.runtime || 'claude', alive: true, ...laneStatusOf(s), ...(s.session?.turnActive && s._turnStart ? { turnStartedAt: s._turnStart } : {}), hasTranscript: s.log.length > 0, commands: s.commands, mode: s.mode || undefined, effort: s.effort || undefined, name: termNames[id] || undefined, model: s.model || undefined, capabilities: { ...structuredRuntimeMetadata(s.runtime || 'claude'), modes: structuredModesForLane(s.runtime || 'claude', s) }, ...(s.runtime === 'codex' ? { approvalPolicy: codexConfigForMode(s.mode).approvalPolicy, models: s.models || [], canSteer: s.session?.canSteer ?? false } : s.runtime === 'hermes' ? { models: s.models || [], canSteer: s.session?.canSteer ?? false } : {}), ...(s.archiveOldestSeq != null ? { oldestSeq: s.archiveOldestSeq } : {}), ...(s.spawnedBy ? { spawned: true, spawnedBy: s.spawnedBy } : {}), ...(s.sideParent ? { sideParent: s.sideParent, sideTask: s.sideTask || undefined, sideHandback: !!s.sideHandback } : {}), ...(s.flowSessionId ? { flowId: s.flowSessionId, flowRole: s.flowTaskKey ? 'lane' : 'conductor' } : {}),
|
|
1134
1134
|
// provider: the registered LLM-provider this lane runs on, NAME-ONLY {id,name}
|
|
1135
1135
|
// (NEVER the key or baseUrl). Additive; older clients ignore it. Omitted for the
|
|
1136
1136
|
// built-in/default Claude path (no badge). Makes the lane's provider badge +
|
|
@@ -2910,7 +2910,7 @@ function openStructured({ id, runtime = 'claude', model, models, effort, resume,
|
|
|
2910
2910
|
// usage needs an explicit persist() here to survive a bridge restart.
|
|
2911
2911
|
if (evt.kind === 'usage') { entry.lastUsage = evt; persist() }
|
|
2912
2912
|
if (evt.kind === 'effort') {
|
|
2913
|
-
entry.effort = evt.effort ?? null
|
|
2913
|
+
entry.effort = evt.level ?? evt.effort ?? null
|
|
2914
2914
|
persist()
|
|
2915
2915
|
announce()
|
|
2916
2916
|
}
|
package/hermes-session.mjs
CHANGED
|
@@ -479,7 +479,7 @@ export function startHermesSession({
|
|
|
479
479
|
: new RegExp(`Session reasoning set to ${requested}`, 'i').test(mapper.text)
|
|
480
480
|
if (confirmed) {
|
|
481
481
|
activeEffort = requested === 'reset' ? null : requested
|
|
482
|
-
emit({ kind: 'effort',
|
|
482
|
+
emit({ kind: 'effort', level: activeEffort })
|
|
483
483
|
}
|
|
484
484
|
}
|
|
485
485
|
// Reserve the idle-looking result boundary for the existing FIFO before
|
|
@@ -660,7 +660,7 @@ export function startHermesSession({
|
|
|
660
660
|
const requested = String(nextEffort)
|
|
661
661
|
void boot().then(() => client.request('session/set_config_option', { sessionId, configId: HERMES_EFFORT_CONFIG_ID, value: requested })).then(() => {
|
|
662
662
|
activeEffort = requested
|
|
663
|
-
emit({ kind: 'effort',
|
|
663
|
+
emit({ kind: 'effort', level: activeEffort })
|
|
664
664
|
}).catch((error) => emit({ kind: 'error', message: `Hermes reasoning change failed: ${error?.message || error}`, recoverable: true }))
|
|
665
665
|
return true
|
|
666
666
|
},
|