Widen dicebear rings avatar palette to 2x+ distinct greens (emerald/green/teal only) #550
Labels
No labels
actions
bug
cli
duplicate
enhancement
fork
forum
git storage
help wanted
insights
invalid
issues
moderation
oidc
ownership transfer
packages
pr/merge protection rules
projects
pull requests
question
releases
sponsorships
tags
webhooks
wiki
wontfix
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
crueber/walhub#550
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What's requested
Widen the dicebear "rings" figure palette from the current narrow emerald run to at least twice as many distinct greens, drawing from the emerald / green / teal families only, so seeded avatars are more distinguishable from each other while staying deterministic and theme-legible.
Evidence
internal/identity/avatar.go:89-99—userAvatarRingColorscurrently carries 9 entries: Tailwind emerald-300 through emerald-950 (8 greens, all one hue family) plus black. All figures share the emerald hue, so two users' avatars frequently differ only in lightness steps, and at small render sizes many seeds are hard to tell apart. The background is fixed emerald-600 (userAvatarBackgroundColor, line 75), and figures land on that background, so the widening must stay within the green family the brand already owns.Current list:
Architecture notes
"ringColor"core-library option (name+"Color" in the vendoreddicebear-go/internal/render/options.go); a user-supplied list overrides the style collection per resolver.go'sr.options.color(name). Widening is a change to one slice literal — no wire, store, or option plumbing changes.TestGenerateGreensOnlyFiguresasserts none of the 16 style-default rainbow colors appears in output across seeds; that test keeps pinning the boundary and must stay green unchanged.059669). Skip or guard colors too close to the background hue (the current list already notes emerald-600 figures read via ring gaps — keep that note or its equivalent).userAvatarRingColorsshould be updated to describe the widened palette and keep the "why greens-only" rationale (indigo-family style defaults clashed with the app-green background, #539).Acceptance criteria
userAvatarRingColorscontains at least 18 distinct figure colors, all from Tailwind emerald/green/teal runs, plus black retainedTestGenerateGreensOnlyFiguresstill passes unchanged (no rainbow defaults in output across seeds)userAvatarRingColorscomment updated to match the new paletteTestGenerateSeedAbsent, sanitization gates) untouched and greenFix PR: #553 (branch fix/issue-550). Palette 9 -> 25 (emerald/green/teal 300-950 + black); all 6 acceptance criteria covered in PR description. Ready for review — not merging.
Review of PR #553 (fix/issue-550, commit
e7d23ed) — verified in a scratch worktree; main worktree untouched. No browser drive (no UI/browser-facing change; renders inspected via test harness instead).ACCEPTANCE CRITERIA (all 6 pass):
DIVERSIFICATION SPOT-CHECK (temporary probe test, removed afterward): 6 seeds rendered — figures used spanned all three families (green-800 166534, green-500 22c55e, teal-400 2dd4bf, emerald-400 34d399) vs emerald-only before; background fill present in every SVG; same-seed re-render byte-identical. Tone-on-tone seeds (figure == 059669 bg) still occur and remain distinguishable by ring geometry — the documented accepted outcome. PASS.
HYGIENE: gofmt clean, go vet clean, go build ./... clean, full identity suite -race clean, coverage 95.6% (gate >= 95%). go.mod/go.sum untouched — no new deps (law 1). Docs decision appended in docs/features/01_identity_permissions.md in the same change (law 12); doc hex runs match the code exactly; header + palette comments updated. One nit, not blocking: the pre-existing #539 bullet's continuation lines got re-indented 2sp -> 3sp in the docs diff — renders identically, ignore.
No fixes needed; nothing pushed. MERGE RECOMMENDATION: ready to merge.
Fixed by PR #553 (review clean — 25 distinct greens independently verified, rainbow test intact, distinctness spot-checked), merged. Closing.