fix: apply openai batch defaults

This commit is contained in:
Peter Steinberger
2026-01-18 00:29:18 +00:00
parent 22add31e91
commit d593a809f0
3 changed files with 38 additions and 1 deletions

View File

@@ -7,6 +7,9 @@ Docs: https://docs.clawd.bot
### Changes ### Changes
- Tools: allow `sessions_spawn` to override thinking level for sub-agent runs. - Tools: allow `sessions_spawn` to override thinking level for sub-agent runs.
### Fixes
- Memory: apply OpenAI batch defaults even without explicit remote config.
## 2026.1.17-3 ## 2026.1.17-3
### Changes ### Changes

View File

@@ -67,6 +67,39 @@ describe("memory search config", () => {
expect(resolved?.store.vector.extensionPath).toBe("/opt/sqlite-vec.dylib"); expect(resolved?.store.vector.extensionPath).toBe("/opt/sqlite-vec.dylib");
}); });
it("includes batch defaults for openai without remote overrides", () => {
const cfg = {
agents: {
defaults: {
memorySearch: {
provider: "openai",
},
},
},
};
const resolved = resolveMemorySearchConfig(cfg, "main");
expect(resolved?.remote?.batch).toEqual({
enabled: true,
wait: true,
pollIntervalMs: 5000,
timeoutMinutes: 60,
});
});
it("keeps remote unset for local provider without overrides", () => {
const cfg = {
agents: {
defaults: {
memorySearch: {
provider: "local",
},
},
},
};
const resolved = resolveMemorySearchConfig(cfg, "main");
expect(resolved?.remote).toBeUndefined();
});
it("merges remote defaults with agent overrides", () => { it("merges remote defaults with agent overrides", () => {
const cfg = { const cfg = {
agents: { agents: {

View File

@@ -95,6 +95,7 @@ function mergeConfig(
overrides?.experimental?.sessionMemory ?? defaults?.experimental?.sessionMemory ?? false; overrides?.experimental?.sessionMemory ?? defaults?.experimental?.sessionMemory ?? false;
const provider = overrides?.provider ?? defaults?.provider ?? "openai"; const provider = overrides?.provider ?? defaults?.provider ?? "openai";
const hasRemote = Boolean(defaults?.remote || overrides?.remote); const hasRemote = Boolean(defaults?.remote || overrides?.remote);
const includeRemote = hasRemote || provider === "openai";
const batch = { const batch = {
enabled: overrides?.remote?.batch?.enabled ?? defaults?.remote?.batch?.enabled ?? true, enabled: overrides?.remote?.batch?.enabled ?? defaults?.remote?.batch?.enabled ?? true,
wait: overrides?.remote?.batch?.wait ?? defaults?.remote?.batch?.wait ?? true, wait: overrides?.remote?.batch?.wait ?? defaults?.remote?.batch?.wait ?? true,
@@ -107,7 +108,7 @@ function mergeConfig(
defaults?.remote?.batch?.timeoutMinutes ?? defaults?.remote?.batch?.timeoutMinutes ??
60, 60,
}; };
const remote = hasRemote const remote = includeRemote
? { ? {
baseUrl: overrides?.remote?.baseUrl ?? defaults?.remote?.baseUrl, baseUrl: overrides?.remote?.baseUrl ?? defaults?.remote?.baseUrl,
apiKey: overrides?.remote?.apiKey ?? defaults?.remote?.apiKey, apiKey: overrides?.remote?.apiKey ?? defaults?.remote?.apiKey,