Component
CLI
Summary
Lors de l'affichage de la liste des sessions (session picker), l'application plante avec l'erreur suivante :
MissingStyle: Failed to get style 'b not dim $primary'; unable to parse '$primary' as color; '$primary' is not a valid color
Traceback :
• Fichier concerné : vibe/cli/textual_ui/shortcut_hints.py, ligne 6
• Constante : SHORTCUT_STYLE = "b not dim $primary"
• Le style utilise $primary comme variable CSS Textual, mais ce token n'est pas reconnu par Rich lors du parsing du markup (Content.from_markup)
Version : mistral_vibe 2.19.1
Reproduction steps
- Run the /continue command, with existing sessions displayed
- Select one, and press 'd' (to delete)
- Mistral Vibe CLI crash
Versions / environment
mistral_vibe 2.19.1
Logs & screenshots
╭───────────────────────────────────────── Traceback (most recent call last) ──────────────────────────────────────────╮
│ %APPDATA%\uv\tools\mistral-vibe\Lib\site-packages\textual\widgets\_option_list.py:881 │
│ in render_lines │
│ │
│ 878 │ │ return strips[line_offset] │
│ 879 │ │
│ 880 │ def render_lines(self, crop: Region) -> list[Strip]: │
│ ❱ 881 │ │ self._update_lines() │
│ 882 │ │ return super().render_lines(crop) │
│ 883 │ │
│ 884 │ def render_line(self, y: int) -> Strip: │
│ │
│ ╭──────────────────────── locals ────────────────────────╮ │
│ │ crop = Region(x=0, y=0, width=116, height=15) │ │
│ │ self = NavigableOptionList(id='sessionpicker-options') │ │
│ ╰────────────────────────────────────────────────────────╯ │
│ │
│ %APPDATA%\uv\tools\mistral-vibe\Lib\site-packages\textual\widgets\_option_list.py:826 │
│ in _update_lines │
│ │
│ 823 │ │ │ for index, option in enumerate(self.options[next_index:], next_index): │
│ 824 │ │ │ │ line_cache.index_to_line[index] = len(line_cache.lines) │
│ 825 │ │ │ │ line_count = ( │
│ ❱ 826 │ │ │ │ │ get_visual(option).get_height(self.styles, width - padding.width) │
│ 827 │ │ │ │ │ + option._divider │
│ 828 │ │ │ │ ) │
│ 829 │ │ │ │ line_cache.heights[index] = line_count │
│ │
│ ╭───────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │
│ │ get_visual = <bound method OptionList._get_visual of NavigableOptionList(id='sessionpicker-options')> │ │
│ │ index = 1 │ │
│ │ line_cache = _LineCache(lines=[(0, 0)], heights={0: 1}, index_to_line={0: 0, 1: 1}) │ │
│ │ line_count = 1 │ │
│ │ lines = [(0, 0)] │ │
│ │ next_index = 0 │ │
│ │ option = Option( │ │
│ │ │ <text '5d ago 5c72facb Press d again to delete' [Span(0, 10, 'dim'), Span(12, 22, 'dim'), │ │
│ │ Span(28, 29, 'b not dim $primary')] ''>, │ │
│ │ │ id='5c72facb-0057-2d06-29db-e533f829cd3f' │ │
│ │ ) │ │
│ │ padding = Spacing(top=0, right=0, bottom=0, left=0) │ │
│ │ self = NavigableOptionList(id='sessionpicker-options') │ │
│ │ width = 113 │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
│ │
│ %APPDATA%\uv\tools\mistral-vibe\Lib\site-packages\textual\widgets\_option_list.py:763 │
│ in _get_visual │
│ │
│ 760 │ │ │
│ 761 │ │ """ │
│ 762 │ │ if (visual := option._visual) is None: │
│ ❱ 763 │ │ │ visual = visualize(self, option.prompt, markup=self._markup) │
│ 764 │ │ │ option._visual = visual │
│ 765 │ │ return visual │
│ 766 │
│ │
│ ╭───────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │
│ │ option = Option( │ │
│ │ │ <text '5d ago 5c72facb Press d again to delete' [Span(0, 10, 'dim'), Span(12, 22, 'dim'), │ │
│ │ Span(28, 29, 'b not dim $primary')] ''>, │ │
│ │ │ id='5c72facb-0057-2d06-29db-e533f829cd3f' │ │
│ │ ) │ │
│ │ self = NavigableOptionList(id='sessionpicker-options') │ │
│ │ visual = None │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
│ │
│ %APPDATA%\uv\tools\mistral-vibe\Lib\site-packages\textual\content.py:341 in │
│ from_rich_text │
│ │
│ 338 │ │ │ │ │ start, │
│ 339 │ │ │ │ │ end, │
│ 340 │ │ │ │ │ ( │
│ ❱ 341 │ │ │ │ │ │ Style.from_rich_style(get_style(style), ansi_theme) │
│ 342 │ │ │ │ │ │ if isinstance(style, str) │
│ 343 │ │ │ │ │ │ else Style.from_rich_style(style, ansi_theme) │
│ 344 │ │ │ │ │ ), │
│ │
│ ╭───────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────╮ │
│ │ ansi_theme = <rich.terminal_theme.TerminalTheme object at 0x0000021134193890> │ │
│ │ console = <console width=120 ColorSystem.TRUECOLOR> │ │
│ │ get_style = <bound method Console.get_style of <console width=120 ColorSystem.TRUECOLOR>> │ │
│ │ text = <text '5d ago 5c72facb Press d again to delete' [Span(0, 10, 'dim'), Span(12, 22, 'dim'), │ │
│ │ Span(28, 29, 'b not dim $primary')] ''> │ │
│ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
│ │
│ %APPDATA%\uv\tools\mistral-vibe\Lib\site-packages\rich\console.py:1496 in get_style │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
MissingStyle: Failed to get style 'b not dim $primary'; unable to parse '$primary' as color; '$primary' is not a valid
color
Component
CLI
Summary
Lors de l'affichage de la liste des sessions (session picker), l'application plante avec l'erreur suivante :
MissingStyle: Failed to get style 'b not dim $primary'; unable to parse '$primary' as color; '$primary' is not a valid color
Traceback :
• Fichier concerné : vibe/cli/textual_ui/shortcut_hints.py, ligne 6
• Constante : SHORTCUT_STYLE = "b not dim $primary"
• Le style utilise $primary comme variable CSS Textual, mais ce token n'est pas reconnu par Rich lors du parsing du markup (Content.from_markup)
Version : mistral_vibe 2.19.1
Reproduction steps
Versions / environment
mistral_vibe 2.19.1
Logs & screenshots