fix: land timeout fallback fixes (#1576) (thanks @lc0rp)
This commit is contained in:
parent
e405ddcc20
commit
618efd8a71
@ -30,6 +30,7 @@ Docs: https://docs.clawd.bot
|
|||||||
- Gateway: compare Linux process start time to avoid PID recycling lock loops; keep locks unless stale. (#1572) Thanks @steipete.
|
- Gateway: compare Linux process start time to avoid PID recycling lock loops; keep locks unless stale. (#1572) Thanks @steipete.
|
||||||
- Skills: gate bird Homebrew install to macOS. (#1569) Thanks @bradleypriest.
|
- Skills: gate bird Homebrew install to macOS. (#1569) Thanks @bradleypriest.
|
||||||
- Slack: honor open groupPolicy for unlisted channels in message + slash gating. (#1563) Thanks @itsjaydesu.
|
- Slack: honor open groupPolicy for unlisted channels in message + slash gating. (#1563) Thanks @itsjaydesu.
|
||||||
|
- Agents: treat request-aborted AbortError timeouts as fallback triggers. (#1576) Thanks @lc0rp.
|
||||||
- Agents: show tool error fallback when the last assistant turn only invoked tools (prevents silent stops).
|
- Agents: show tool error fallback when the last assistant turn only invoked tools (prevents silent stops).
|
||||||
- Agents: ignore IDENTITY.md template placeholders when parsing identity to avoid placeholder replies. (#1556)
|
- Agents: ignore IDENTITY.md template placeholders when parsing identity to avoid placeholder replies. (#1556)
|
||||||
- Agents: drop orphaned OpenAI Responses reasoning blocks on model switches. (#1562) Thanks @roshanasingh4.
|
- Agents: drop orphaned OpenAI Responses reasoning blocks on model switches. (#1562) Thanks @roshanasingh4.
|
||||||
|
|||||||
@ -15,7 +15,6 @@ import {
|
|||||||
updateSessionStoreEntry,
|
updateSessionStoreEntry,
|
||||||
} from "../../config/sessions.js";
|
} from "../../config/sessions.js";
|
||||||
import type { TypingMode } from "../../config/types.js";
|
import type { TypingMode } from "../../config/types.js";
|
||||||
import { logVerbose } from "../../globals.js";
|
|
||||||
import { defaultRuntime } from "../../runtime.js";
|
import { defaultRuntime } from "../../runtime.js";
|
||||||
import { estimateUsageCost, resolveModelCostConfig } from "../../utils/usage-format.js";
|
import { estimateUsageCost, resolveModelCostConfig } from "../../utils/usage-format.js";
|
||||||
import type { OriginatingChannelType, TemplateContext } from "../templating.js";
|
import type { OriginatingChannelType, TemplateContext } from "../templating.js";
|
||||||
|
|||||||
@ -44,7 +44,9 @@ export async function persistSessionUsageUpdate(params: {
|
|||||||
};
|
};
|
||||||
if (params.cliSessionId) {
|
if (params.cliSessionId) {
|
||||||
const nextEntry = { ...entry, ...patch };
|
const nextEntry = { ...entry, ...patch };
|
||||||
setCliSessionId(nextEntry, params.providerUsed, params.cliSessionId);
|
const provider = params.providerUsed ?? entry.modelProvider;
|
||||||
|
if (!provider) return patch;
|
||||||
|
setCliSessionId(nextEntry, provider, params.cliSessionId);
|
||||||
return {
|
return {
|
||||||
...patch,
|
...patch,
|
||||||
cliSessionIds: nextEntry.cliSessionIds,
|
cliSessionIds: nextEntry.cliSessionIds,
|
||||||
@ -75,7 +77,9 @@ export async function persistSessionUsageUpdate(params: {
|
|||||||
};
|
};
|
||||||
if (params.cliSessionId) {
|
if (params.cliSessionId) {
|
||||||
const nextEntry = { ...entry, ...patch };
|
const nextEntry = { ...entry, ...patch };
|
||||||
setCliSessionId(nextEntry, params.providerUsed, params.cliSessionId);
|
const provider = params.providerUsed ?? entry.modelProvider;
|
||||||
|
if (!provider) return patch;
|
||||||
|
setCliSessionId(nextEntry, provider, params.cliSessionId);
|
||||||
return {
|
return {
|
||||||
...patch,
|
...patch,
|
||||||
cliSessionIds: nextEntry.cliSessionIds,
|
cliSessionIds: nextEntry.cliSessionIds,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user