# Chart ramp validation — ai.com Quiet Sky

Re-run these two commands after any change to the chart ramps.
Both must report ALL CHECKS PASS before the ramp ships.

```
# light — on --bg #FBFBFD
node validate_palette.js "#5FBFE0,#1FA9CE,#0A8AAB,#07728C,#05596D" \
  --ordinal --mode light --surface "#FBFBFD"
```
    Palette (light, surface #FBFBFD, ordinal ramp): 5 slots
      [PASS] Lightness monotone     steps read light→dark
      [PASS] Adjacent ΔL            all gaps >= 0.06
      [PASS] Light-end contrast     #5FBFE0 at 2.03:1 vs surface
      [PASS] Single hue             hue spread 3°
    
      → ALL CHECKS PASS  (ordinal: one hue, monotone L, visible step gaps, light end clears surface)

```
# dark — on --surface-1 #0D1117
node validate_palette.js "#057D95,#0897B3,#34B1CE,#54CAE8,#89E6FF" \
  --ordinal --mode dark --surface "#0D1117"
```
    Palette (dark, surface #0D1117, ordinal ramp): 5 slots
      [PASS] Lightness monotone     steps read light→dark
      [PASS] Adjacent ΔL            all gaps >= 0.06
      [PASS] Light-end contrast     #057D95 at 3.94:1 vs surface
      [PASS] Single hue             hue spread 1°
    
      → ALL CHECKS PASS  (ordinal: one hue, monotone L, visible step gaps, light end clears surface)

Validator: the six-checks script from the dataviz skill.
Ordinal mode checks monotone lightness, adjacent dL >= 0.06, light-end
contrast >= 2:1 against that mode's own surface, and a single hue.

Note the anchor: --chart-5 is the largest value in both modes and always
carries the most contrast against its surface — darkest on canvas,
brightest on night. For two series use --chart-4 and --chart-2.
