# Performance Analytics

Phase 72.5.2.9 adds `@v2/performance-analytics`, the operational performance
analytics surface for FPS distribution by hardware tier, settings preset
adoption, and hitching frequency. The policy is `v2-performance-analytics-v1`.

`buildV2PerformanceAnalyticsSurface` composes `@v2/client-performance-telemetry`
and aggregates `v2.client.performance.sampled` windows. It emits chart-ready FPS
distribution rows by hardware tier, settings preset adoption rows, and hitching
frequency rows using the 33ms / 2 consecutive frame hitch threshold.

The service consumes `accountIdHash` only as hashed-account telemetry. The
surface exposes aggregate values only and does not expose raw account IDs.

## Operator Surface

Rendered UI should lead with hitches per minute, average FPS, and affected
hardware tiers. Keep hardware tier, settings preset, platform, build, and date
filters compact and shared across the charts.

The first screen should make it clear which hardware tiers are missing FPS
targets, which presets players actually use, and which preset/hardware
combinations are producing hitches. Avoid marketing copy and show empty states
when client performance telemetry has not arrived.

## Verification

Targeted verification:

```bash
pnpm --filter @v2/performance-analytics run typecheck
pnpm --filter @v2/performance-analytics run test
python V2/ue/Tools/check-v2-performance-analytics.py
python -m json.tool V2/ue/Build/Telemetry/v2-performance-analytics.json
```
