Ran the dataviz rubric's palette validator against the shipped per-community network palette — the one check the rubric says never to eyeball. Two findings, both computed rather than judged.
1. The normal-vision floor fails, and secondary encoding does not excuse it
[FAIL] Normal-vision floor #56bbe6↔#57c7ab ΔE 10.3 (normal) — below 15
[FAIL] Lightness band outside band: #edab12 at L 0.783
[WARN] Contrast vs surface #57c7ab 2.01, #56bbe6 2.12, #edab12 1.96
#56bbe6 (Mutualism) and #57c7ab (Cross-feeding) are the two commonest interaction types, and at ΔE 10.3 a full-colour reader struggles to tell them apart.
The template already knows this number. Its comment says shape "is not a courtesy to CVD readers, it is what makes two of the commonest types separable at all." That reasoning is right about CVD and wrong about this check: the rubric is explicit that a normal-vision floor below 15 is a hard fail and that secondary encoding does not excuse it — shape rescues the CVD case, not the full-colour one.
Re-stepping two colours clears it: #56bbe6 → #2a7fd4 and #edab12 → #b8860b.
[PASS] Lightness band all 9 inside L 0.43–0.77
[PASS] Chroma floor all 9 >= 0.1
[WARN] CVD separation #7f30cf↔#2a7fd4 ΔE 7.8 (deutan) · tritan 11.4
[PASS] Normal-vision floor #913079↔#cf30b7 ΔE 15.1 (normal)
→ ALL CHECKS PASS
The remaining CVD warning sits in the 6–8 band, which the rubric permits only with secondary encoding — satisfied by the per-type d3 symbols added in #270. The contrast warning obligates visible labels or a table view, and the page has both a labelled legend and a <details> data table.
2. Dark mode reuses the light palette
Both modes are handed the same nine hex values. The rubric asks for dark to be selected — "its own steps from the same ramps, validated against the dark surface, not an automatic flip."
Measured against the dark surface, today's palette fails the lightness band on six of nine. The re-stepping above improves that to four, because it was chosen for the light surface, so it is an improvement rather than a fix:
[FAIL] Lightness band #57c7ab 0.757, #a91919 0.473, #1212ed 0.438, #913079 0.477
That wants a second set of steps plus template plumbing to select between them, which is more than a colour swap. Not attempted alongside finding 1 — filed here so the light-mode fix is not mistaken for having addressed dark.
Also checked, and fine
The two remaining open items on #199 are done or deliberate. The brand hero gradient is now on both community_umap.html and community.html — that item can be ticked. Filters below the plot is recorded as a deliberate layout choice.
Ran the dataviz rubric's palette validator against the shipped per-community network palette — the one check the rubric says never to eyeball. Two findings, both computed rather than judged.
1. The normal-vision floor fails, and secondary encoding does not excuse it
#56bbe6(Mutualism) and#57c7ab(Cross-feeding) are the two commonest interaction types, and at ΔE 10.3 a full-colour reader struggles to tell them apart.The template already knows this number. Its comment says shape "is not a courtesy to CVD readers, it is what makes two of the commonest types separable at all." That reasoning is right about CVD and wrong about this check: the rubric is explicit that a normal-vision floor below 15 is a hard fail and that secondary encoding does not excuse it — shape rescues the CVD case, not the full-colour one.
Re-stepping two colours clears it:
#56bbe6 → #2a7fd4and#edab12 → #b8860b.The remaining CVD warning sits in the 6–8 band, which the rubric permits only with secondary encoding — satisfied by the per-type d3 symbols added in #270. The contrast warning obligates visible labels or a table view, and the page has both a labelled legend and a
<details>data table.2. Dark mode reuses the light palette
Both modes are handed the same nine hex values. The rubric asks for dark to be selected — "its own steps from the same ramps, validated against the dark surface, not an automatic flip."
Measured against the dark surface, today's palette fails the lightness band on six of nine. The re-stepping above improves that to four, because it was chosen for the light surface, so it is an improvement rather than a fix:
That wants a second set of steps plus template plumbing to select between them, which is more than a colour swap. Not attempted alongside finding 1 — filed here so the light-mode fix is not mistaken for having addressed dark.
Also checked, and fine
The two remaining open items on #199 are done or deliberate. The brand hero gradient is now on both
community_umap.htmlandcommunity.html— that item can be ticked. Filters below the plot is recorded as a deliberate layout choice.