Codex finding: unreadable model entries cannot prove absence

A 200 tags response whose models array contains entries without a readable
string name is unobservable for the embed model (an unnamed entry could be
it) — never absent. Positive matches still count amid malformed siblings;
an empty, fully readable list still proves absence.

Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_012T1XF1ZyJL7KW8AVRUJjiD
This commit is contained in:
Claude
2026-08-22 02:37:38 -04:00
parent 711f32e86e
commit 0b95f2e09a
2 changed files with 55 additions and 3 deletions
+41
View File
@@ -234,6 +234,47 @@ test("/health: 200 tags response WITHOUT a models array is unobservable, never a
}
});
test("/health: models list with unreadable entries cannot prove absence (unobservable)", async () => {
for (const badList of [
[{}],
[{ model: "nomic-embed-text" }], // wrong field name
[{ name: "qwen3:30b-a3b" }, { name: 42 }], // mixed: one unreadable entry
]) {
const routes = happyRoutes();
routes["GET http://ollama.test:11436/api/tags"] = () => jsonResponse({ models: badList });
await withServer(fakeFetch(routes), async (base) => {
const res = await fetch(`${base}/health`);
const body = await res.json();
assert.equal(
body.dependencies.embed_model.status,
"unobservable",
`list ${JSON.stringify(badList)} has unreadable entries and cannot prove absence`
);
});
}
});
test("/health: positive evidence stands even amid malformed sibling entries", async () => {
const routes = happyRoutes();
routes["GET http://ollama.test:11436/api/tags"] = () =>
jsonResponse({ models: [{}, { name: "nomic-embed-text:latest" }] });
await withServer(fakeFetch(routes), async (base) => {
const res = await fetch(`${base}/health`);
const body = await res.json();
assert.equal(body.dependencies.embed_model.status, "ok");
});
});
test("/health: an empty models list IS readable and proves absence", async () => {
const routes = happyRoutes();
routes["GET http://ollama.test:11436/api/tags"] = () => jsonResponse({ models: [] });
await withServer(fakeFetch(routes), async (base) => {
const res = await fetch(`${base}/health`);
const body = await res.json();
assert.equal(body.dependencies.embed_model.status, "absent");
});
});
test("/health: non-JSON 200 tags body is unobservable", async () => {
const routes = happyRoutes();
routes["GET http://ollama.test:11436/api/tags"] = () => new Response("<html>proxy error</html>", { status: 200 });