happy-sim-analyze
Analyze simulation results and provide insights
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Analyze simulation results and provide insights
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Run ruff linter and formatter on the project
Add observability (probes, trackers, charts) to a simulation
Help choose the right happysimulator components for a use case
Troubleshoot a broken or misbehaving simulation
Walk through a library example with detailed explanation
Generate a complete simulation from a high-level description
| name | happy-sim-analyze |
| description | Analyze simulation results and provide insights |
Run a simulation and interpret its results using happysimulator's built-in analysis tools.
Identify what to analyze:
Read the simulation file to understand its structure: what entities exist, what metrics are collected, and what the simulation models.
Run the simulation if needed:
python <file>
Capture the output.
Analyze results using these approaches:
sim.run())Key fields to examine:
summary.duration_s — simulated time elapsedsummary.total_events_processed — total event countsummary.events_per_second — simulation throughputsummary.wall_clock_seconds — real time takensummary.entities — per-entity stats (events handled, queue depth if applicable)sink.latency_stats() # {count, avg, min, max, p50, p99}
tracker.mean_latency()
tracker.p50()
tracker.p99()
tracker.data.between(start, end).mean() # slice a time range
data.mean() # overall average
data.percentile(0.99) # p99
data.between(30.0, 60.0).mean() # steady-state only (skip warmup)
data.rate(window_s=1.0) # events per second over time
buckets = data.bucket(window_s=1.0)
buckets.times() # time axis
buckets.means() # mean per window
buckets.p99s() # p99 per window
from happysimulator.analysis import detect_phases
phases = detect_phases(data, window_s=5.0, threshold=2.0)
# Returns list of phases: warmup, steady-state, anomaly, etc.
from happysimulator.analysis import analyze
analysis = analyze(summary, latency=tracker.data, queue_depth=probe_data)
print(analysis.to_prompt_context(max_tokens=2000))
Provide a plain-English interpretation covering:
Health Summary — Is the system healthy, stressed, or failing? One sentence.
Key Metrics — Report the most important numbers:
Phases — Did the simulation have distinct phases? (warmup, steady-state, overload, recovery)
Stability — Is the system stable (queues bounded), metastable (appears stable but fragile), or unstable (unbounded growth)?
Bottleneck — Where is the bottleneck? Which entity has the highest utilization or deepest queue?
Recommendations — Concrete suggestions:
If the simulation doesn't have enough instrumentation to analyze, suggest using /happy-sim-add-instrumentation first.