fix(channels): presentation module private in release breaks the build (v0.57.16 release-blocker)#3406
Conversation
…elease-blocker) The module's visibility was cfg-gated: `pub mod` under test/debug, private under release. That compiled in every debug/test build (local, PR CI, pnpm test:rust) but broke the **release** build with E0603 once a cross-module caller appeared — agent::task_dispatcher → presentation::deliver_response (tinyhumansai#3380). The cfg gate landed in tinyhumansai#3023 so an integration coverage test (a separate crate) could reach presentation::test_support. Make it `pub mod presentation;` unconditionally — consistent with every sibling provider module, satisfies both the release caller and the external integration test (which needs full pub). Verified with cargo check --release. Fixes the v0.57.16 Release Production failure.
|
Caution Review failedPull request was closed or merged during review No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThis PR changes the ChangesModule Visibility Fix
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Comment |
…d (v0.57.16 release-blocker) (tinyhumansai#3406)
Summary
Fixes the v0.57.16 Release Production failure — every build job (Docker image + all 5 desktop targets) failed with one release-only Rust error:
One-line fix: make
channels::providers::presentationpub modin all build profiles.Problem
channels/providers/mod.rsgated the module's visibility on build profile:pubin test/debug so an integration coverage test (tests/channels_bus_presentation_raw_coverage_e2e.rs, a separate crate) could reachpresentation::test_support. It stayed private in release.presentation::deliver_response(...)inagent::task_dispatcher. That compiles in debug (module ispubthere) but is unreachable in release (module private) →E0603.Because debug/test compiles all pass (local
cargo check, PR CI,pnpm test:rust), nothing caught it until the release-profile production build ran.Solution
web,telegram,slack, …) —presentationwas the lone non-pubone.pub(notpub(crate)): the integration test is an external crate that needs fullpub;pubalso satisfies the in-crate release caller.deliver_responseis alreadypub fn, so making the module visible is the entire fix.Verified with
cargo check --release --bin openhuman-core(the exact failing profile) — now compiles clean.Follow-up (separate)
PR CI compiles in debug only, which is why a release-only visibility break shipped. Recommend adding a
cargo check --releasejob to catch this class of regression pre-release.Summary by CodeRabbit