Symptom
Operator feedback on the #1357 deploy: cluster role pills now show only the role letter (R/C/M/S/O) — the per-role count number is no longer rendered. The count is present in aria-label / title for screen readers, but a sighted operator can't see at a glance "this cluster has 60 repeaters and 30 companions."
Pre-#1357: pills showed the count number on the colored fill.
Post-#1357: pills show only the letter.
Root cause
In the #1357 fix for the WCAG 1.4.1 violation, the pill body was switched from n (count) to letter (role identity). The intent was to add the letter as the primary non-color carrier of role identity; the regression was dropping the count instead of pairing them.
public/map.js makeClusterIcon builds: <span class="mc-pill">R</span> where it used to be <span class="mc-pill">60</span>.
Fix
Pill body becomes <letter><count> (e.g. R60, C30). Letter is the WCAG carrier; count is the data. Both at 10px monospace fit in the existing pill width up to 4-digit counts.
- DOM:
<span class="mc-pill">R60</span>
aria-label="60 repeaters" (unchanged, still screen-reader friendly).
- Min-width may need a bump if 3+ digit counts overflow; verify with a synthetic 1000-node cluster scenario.
Acceptance criteria
Out of scope
Refs
Symptom
Operator feedback on the #1357 deploy: cluster role pills now show only the role letter (R/C/M/S/O) — the per-role count number is no longer rendered. The count is present in
aria-label/titlefor screen readers, but a sighted operator can't see at a glance "this cluster has 60 repeaters and 30 companions."Pre-#1357: pills showed the count number on the colored fill.
Post-#1357: pills show only the letter.
Root cause
In the #1357 fix for the WCAG 1.4.1 violation, the pill body was switched from
n(count) toletter(role identity). The intent was to add the letter as the primary non-color carrier of role identity; the regression was dropping the count instead of pairing them.public/map.jsmakeClusterIconbuilds:<span class="mc-pill">R</span>where it used to be<span class="mc-pill">60</span>.Fix
Pill body becomes
<letter><count>(e.g.R60,C30). Letter is the WCAG carrier; count is the data. Both at 10px monospace fit in the existing pill width up to 4-digit counts.<span class="mc-pill">R60</span>aria-label="60 repeaters"(unchanged, still screen-reader friendly).Acceptance criteria
R60,C30,M5,S1,O2).aria-labelandtitleon each pill remain unchanged ("N <role>s").ROLE_LETTERS(no hardcoded letters in DOM build)./^[RCMSO]\d+$/for non-zero counts.Out of scope
Refs