blaze-performance-tester 3.2.36 → 3.2.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/cli.js +27 -2
  2. package/package.json +1 -1
package/dist/cli.js CHANGED
@@ -5697,7 +5697,7 @@ var i18n = {
5697
5697
  verdict: "\u{1F916} \u062D\u0643\u0645 \u0648\u0643\u064A\u0644 \u0627\u062E\u062A\u0628\u0627\u0631 \u0627\u0644\u062C\u0647\u062F \u0628\u0627\u0644\u0630\u0643\u0627\u0621 \u0627\u0644\u0627\u0635\u0637\u0646\u0627\u0639\u064A",
5698
5698
  health: {
5699
5699
  title: "\u0646\u0642\u0627\u0637 \u0635\u062D\u0629 \u062A\u0634\u063A\u064A\u0644 \u0628\u0644\u064A\u0632",
5700
- subtitle: "\u0627\u0644\u062A\u0642\u064A\u064A\u0645 \u0627\u0644\u0645\u0631\u0643\u0628 \u0644\u0645\u062D\u0631\u0643 \u0627\u0644\u062C\u0648\u062F\u0629"
5700
+ subtitle: "\u0627\u0644\u062A\u0642\u064A\u064A\u0645 \u0627\u0644\u0645\u0631\u0643\u0628\u0629 \u0644\u0645\u062D\u0631\u0643 \u0627\u0644\u062C\u0648\u062F\u0629"
5701
5701
  },
5702
5702
  matrix: {
5703
5703
  title: "\u{1F4CB} \u0645\u0635\u0641\u0648\u0641\u0629 \u0627\u0633\u062A\u062C\u0627\u0628\u0629 HTTP",
@@ -5850,7 +5850,7 @@ var i18n = {
5850
5850
  title: "\u{1F4CB} HTTP \u0DB4\u0DCA\u200D\u0DBB\u0DAD\u0DD2\u0DA0\u0DCF\u0DBB \u0D85\u0DB1\u0DD4\u0D9A\u0DD8\u0DAD\u0DD2\u0DBA",
5851
5851
  info: "\u0DAD\u0DDC\u0DBB\u0DAD\u0DD4\u0DBB\u0DD4",
5852
5852
  success: "\u0DC3\u0DCF\u0DBB\u0DCA\u0DAE\u0D9A",
5853
- redirects: "\u0DBA\u0DC5\u0DD2 \u0DBA\u0DDC\u0DB8\u0DD4 \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DCA",
5853
+ redirects: "\u0DBA\u0DC5\u0C3F \u0DBA\u0DDC\u0DB8\u0DD4 \u0D9A\u0DD2\u0DBB\u0DD3\u0DB8\u0DCA",
5854
5854
  clientErr: "\u0DC3\u0DDA\u0DC0\u0DCF\u0DBD\u0DCF\u0DB7\u0DD3 \u0DAF\u0DDD\u0DC2\u0DBA",
5855
5855
  serverErr: "\u0DC3\u0DDA\u0DC0\u0DCF\u0DAF\u0DCF\u0DBA\u0D9A \u0DAF\u0DDD\u0DC2\u0DBA",
5856
5856
  breakdown: "\u{1F522} HTTP \u0DAD\u0DAD\u0DCA\u0DC0 \u0D9A\u0DDA\u0DAD \u0DB6\u0DD2\u0DB3\u0DC0\u0DD0\u0DA7\u0DD3\u0DB8",
@@ -6703,6 +6703,9 @@ function exportHtmlDashboard(history, config, verdictReason, semanticReport, res
6703
6703
  const estimatedMonthlyCost = (cards.throughput * 0.045 * 24 * 30).toFixed(2);
6704
6704
  const recommendedCpuCores = Math.max(2, Math.ceil(cards.saturationKneePoint / 75));
6705
6705
  const recommendedRamGb = recommendedCpuCores * 2;
6706
+ const recThreadsTarget = cards.healthScore >= 85 ? Math.floor(cards.saturationKneePoint * 1.5) : Math.max(5, Math.floor(cards.saturationKneePoint * 0.8));
6707
+ const recRampPattern = cards.errorRate > 0.02 || cards.stdDev > 50 ? `Gradual Linear Ramp-Up (${Math.max(30, config.durationSec * 0.3)}s duration)` : "Standard Fast Step Load Profile";
6708
+ const recStrategyText = cards.healthScore >= 85 ? "System exhibits reliable resource headroom. Future stress waves can step up thread footprints confidently." : "Resource degradation detected under peak stress. Restrict thread allocation caps and extend your warm-up timelines.";
6706
6709
  const firstTimestamp = rawRequests[0]?.timestampMs || Date.now();
6707
6710
  const scatterPoints = rawRequests.slice(0, 180).map((r) => ({
6708
6711
  x: Number(((r.timestampMs - firstTimestamp) / 1e3).toFixed(2)),
@@ -6993,6 +6996,28 @@ ${formattedTicketLogs}
6993
6996
  </div>
6994
6997
  </div>
6995
6998
 
6999
+ <!-- \u{1F4A1} Smart Config Recommendation Cards Feature -->
7000
+ <div class="card" style="margin-bottom: 2rem; background: #0f172a; border: 1px dashed #38bdf8;">
7001
+ <h3 style="color: #38bdf8; display: flex; align-items: center; gap: 0.6rem; font-size: 1.2rem; border-bottom: 1px solid #1e293b; padding-bottom: 0.5rem;">
7002
+ \u{1F4A1} Smart Config Recommendation Cards
7003
+ </h3>
7004
+ <div style="display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; margin-top: 1rem;">
7005
+ <div style="background: #131c2e; padding: 1.25rem; border-radius: 6px; border: 1px solid #1e293b;">
7006
+ <div class="card-title" style="color: #94a3b8;">Suggested Concurrency Limit</div>
7007
+ <div style="font-size: 1.8rem; font-weight: bold; color: #38bdf8; margin-top: 0.25rem;">${recThreadsTarget} <span style="font-size: 0.9rem; font-weight: 500; color: #94a3b8;">Target Threads</span></div>
7008
+ <div style="font-size: 0.85rem; color: #cbd5e1; margin-top: 0.5rem; line-height: 1.4;">Based on your capacity limits and saturation markers.</div>
7009
+ </div>
7010
+ <div style="background: #131c2e; padding: 1.25rem; border-radius: 6px; border: 1px solid #1e293b;">
7011
+ <div class="card-title" style="color: #94a3b8;">Ideal Ramp-Up Pattern</div>
7012
+ <div style="font-size: 1.2rem; font-weight: bold; color: #f43f5e; margin-top: 0.5rem; line-height: 1.3;">${recRampPattern}</div>
7013
+ <div style="font-size: 0.85rem; color: #cbd5e1; margin-top: 0.5rem; line-height: 1.4;">Derived from variance calculations and request error trends.</div>
7014
+ </div>
7015
+ </div>
7016
+ <div style="margin-top: 1.25rem; background: #090d16; padding: 0.75rem 1rem; border-radius: 4px; font-size: 0.9rem; border-inline-start: 4px solid #38bdf8; color: #cbd5e1;">
7017
+ <strong>Strategic Forecast:</strong> ${recStrategyText}
7018
+ </div>
7019
+ </div>
7020
+
6996
7021
  ${baselineComparisonHtml}
6997
7022
  ${crossBrowserMatrixSectionHtml}
6998
7023
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blaze-performance-tester",
3
- "version": "3.2.36",
3
+ "version": "3.2.37",
4
4
  "description": "A high-performance, multi-threaded load testing engine built with Rust and QuickJS.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",