mirror of
https://github.com/hansjone/oclaw.git
synced 2026-10-15 00:10:50 +08:00
重构主控编排与运行时预热链路,统一工作区提示词/专家调度协议并补齐 wiki 记忆注入与写回闭环。
同时收敛启动与运维脚本默认行为(含 wiki worker)、更新 Admin 可观测性与相关测试,降低首轮时延并提高运行稳定性。 Made-with: Cursor
This commit is contained in:
parent
4a23b715a2
commit
dbbe3add6a
14438 changed files with 2693620 additions and 2546 deletions
60
openclaw/extensions/mistral/onboard.test.ts
Normal file
60
openclaw/extensions/mistral/onboard.test.ts
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
import { describe, expect, it } from "vitest";
|
||||
import {
|
||||
expectProviderOnboardMergedLegacyConfig,
|
||||
expectProviderOnboardPrimaryAndFallbacks,
|
||||
} from "../../test/helpers/plugins/provider-onboard.js";
|
||||
import { buildMistralModelDefinition as buildBundledMistralModelDefinition } from "./model-definitions.js";
|
||||
import {
|
||||
applyMistralConfig,
|
||||
applyMistralProviderConfig,
|
||||
MISTRAL_DEFAULT_MODEL_REF,
|
||||
} from "./onboard.js";
|
||||
|
||||
describe("mistral onboard", () => {
|
||||
it("adds Mistral provider with correct settings", () => {
|
||||
const cfg = applyMistralConfig({});
|
||||
expect(cfg.models?.providers?.mistral).toMatchObject({
|
||||
baseUrl: "https://api.mistral.ai/v1",
|
||||
api: "openai-completions",
|
||||
});
|
||||
expectProviderOnboardPrimaryAndFallbacks({
|
||||
applyConfig: applyMistralConfig,
|
||||
modelRef: MISTRAL_DEFAULT_MODEL_REF,
|
||||
});
|
||||
});
|
||||
|
||||
it("merges Mistral models and keeps existing provider overrides", () => {
|
||||
const provider = expectProviderOnboardMergedLegacyConfig({
|
||||
applyProviderConfig: applyMistralProviderConfig,
|
||||
providerId: "mistral",
|
||||
providerApi: "openai-completions",
|
||||
baseUrl: "https://api.mistral.ai/v1",
|
||||
legacyApi: "anthropic-messages",
|
||||
legacyModelId: "custom-model",
|
||||
legacyModelName: "Custom",
|
||||
});
|
||||
expect(provider?.models.map((m) => m.id)).toEqual(["custom-model", "mistral-large-latest"]);
|
||||
const mistralDefault = provider?.models.find((model) => model.id === "mistral-large-latest");
|
||||
expect(mistralDefault?.contextWindow).toBe(262144);
|
||||
expect(mistralDefault?.maxTokens).toBe(16384);
|
||||
});
|
||||
|
||||
it("uses the bundled mistral default model definition", () => {
|
||||
const bundled = buildBundledMistralModelDefinition();
|
||||
const cfg = applyMistralProviderConfig({});
|
||||
const defaultModel = cfg.models?.providers?.mistral?.models.find(
|
||||
(model) => model.id === bundled.id,
|
||||
);
|
||||
|
||||
expect(defaultModel).toMatchObject({
|
||||
id: bundled.id,
|
||||
contextWindow: bundled.contextWindow,
|
||||
maxTokens: bundled.maxTokens,
|
||||
});
|
||||
});
|
||||
|
||||
it("adds the expected alias for the default model", () => {
|
||||
const cfg = applyMistralProviderConfig({});
|
||||
expect(cfg.agents?.defaults?.models?.[MISTRAL_DEFAULT_MODEL_REF]?.alias).toBe("Mistral");
|
||||
});
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue