chore(rust): prune unused dependencies and repair TinyFlows import - #5540
Conversation
Co-authored-by: Medulla <medulla@tinyhumans.ai>
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe pull request removes unused dependency declarations, initializes imported n8n workflow graphs with empty agent collections, rejects dynamic ChangesDependency and Flow Validation Cleanup
Estimated code review effort: 2 (Simple) | ~10 minutes Mergeability Score: ⚪ Minimal · up to This PR repairs n8n workflow imports and removes unused Rust dependency declarations without changing user-visible behavior or introducing new security, network, persistence, or deployment boundaries. No actionable merge-blocking risk remains after normal checks and review. Possibly related PRs
Suggested labels: Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
…-cleanup # Conflicts: # Cargo.lock # app/src-tauri/Cargo.lock
|
Note GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer. |
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Co-authored-by: Medulla <medulla@tinyhumans.ai>
There was a problem hiding this comment.
tinysweeper found nothing blocking. Approving.
$0.0279 · 25,991 in / 9,293 out · 22,255 cached (86%) · z-ai/glm-5.2
critique: $0.0111 · 8,626 in / 3,881 out · 7,455 cached (86%) · z-ai/glm-5.2
security: $0.0049 · 8,542 in / 1,262 out · 7,387 cached (86%) · z-ai/glm-5.2
tests: $0.0070 · 3,778 in / 2,594 out · 3,187 cached (84%) · z-ai/glm-5.2
description: $0.0049 · 5,045 in / 1,556 out · 4,226 cached (84%) · z-ai/glm-5.2
How this change flows1 changed behaviour across 8 relationships. 6 surrounding behaviours are shown (60 graph nodes walked). 39 further behaviours left out to keep the diagram readable. flowchart LR
n0["test_config<br/>changed"]:::changed
n1["apply_overrides"]:::impacted
n2["Value"]:::impacted
n3["...nges_and_removes_untouched_overlay_fields"]:::impacted
n4["...aves_hydrates_source_ref_for_cited_chunks"]:::impacted
n5["expect"]:::impacted
n6["CliInferenceOverrides"]:::impacted
n0 -->|calls| n5
n1 -->|uses| n6
n3 -->|calls| n1
n3 -->|tests| n1
n3 -->|uses| n6
n4 -->|calls| n0
n4 -->|uses| n2
n4 -->|calls| n5
classDef changed fill:#0d4429,stroke:#238636,color:#e6edf3
classDef impacted fill:#161b22,stroke:#6e7681,color:#c9d1d9
classDef flagged fill:#5a1e02,stroke:#d93f0b,color:#ffffff
classDef blocking fill:#67060c,stroke:#f85149,color:#ffffff
Green: changed behaviour. Grey: surrounding behaviour. Arrows name the call, use, implementation, or test relationship. Orange: has findings. Red: has a finding that blocks the merge. |
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Co-authored-by: Medulla <medulla@tinyhumans.ai>
There was a problem hiding this comment.
tinysweeper found nothing blocking. Approving.
$0.0577 · 80,651 in / 53,025 out · 46,336 cached (57%) · deepseek/deepseek-v4-pro-0813
critique: $0.0176 · 15,717 in / 14,903 out · 5,120 cached (33%) · deepseek/deepseek-v4-pro-0813
security: $0.0122 · 15,612 in / 8,740 out · 5,120 cached (33%) · deepseek/deepseek-v4-pro-0813
tests: $0.0121 · 5,894 in / 11,013 out · 0 cached (0%) · deepseek/deepseek-v4-pro-0813
description: $0.0116 · 7,208 in / 9,715 out · 0 cached (0%) · deepseek/deepseek-v4-pro-0813
Summary
WorkflowGraph.agentsfield when importing n8n workflows.reqwest 0.13package in the root and desktop lockfiles.env_logger.Problem
A
cargo macheteand releasecargo bloataudit found unused direct dependencies in the three Rust manifests. While rebasing the cleanup onto currentmain, the newly advanced TinyFlows schema also made the core fail to compile because the n8n importer did not initialize its required agent registry and the lockfile did not contain TinyFlows' reqwest 0.13 requirement.Solution
Remove only source-confirmed unused declarations. Dependencies still required transitively remain resolved normally: Rustls still selects its ring provider, while regex and TinyJuice remain available to the embedded core. Map n8n workflows to an empty reusable-agent registry because n8n agent nodes carry their configuration inline. Larger or compatibility-sensitive bloat work is deferred to #5539.
The kernel-floor limit moves from 307 to 308 packages because #5537 changed TinyFlows from reqwest 0.12 to 0.13 while the rest of the kernel still uses 0.12. This is one additional version of an existing crate: unique names remain 284 and native builds remain 2. Unifying the reqwest major versions is tracked in #5539.
Submission Checklist
Impact
No intended user-visible, security, persistence, or wire-format change. n8n imports now satisfy the updated TinyFlows graph schema with an empty reusable-agent registry. The dependency graph no longer retains the desktop/mobile
env_loggersubtree, and the redundant declarations are removed.Related
AI Authored PR Metadata (required for Codex/Linear PRs)
Linear Issue
Commit & Branch
chore/rust-dependency-cleanup2afb6b890Validation Run
cargo test -p openhuman --locked --features "$(scripts/ci/product-features.sh),bin-tools" --tests --no-run.cargo check --locked --manifest-path Cargo.toml --bin openhuman-core.cargo check --locked --manifest-path app/src-tauri/Cargo.toml --bin OpenHuman.bash scripts/check-kernel-floor.sh --verbose(308 packages / 284 names / 2 native) andpython3 scripts/dep-sim.py --cut-nothing --expect-names 284.cargo-machete --with-metadata --skip-target-dir Cargo.toml app/src-tauri/Cargo.toml app/src-tauri-mobile/Cargo.toml; remaining reports are build-script or target-specific false positives and are tracked in Reduce Rust binary bloat from duplicate dependency versions and monomorphization #5539.git diff --check origin/main...HEAD.Validation Blocked
command:cargo check --manifest-path app/src-tauri-mobile/Cargo.toml --all-targetserror:the mobile crate intentionally emitscompile_error!on desktop targets; this checkout has no iOS or Android Rust target installed.impact:mobile removals were source-verified and analyzed with cargo-machete, but a target-native mobile compile was not run locally.Behavior Changes
Parity Contract
Duplicate / Superseded PR Handling
Summary by CodeRabbit
Bug Fixes
Maintenance