export function readBody(req) { return new Promise((resolve, reject) => { let body = ""; req.setEncoding("utf8"); req.on("data", (chunk) => { body += chunk; }); req.on("end", () => resolve(body)); req.on("error", reject); }); } export function writeJson(res, status, body) { res.writeHead(status, { "content-type": "application/json" }); res.end(JSON.stringify(body)); } export function writeSse(res, events) { res.writeHead(200, { "content-type": "text/event-stream", "cache-control": "no-store", connection: "keep-alive", }); for (const event of events) { res.write(`data: ${JSON.stringify(event)}\n\n`); } res.write("data: [DONE]\n\n"); res.end(); }