oficina / sheets Public

rst-btn="compact" is not a rastrillo variant and silently does nothing Issue open

table.html writes rst-btn="primary compact" on the table view's Save button, and compact is not a rastrillo variant. The word appears in static/tokens.css only inside comments — there is no [rst-btn~="compact"] rule and no .rst-btn--compact class — so the token is parsed, matched against nothing, and silently does nothing. The button renders at the default size.

Two places, both on the same line:

internal/sheets/templates/table.html:92
<button rst-btn="primary compact" type="submit">Save</button>

This is the same failure shape as two defects fixed on feat/editor-chrome tonight: a selector or a token that matches nothing is invisible to every test we have and to every screenshot, because the page renders perfectly and merely renders the wrong thing. TestEveryTokenWeUseExists cannot see it — that guard checks var(--rst-…) names in our stylesheet, not rst- attribute VALUES in our templates.

Two candidate fixes, and I do not think it is my call which.

  1. Drop compact, leaving rst-btn="primary". Honest, one character of diff, and the button is then the size rastrillo intends.
  2. Add a guard that would have caught it: walk the templates for every rst-*="…" value token and assert each has a matching selector in tokens.css. That is the version with teeth, and it would likely find more than this one. It needs care around the seven class-only utilities and around values that are legitimately not variants (rst-tone pairs with data-tone, and rst-callout="warn" is a real variant).

Not fixed on feat/editor-chrome deliberately: table.html is outside that branch's path and at least one other session has been working in the list and table screens tonight, so a drive-by there would collide. Filed rather than fixed so it is not lost.

Found while auditing sheets.css for hooks nothing writes — that audit found one dead rule ([data-cell-value], removed) and this, which is the same defect in the other direction: markup naming a style that does not exist, rather than a style naming markup that does not exist.