Skip to content

18 — Corner Mastery

The deep-dive on cornering. Track-map sprite up top with each corner colour-coded by performance band + grade; tap-to-drill-in panel below; throttle box-plots and brake/accel bars stacked for context.

Purpose

Verb: Master corners. Where am I leaving time? Which corners are above grade, which below? What's the recurring weakness?

Wireframe

┌────────────────────────────────────────────────────────────┐
│ TAHA · LV.12 · ⚙ T-ROD                          15:32 PT   │
│ ─────────────────────────────────────────────────────────  │
│ CORNER MASTERY · session 2026-04-29-1503                   │
│                                                            │
│  ╔═ TRACK MAP (each corner colour-coded) ═══════════════╗ │
│  ║  ▒  ◐ T1  ◑ T2  ◓ T3  ◒ T3a  ◐ T4  ◑ T5  ◓ T6        ║ │
│  ║  ▒  ◐ T7  ◑ T8  ◓ T8a  ◒ T9  ◐ T10  ▶◑ T11           ║ │ ← T11 focused
│  ╚═══════════════════════════════════════════════════════╝ │
│                                                            │
│  ╔═ T11  CALAMITY CORNER ═══════════════════════════════╗ │
│  ║  ENTRY 88 km/h   APEX 64 km/h   EXIT 95 km/h          ║ │
│  ║  PEAK BRAKE 41 bar   MAX gLat 1.42                    ║ │
│  ║  CORNER TIME 4.2s   GOLD DELTA -0.3s   GRADE B+        ║ │
│  ╚═══════════════════════════════════════════════════════╝ │
│                                                            │
│ ─── THROTTLE % BY CORNER (box-plot per corner) ───         │
│ T1  ╓━━╫━━╖   T7  ╓━━╫━━╖                                 │
│ T2  ╓━╫━━━╖   T8  ╓━━╫━━╖                                 │
│ T3  ╓━━━╫━━╖  T9  ╓━━━╫━╖                                 │
│ T4  ╓━╫━━━╖   T10 ╓━━╫━━╖                                 │
│ T5  ╓━━╫━╖    T11 ╓━━━╫━━╖                                │
│ T6  ╓━━╫━━╖                                               │
│                                                            │
│ ─── BRAKE/ACCEL (per-corner) ───                           │
│ ▼ DECEL  T7  ███  T10 ████  T11 ██                         │
│ ▲ ACCEL  T11 █████ T4  ███   T10 ██                        │
│                                                            │
│  A · DRILL DOWN    ◀▶▲▼ MOVE   B · BACK                    │
└────────────────────────────────────────────────────────────┘

States

State Trigger Behaviour
loading Mount Fetch 4 endpoints in parallel; track-map skeleton
corner-focused Cursor on corner pin Drill panel populates with that corner's data
corner-detail A pressed Modal expands with full per-pass data + coach commentary
band-filter Tab switch Filter to low/med/high speed band

Sprite usage

Sprite Where Animation
track_map_sonoma (with 11 corner pins) Top Static; pins coloured by classification (low=red, med=amber, high=green) and outlined by grade (A→A+ gold, B-→D+ silver, F red)
frame-card Drill panel + chart panels 9-slice
box_plot_mini per corner row Throttle panel 1-frame each
bar_red / bar_green Brake/accel panel Heights drive from data

Vue component

<!-- pitwall-web/src/views/CornerMastery.vue -->
<template>
  <div class="viewport">
    <StatusBar />
    <h1 class="font-title text-title">CORNER MASTERY · {{ sidShort }}</h1>

    <Frame frame-type="card">
      <CornerMap :corners="cornerData" :focus="cursor" :classification="classification" />
    </Frame>

    <CornerDetailPanel :corner="cursorCorner" />

    <ThrottleBoxPanel :data="throttle" />
    <BrakeAccelPanel :data="brakeAccel" />

    <CornerDetailModal v-if="modalOpen" :corner="cursorCorner" @close="modalOpen = false" />

    <HintBar :hints="['A · DRILL DOWN', '◀▶▲▼ MOVE', 'B · BACK']" />
  </div>
</template>

Endpoints consumed

Endpoint Use
GET /session/<sid>/corners Per-corner aggregates: entry/apex/exit speeds, peak brake, max gLat, corner_time, gold delta, grade
GET /session/<sid>/throttle_corner_box Box-plot panel per corner
GET /session/<sid>/corner_classification Corner pin colour bands (low/med/high speed)
GET /session/<sid>/brake_acceleration Decel zones + corner exit accel data

If gold_available is false in /corners response, grades show "--" rather than letter grades; coach mentions: "No gold standard yet for comparison."

Audio cues

Event Sound
Cursor moves between corners cursor_move
A on a corner cursor_select → modal opens
Cursor on a grade-A corner brief sparkle SFX (subtle, 50 ms)
Cursor on a grade-F corner error_quiet (one-shot)

Input map

Input Action
◀ ▶ Move corner cursor (T1 ↔ T11)
▲ ▼ Switch focus zone (track map ↔ throttle panel ↔ brake/accel panel)
A Drill into selected corner
B Back to analysis hub

Edge cases

  • Bridge /corners endpoint reports n_passes=0 for some corners — those pins are silhouettes; drill panel: "NO PASSES THIS SESSION"
  • No gold standard available — grades default to "ungraded"; recommendations rely on session-internal comparisons
  • Driver did 1 lap only — box-plots collapse to single dots; box visualisation hidden; show single-point scatter instead
  • Single corner pin if the analytics include a virtual T3a or T8a — honor whatever the bridge reports; don't assume exactly 11