test(e2e-chain): render Stress Tests section in the PDF report
Add a Stress Tests section (per-case table + per-axis scaling-curve images) after Performance, guarded so it is omitted when no stress data is present. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -220,6 +220,43 @@ MARTe2 processes, plus sustained client throughput (recorded samples ÷ duration
|
||||
}).flatten()
|
||||
)
|
||||
|
||||
// ── stress / capacity ─────────────────────────────────────────────────────────
|
||||
#let stress = data.at("stress", default: none)
|
||||
#if stress != none [
|
||||
= Stress Tests #h(6pt) #status_badge(stress.overall)
|
||||
Capacity matrix: one load axis swept at a time. Hard gates — survival + client
|
||||
liveness; soft gates — peak RSS and zoom p95 latency. The size axis crosses into
|
||||
the multi-fragment (>64 KB packet) regime.
|
||||
#v(4pt)
|
||||
#table(
|
||||
columns: (1.5fr, 1.6fr, 0.7fr, 0.7fr, 1fr, 1fr, 1fr, 1fr),
|
||||
align: (left, left, right, center, right, right, right, right),
|
||||
stroke: 0.4pt + rgb("#d0d7de"),
|
||||
inset: 4pt,
|
||||
table.header([*Case*], [*Axis*], [*Level*], [*Status*],
|
||||
[*MARTe RSS (MB)*], [*Hub RSS (MB)*],
|
||||
[*Hub CPU (s)*], [*Zoom p95 (ms)*]),
|
||||
..stress.cases.map(c => (
|
||||
raw(c.id),
|
||||
text(size: 8pt)[#c.axis],
|
||||
[#c.level],
|
||||
status_badge(c.status),
|
||||
fnum(c.at("marte_rss_mb", default: none), digits: 1),
|
||||
fnum(c.at("hub_rss_mb", default: none), digits: 1),
|
||||
fnum(c.at("hub_cpu_s", default: none), digits: 2),
|
||||
fnum(c.at("zoom_p95_ms", default: none), digits: 1),
|
||||
)).flatten()
|
||||
)
|
||||
#let splots = data.at("stress_plots", default: ())
|
||||
#if splots.len() > 0 [
|
||||
#v(6pt)
|
||||
== Scaling curves
|
||||
#grid(columns: 2, gutter: 8pt,
|
||||
..splots.map(p => image(p, width: 100%))
|
||||
)
|
||||
]
|
||||
]
|
||||
|
||||
// ── per-scenario waveform fidelity ───────────────────────────────────────────
|
||||
= Scenarios
|
||||
#for sc in e2e.scenarios [
|
||||
|
||||
Reference in New Issue
Block a user