Location: .github/workflows/ci.yml:61
The previous workflow ran the suite against uv sync --extra dev (no tui extra). Every new job (lint, typecheck, test, security) syncs --extra dev --extra tui.
Failure scenario: if a core module (server.py, __main__.py) gains an accidental top-level import of textual/selectolax (e.g. via from .fetch import ... or from .tui import ...), plain pip install perplexity-agent users get ImportError at server startup while CI stays green. The _run_tui missing-extra error path is also never exercised against a real core env.
Suggested fix: keep one matrix leg (or a dedicated job) on uv sync --extra dev only.
Found by /code-review (high effort).
Location:
.github/workflows/ci.yml:61The previous workflow ran the suite against
uv sync --extra dev(no tui extra). Every new job (lint, typecheck, test, security) syncs--extra dev --extra tui.Failure scenario: if a core module (
server.py,__main__.py) gains an accidental top-level import oftextual/selectolax(e.g. viafrom .fetch import ...orfrom .tui import ...), plainpip install perplexity-agentusers get ImportError at server startup while CI stays green. The_run_tuimissing-extra error path is also never exercised against a real core env.Suggested fix: keep one matrix leg (or a dedicated job) on
uv sync --extra devonly.Found by /code-review (high effort).