[Bug]: unused import / dead method warnings in CLI startup.rs, runtime/mod.rs and external_editor.rs
- Vorherrschende Sprache
- Rust
- Sterne
- 2.2k
- Forks
- 229
- Ø Merge
- 2 Std. 46 Min.
- Gemergte PRs (30 T.)
- 577
Beschreibung
## Summary
The upstream CI logs for `main` report three cross-platform unused-import/dead-code warnings in the CLI. Evidence from GitHub Actions run [33035362609](https://github.com/GCWing/BitFun/actions/runs/33035362609) (reproduced on ubuntu/macos/windows compilation units and across runs 33050974141 and 33047041028):
- `warning: unused import: bitfun_core_types::model::ModelMutation` --> `src/apps/cli/src/ui/startup.rs:33:5`
- `warning: method agent_event_source is never used` --> `src/apps/cli/src/runtime/mod.rs:121:19`
- `warning: unused import: OsStr` --> `src/apps/cli/src/modes/chat/external_editor.rs:1:16`
Cross-checking the crate:
- The `ModelMutation` import in `ui/startup.rs` has no consumer in that file; upstream mutation handling goes through the model selection module. It is pure refactoring leftover.
- `CliRuntimeContext::agent_event_source` has no caller left anywhere in the crate: its only historical consumer (the embedded app server) was removed upstream.
- In `external_editor.rs`, `OsStr` is consumed only by the Windows batch-quoting helper, while `OsString` is used unconditionally; the combined `use std::ffi::{OsStr, OsString};` therefore triggers `unused import: OsStr` on non-Windows builds.
## Root Cause Analysis
- One leftover import after a refactor, one accessor whose only consumer was removed upstream, and one combined import mixing a Windows-only symbol with a cross-platform symbol. Each of the three warnings is structural and reproduced by every full CI run of `main` (runs 33035362609 / 33050974141 / 33047041028).
## Proposed Fix
- Delete the unused `ModelMutation` import line in `ui/startup.rs`.
- Delete the unused `agent_event_source` method in `runtime/mod.rs` (keep the underscore-prefixed `_agent_event_queue_owner` field and the `AgentEventSource` import, which still have live consumers).
- Split the import in `external_editor.rs` into `#[cfg(windows)] use std::ffi::OsStr;` plus an unconditional `use std::ffi::OsString;`.
No `#[allow]` suppression is involved; the dead symbols are removed and the platform-scoped import is scoped precisely.
Beitragsleitfaden
Rechercherichtung
Start with the three reported files: src/apps/cli/src/ui/startup.rs, src/apps/cli/src/runtime/mod.rs, and src/apps/cli/src/modes/chat/external_editor.rs. Run the CLI compilation or checks across platforms, then remove the unused symbols and scope OsStr to Windows as described. Done means the warnings no longer appear while the platform-specific helper still builds.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- rust
- Bereich
- cli
- Issue-Typ
- Bug
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Aktiv
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 88/100