Skip to content

[Bug]: dead_code warning for fork_session_for_plugin in feature-less core test builds #2570

Description

@1688mengdie

Summary

The upstream CI logs for main report a dead-code warning for fork_session_for_plugin in bitfun-core. Evidence from GitHub Actions run 33035362609 — job "CLI Tests (ubuntu-latest)" and "CLI Tests (macos-15)" (also present in runs 33050974141 and 33047041028):

  • warning: function fork_session_for_plugin is never used --> src/crates/assembly/core/src/product_runtime.rs:614:21

Cross-checking the crate: the only consumer of CoreProductAgentRuntime::fork_session_for_plugin is the plugin host HTTP routes implementation (plugin_host_http_routes_impl.rs), which is compiled under the opencode-plugin-host feature gate in the crate's lib.rs. Test builds that do not enable that feature — notably the sdk-host test compilation unit used by the CLI Tests jobs — therefore see a function with zero callers and report it as dead code.

Root Cause Analysis

  • The function is plugin-host-only by construction, but its declaration is unconditional. The crate's feature gate already scopes its sole consumer; the declaration itself was not scoped, so any build without opencode-plugin-host (including the sdk-host test unit on ubuntu/macos) flags it as dead_code. The warning is structural: every full CI run with the ubuntu/macos test units reproduces it.

Proposed Fix

Gate the function with #[cfg(feature = "opencode-plugin-host")] at its declaration in product_runtime.rs, so:

  • feature-less test builds (sdk-host test unit) stop emitting the dead-code warning;
  • the plugin-host build keeps the function available for its single consumer.

No #[allow(dead_code)] suppression is involved.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions