refactor(delayResponse): clamp reply delay to MAX_REPLY_DELAY_MS in echo, event-stream, and mcp servers

This commit is contained in:
Bob Qiu committed 2026-10-08 14:31:22 +08:00
1 parent 18aff3c8b3
commit 5011f7d02d
3 files changed
+9 -6

No files matched your search

+3 -2
View File
@@ -99,8 +99,9 @@ const MAX_REPLY_DELAY_MS = 60_000;
function delayResponse(req) {
const delayMs = Number(req.headers["x-reply-delay-ms"]);
if (!Number.isFinite(delayMs) || delayMs <= 0 || delayMs > MAX_REPLY_DELAY_MS) return Promise.resolve();
return new Promise((resolve) => setTimeout(resolve, delayMs));
if (!Number.isFinite(delayMs) || delayMs <= 0) return Promise.resolve();
const clampedDelayMs = Math.min(delayMs, MAX_REPLY_DELAY_MS);
return new Promise((resolve) => setTimeout(resolve, clampedDelayMs));
}
function parseCookies(header) {
@@ -15,8 +15,9 @@ const MAX_REPLY_DELAY_MS = 60_000;
function delayResponse(req) {
const delayMs = Number(req.headers["x-reply-delay-ms"]);
if (!Number.isFinite(delayMs) || delayMs <= 0 || delayMs > MAX_REPLY_DELAY_MS) return Promise.resolve();
return new Promise((resolve) => setTimeout(resolve, delayMs));
if (!Number.isFinite(delayMs) || delayMs <= 0) return Promise.resolve();
const clampedDelayMs = Math.min(delayMs, MAX_REPLY_DELAY_MS);
return new Promise((resolve) => setTimeout(resolve, clampedDelayMs));
}
async function handleRequest(req, res) {
+3 -2
View File
@@ -92,8 +92,9 @@ const MAX_REPLY_DELAY_MS = 60_000;
async function delayResponse(req) {
const delayMs = Number(req.headers["x-reply-delay-ms"]);
if (!Number.isFinite(delayMs) || delayMs <= 0 || delayMs > MAX_REPLY_DELAY_MS) return;
await new Promise((resolve) => setTimeout(resolve, delayMs));
if (!Number.isFinite(delayMs) || delayMs <= 0) return;
const clampedDelayMs = Math.min(delayMs, MAX_REPLY_DELAY_MS);
await new Promise((resolve) => setTimeout(resolve, clampedDelayMs));
}
app.post("/mcp", async (req, res) => {