import assert from "node:assert/strict"; import test from "node:test"; import { getMessageGenerationLabel } from "../src/lib/message-generation.ts"; test("reply labels use the recorded provider and model", () => { for (const [provider, label] of [["openai", "OpenAI"], ["anthropic", "Anthropic"], ["xai", "xAI"], ["gemini", "Gemini"], ["hermes-agent", "Hermes Agent"]]) { assert.equal(getMessageGenerationLabel({ role: "assistant", metadata: { generation: { provider, model: "original-model" } } }), `${label} ยท original-model`); } }); test("missing or malformed attribution stays unknown and Agent asides keep their identity", () => { for (const metadata of [null, [], {}, { provider: "openai", model: "unrelated" }, { generation: { provider: "unknown", model: "model" } }, { generation: { provider: "openai", model: "" } }, { generation: { provider: "openai", model: [] } }, { generation: { provider: "openai", model: "model" }, agentAside: true }]) { assert.equal(getMessageGenerationLabel({ role: "assistant", metadata }), null); } });