d6ab7291d1
Under the `nerd` symbol preset, `status.enabled` and `status.shadowed` are Nerd Font private-use icons (U+F111 / U+F10C). Those glyphs are drawn two cells wide, but `visibleWidth` counts them as one: `tui/utils.ts` pins `ambiguousIsNarrow: true`, and the PUA block is East_Asian_Width=Ambiguous. With no separator the icon overhangs into the next cell and swallows the label's first character, so the role chips in the model browser and model hub render as `efault` / `ision` / `lan` / `ask` / `dvisor` instead of `default` / `vision` / `plan` / `task` / `advisor`. The adjacent `status.success` check on the very same line already carries a leading space and renders correctly, which isolates the missing separator as the cause rather than the glyph itself. Role-chip assertions in test/model-hub.test.ts are updated for the new spacing, and the change is recorded under CHANGELOG `[Unreleased]`. Constraint: lint Confidence: high Scope-risk: low