Skip to main content
See Button for the decided part of this page.

Known issues

Gaps in the current rules

  • The theme’s title-case rendering doesn’t implement the function-word exception. textTransform: "capitalize" capitalizes every word unconditionally; for most short, verb-first labels that happens to agree with headline style, but they diverge on any label containing a function word like “to” or “of” — “Save Changes To Draft” instead of “Save Changes to Draft.” See TITAN-DIV-23.
  • The large size is reachable and undefined. See TITAN-BTN-10 below.
  • tertiary exists as a design term and in no token. The prominence vocabulary is three levels; the token layer names none of them. See TITAN-DIV-11.
  • Icon-only sizing has no rule. Three icon sizes and two control heights exist; nothing states which pairs.
  • FilterButton’s applied-state treatment is not specified. It carries a count prop and two of its own tokens, and no page states what an active filter should look like.
  • No rule for buttons inside dense table rows beyond “use a smaller size”, which does not say which size or what happens in a row that already has three actions.

Constraints Titan should enforce

These are real, currently-true rules. Nothing in code stops a builder from violating them today — each is a placeholder for a guardrail Titan hasn’t built, not a decision still being made.
Last modified on September 2, 2026