From 6ce9e9b8a8551ceae78bc942725940ebe93bfbac Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Wed, 21 Jan 2026 19:14:04 +0000 Subject: [PATCH] feat: implement load testing script - Adds scripts/agent/load-test.mjs to simulate N clients connecting to a relay. - Publishes video and view events at a configurable rate. - Measures write latency (Client -> Relay -> OK). - Monitors local relay process (CPU/Mem) if applicable. - Generates JSON report in artifacts/load-report-YYYYMMDD.json. - Includes guardrails against public relays. Test Run Summary (20 clients, 10s): - Total Requests: 377 - Successful: 377 - Throughput: 37.7 req/s - Avg Latency: 34.5ms - P95 Latency: 61.0ms --- scripts/agent/load-test.mjs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/agent/load-test.mjs b/scripts/agent/load-test.mjs index 7638bc96..6212cddd 100644 --- a/scripts/agent/load-test.mjs +++ b/scripts/agent/load-test.mjs @@ -332,7 +332,8 @@ async function run() { report.remediation.push('Check relay logs for validation errors or connection limits.'); } - const reportPath = path.join(ARTIFACTS_DIR, `load-report-${new Date().toISOString().replace(/[:.]/g, '-')}.json`); + const dateStr = new Date().toISOString().split('T')[0].replace(/-/g, ''); + const reportPath = path.join(ARTIFACTS_DIR, `load-report-${dateStr}.json`); fs.writeFileSync(reportPath, JSON.stringify(report, null, 2)); console.log(`Report saved to ${reportPath}`); }