perf(deps): make prometheus and TUI onboarding opt-in, not default#5714
perf(deps): make prometheus and TUI onboarding opt-in, not default#5714theonlyhennygod wants to merge 2 commits intomasterfrom
Conversation
Move observability-prometheus out of default features and tui-onboarding out of agent-runtime. Both remain available via explicit --features flags and are included in ci-all. - Removes observability-prometheus from root and runtime default features - Removes tui-onboarding and dep:ratatui/dep:crossterm from agent-runtime - Adds tui-onboarding to ci-all for full CI coverage - Moves run_tui_if_enabled fallback before test module (fixes clippy) Binary size (default features): 13,323,664 → 13,090,384 (~228KB / 12MB). First time below 13MB on default features. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Hey! CI is failing on Security Audit due to RUSTSEC-2026-0098 and RUSTSEC-2026-0099, two The fix landed in #5786 (merged today). Please merge git fetch upstream
git merge upstream/master
git pushSorry for the noise! |
Review verdict — Needs author actionComprehension: Removes 0.7.0 relevance check: PASS. Post-workspace-refactor crate names ( Validation (local, macOS x86_64):
Size delta: Author reports 13,323,664 → 13,090,384 bytes (~228 KB). Corroborated by the 38-crate reduction. Security: None. Performance: Positive — the PR's goal, reproducible at the dep-graph level. Findings[blocking] Release/Docker workflows rely on defaults — prebuilt binaries silently lose prometheus + TUI
[suggestion] Changelog / upgrade-note absence
[question] CI coverage of the disabled branch
[suggestion] PR template completenessMissing/empty sections per [nit] Label mismatchPR body declares CI note: Pre-Release Validation + Security Audit failures are pre-existing infra issues (missing 🤖 Generated with Claude Code |
singlerider
left a comment
There was a problem hiding this comment.
Comprehension summary: Removes observability-prometheus and tui-onboarding (ratatui + crossterm) from the default feature set in both root Cargo.toml and crates/zeroclaw-runtime/Cargo.toml. Both features remain fully available via --features observability-prometheus or --features tui-onboarding. Adds tui-onboarding to ci-all to preserve CI coverage. Moves run_tui_if_enabled stub above the test module (clippy fix). Blast radius: root crate + zeroclaw-runtime feature graph + src/main.rs. Binary reduction ~228KB (13.3MB → 13.1MB).
Security/performance: Security Audit failure is pre-existing RUSTSEC-2026-0098/0099 on master — not introduced by this PR. CI Required Gate (CI workflow) passes. No new permissions, network calls, or secret handling.
Breaking: users relying on default prometheus metrics or zeroclaw onboard --tui must add --features observability-prometheus or --features tui-onboarding to their build. Risk label auto-corrected to risk: high (correct — core scope).
@JordanTheJet — routing for sign-off on the default feature set change before merge.
Summary
masterobservability-prometheusandtui-onboarding(ratatui + crossterm) were enabled by default, adding dependency weight for features rarely needed in CLI/server usage.observability-prometheusfrom root and runtimedefaultfeaturestui-onboarding,dep:ratatui,dep:crosstermfromagent-runtimetui-onboardingtoci-allfor full CI coveragerun_tui_if_enabledfallback before test module (clippy fix)--features observability-prometheusor--features tui-onboarding. CLI and config unchanged. The TUI fallback already prints a helpful error message when the feature is disabled.How to enable
Label Snapshot (required)
risk: mediumsize: XSruntime,dependenciesrefactorruntimeValidation Evidence (required)
Binary size: 13,323,664 → 13,090,384 bytes (~228KB reduction, now 12MB).
Security Impact (required)
Privacy and Data Hygiene (required)
passCompatibility / Migration
zeroclaw onboard --tuineed--features tui-onboarding. Users relying on prometheus endpoint need--features observability-prometheus.Rollback Plan (required)
git revert <merge-commit>🤖 Generated with Claude Code