--- interface Props { src: string; title?: string; desc?: string; height?: number; wide?: boolean; sourceUrl?: string; } type TraceCard = { kind: string; label: string; meta?: string; text: string; status?: string; }; const { src, title, desc, height = 640, wide = true, sourceUrl, } = Astro.props as Props; const traces = (import.meta as any).glob("../content/assets/traces/**/*.jsonl", { query: "?raw", import: "default", eager: true, }) as Record; function resolveTrace(requested: string): string | null { const needle = requested.replace(/^\/*/, ""); for (const [key, raw] of Object.entries(traces)) { if (key.endsWith("/" + needle) || key.endsWith("/" + needle.replace(/^traces\//, ""))) { return raw; } } return null; } function escapeHtml(value: unknown): string { return String(value ?? "") .replace(/&/g, "&") .replace(//g, ">") .replace(/"/g, """) .replace(/'/g, "'"); } function compact(value: string, max = 180): string { const text = value.replace(/\s+/g, " ").trim(); return text.length > max ? `${text.slice(0, max - 1)}...` : text; } function contentText(content: any): string { if (typeof content === "string") return content; if (!Array.isArray(content)) return ""; return content .map((part) => { if (!part || typeof part !== "object") return ""; return part.text ?? part.input_text ?? part.output_text ?? ""; }) .filter(Boolean) .join("\n\n"); } function parseArgs(args: unknown): Record { if (!args) return {}; if (typeof args === "object") return args as Record; try { return JSON.parse(String(args)); } catch { return { raw: String(args) }; } } function parseTrace(raw: string) { const cards: TraceCard[] = []; let meta: Record = {}; let sawEventUser = false; for (const line of raw.split(/\r?\n/)) { if (!line.trim()) continue; let item: any; try { item = JSON.parse(line); } catch { continue; } if (item.type === "session_meta") { meta = item.payload ?? {}; continue; } const payload = item.payload ?? {}; if (item.type === "event_msg") { if (payload.type === "user_message" && payload.message) { sawEventUser = true; cards.push({ kind: "user", label: "User", meta: item.timestamp, text: payload.message, }); } continue; } if (item.type !== "response_item") continue; if (payload.type === "message") { const role = payload.role ?? "message"; if (role === "user" && sawEventUser) continue; const text = contentText(payload.content); if (!text.trim()) continue; cards.push({ kind: role === "developer" ? "system" : role, label: role === "developer" ? "System" : role[0].toUpperCase() + role.slice(1), meta: item.timestamp, text, }); continue; } if (payload.type === "reasoning") { const text = contentText(payload.summary); if (!text.trim()) continue; cards.push({ kind: "thinking", label: "Thinking", meta: item.timestamp, text, }); continue; } if (payload.type === "function_call") { const args = parseArgs(payload.arguments); const body = args.command ? String(args.command) : JSON.stringify(args, null, 2); cards.push({ kind: "tool-call", label: `Tool Call ยท ${payload.name ?? "tool"}`, meta: payload.call_id, text: body, }); continue; } if (payload.type === "function_call_output") { cards.push({ kind: payload.status === "success" ? "tool-result success" : "tool-result", label: "Tool Result", meta: payload.call_id, text: payload.output ?? "", status: payload.status, }); } } return { meta, cards }; } const rawTrace = resolveTrace(src); const trace = rawTrace ? parseTrace(rawTrace) : { meta: {}, cards: [] }; const filename = src.split("/").pop() ?? src; const externalHref = sourceUrl ?? `https://huggingface.co/datasets/evalstate/all-defects/blob/main/${encodeURIComponent(filename)}`; const openedCutoff = Math.max(0, trace.cards.length - 4); const cardHtml = rawTrace ? trace.cards .map((card, index) => { const open = index < 2 || index >= openedCutoff ? " open" : ""; const meta = card.meta ? `${escapeHtml(card.meta)}` : ""; const status = card.status ? `${escapeHtml(card.status)}` : ""; return `
${escapeHtml(card.label)} ${escapeHtml(compact(card.text))} ${meta}${status}
${escapeHtml(card.text)}
`; }) .join("") : `
Trace not found: ${escapeHtml(src)}
`; const iframeDoc = `
Codex trace ${escapeHtml(trace.meta.id ?? filename)}
Open raw trace
Model${escapeHtml(trace.meta.model_spec ?? "unknown")}
Started${escapeHtml(trace.meta.timestamp ?? "unknown")}
Working Directory${escapeHtml(trace.meta.cwd ?? "unknown")}
${cardHtml}
`; ---
{title &&
{title}
}
{desc &&
}