The pyright job in `format.yaml` previously installed only `--extra daily --extra tracing`. That was sufficient when most optional-dep- using files were in the pyright ignore list, but as this PR has cleared dozens of files, those files now reference symbols from optional-dep modules (`aiortc.RTCIceServer` via `IceServer`, `google.genai.types.HttpOptions`, etc.). `reportMissingImports: false` tolerates the failed imports themselves, but the imported names become `Unknown` and using them as type expressions trips `reportInvalidTypeForm` / `reportAttributeAccessIssue` — errors that aren't gated by that flag. Switch to `--all-extras --no-extra gstreamer --no-extra local` (matching the dev setup in README.md), so pyright sees the same dependency set the code is intended to be type-checked against and the install-set scales naturally as more files leave the ignore list. Also reconcile CLAUDE.md's setup command, which only excluded `gstreamer`. README.md is canonical and additionally excludes `local` (pyaudio requires `portaudio` native libs that aren't installed by default on a clean Ubuntu CI runner).
1.1 KiB
1.1 KiB