TypeScript 97.4%
SQL 1%
JavaScript 0.9%
CSS 0.6%
1// Probe: finish_reason on truncation, Responses reasoning.effort on 4.20 models, x-grok-conv-id header acceptance, service_tier.2import { raw, save, short } from "./lib.ts";34const results: Record<string, any> = {};5results.truncation = await raw("/chat/completions", {6 method: "POST",7 body: JSON.stringify({ model: "grok-4.20-0309-non-reasoning", messages: [{ role: "user", content: "Write 200 words about the sea." }], max_completion_tokens: 10 }),8});9console.log("truncation", results.truncation.status, results.truncation.body?.choices?.[0]?.finish_reason, short(results.truncation.body?.usage, 200));1011results.truncationReasoning = await raw("/chat/completions", {12 method: "POST",13 body: JSON.stringify({ model: "grok-4.3", messages: [{ role: "user", content: "Write 200 words about the sea." }], max_completion_tokens: 10 }),14});15console.log("truncation reasoning", results.truncationReasoning.status, results.truncationReasoning.body?.choices?.[0]?.finish_reason, short(results.truncationReasoning.body?.choices?.[0]?.message?.content, 100), short(results.truncationReasoning.body?.usage, 200));1617for (const model of ["grok-4.20-0309-reasoning", "grok-4.20-0309-non-reasoning", "grok-build-0.1", "grok-4.3"]) {18 const r = await raw("/responses", { method: "POST", body: JSON.stringify({ model, input: "Reply: ok", reasoning: { effort: "low" }, store: false, max_output_tokens: 100 }) });19 results[`responses.effort.low:${model}`] = { status: r.status, body: r.status === 200 ? { reasoning: r.body.reasoning, usage: r.body.usage } : r.body };20 console.log("responses effort low", model, r.status, short(r.status === 200 ? r.body.reasoning : r.body, 200));21}22const r2 = await raw("/responses", { method: "POST", body: JSON.stringify({ model: "grok-4.3", input: "Reply: ok", reasoning: { effort: "none" }, store: false, max_output_tokens: 100 }) });23results["responses.effort.none:grok-4.3"] = { status: r2.status, body: r2.status === 200 ? { reasoning: r2.body.reasoning, usage: r2.body.usage, outputTypes: r2.body.output.map((o: any) => o.type) } : r2.body };24console.log("responses effort none grok-4.3", r2.status, short(results["responses.effort.none:grok-4.3"].body, 300));2526// conv id header + prompt_cache_key + service_tier27const r3 = await raw("/chat/completions", {28 method: "POST",29 headers: { "x-grok-conv-id": "polyllm-probe-conv-1" },30 body: JSON.stringify({ model: "grok-4.20-0309-non-reasoning", messages: [{ role: "user", content: "Reply: ok" }], max_completion_tokens: 5, prompt_cache_key: "polyllm-probe-conv-1", service_tier: "default", user: "probe-user" }),31});32results.convIdHeader = { status: r3.status, headers: r3.headers, service_tier: r3.body?.service_tier, usage: r3.body?.usage, error: r3.status !== 200 ? r3.body : undefined };33console.log("conv-id/prompt_cache_key/service_tier", r3.status, r3.body?.service_tier, short(r3.body?.usage ?? r3.body, 200));3435// Responses with instructions + previous_response_id conflict, and store default retrieval36const r4 = await raw("/responses", { method: "POST", body: JSON.stringify({ model: "grok-4.20-0309-non-reasoning", input: "Remember the word: pamplemousse. Reply ok.", max_output_tokens: 20 }) });37const id = r4.body?.id;38const r5 = id ? await raw("/responses", { method: "POST", body: JSON.stringify({ model: "grok-4.20-0309-non-reasoning", previous_response_id: id, input: "What word did I ask you to remember? One word.", max_output_tokens: 20 }) }) : null;39results.stateful = { create: r4.status, storeDefault: r4.body?.store, followUp: r5?.status, followUpText: r5?.body?.output?.at(-1)?.content?.[0]?.text, error: r5?.status !== 200 ? r5?.body : undefined };40console.log("stateful", results.stateful);41if (id) {42 const r6 = await raw(`/responses/${id}`, { method: "DELETE" });43 results.delete = { status: r6.status, body: r6.body };44 console.log("delete", r6.status, short(r6.body, 200));45}46save("09-misc.json", results);47