fix(theme): one colour vocabulary — presets that resolved to nothing #122
No reviewers
Labels
No labels
priority
P1
priority
P2
priority
P3
priority
P4
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Toilville/toilville-design!122
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/palette-vocabulary"
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?
Found while looking at the Contact layout. The toilville theme carries two nearly disjoint palettes:
theme.jsonstyles/toilville.jsonThe generated patterns bind to variation-only slugs (
brand-primary,bg-surface-variant). The template parts I added in #118 bind to base-only ones (primary,primary-container,background,border,white).So whichever style is active on the site, one of the two sets resolves to nothing — either core buttons render with no background, or the footer loses its warm band and every hairline. A missing preset isn't an error in WordPress: it emits nothing and the page still renders. That's why nobody caught it.
Two changes, so a reference resolves in either state
The chrome moves onto the product vocabulary the patterns already use.
primary → brand-primaryandbackground/white → bg-surface/text-on-accentare exact value matches.border → border-defaultandprimary-container → accent-rituals-containerare the same roles at#dddddd → 12% inkand#f7ebe7 → #F7EAE6.theme.jsongains the six product slugs any surface names, so the base palette is a superset rather than a rival. Its colour palette is hand-authored —wp_theme.pygenerates the style variations and this file's spacing/font presets, not its palette.New gate
Covers patterns and parts, in both palette states. Verified red: dropping the six additions lists all six with the files that name them.
just checkgreen; 293 tests pass; copy coverage still 100% on all five pages.https://claude.ai/code/session_01Kbzfscp4w5enUrZxMnDt78