[INFO] cloning repository https://github.com/norpie/dynamics-cli
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/norpie/dynamics-cli" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnorpie%2Fdynamics-cli", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnorpie%2Fdynamics-cli'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c6ddf94c8fdb34f2ff1805155074b49503ce448f
[INFO] testing norpie/dynamics-cli against beta-2025-09-21 for beta-1.91-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnorpie%2Fdynamics-cli" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/norpie/dynamics-cli
[INFO] finished tweaking git repo https://github.com/norpie/dynamics-cli
[INFO] tweaked toml for git repo https://github.com/norpie/dynamics-cli written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/norpie/dynamics-cli on toolchain beta-2025-09-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/norpie/dynamics-cli already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 83046da070024a6ba333e12dd075621cad23d4c21abe2ee4bdaac22905ab98ce
[INFO] running `Command { std: "docker" "start" "-a" "83046da070024a6ba333e12dd075621cad23d4c21abe2ee4bdaac22905ab98ce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "83046da070024a6ba333e12dd075621cad23d4c21abe2ee4bdaac22905ab98ce", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "83046da070024a6ba333e12dd075621cad23d4c21abe2ee4bdaac22905ab98ce", kill_on_drop: false }`
[INFO] [stdout] 83046da070024a6ba333e12dd075621cad23d4c21abe2ee4bdaac22905ab98ce
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 68642dd25ce4e6bc6b4d5db9cec5453b83225208b99a8404383f4c5c805f887e
[INFO] running `Command { std: "docker" "start" "-a" "68642dd25ce4e6bc6b4d5db9cec5453b83225208b99a8404383f4c5c805f887e", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling unicode-ident v1.0.19
[INFO] [stderr]    Compiling cfg-if v1.0.3
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling serde_core v1.0.225
[INFO] [stderr]    Compiling find-msvc-tools v0.1.1
[INFO] [stderr]    Compiling bitflags v2.9.4
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]    Compiling serde v1.0.225
[INFO] [stderr]    Compiling indexmap v2.11.3
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling http v0.2.12
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling cc v1.2.37
[INFO] [stderr]    Compiling mio v1.0.4
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling thiserror v2.0.16
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling openssl-probe v0.1.6
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling bumpalo v3.19.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling regex-syntax v0.8.6
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling instability v0.3.9
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling anstyle-query v1.1.4
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling http-body v0.4.6
[INFO] [stderr]    Compiling zip v2.4.2
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling anstream v0.6.20
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling zopfli v0.8.2
[INFO] [stderr]    Compiling signal-hook-mio v0.2.4
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling indoc v2.0.6
[INFO] [stderr]    Compiling anyhow v1.0.99
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling unicode-width v0.1.14
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]    Compiling winnow v0.7.13
[INFO] [stderr]    Compiling unicode-width v0.2.1
[INFO] [stderr]    Compiling base64 v0.21.7
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling regex-automata v0.4.10
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling rustls-pemfile v1.0.4
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling clap_builder v4.5.47
[INFO] [stderr]    Compiling compact_str v0.8.1
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling rtoolbox v0.0.3
[INFO] [stderr]    Compiling lru v0.12.5
[INFO] [stderr]    Compiling cassowary v0.3.0
[INFO] [stderr]    Compiling humantime v2.3.0
[INFO] [stderr]    Compiling sync_wrapper v0.1.2
[INFO] [stderr]    Compiling ipnet v2.11.0
[INFO] [stderr]    Compiling iana-time-zone v0.1.64
[INFO] [stderr]    Compiling shell-words v1.1.0
[INFO] [stderr]    Compiling rpassword v7.4.0
[INFO] [stderr]    Compiling dirs v5.0.1
[INFO] [stderr]    Compiling roxmltree v0.19.0
[INFO] [stderr]    Compiling dotenv v0.15.0
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]    Compiling unicode-truncate v1.1.0
[INFO] [stderr]    Compiling tempfile v3.22.0
[INFO] [stderr]    Compiling regex v1.11.2
[INFO] [stderr]    Compiling env_logger v0.10.2
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling serde_derive v1.0.225
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.16
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.5.47
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling zerotrie v0.2.2
[INFO] [stderr]    Compiling dialoguer v0.11.0
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling zerovec v0.11.4
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling tinystr v0.8.1
[INFO] [stderr]    Compiling potential_utf v0.1.3
[INFO] [stderr]    Compiling icu_collections v2.0.0
[INFO] [stderr]    Compiling clap v4.5.47
[INFO] [stderr]    Compiling icu_locale_core v2.0.0
[INFO] [stderr]    Compiling rust_xlsxwriter v0.78.0
[INFO] [stderr]    Compiling ratatui v0.28.1
[INFO] [stderr]    Compiling icu_provider v2.0.0
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling icu_properties v2.0.1
[INFO] [stderr]    Compiling icu_normalizer v2.0.0
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling tokio-util v0.7.16
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling h2 v0.3.27
[INFO] [stderr]    Compiling hyper v0.14.32
[INFO] [stderr]    Compiling hyper-tls v0.5.0
[INFO] [stderr]    Compiling reqwest v0.11.27
[INFO] [stderr]    Compiling dynamics-cli v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `relationship_renderer::*`
[INFO] [stdout]   --> src/commands/migration/ui/components/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use relationship_renderer::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FieldDisplayInfo`
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchical_app.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |             FieldDisplayInfo, FieldMapping, MappingSource, MatchState,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FieldMapping`, `MappingSource`, and `MatchState`
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchical_app.rs:52:76
[INFO] [stdout]    |
[INFO] [stdout] 52 |         use crate::commands::migration::ui::components::{FieldDisplayInfo, FieldMapping, MappingSource, MatchState};
[INFO] [stdout]    |                                                                            ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fields_app::FieldNode`
[INFO] [stdout]  --> src/commands/migration/ui/screens/comparison_apps/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use fields_app::FieldNode;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ComparisonData`, `DataConverter`, `FieldsConverter`, `FormsConverter`, `RelationshipsConverter`, and `ViewsConverter`
[INFO] [stdout]  --> src/commands/migration/ui/screens/comparison_apps/mod.rs:7:43
[INFO] [stdout]   |
[INFO] [stdout] 7 | ...{ComparisonApp, ComparisonData, DataConverter, FieldsConverter, ViewsConverter, FormsConverter, RelationshipsConverter};
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name
[INFO] [stdout]   --> src/commands/migration/ui/app.rs:64:30
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 let area = f.size();
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area`
[INFO] [stdout]    --> src/commands/migration/ui/components/list_component.rs:171:51
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn handle_mouse(&self, event: MouseEvent, area: Rect) -> ListAction {
[INFO] [stdout]     |                                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_area`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_nodes`
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:561:35
[INFO] [stdout]     |
[INFO] [stdout] 561 |     pub fn detect_simple_mappings(source_nodes: &mut [ViewNode], target_nodes: &[ViewNode]) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_nodes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_nodes`
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:561:66
[INFO] [stdout]     |
[INFO] [stdout] 561 |     pub fn detect_simple_mappings(source_nodes: &mut [ViewNode], target_nodes: &[ViewNode]) {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_nodes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1090:9
[INFO] [stdout]      |
[INFO] [stdout] 1090 |         source_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1091:9
[INFO] [stdout]      |
[INFO] [stdout] 1091 |         target_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1110:9
[INFO] [stdout]      |
[INFO] [stdout] 1110 |         source_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1111:9
[INFO] [stdout]      |
[INFO] [stdout] 1111 |         target_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1130:9
[INFO] [stdout]      |
[INFO] [stdout] 1130 |         source_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1131:9
[INFO] [stdout]      |
[INFO] [stdout] 1131 |         target_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]   --> src/commands/migration/ui/app.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct MigrationUI {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 20 |     navigation: NavigationManager,
[INFO] [stdout] 21 |     config: Config,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `all_completed` is never used
[INFO] [stdout]   --> src/commands/migration/ui/components/fetch_progress.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl FetchProgress {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn all_completed(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `TypeMismatch` is never constructed
[INFO] [stdout]   --> src/commands/migration/ui/components/field_renderer.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum MatchState {
[INFO] [stdout]    |          ---------- variant in this enum
[INFO] [stdout] 20 |     FullMatch,    // Green - field and type match
[INFO] [stdout] 21 |     TypeMismatch, // Yellow - field matches but type differs
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MatchState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Relationship` is never constructed
[INFO] [stdout]   --> src/commands/migration/ui/components/field_renderer.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum FieldType {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 47 |     Relationship {
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FieldType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new_relationship` and `relationship_with_mapping` are never used
[INFO] [stdout]   --> src/commands/migration/ui/components/field_renderer.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl FieldDisplayInfo {
[INFO] [stdout]    | --------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn new_relationship(field: FieldInfo, target_entity: String, relationship_type: RelationshipType) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn relationship_with_mapping(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `render_field_string` is never used
[INFO] [stdout]    --> src/commands/migration/ui/components/field_renderer.rs:217:12
[INFO] [stdout]     |
[INFO] [stdout] 124 | impl FieldRenderer {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 217 |     pub fn render_field_string(field_info: &FieldDisplayInfo) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `style` is never read
[INFO] [stdout]   --> src/commands/migration/ui/components/footer_component.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct FooterComponent {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 10 |     actions: Vec<FooterAction>,
[INFO] [stdout] 11 |     style: FooterStyle,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Compact` and `Help` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/components/footer_component.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub enum FooterStyle {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 22 |     Standard,
[INFO] [stdout] 23 |     Compact,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 24 |     Help,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FooterStyle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_action`, `add_navigation_actions`, `add_quit_action`, and `with_style` are never used
[INFO] [stdout]   --> src/commands/migration/ui/components/footer_component.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl FooterComponent {
[INFO] [stdout]    | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn add_action(mut self, key: &str, description: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn add_navigation_actions(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn add_quit_action(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn with_style(mut self, style: FooterStyle) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `level` is never read
[INFO] [stdout]   --> src/commands/migration/ui/components/hierarchy_tree.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct TreeNode {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub level: usize,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TreeNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_arc` and `from_arc_with_children` are never used
[INFO] [stdout]   --> src/commands/migration/ui/components/hierarchy_tree.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl TreeNode {
[INFO] [stdout]    | ------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn from_arc(data: Arc<dyn HierarchyNode>, level: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn from_arc_with_children(data: Arc<dyn HierarchyNode>, children: Vec<TreeNode>, level: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `update_node_expansion`, `get_flattened_count`, `flatten_node_recursive`, `get_selected`, and `render_node_line` are never used
[INFO] [stdout]    --> src/commands/migration/ui/components/hierarchy_tree.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl HierarchyTree {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 172 |     fn update_node_expansion(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     pub fn get_flattened_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 233 |     fn flatten_node_recursive(&mut self, node: &TreeNode, level: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 284 |     pub fn get_selected(&mut self) -> Option<&TreeNode> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub fn render_node_line(node: &TreeNode, level: usize) -> Line<'static> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `create_new_label`, `enable_scroll`, and `highlight_selected` are never read
[INFO] [stdout]   --> src/commands/migration/ui/components/list_component.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct ListConfig {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub create_new_label: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 28 |     pub enable_mouse: bool,
[INFO] [stdout] 29 |     pub enable_scroll: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 30 |     pub show_indices: bool,
[INFO] [stdout] 31 |     pub highlight_selected: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_title`, `with_create_new`, `with_mouse_support`, `with_indices`, `selected`, and `update_items` are never used
[INFO] [stdout]    --> src/commands/migration/ui/components/list_component.rs:72:12
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl<T: Display> ListComponent<T> {
[INFO] [stdout]     | --------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  72 |     pub fn with_title(mut self, title: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_create_new(mut self, key: char, label: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn with_mouse_support(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn with_indices(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn selected(&self) -> Option<usize> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub fn update_items(&mut self, items: Vec<T>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Close`, `Submit`, `Cancel`, and `Custom` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/components/modal_component.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub enum ModalContentAction {
[INFO] [stdout]    |          ------------------ variants in this enum
[INFO] [stdout] 58 |     Close,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 59 |     Submit(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 60 |     Cancel,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 61 |     Custom(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ModalContentAction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_config`, `non_closable`, `content`, and `content_mut` are never used
[INFO] [stdout]    --> src/commands/migration/ui/components/modal_component.rs:78:12
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl<T: ModalContent> ModalComponent<T> {
[INFO] [stdout]     | --------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub fn with_config(mut self, config: ModalConfig) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn non_closable(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub fn content(&self) -> &T {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     pub fn content_mut(&mut self) -> &mut T {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_mapping` is never used
[INFO] [stdout]   --> src/commands/migration/ui/components/relationship_renderer.rs:89:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl RelationshipField {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 89 |     pub fn with_mapping(mut self, mapping_target: String) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_field_node` is never used
[INFO] [stdout]    --> src/commands/migration/ui/components/relationship_renderer.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl RelationshipGroup {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn new_field_node(field: RelationshipField) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `render_relationship_field` and `filter_out_relationships` are never used
[INFO] [stdout]    --> src/commands/migration/ui/components/relationship_renderer.rs:264:12
[INFO] [stdout]     |
[INFO] [stdout] 262 | impl RelationshipRenderer {
[INFO] [stdout]     | ------------------------- associated functions in this implementation
[INFO] [stdout] 263 |     /// Create a styled line for a relationship field
[INFO] [stdout] 264 |     pub fn render_relationship_field(field: &RelationshipField) -> Line<'static> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 303 |     pub fn filter_out_relationships(fields: &[FieldInfo]) -> Vec<FieldInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `hover_style` is never read
[INFO] [stdout]  --> src/commands/migration/ui/mouse.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct MouseZone {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 7 |     pub hover_style: Option<Style>,
[INFO] [stdout]   |         ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `MouseZone` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_hover_style` and `handle_scroll` are never used
[INFO] [stdout]   --> src/commands/migration/ui/mouse.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl MouseHandler {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn get_hover_style(&self, area: Rect) -> Option<Style> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub fn handle_scroll(&self, x: u16, y: u16, delta: i16) -> Option<MouseAction> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_current_screen` and `get_current_screen_mut` are never used
[INFO] [stdout]   --> src/commands/migration/ui/navigation.rs:94:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl NavigationManager {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 94 |     pub fn get_current_screen(&self) -> &dyn Screen {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn get_current_screen_mut(&mut self) -> &mut dyn Screen {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_title` is never used
[INFO] [stdout]  --> src/commands/migration/ui/screens/base_screen.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait Screen {
[INFO] [stdout]   |           ------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 9 |     fn get_title(&self) -> Option<String> {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Replace` is never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/base_screen.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub enum ScreenResult {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 27 |     Replace(Box<dyn Screen>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ScreenBuilder` is never used
[INFO] [stdout]   --> src/commands/migration/ui/screens/base_screen.rs:31:11
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub trait ScreenBuilder {
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `FocusChanged`, `Exit`, and `Back` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/app_trait.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum AppResult {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout]  9 |     Continue,
[INFO] [stdout] 10 |     FocusChanged(FocusedSide),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 11 |     Exit,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 12 |     Back,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `handle_keyboard`, `get_source_count`, `get_target_count`, `get_title`, `on_enter`, and `on_exit` are never used
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/app_trait.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub trait ComparisonApp: Send {
[INFO] [stdout]    |           ------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn handle_keyboard(&mut self, key: KeyCode) -> AppResult;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn get_source_count(&self) -> usize;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn get_target_count(&self) -> usize;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn get_title(&self) -> String;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     fn on_enter(&mut self) {}
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn on_exit(&mut self) {}
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source_entity` and `target_entity` are never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/app_trait.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ComparisonData {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub source_entity: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 70 |     pub target_entity: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ComparisonData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `switch` is never used
[INFO] [stdout]  --> src/commands/migration/ui/screens/comparison_apps/common/focus_manager.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl FocusedSide {
[INFO] [stdout]   | ---------------- method in this implementation
[INFO] [stdout] 8 |     pub fn switch(&self) -> Self {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FocusManager` is never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/focus_manager.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct FocusManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_focused_side`, `set_focused_side`, `switch_focus`, `is_source_focused`, and `is_target_focused` are never used
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/focus_manager.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl FocusManager {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 22 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn get_focused_side(&self) -> FocusedSide {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn set_focused_side(&mut self, side: FocusedSide) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn switch_focus(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn is_source_focused(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn is_target_focused(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Exact`, `Manual`, and `Prefix` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum MappingType {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 14 |     Exact,    // ✅ Perfect match
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 15 |     Manual,   // 🔧 User-defined mapping
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 16 |     Prefix,   // 🎯 Prefix-based match
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MappingType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `view_info` is never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     View {
[INFO] [stdout]    |     ---- field in this variant
[INFO] [stdout] 40 |         name: String,
[INFO] [stdout] 41 |         view_info: ViewInfo,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `details` is never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     ViewItem {
[INFO] [stdout]    |     -------- field in this variant
[INFO] [stdout] ...
[INFO] [stdout] 52 |         details: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Filters` and `SortOrders` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum ViewComponentType {
[INFO] [stdout]    |          ----------------- variants in this enum
[INFO] [stdout] 60 |     Columns,
[INFO] [stdout] 61 |     Filters,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 62 |     SortOrders,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewComponentType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Filter` and `SortOrder` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub enum ViewItemType {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 85 |     Column,
[INFO] [stdout] 86 |     Filter,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 87 |     SortOrder,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewItemType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `icon` is never used
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 90 | impl ViewItemType {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] 91 |     pub fn icon(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `form_info` is never read
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |     Form {
[INFO] [stdout]     |     ---- field in this variant
[INFO] [stdout] 109 |         name: String,
[INFO] [stdout] 110 |         form_info: FormInfo,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FormNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tab_info` is never read
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |     Tab {
[INFO] [stdout]     |     --- field in this variant
[INFO] [stdout] 114 |         name: String,
[INFO] [stdout] 115 |         tab_info: FormTab,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FormNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `section_info` is never read
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 120 |     Section {
[INFO] [stdout]     |     ------- field in this variant
[INFO] [stdout] 121 |         name: String,
[INFO] [stdout] 122 |         section_info: FormSection,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FormNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `detect_simple_mappings` is never used
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:561:12
[INFO] [stdout]     |
[INFO] [stdout] 407 | impl HierarchyBuilder {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 561 |     pub fn detect_simple_mappings(source_nodes: &mut [ViewNode], target_nodes: &[ViewNode]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `show_comparison_placeholder` is never used
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_select_screen.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout]  43 | impl ComparisonSelectScreen {
[INFO] [stdout]     | --------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn show_comparison_placeholder(&mut self, comparison_name: &str) -> ScreenResult {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/loading_screen.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 |     Failed(Vec<String>),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LoadingScreenState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 -     Failed(Vec<String>),
[INFO] [stdout] 34 +     Failed(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source`, `target`, `match_score`, and `is_manual` are never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Match<T> {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 47 |     pub source: T,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 48 |     pub target: Option<T>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 49 |     pub match_score: f64,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 50 |     pub is_manual: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Match` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `field_matches`, `view_matches`, and `form_matches` are never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub struct ComparisonData {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub field_matches: Vec<Match<FieldInfo>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub view_matches: Vec<Match<ViewInfo>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 76 |     pub form_matches: Vec<Match<FormInfo>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ComparisonData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `hide_matched` is never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct SharedState {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub hide_matched: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SharedState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub enum LoadingState {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 88 |     NotStarted,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 89 |     LoadingSourceFields,
[INFO] [stdout] 90 |     LoadingTargetFields,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 91 |     LoadingSourceViews,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 92 |     LoadingTargetViews,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 93 |     LoadingSourceForms,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 94 |     LoadingTargetForms,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 95 |     ComputingMatches,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 96 |     Complete,
[INFO] [stdout] 97 |     Error(String),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LoadingState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `has_field_match`, `get_source_field_mapping`, and `get_target_field_mapping` are never used
[INFO] [stdout]    --> src/commands/migration/ui/screens/unified_compare_screen.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl UnifiedCompareScreen {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] 136 |     pub fn new(config: Config, comparison: SavedComparison) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 535 |     fn has_field_match(&self, field_name: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 569 |     fn get_source_field_mapping(&self, field: &FieldInfo) -> Option<FieldMapping> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 607 |     fn get_target_field_mapping(&self, field: &FieldInfo) -> Option<FieldMapping> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `active`, `warning`, `breadcrumb`, and `breadcrumb_separator` are never read
[INFO] [stdout]   --> src/commands/migration/ui/styles.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  3 | pub struct AppStyles {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  8 |     pub active: Style,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub warning: Style,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 13 |     pub info: Style,
[INFO] [stdout] 14 |     pub breadcrumb: Style,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 15 |     pub breadcrumb_separator: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/config.rs:248:12
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl Config {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 248 |     pub fn add_field_mapping(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub fn get_field_mappings(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 |     pub fn remove_field_mapping(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 321 |     pub fn add_prefix_mapping(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 |     pub fn get_prefix_mappings(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 354 |     pub fn remove_prefix_mapping(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |     pub fn list_prefix_mappings(&self) -> &HashMap<String, HashMap<String, String>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |     pub fn save_migration(&mut self, migration: SavedMigration) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn get_migration(&self, name: &str) -> Option<&SavedMigration> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 408 |     pub fn list_migrations(&self) -> Vec<&SavedMigration> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 420 |     pub fn remove_migration(&mut self, name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 430 |     pub fn touch_migration(&mut self, name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 440 |     pub fn add_comparison_to_migration(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 459 |     pub fn remove_comparison_from_migration(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_custom` is never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct FieldInfo {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub is_custom: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FieldInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `entity_name`, `is_custom`, and `fetch_xml` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct ViewInfo {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 17 |     pub name: String,
[INFO] [stdout] 18 |     pub entity_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 19 |     pub view_type: String,
[INFO] [stdout] 20 |     pub is_custom: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 21 |     pub columns: Vec<ViewColumn>,
[INFO] [stdout] 22 |     pub fetch_xml: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `width` is never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct ViewColumn {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 27 |     pub name: String,
[INFO] [stdout] 28 |     pub width: Option<u32>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewColumn` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_custom` and `state` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct FormInfo {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub is_custom: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 38 |     pub state: i32, // 0 = Inactive, 1 = Active
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `entity_name` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct FormStructure {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 45 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 46 |     pub entity_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormStructure` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `visible`, `expanded`, and `order` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct FormTab {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 52 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 53 |     pub label: String,
[INFO] [stdout] 54 |     pub visible: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 55 |     pub expanded: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 56 |     pub order: i32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormTab` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `visible`, `columns`, and `order` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct FormSection {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 62 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 63 |     pub label: String,
[INFO] [stdout] 64 |     pub visible: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 65 |     pub columns: i32, // Number of columns in the section
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 66 |     pub order: i32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormSection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `label`, `visible`, `readonly`, `row`, and `column` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct FormField {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 72 |     pub logical_name: String,
[INFO] [stdout] 73 |     pub label: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 74 |     pub visible: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 75 |     pub required_level: String, // None, ApplicationRequired, SystemRequired
[INFO] [stdout] 76 |     pub readonly: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 77 |     pub row: i32,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 78 |     pub column: i32,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormField` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ViewStructure` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:270:12
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub struct ViewStructure {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ViewColumnDetail` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:282:12
[INFO] [stdout]     |
[INFO] [stdout] 282 | pub struct ViewColumnDetail {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ViewFilter` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:292:12
[INFO] [stdout]     |
[INFO] [stdout] 292 | pub struct ViewFilter {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ViewSortOrder` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:300:12
[INFO] [stdout]     |
[INFO] [stdout] 300 | pub struct ViewSortOrder {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FetchXmlDetails` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:307:12
[INFO] [stdout]     |
[INFO] [stdout] 307 | pub struct FetchXmlDetails {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_view_structure` is never used
[INFO] [stdout]    --> src/dynamics/metadata.rs:317:8
[INFO] [stdout]     |
[INFO] [stdout] 317 | pub fn parse_view_structure(view_info: &ViewInfo) -> Result<ViewStructure> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/commands/migration/ui/components/footer_component.rs:103:26
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn build_footer_text(&self) -> Text {
[INFO] [stdout]     |                          ^^^^^     ^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn build_footer_text(&self) -> Text<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/commands/migration/ui/components/list_component.rs:299:25
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn build_list_items(&self) -> Vec<ListItem> {
[INFO] [stdout]     |                         ^^^^^         ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn build_list_items(&self) -> Vec<ListItem<'_>> {
[INFO] [stdout]     |                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 13s
[INFO] running `Command { std: "docker" "inspect" "68642dd25ce4e6bc6b4d5db9cec5453b83225208b99a8404383f4c5c805f887e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "68642dd25ce4e6bc6b4d5db9cec5453b83225208b99a8404383f4c5c805f887e", kill_on_drop: false }`
[INFO] [stdout] 68642dd25ce4e6bc6b4d5db9cec5453b83225208b99a8404383f4c5c805f887e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 860860831a11b60f9d1d5f90bcf1a00af1cc1cde1e8af79afa0d78a8d6112fbe
[INFO] running `Command { std: "docker" "start" "-a" "860860831a11b60f9d1d5f90bcf1a00af1cc1cde1e8af79afa0d78a8d6112fbe", kill_on_drop: false }`
[INFO] [stderr]    Compiling dynamics-cli v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `relationship_renderer::*`
[INFO] [stdout]   --> src/commands/migration/ui/components/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use relationship_renderer::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FieldDisplayInfo`
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchical_app.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |             FieldDisplayInfo, FieldMapping, MappingSource, MatchState,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FieldMapping`, `MappingSource`, and `MatchState`
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchical_app.rs:52:76
[INFO] [stdout]    |
[INFO] [stdout] 52 |         use crate::commands::migration::ui::components::{FieldDisplayInfo, FieldMapping, MappingSource, MatchState};
[INFO] [stdout]    |                                                                            ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fields_app::FieldNode`
[INFO] [stdout]  --> src/commands/migration/ui/screens/comparison_apps/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use fields_app::FieldNode;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ComparisonData`, `DataConverter`, `FieldsConverter`, `FormsConverter`, `RelationshipsConverter`, and `ViewsConverter`
[INFO] [stdout]  --> src/commands/migration/ui/screens/comparison_apps/mod.rs:7:43
[INFO] [stdout]   |
[INFO] [stdout] 7 | ...{ComparisonApp, ComparisonData, DataConverter, FieldsConverter, ViewsConverter, FormsConverter, RelationshipsConverter};
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name
[INFO] [stdout]   --> src/commands/migration/ui/app.rs:64:30
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 let area = f.size();
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area`
[INFO] [stdout]    --> src/commands/migration/ui/components/list_component.rs:171:51
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn handle_mouse(&self, event: MouseEvent, area: Rect) -> ListAction {
[INFO] [stdout]     |                                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_area`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_nodes`
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:561:35
[INFO] [stdout]     |
[INFO] [stdout] 561 |     pub fn detect_simple_mappings(source_nodes: &mut [ViewNode], target_nodes: &[ViewNode]) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_nodes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_nodes`
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:561:66
[INFO] [stdout]     |
[INFO] [stdout] 561 |     pub fn detect_simple_mappings(source_nodes: &mut [ViewNode], target_nodes: &[ViewNode]) {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_nodes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1090:9
[INFO] [stdout]      |
[INFO] [stdout] 1090 |         source_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1091:9
[INFO] [stdout]      |
[INFO] [stdout] 1091 |         target_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1110:9
[INFO] [stdout]      |
[INFO] [stdout] 1110 |         source_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1111:9
[INFO] [stdout]      |
[INFO] [stdout] 1111 |         target_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1130:9
[INFO] [stdout]      |
[INFO] [stdout] 1130 |         source_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1131:9
[INFO] [stdout]      |
[INFO] [stdout] 1131 |         target_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]   --> src/commands/migration/ui/app.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct MigrationUI {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 20 |     navigation: NavigationManager,
[INFO] [stdout] 21 |     config: Config,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `all_completed` is never used
[INFO] [stdout]   --> src/commands/migration/ui/components/fetch_progress.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl FetchProgress {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn all_completed(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `TypeMismatch` is never constructed
[INFO] [stdout]   --> src/commands/migration/ui/components/field_renderer.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum MatchState {
[INFO] [stdout]    |          ---------- variant in this enum
[INFO] [stdout] 20 |     FullMatch,    // Green - field and type match
[INFO] [stdout] 21 |     TypeMismatch, // Yellow - field matches but type differs
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MatchState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Relationship` is never constructed
[INFO] [stdout]   --> src/commands/migration/ui/components/field_renderer.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum FieldType {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 47 |     Relationship {
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FieldType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new_relationship` and `relationship_with_mapping` are never used
[INFO] [stdout]   --> src/commands/migration/ui/components/field_renderer.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl FieldDisplayInfo {
[INFO] [stdout]    | --------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn new_relationship(field: FieldInfo, target_entity: String, relationship_type: RelationshipType) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn relationship_with_mapping(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `render_field_string` is never used
[INFO] [stdout]    --> src/commands/migration/ui/components/field_renderer.rs:217:12
[INFO] [stdout]     |
[INFO] [stdout] 124 | impl FieldRenderer {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 217 |     pub fn render_field_string(field_info: &FieldDisplayInfo) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `style` is never read
[INFO] [stdout]   --> src/commands/migration/ui/components/footer_component.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct FooterComponent {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 10 |     actions: Vec<FooterAction>,
[INFO] [stdout] 11 |     style: FooterStyle,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Compact` and `Help` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/components/footer_component.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub enum FooterStyle {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 22 |     Standard,
[INFO] [stdout] 23 |     Compact,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 24 |     Help,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FooterStyle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_action`, `add_navigation_actions`, `add_quit_action`, and `with_style` are never used
[INFO] [stdout]   --> src/commands/migration/ui/components/footer_component.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl FooterComponent {
[INFO] [stdout]    | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn add_action(mut self, key: &str, description: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn add_navigation_actions(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn add_quit_action(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn with_style(mut self, style: FooterStyle) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `level` is never read
[INFO] [stdout]   --> src/commands/migration/ui/components/hierarchy_tree.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct TreeNode {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub level: usize,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TreeNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_arc` and `from_arc_with_children` are never used
[INFO] [stdout]   --> src/commands/migration/ui/components/hierarchy_tree.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl TreeNode {
[INFO] [stdout]    | ------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn from_arc(data: Arc<dyn HierarchyNode>, level: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn from_arc_with_children(data: Arc<dyn HierarchyNode>, children: Vec<TreeNode>, level: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `update_node_expansion`, `get_flattened_count`, `flatten_node_recursive`, `get_selected`, and `render_node_line` are never used
[INFO] [stdout]    --> src/commands/migration/ui/components/hierarchy_tree.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl HierarchyTree {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 172 |     fn update_node_expansion(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     pub fn get_flattened_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 233 |     fn flatten_node_recursive(&mut self, node: &TreeNode, level: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 284 |     pub fn get_selected(&mut self) -> Option<&TreeNode> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub fn render_node_line(node: &TreeNode, level: usize) -> Line<'static> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `create_new_label`, `enable_scroll`, and `highlight_selected` are never read
[INFO] [stdout]   --> src/commands/migration/ui/components/list_component.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct ListConfig {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub create_new_label: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 28 |     pub enable_mouse: bool,
[INFO] [stdout] 29 |     pub enable_scroll: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 30 |     pub show_indices: bool,
[INFO] [stdout] 31 |     pub highlight_selected: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_title`, `with_create_new`, `with_mouse_support`, `with_indices`, `selected`, and `update_items` are never used
[INFO] [stdout]    --> src/commands/migration/ui/components/list_component.rs:72:12
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl<T: Display> ListComponent<T> {
[INFO] [stdout]     | --------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  72 |     pub fn with_title(mut self, title: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_create_new(mut self, key: char, label: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn with_mouse_support(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn with_indices(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn selected(&self) -> Option<usize> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub fn update_items(&mut self, items: Vec<T>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Close`, `Submit`, `Cancel`, and `Custom` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/components/modal_component.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub enum ModalContentAction {
[INFO] [stdout]    |          ------------------ variants in this enum
[INFO] [stdout] 58 |     Close,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 59 |     Submit(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 60 |     Cancel,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 61 |     Custom(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ModalContentAction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_config`, `non_closable`, `content`, and `content_mut` are never used
[INFO] [stdout]    --> src/commands/migration/ui/components/modal_component.rs:78:12
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl<T: ModalContent> ModalComponent<T> {
[INFO] [stdout]     | --------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub fn with_config(mut self, config: ModalConfig) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn non_closable(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub fn content(&self) -> &T {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     pub fn content_mut(&mut self) -> &mut T {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_mapping` is never used
[INFO] [stdout]   --> src/commands/migration/ui/components/relationship_renderer.rs:89:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl RelationshipField {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 89 |     pub fn with_mapping(mut self, mapping_target: String) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_field_node` is never used
[INFO] [stdout]    --> src/commands/migration/ui/components/relationship_renderer.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl RelationshipGroup {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn new_field_node(field: RelationshipField) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `render_relationship_field` and `filter_out_relationships` are never used
[INFO] [stdout]    --> src/commands/migration/ui/components/relationship_renderer.rs:264:12
[INFO] [stdout]     |
[INFO] [stdout] 262 | impl RelationshipRenderer {
[INFO] [stdout]     | ------------------------- associated functions in this implementation
[INFO] [stdout] 263 |     /// Create a styled line for a relationship field
[INFO] [stdout] 264 |     pub fn render_relationship_field(field: &RelationshipField) -> Line<'static> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 303 |     pub fn filter_out_relationships(fields: &[FieldInfo]) -> Vec<FieldInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `hover_style` is never read
[INFO] [stdout]  --> src/commands/migration/ui/mouse.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct MouseZone {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 7 |     pub hover_style: Option<Style>,
[INFO] [stdout]   |         ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `MouseZone` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_hover_style` and `handle_scroll` are never used
[INFO] [stdout]   --> src/commands/migration/ui/mouse.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl MouseHandler {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn get_hover_style(&self, area: Rect) -> Option<Style> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub fn handle_scroll(&self, x: u16, y: u16, delta: i16) -> Option<MouseAction> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_current_screen` and `get_current_screen_mut` are never used
[INFO] [stdout]   --> src/commands/migration/ui/navigation.rs:94:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl NavigationManager {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 94 |     pub fn get_current_screen(&self) -> &dyn Screen {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn get_current_screen_mut(&mut self) -> &mut dyn Screen {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_title` is never used
[INFO] [stdout]  --> src/commands/migration/ui/screens/base_screen.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait Screen {
[INFO] [stdout]   |           ------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 9 |     fn get_title(&self) -> Option<String> {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Replace` is never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/base_screen.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub enum ScreenResult {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 27 |     Replace(Box<dyn Screen>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ScreenBuilder` is never used
[INFO] [stdout]   --> src/commands/migration/ui/screens/base_screen.rs:31:11
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub trait ScreenBuilder {
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `FocusChanged`, `Exit`, and `Back` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/app_trait.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum AppResult {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout]  9 |     Continue,
[INFO] [stdout] 10 |     FocusChanged(FocusedSide),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 11 |     Exit,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 12 |     Back,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `handle_keyboard`, `get_source_count`, `get_target_count`, `get_title`, `on_enter`, and `on_exit` are never used
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/app_trait.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub trait ComparisonApp: Send {
[INFO] [stdout]    |           ------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn handle_keyboard(&mut self, key: KeyCode) -> AppResult;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn get_source_count(&self) -> usize;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn get_target_count(&self) -> usize;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn get_title(&self) -> String;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     fn on_enter(&mut self) {}
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn on_exit(&mut self) {}
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source_entity` and `target_entity` are never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/app_trait.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ComparisonData {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub source_entity: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 70 |     pub target_entity: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ComparisonData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `switch` is never used
[INFO] [stdout]  --> src/commands/migration/ui/screens/comparison_apps/common/focus_manager.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl FocusedSide {
[INFO] [stdout]   | ---------------- method in this implementation
[INFO] [stdout] 8 |     pub fn switch(&self) -> Self {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FocusManager` is never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/focus_manager.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct FocusManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_focused_side`, `set_focused_side`, `switch_focus`, `is_source_focused`, and `is_target_focused` are never used
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/focus_manager.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl FocusManager {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 22 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn get_focused_side(&self) -> FocusedSide {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn set_focused_side(&mut self, side: FocusedSide) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn switch_focus(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn is_source_focused(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn is_target_focused(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Exact`, `Manual`, and `Prefix` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum MappingType {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 14 |     Exact,    // ✅ Perfect match
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 15 |     Manual,   // 🔧 User-defined mapping
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 16 |     Prefix,   // 🎯 Prefix-based match
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MappingType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `view_info` is never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     View {
[INFO] [stdout]    |     ---- field in this variant
[INFO] [stdout] 40 |         name: String,
[INFO] [stdout] 41 |         view_info: ViewInfo,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `details` is never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     ViewItem {
[INFO] [stdout]    |     -------- field in this variant
[INFO] [stdout] ...
[INFO] [stdout] 52 |         details: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Filters` and `SortOrders` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum ViewComponentType {
[INFO] [stdout]    |          ----------------- variants in this enum
[INFO] [stdout] 60 |     Columns,
[INFO] [stdout] 61 |     Filters,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 62 |     SortOrders,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewComponentType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Filter` and `SortOrder` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub enum ViewItemType {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 85 |     Column,
[INFO] [stdout] 86 |     Filter,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 87 |     SortOrder,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewItemType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `icon` is never used
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 90 | impl ViewItemType {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] 91 |     pub fn icon(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `form_info` is never read
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |     Form {
[INFO] [stdout]     |     ---- field in this variant
[INFO] [stdout] 109 |         name: String,
[INFO] [stdout] 110 |         form_info: FormInfo,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FormNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tab_info` is never read
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |     Tab {
[INFO] [stdout]     |     --- field in this variant
[INFO] [stdout] 114 |         name: String,
[INFO] [stdout] 115 |         tab_info: FormTab,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FormNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `section_info` is never read
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 120 |     Section {
[INFO] [stdout]     |     ------- field in this variant
[INFO] [stdout] 121 |         name: String,
[INFO] [stdout] 122 |         section_info: FormSection,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FormNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `detect_simple_mappings` is never used
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:561:12
[INFO] [stdout]     |
[INFO] [stdout] 407 | impl HierarchyBuilder {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 561 |     pub fn detect_simple_mappings(source_nodes: &mut [ViewNode], target_nodes: &[ViewNode]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `show_comparison_placeholder` is never used
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_select_screen.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout]  43 | impl ComparisonSelectScreen {
[INFO] [stdout]     | --------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn show_comparison_placeholder(&mut self, comparison_name: &str) -> ScreenResult {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/loading_screen.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 |     Failed(Vec<String>),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LoadingScreenState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 -     Failed(Vec<String>),
[INFO] [stdout] 34 +     Failed(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source`, `target`, `match_score`, and `is_manual` are never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Match<T> {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 47 |     pub source: T,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 48 |     pub target: Option<T>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 49 |     pub match_score: f64,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 50 |     pub is_manual: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Match` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `field_matches`, `view_matches`, and `form_matches` are never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub struct ComparisonData {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub field_matches: Vec<Match<FieldInfo>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub view_matches: Vec<Match<ViewInfo>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 76 |     pub form_matches: Vec<Match<FormInfo>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ComparisonData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `hide_matched` is never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct SharedState {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub hide_matched: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SharedState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub enum LoadingState {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 88 |     NotStarted,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 89 |     LoadingSourceFields,
[INFO] [stdout] 90 |     LoadingTargetFields,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 91 |     LoadingSourceViews,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 92 |     LoadingTargetViews,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 93 |     LoadingSourceForms,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 94 |     LoadingTargetForms,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 95 |     ComputingMatches,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 96 |     Complete,
[INFO] [stdout] 97 |     Error(String),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LoadingState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `has_field_match`, `get_source_field_mapping`, and `get_target_field_mapping` are never used
[INFO] [stdout]    --> src/commands/migration/ui/screens/unified_compare_screen.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl UnifiedCompareScreen {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] 136 |     pub fn new(config: Config, comparison: SavedComparison) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 535 |     fn has_field_match(&self, field_name: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 569 |     fn get_source_field_mapping(&self, field: &FieldInfo) -> Option<FieldMapping> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 607 |     fn get_target_field_mapping(&self, field: &FieldInfo) -> Option<FieldMapping> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `active`, `warning`, `breadcrumb`, and `breadcrumb_separator` are never read
[INFO] [stdout]   --> src/commands/migration/ui/styles.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  3 | pub struct AppStyles {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  8 |     pub active: Style,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub warning: Style,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 13 |     pub info: Style,
[INFO] [stdout] 14 |     pub breadcrumb: Style,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 15 |     pub breadcrumb_separator: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/config.rs:248:12
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl Config {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 248 |     pub fn add_field_mapping(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub fn get_field_mappings(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 |     pub fn remove_field_mapping(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 321 |     pub fn add_prefix_mapping(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 |     pub fn get_prefix_mappings(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 354 |     pub fn remove_prefix_mapping(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |     pub fn list_prefix_mappings(&self) -> &HashMap<String, HashMap<String, String>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |     pub fn save_migration(&mut self, migration: SavedMigration) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn get_migration(&self, name: &str) -> Option<&SavedMigration> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 408 |     pub fn list_migrations(&self) -> Vec<&SavedMigration> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 420 |     pub fn remove_migration(&mut self, name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 430 |     pub fn touch_migration(&mut self, name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 440 |     pub fn add_comparison_to_migration(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 459 |     pub fn remove_comparison_from_migration(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_custom` is never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct FieldInfo {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub is_custom: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FieldInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `entity_name`, `is_custom`, and `fetch_xml` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct ViewInfo {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 17 |     pub name: String,
[INFO] [stdout] 18 |     pub entity_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 19 |     pub view_type: String,
[INFO] [stdout] 20 |     pub is_custom: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 21 |     pub columns: Vec<ViewColumn>,
[INFO] [stdout] 22 |     pub fetch_xml: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `width` is never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct ViewColumn {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 27 |     pub name: String,
[INFO] [stdout] 28 |     pub width: Option<u32>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewColumn` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_custom` and `state` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct FormInfo {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub is_custom: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 38 |     pub state: i32, // 0 = Inactive, 1 = Active
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `entity_name` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct FormStructure {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 45 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 46 |     pub entity_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormStructure` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `visible`, `expanded`, and `order` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct FormTab {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 52 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 53 |     pub label: String,
[INFO] [stdout] 54 |     pub visible: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 55 |     pub expanded: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 56 |     pub order: i32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormTab` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `visible`, `columns`, and `order` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct FormSection {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 62 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 63 |     pub label: String,
[INFO] [stdout] 64 |     pub visible: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 65 |     pub columns: i32, // Number of columns in the section
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 66 |     pub order: i32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormSection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `label`, `visible`, `readonly`, `row`, and `column` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct FormField {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 72 |     pub logical_name: String,
[INFO] [stdout] 73 |     pub label: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 74 |     pub visible: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 75 |     pub required_level: String, // None, ApplicationRequired, SystemRequired
[INFO] [stdout] 76 |     pub readonly: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 77 |     pub row: i32,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 78 |     pub column: i32,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormField` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ViewStructure` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:270:12
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub struct ViewStructure {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ViewColumnDetail` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:282:12
[INFO] [stdout]     |
[INFO] [stdout] 282 | pub struct ViewColumnDetail {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ViewFilter` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:292:12
[INFO] [stdout]     |
[INFO] [stdout] 292 | pub struct ViewFilter {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ViewSortOrder` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:300:12
[INFO] [stdout]     |
[INFO] [stdout] 300 | pub struct ViewSortOrder {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FetchXmlDetails` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:307:12
[INFO] [stdout]     |
[INFO] [stdout] 307 | pub struct FetchXmlDetails {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_view_structure` is never used
[INFO] [stdout]    --> src/dynamics/metadata.rs:317:8
[INFO] [stdout]     |
[INFO] [stdout] 317 | pub fn parse_view_structure(view_info: &ViewInfo) -> Result<ViewStructure> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/commands/migration/ui/components/footer_component.rs:103:26
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn build_footer_text(&self) -> Text {
[INFO] [stdout]     |                          ^^^^^     ^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn build_footer_text(&self) -> Text<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/commands/migration/ui/components/list_component.rs:299:25
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn build_list_items(&self) -> Vec<ListItem> {
[INFO] [stdout]     |                         ^^^^^         ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn build_list_items(&self) -> Vec<ListItem<'_>> {
[INFO] [stdout]     |                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `relationship_renderer::*`
[INFO] [stdout]   --> src/commands/migration/ui/components/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use relationship_renderer::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `FieldDisplayInfo`
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchical_app.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |             FieldDisplayInfo, FieldMapping, MappingSource, MatchState,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `FieldMapping`, `MappingSource`, and `MatchState`
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchical_app.rs:52:76
[INFO] [stdout]    |
[INFO] [stdout] 52 |         use crate::commands::migration::ui::components::{FieldDisplayInfo, FieldMapping, MappingSource, MatchState};
[INFO] [stdout]    |                                                                            ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `fields_app::FieldNode`
[INFO] [stdout]  --> src/commands/migration/ui/screens/comparison_apps/mod.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use fields_app::FieldNode;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ComparisonData`, `DataConverter`, `FieldsConverter`, `FormsConverter`, `RelationshipsConverter`, and `ViewsConverter`
[INFO] [stdout]  --> src/commands/migration/ui/screens/comparison_apps/mod.rs:7:43
[INFO] [stdout]   |
[INFO] [stdout] 7 | ...{ComparisonApp, ComparisonData, DataConverter, FieldsConverter, ViewsConverter, FormsConverter, RelationshipsConverter};
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name
[INFO] [stdout]   --> src/commands/migration/ui/app.rs:64:30
[INFO] [stdout]    |
[INFO] [stdout] 64 |                 let area = f.size();
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area`
[INFO] [stdout]    --> src/commands/migration/ui/components/list_component.rs:171:51
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn handle_mouse(&self, event: MouseEvent, area: Rect) -> ListAction {
[INFO] [stdout]     |                                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_area`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_nodes`
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:561:35
[INFO] [stdout]     |
[INFO] [stdout] 561 |     pub fn detect_simple_mappings(source_nodes: &mut [ViewNode], target_nodes: &[ViewNode]) {
[INFO] [stdout]     |                                   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_nodes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_nodes`
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:561:66
[INFO] [stdout]     |
[INFO] [stdout] 561 |     pub fn detect_simple_mappings(source_nodes: &mut [ViewNode], target_nodes: &[ViewNode]) {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_nodes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1090:9
[INFO] [stdout]      |
[INFO] [stdout] 1090 |         source_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1091:9
[INFO] [stdout]      |
[INFO] [stdout] 1091 |         target_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1110:9
[INFO] [stdout]      |
[INFO] [stdout] 1110 |         source_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1111:9
[INFO] [stdout]      |
[INFO] [stdout] 1111 |         target_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `source_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1130:9
[INFO] [stdout]      |
[INFO] [stdout] 1130 |         source_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target_border_style`
[INFO] [stdout]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1131:9
[INFO] [stdout]      |
[INFO] [stdout] 1131 |         target_border_style: ratatui::style::Style,
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_border_style`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]   --> src/commands/migration/ui/app.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct MigrationUI {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 20 |     navigation: NavigationManager,
[INFO] [stdout] 21 |     config: Config,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `all_completed` is never used
[INFO] [stdout]   --> src/commands/migration/ui/components/fetch_progress.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl FetchProgress {
[INFO] [stdout]    | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn all_completed(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `TypeMismatch` is never constructed
[INFO] [stdout]   --> src/commands/migration/ui/components/field_renderer.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum MatchState {
[INFO] [stdout]    |          ---------- variant in this enum
[INFO] [stdout] 20 |     FullMatch,    // Green - field and type match
[INFO] [stdout] 21 |     TypeMismatch, // Yellow - field matches but type differs
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MatchState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Relationship` is never constructed
[INFO] [stdout]   --> src/commands/migration/ui/components/field_renderer.rs:47:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub enum FieldType {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 47 |     Relationship {
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FieldType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new_relationship` and `relationship_with_mapping` are never used
[INFO] [stdout]   --> src/commands/migration/ui/components/field_renderer.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl FieldDisplayInfo {
[INFO] [stdout]    | --------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn new_relationship(field: FieldInfo, target_entity: String, relationship_type: RelationshipType) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 95 |     pub fn relationship_with_mapping(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `style` is never read
[INFO] [stdout]   --> src/commands/migration/ui/components/footer_component.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct FooterComponent {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 10 |     actions: Vec<FooterAction>,
[INFO] [stdout] 11 |     style: FooterStyle,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Compact` and `Help` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/components/footer_component.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub enum FooterStyle {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 22 |     Standard,
[INFO] [stdout] 23 |     Compact,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 24 |     Help,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FooterStyle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `add_action`, `add_navigation_actions`, `add_quit_action`, and `with_style` are never used
[INFO] [stdout]   --> src/commands/migration/ui/components/footer_component.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl FooterComponent {
[INFO] [stdout]    | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn add_action(mut self, key: &str, description: &str) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn add_navigation_actions(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn add_quit_action(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub fn with_style(mut self, style: FooterStyle) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `level` is never read
[INFO] [stdout]   --> src/commands/migration/ui/components/hierarchy_tree.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct TreeNode {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub level: usize,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TreeNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_arc` and `from_arc_with_children` are never used
[INFO] [stdout]   --> src/commands/migration/ui/components/hierarchy_tree.rs:82:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl TreeNode {
[INFO] [stdout]    | ------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn from_arc(data: Arc<dyn HierarchyNode>, level: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 91 |     pub fn from_arc_with_children(data: Arc<dyn HierarchyNode>, children: Vec<TreeNode>, level: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `update_node_expansion`, `get_flattened_count`, `flatten_node_recursive`, `get_selected`, and `render_node_line` are never used
[INFO] [stdout]    --> src/commands/migration/ui/components/hierarchy_tree.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 126 | impl HierarchyTree {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 172 |     fn update_node_expansion(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |     pub fn get_flattened_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 233 |     fn flatten_node_recursive(&mut self, node: &TreeNode, level: usize) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 284 |     pub fn get_selected(&mut self) -> Option<&TreeNode> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     pub fn render_node_line(node: &TreeNode, level: usize) -> Line<'static> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `create_new_label`, `enable_scroll`, and `highlight_selected` are never read
[INFO] [stdout]   --> src/commands/migration/ui/components/list_component.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct ListConfig {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub create_new_label: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 28 |     pub enable_mouse: bool,
[INFO] [stdout] 29 |     pub enable_scroll: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 30 |     pub show_indices: bool,
[INFO] [stdout] 31 |     pub highlight_selected: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_title`, `with_create_new`, `with_mouse_support`, `with_indices`, `selected`, and `update_items` are never used
[INFO] [stdout]    --> src/commands/migration/ui/components/list_component.rs:72:12
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl<T: Display> ListComponent<T> {
[INFO] [stdout]     | --------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  72 |     pub fn with_title(mut self, title: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_create_new(mut self, key: char, label: String) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn with_mouse_support(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn with_indices(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn selected(&self) -> Option<usize> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub fn update_items(&mut self, items: Vec<T>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Close`, `Submit`, `Cancel`, and `Custom` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/components/modal_component.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub enum ModalContentAction {
[INFO] [stdout]    |          ------------------ variants in this enum
[INFO] [stdout] 58 |     Close,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 59 |     Submit(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 60 |     Cancel,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 61 |     Custom(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ModalContentAction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_config`, `non_closable`, `content`, and `content_mut` are never used
[INFO] [stdout]    --> src/commands/migration/ui/components/modal_component.rs:78:12
[INFO] [stdout]     |
[INFO] [stdout]  65 | impl<T: ModalContent> ModalComponent<T> {
[INFO] [stdout]     | --------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub fn with_config(mut self, config: ModalConfig) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  89 |     pub fn non_closable(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub fn content(&self) -> &T {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     pub fn content_mut(&mut self) -> &mut T {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_mapping` is never used
[INFO] [stdout]   --> src/commands/migration/ui/components/relationship_renderer.rs:89:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | impl RelationshipField {
[INFO] [stdout]    | ---------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 89 |     pub fn with_mapping(mut self, mapping_target: String) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_field_node` is never used
[INFO] [stdout]    --> src/commands/migration/ui/components/relationship_renderer.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl RelationshipGroup {
[INFO] [stdout]     | ---------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn new_field_node(field: RelationshipField) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `render_relationship_field` is never used
[INFO] [stdout]    --> src/commands/migration/ui/components/relationship_renderer.rs:264:12
[INFO] [stdout]     |
[INFO] [stdout] 262 | impl RelationshipRenderer {
[INFO] [stdout]     | ------------------------- associated function in this implementation
[INFO] [stdout] 263 |     /// Create a styled line for a relationship field
[INFO] [stdout] 264 |     pub fn render_relationship_field(field: &RelationshipField) -> Line<'static> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `hover_style` is never read
[INFO] [stdout]  --> src/commands/migration/ui/mouse.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct MouseZone {
[INFO] [stdout]   |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 7 |     pub hover_style: Option<Style>,
[INFO] [stdout]   |         ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `MouseZone` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_hover_style` and `handle_scroll` are never used
[INFO] [stdout]   --> src/commands/migration/ui/mouse.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl MouseHandler {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn get_hover_style(&self, area: Rect) -> Option<Style> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     pub fn handle_scroll(&self, x: u16, y: u16, delta: i16) -> Option<MouseAction> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_current_screen` and `get_current_screen_mut` are never used
[INFO] [stdout]   --> src/commands/migration/ui/navigation.rs:94:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl NavigationManager {
[INFO] [stdout]    | ---------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 94 |     pub fn get_current_screen(&self) -> &dyn Screen {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     pub fn get_current_screen_mut(&mut self) -> &mut dyn Screen {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_title` is never used
[INFO] [stdout]  --> src/commands/migration/ui/screens/base_screen.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait Screen {
[INFO] [stdout]   |           ------ method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 9 |     fn get_title(&self) -> Option<String> {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Replace` is never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/base_screen.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub enum ScreenResult {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 27 |     Replace(Box<dyn Screen>),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ScreenBuilder` is never used
[INFO] [stdout]   --> src/commands/migration/ui/screens/base_screen.rs:31:11
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub trait ScreenBuilder {
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `FocusChanged`, `Exit`, and `Back` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/app_trait.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum AppResult {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout]  9 |     Continue,
[INFO] [stdout] 10 |     FocusChanged(FocusedSide),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 11 |     Exit,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 12 |     Back,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `handle_keyboard`, `get_source_count`, `get_target_count`, `get_title`, `on_enter`, and `on_exit` are never used
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/app_trait.rs:36:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub trait ComparisonApp: Send {
[INFO] [stdout]    |           ------------- methods in this trait
[INFO] [stdout] ...
[INFO] [stdout] 36 |     fn handle_keyboard(&mut self, key: KeyCode) -> AppResult;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn get_source_count(&self) -> usize;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn get_target_count(&self) -> usize;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     fn get_title(&self) -> String;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     fn on_enter(&mut self) {}
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     fn on_exit(&mut self) {}
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source_entity` and `target_entity` are never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/app_trait.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub struct ComparisonData {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub source_entity: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 70 |     pub target_entity: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ComparisonData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `switch` is never used
[INFO] [stdout]  --> src/commands/migration/ui/screens/comparison_apps/common/focus_manager.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl FocusedSide {
[INFO] [stdout]   | ---------------- method in this implementation
[INFO] [stdout] 8 |     pub fn switch(&self) -> Self {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FocusManager` is never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/focus_manager.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct FocusManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_focused_side`, `set_focused_side`, `switch_focus`, `is_source_focused`, and `is_target_focused` are never used
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/common/focus_manager.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl FocusManager {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] 22 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn get_focused_side(&self) -> FocusedSide {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn set_focused_side(&mut self, side: FocusedSide) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn switch_focus(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn is_source_focused(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn is_target_focused(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Exact`, `Manual`, and `Prefix` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub enum MappingType {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 14 |     Exact,    // ✅ Perfect match
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 15 |     Manual,   // 🔧 User-defined mapping
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 16 |     Prefix,   // 🎯 Prefix-based match
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `MappingType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `view_info` is never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:41:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     View {
[INFO] [stdout]    |     ---- field in this variant
[INFO] [stdout] 40 |         name: String,
[INFO] [stdout] 41 |         view_info: ViewInfo,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `details` is never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     ViewItem {
[INFO] [stdout]    |     -------- field in this variant
[INFO] [stdout] ...
[INFO] [stdout] 52 |         details: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Filters` and `SortOrders` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum ViewComponentType {
[INFO] [stdout]    |          ----------------- variants in this enum
[INFO] [stdout] 60 |     Columns,
[INFO] [stdout] 61 |     Filters,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 62 |     SortOrders,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewComponentType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Filter` and `SortOrder` are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:86:5
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub enum ViewItemType {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 85 |     Column,
[INFO] [stdout] 86 |     Filter,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 87 |     SortOrder,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewItemType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `icon` is never used
[INFO] [stdout]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 90 | impl ViewItemType {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] 91 |     pub fn icon(&self) -> &'static str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `form_info` is never read
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 108 |     Form {
[INFO] [stdout]     |     ---- field in this variant
[INFO] [stdout] 109 |         name: String,
[INFO] [stdout] 110 |         form_info: FormInfo,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FormNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `tab_info` is never read
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |     Tab {
[INFO] [stdout]     |     --- field in this variant
[INFO] [stdout] 114 |         name: String,
[INFO] [stdout] 115 |         tab_info: FormTab,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FormNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `section_info` is never read
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 120 |     Section {
[INFO] [stdout]     |     ------- field in this variant
[INFO] [stdout] 121 |         name: String,
[INFO] [stdout] 122 |         section_info: FormSection,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FormNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `detect_simple_mappings` is never used
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:561:12
[INFO] [stdout]     |
[INFO] [stdout] 407 | impl HierarchyBuilder {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 561 |     pub fn detect_simple_mappings(source_nodes: &mut [ViewNode], target_nodes: &[ViewNode]) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `show_comparison_placeholder` is never used
[INFO] [stdout]    --> src/commands/migration/ui/screens/comparison_select_screen.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout]  43 | impl ComparisonSelectScreen {
[INFO] [stdout]     | --------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 109 |     fn show_comparison_placeholder(&mut self, comparison_name: &str) -> ScreenResult {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/loading_screen.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 |     Failed(Vec<String>),
[INFO] [stdout]    |     ------ ^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LoadingScreenState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 34 -     Failed(Vec<String>),
[INFO] [stdout] 34 +     Failed(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `source`, `target`, `match_score`, and `is_manual` are never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Match<T> {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 47 |     pub source: T,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 48 |     pub target: Option<T>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 49 |     pub match_score: f64,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 50 |     pub is_manual: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Match` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `field_matches`, `view_matches`, and `form_matches` are never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub struct ComparisonData {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub field_matches: Vec<Match<FieldInfo>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub view_matches: Vec<Match<ViewInfo>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 76 |     pub form_matches: Vec<Match<FormInfo>>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ComparisonData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `hide_matched` is never read
[INFO] [stdout]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct SharedState {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 83 |     pub hide_matched: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SharedState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:88:5
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub enum LoadingState {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 88 |     NotStarted,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 89 |     LoadingSourceFields,
[INFO] [stdout] 90 |     LoadingTargetFields,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 91 |     LoadingSourceViews,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 92 |     LoadingTargetViews,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 93 |     LoadingSourceForms,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 94 |     LoadingTargetForms,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 95 |     ComputingMatches,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 96 |     Complete,
[INFO] [stdout] 97 |     Error(String),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LoadingState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `has_field_match`, `get_source_field_mapping`, and `get_target_field_mapping` are never used
[INFO] [stdout]    --> src/commands/migration/ui/screens/unified_compare_screen.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl UnifiedCompareScreen {
[INFO] [stdout]     | ------------------------- associated items in this implementation
[INFO] [stdout] 136 |     pub fn new(config: Config, comparison: SavedComparison) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 535 |     fn has_field_match(&self, field_name: &str) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 569 |     fn get_source_field_mapping(&self, field: &FieldInfo) -> Option<FieldMapping> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 607 |     fn get_target_field_mapping(&self, field: &FieldInfo) -> Option<FieldMapping> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `active`, `warning`, `breadcrumb`, and `breadcrumb_separator` are never read
[INFO] [stdout]   --> src/commands/migration/ui/styles.rs:8:9
[INFO] [stdout]    |
[INFO] [stdout]  3 | pub struct AppStyles {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  8 |     pub active: Style,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub warning: Style,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 13 |     pub info: Style,
[INFO] [stdout] 14 |     pub breadcrumb: Style,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 15 |     pub breadcrumb_separator: Style,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/config.rs:248:12
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl Config {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 248 |     pub fn add_field_mapping(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 271 |     pub fn get_field_mappings(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 281 |     pub fn remove_field_mapping(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 321 |     pub fn add_prefix_mapping(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 344 |     pub fn get_prefix_mappings(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 354 |     pub fn remove_prefix_mapping(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |     pub fn list_prefix_mappings(&self) -> &HashMap<String, HashMap<String, String>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 396 |     pub fn save_migration(&mut self, migration: SavedMigration) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |     pub fn get_migration(&self, name: &str) -> Option<&SavedMigration> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 408 |     pub fn list_migrations(&self) -> Vec<&SavedMigration> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 420 |     pub fn remove_migration(&mut self, name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 430 |     pub fn touch_migration(&mut self, name: &str) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 440 |     pub fn add_comparison_to_migration(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 459 |     pub fn remove_comparison_from_migration(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_custom` is never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct FieldInfo {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 12 |     pub is_custom: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FieldInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `entity_name`, `is_custom`, and `fetch_xml` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct ViewInfo {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 17 |     pub name: String,
[INFO] [stdout] 18 |     pub entity_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 19 |     pub view_type: String,
[INFO] [stdout] 20 |     pub is_custom: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 21 |     pub columns: Vec<ViewColumn>,
[INFO] [stdout] 22 |     pub fetch_xml: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `width` is never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct ViewColumn {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] 27 |     pub name: String,
[INFO] [stdout] 28 |     pub width: Option<u32>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ViewColumn` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_custom` and `state` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct FormInfo {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub is_custom: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 38 |     pub state: i32, // 0 = Inactive, 1 = Active
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `entity_name` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct FormStructure {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 45 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 46 |     pub entity_name: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormStructure` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `visible`, `expanded`, and `order` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct FormTab {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 52 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 53 |     pub label: String,
[INFO] [stdout] 54 |     pub visible: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 55 |     pub expanded: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 56 |     pub order: i32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormTab` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `visible`, `columns`, and `order` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct FormSection {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] 62 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 63 |     pub label: String,
[INFO] [stdout] 64 |     pub visible: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 65 |     pub columns: i32, // Number of columns in the section
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 66 |     pub order: i32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormSection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `label`, `visible`, `readonly`, `row`, and `column` are never read
[INFO] [stdout]   --> src/dynamics/metadata.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct FormField {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 72 |     pub logical_name: String,
[INFO] [stdout] 73 |     pub label: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 74 |     pub visible: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 75 |     pub required_level: String, // None, ApplicationRequired, SystemRequired
[INFO] [stdout] 76 |     pub readonly: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 77 |     pub row: i32,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 78 |     pub column: i32,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FormField` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ViewStructure` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:270:12
[INFO] [stdout]     |
[INFO] [stdout] 270 | pub struct ViewStructure {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ViewColumnDetail` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:282:12
[INFO] [stdout]     |
[INFO] [stdout] 282 | pub struct ViewColumnDetail {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ViewFilter` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:292:12
[INFO] [stdout]     |
[INFO] [stdout] 292 | pub struct ViewFilter {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ViewSortOrder` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:300:12
[INFO] [stdout]     |
[INFO] [stdout] 300 | pub struct ViewSortOrder {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FetchXmlDetails` is never constructed
[INFO] [stdout]    --> src/dynamics/metadata.rs:307:12
[INFO] [stdout]     |
[INFO] [stdout] 307 | pub struct FetchXmlDetails {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_view_structure` is never used
[INFO] [stdout]    --> src/dynamics/metadata.rs:317:8
[INFO] [stdout]     |
[INFO] [stdout] 317 | pub fn parse_view_structure(view_info: &ViewInfo) -> Result<ViewStructure> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/commands/migration/ui/components/footer_component.rs:103:26
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn build_footer_text(&self) -> Text {
[INFO] [stdout]     |                          ^^^^^     ^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                          |
[INFO] [stdout]     |                          the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 103 |     fn build_footer_text(&self) -> Text<'_> {
[INFO] [stdout]     |                                        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/commands/migration/ui/components/list_component.rs:299:25
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn build_list_items(&self) -> Vec<ListItem> {
[INFO] [stdout]     |                         ^^^^^         ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 299 |     fn build_list_items(&self) -> Vec<ListItem<'_>> {
[INFO] [stdout]     |                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 8.63s
[INFO] running `Command { std: "docker" "inspect" "860860831a11b60f9d1d5f90bcf1a00af1cc1cde1e8af79afa0d78a8d6112fbe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "860860831a11b60f9d1d5f90bcf1a00af1cc1cde1e8af79afa0d78a8d6112fbe", kill_on_drop: false }`
[INFO] [stdout] 860860831a11b60f9d1d5f90bcf1a00af1cc1cde1e8af79afa0d78a8d6112fbe
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 36cca2c1f85beff8aae738e3cf18c609795dc9f462a2556676ebbc9332a2fbc0
[INFO] running `Command { std: "docker" "start" "-a" "36cca2c1f85beff8aae738e3cf18c609795dc9f462a2556676ebbc9332a2fbc0", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `relationship_renderer::*`
[INFO] [stderr]   --> src/commands/migration/ui/components/mod.rs:14:9
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub use relationship_renderer::*;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `FieldDisplayInfo`
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/hierarchical_app.rs:12:13
[INFO] [stderr]    |
[INFO] [stderr] 12 |             FieldDisplayInfo, FieldMapping, MappingSource, MatchState,
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `FieldMapping`, `MappingSource`, and `MatchState`
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/hierarchical_app.rs:52:76
[INFO] [stderr]    |
[INFO] [stderr] 52 |         use crate::commands::migration::ui::components::{FieldDisplayInfo, FieldMapping, MappingSource, MatchState};
[INFO] [stderr]    |                                                                            ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `fields_app::FieldNode`
[INFO] [stderr]  --> src/commands/migration/ui/screens/comparison_apps/mod.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub use fields_app::FieldNode;
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `ComparisonData`, `DataConverter`, `FieldsConverter`, `FormsConverter`, `RelationshipsConverter`, and `ViewsConverter`
[INFO] [stderr]  --> src/commands/migration/ui/screens/comparison_apps/mod.rs:7:43
[INFO] [stderr]   |
[INFO] [stderr] 7 | ...{ComparisonApp, ComparisonData, DataConverter, FieldsConverter, ViewsConverter, FormsConverter, RelationshipsConverter};
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `ratatui::Frame::<'_>::size`: use .area() as it's the more correct name
[INFO] [stderr]   --> src/commands/migration/ui/app.rs:64:30
[INFO] [stderr]    |
[INFO] [stderr] 64 |                 let area = f.size();
[INFO] [stderr]    |                              ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `area`
[INFO] [stderr]    --> src/commands/migration/ui/components/list_component.rs:171:51
[INFO] [stderr]     |
[INFO] [stderr] 171 |     pub fn handle_mouse(&self, event: MouseEvent, area: Rect) -> ListAction {
[INFO] [stderr]     |                                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_area`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `source_nodes`
[INFO] [stderr]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:561:35
[INFO] [stderr]     |
[INFO] [stderr] 561 |     pub fn detect_simple_mappings(source_nodes: &mut [ViewNode], target_nodes: &[ViewNode]) {
[INFO] [stderr]     |                                   ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_nodes`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `target_nodes`
[INFO] [stderr]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:561:66
[INFO] [stderr]     |
[INFO] [stderr] 561 |     pub fn detect_simple_mappings(source_nodes: &mut [ViewNode], target_nodes: &[ViewNode]) {
[INFO] [stderr]     |                                                                  ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_nodes`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `source_border_style`
[INFO] [stderr]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1090:9
[INFO] [stderr]      |
[INFO] [stderr] 1090 |         source_border_style: ratatui::style::Style,
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_border_style`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `target_border_style`
[INFO] [stderr]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1091:9
[INFO] [stderr]      |
[INFO] [stderr] 1091 |         target_border_style: ratatui::style::Style,
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_border_style`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `source_border_style`
[INFO] [stderr]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1110:9
[INFO] [stderr]      |
[INFO] [stderr] 1110 |         source_border_style: ratatui::style::Style,
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_border_style`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `target_border_style`
[INFO] [stderr]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1111:9
[INFO] [stderr]      |
[INFO] [stderr] 1111 |         target_border_style: ratatui::style::Style,
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_border_style`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `source_border_style`
[INFO] [stderr]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1130:9
[INFO] [stderr]      |
[INFO] [stderr] 1130 |         source_border_style: ratatui::style::Style,
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_source_border_style`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `target_border_style`
[INFO] [stderr]     --> src/commands/migration/ui/screens/unified_compare_screen.rs:1131:9
[INFO] [stderr]      |
[INFO] [stderr] 1131 |         target_border_style: ratatui::style::Style,
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_target_border_style`
[INFO] [stderr] 
[INFO] [stderr] warning: field `config` is never read
[INFO] [stderr]   --> src/commands/migration/ui/app.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub struct MigrationUI {
[INFO] [stderr]    |            ----------- field in this struct
[INFO] [stderr] 20 |     navigation: NavigationManager,
[INFO] [stderr] 21 |     config: Config,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `all_completed` is never used
[INFO] [stderr]   --> src/commands/migration/ui/components/fetch_progress.rs:40:12
[INFO] [stderr]    |
[INFO] [stderr] 19 | impl FetchProgress {
[INFO] [stderr]    | ------------------ method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 40 |     pub fn all_completed(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `TypeMismatch` is never constructed
[INFO] [stderr]   --> src/commands/migration/ui/components/field_renderer.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 19 | pub enum MatchState {
[INFO] [stderr]    |          ---------- variant in this enum
[INFO] [stderr] 20 |     FullMatch,    // Green - field and type match
[INFO] [stderr] 21 |     TypeMismatch, // Yellow - field matches but type differs
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MatchState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Relationship` is never constructed
[INFO] [stderr]   --> src/commands/migration/ui/components/field_renderer.rs:47:5
[INFO] [stderr]    |
[INFO] [stderr] 43 | pub enum FieldType {
[INFO] [stderr]    |          --------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 47 |     Relationship {
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FieldType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `new_relationship` and `relationship_with_mapping` are never used
[INFO] [stderr]   --> src/commands/migration/ui/components/field_renderer.rs:82:12
[INFO] [stderr]    |
[INFO] [stderr] 61 | impl FieldDisplayInfo {
[INFO] [stderr]    | --------------------- associated functions in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 82 |     pub fn new_relationship(field: FieldInfo, target_entity: String, relationship_type: RelationshipType) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 95 |     pub fn relationship_with_mapping(
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `render_field_string` is never used
[INFO] [stderr]    --> src/commands/migration/ui/components/field_renderer.rs:217:12
[INFO] [stderr]     |
[INFO] [stderr] 124 | impl FieldRenderer {
[INFO] [stderr]     | ------------------ associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 217 |     pub fn render_field_string(field_info: &FieldDisplayInfo) -> String {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `style` is never read
[INFO] [stderr]   --> src/commands/migration/ui/components/footer_component.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr]  9 | pub struct FooterComponent {
[INFO] [stderr]    |            --------------- field in this struct
[INFO] [stderr] 10 |     actions: Vec<FooterAction>,
[INFO] [stderr] 11 |     style: FooterStyle,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Compact` and `Help` are never constructed
[INFO] [stderr]   --> src/commands/migration/ui/components/footer_component.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub enum FooterStyle {
[INFO] [stderr]    |          ----------- variants in this enum
[INFO] [stderr] 22 |     Standard,
[INFO] [stderr] 23 |     Compact,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 24 |     Help,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FooterStyle` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `add_action`, `add_navigation_actions`, `add_quit_action`, and `with_style` are never used
[INFO] [stderr]   --> src/commands/migration/ui/components/footer_component.rs:35:12
[INFO] [stderr]    |
[INFO] [stderr] 27 | impl FooterComponent {
[INFO] [stderr]    | -------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 35 |     pub fn add_action(mut self, key: &str, description: &str) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 53 |     pub fn add_navigation_actions(mut self) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 74 |     pub fn add_quit_action(mut self) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 83 |     pub fn with_style(mut self, style: FooterStyle) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `level` is never read
[INFO] [stderr]   --> src/commands/migration/ui/components/hierarchy_tree.rs:60:9
[INFO] [stderr]    |
[INFO] [stderr] 56 | pub struct TreeNode {
[INFO] [stderr]    |            -------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 60 |     pub level: usize,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `TreeNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `from_arc` and `from_arc_with_children` are never used
[INFO] [stderr]   --> src/commands/migration/ui/components/hierarchy_tree.rs:82:12
[INFO] [stderr]    |
[INFO] [stderr] 63 | impl TreeNode {
[INFO] [stderr]    | ------------- associated functions in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 82 |     pub fn from_arc(data: Arc<dyn HierarchyNode>, level: usize) -> Self {
[INFO] [stderr]    |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 91 |     pub fn from_arc_with_children(data: Arc<dyn HierarchyNode>, children: Vec<TreeNode>, level: usize) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `update_node_expansion`, `get_flattened_count`, `flatten_node_recursive`, `get_selected`, and `render_node_line` are never used
[INFO] [stderr]    --> src/commands/migration/ui/components/hierarchy_tree.rs:172:8
[INFO] [stderr]     |
[INFO] [stderr] 126 | impl HierarchyTree {
[INFO] [stderr]     | ------------------ associated items in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 172 |     fn update_node_expansion(
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 190 |     pub fn get_flattened_count(&self) -> usize {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 233 |     fn flatten_node_recursive(&mut self, node: &TreeNode, level: usize) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 284 |     pub fn get_selected(&mut self) -> Option<&TreeNode> {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 319 |     pub fn render_node_line(node: &TreeNode, level: usize) -> Line<'static> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `create_new_label`, `enable_scroll`, and `highlight_selected` are never read
[INFO] [stderr]   --> src/commands/migration/ui/components/list_component.rs:27:9
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub struct ListConfig {
[INFO] [stderr]    |            ---------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 27 |     pub create_new_label: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 28 |     pub enable_mouse: bool,
[INFO] [stderr] 29 |     pub enable_scroll: bool,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] 30 |     pub show_indices: bool,
[INFO] [stderr] 31 |     pub highlight_selected: bool,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `with_title`, `with_create_new`, `with_mouse_support`, `with_indices`, `selected`, and `update_items` are never used
[INFO] [stderr]    --> src/commands/migration/ui/components/list_component.rs:72:12
[INFO] [stderr]     |
[INFO] [stderr]  56 | impl<T: Display> ListComponent<T> {
[INFO] [stderr]     | --------------------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  72 |     pub fn with_title(mut self, title: String) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  77 |     pub fn with_create_new(mut self, key: char, label: String) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  84 |     pub fn with_mouse_support(mut self) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  89 |     pub fn with_indices(mut self) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 211 |     pub fn selected(&self) -> Option<usize> {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 289 |     pub fn update_items(&mut self, items: Vec<T>) {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Close`, `Submit`, `Cancel`, and `Custom` are never constructed
[INFO] [stderr]   --> src/commands/migration/ui/components/modal_component.rs:58:5
[INFO] [stderr]    |
[INFO] [stderr] 57 | pub enum ModalContentAction {
[INFO] [stderr]    |          ------------------ variants in this enum
[INFO] [stderr] 58 |     Close,
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 59 |     Submit(String),
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 60 |     Cancel,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 61 |     Custom(String),
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ModalContentAction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `with_config`, `non_closable`, `content`, and `content_mut` are never used
[INFO] [stderr]    --> src/commands/migration/ui/components/modal_component.rs:78:12
[INFO] [stderr]     |
[INFO] [stderr]  65 | impl<T: ModalContent> ModalComponent<T> {
[INFO] [stderr]     | --------------------------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr]  78 |     pub fn with_config(mut self, config: ModalConfig) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr]  89 |     pub fn non_closable(mut self) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 196 |     pub fn content(&self) -> &T {
[INFO] [stderr]     |            ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 200 |     pub fn content_mut(&mut self) -> &mut T {
[INFO] [stderr]     |            ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `with_mapping` is never used
[INFO] [stderr]   --> src/commands/migration/ui/components/relationship_renderer.rs:89:12
[INFO] [stderr]    |
[INFO] [stderr] 74 | impl RelationshipField {
[INFO] [stderr]    | ---------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 89 |     pub fn with_mapping(mut self, mapping_target: String) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new_field_node` is never used
[INFO] [stderr]    --> src/commands/migration/ui/components/relationship_renderer.rs:160:12
[INFO] [stderr]     |
[INFO] [stderr] 118 | impl RelationshipGroup {
[INFO] [stderr]     | ---------------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 160 |     pub fn new_field_node(field: RelationshipField) -> Self {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `render_relationship_field` and `filter_out_relationships` are never used
[INFO] [stderr]    --> src/commands/migration/ui/components/relationship_renderer.rs:264:12
[INFO] [stderr]     |
[INFO] [stderr] 262 | impl RelationshipRenderer {
[INFO] [stderr]     | ------------------------- associated functions in this implementation
[INFO] [stderr] 263 |     /// Create a styled line for a relationship field
[INFO] [stderr] 264 |     pub fn render_relationship_field(field: &RelationshipField) -> Line<'static> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 303 |     pub fn filter_out_relationships(fields: &[FieldInfo]) -> Vec<FieldInfo> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `hover_style` is never read
[INFO] [stderr]  --> src/commands/migration/ui/mouse.rs:7:9
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct MouseZone {
[INFO] [stderr]   |            --------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 7 |     pub hover_style: Option<Style>,
[INFO] [stderr]   |         ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `MouseZone` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_hover_style` and `handle_scroll` are never used
[INFO] [stderr]   --> src/commands/migration/ui/mouse.rs:57:12
[INFO] [stderr]    |
[INFO] [stderr] 20 | impl MouseHandler {
[INFO] [stderr]    | ----------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 57 |     pub fn get_hover_style(&self, area: Rect) -> Option<Style> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 67 |     pub fn handle_scroll(&self, x: u16, y: u16, delta: i16) -> Option<MouseAction> {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `get_current_screen` and `get_current_screen_mut` are never used
[INFO] [stderr]   --> src/commands/migration/ui/navigation.rs:94:12
[INFO] [stderr]    |
[INFO] [stderr] 16 | impl NavigationManager {
[INFO] [stderr]    | ---------------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 94 |     pub fn get_current_screen(&self) -> &dyn Screen {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 98 |     pub fn get_current_screen_mut(&mut self) -> &mut dyn Screen {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get_title` is never used
[INFO] [stderr]  --> src/commands/migration/ui/screens/base_screen.rs:9:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub trait Screen {
[INFO] [stderr]   |           ------ method in this trait
[INFO] [stderr] ...
[INFO] [stderr] 9 |     fn get_title(&self) -> Option<String> {
[INFO] [stderr]   |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Replace` is never constructed
[INFO] [stderr]   --> src/commands/migration/ui/screens/base_screen.rs:27:5
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub enum ScreenResult {
[INFO] [stderr]    |          ------------ variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 27 |     Replace(Box<dyn Screen>),
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `ScreenBuilder` is never used
[INFO] [stderr]   --> src/commands/migration/ui/screens/base_screen.rs:31:11
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub trait ScreenBuilder {
[INFO] [stderr]    |           ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `FocusChanged`, `Exit`, and `Back` are never constructed
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/common/app_trait.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr]  8 | pub enum AppResult {
[INFO] [stderr]    |          --------- variants in this enum
[INFO] [stderr]  9 |     Continue,
[INFO] [stderr] 10 |     FocusChanged(FocusedSide),
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 11 |     Exit,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 12 |     Back,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `AppResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: methods `handle_keyboard`, `get_source_count`, `get_target_count`, `get_title`, `on_enter`, and `on_exit` are never used
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/common/app_trait.rs:36:8
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub trait ComparisonApp: Send {
[INFO] [stderr]    |           ------------- methods in this trait
[INFO] [stderr] ...
[INFO] [stderr] 36 |     fn handle_keyboard(&mut self, key: KeyCode) -> AppResult;
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 39 |     fn get_source_count(&self) -> usize;
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 42 |     fn get_target_count(&self) -> usize;
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 45 |     fn get_title(&self) -> String;
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 48 |     fn on_enter(&mut self) {}
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 51 |     fn on_exit(&mut self) {}
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `source_entity` and `target_entity` are never read
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/common/app_trait.rs:69:9
[INFO] [stderr]    |
[INFO] [stderr] 59 | pub struct ComparisonData {
[INFO] [stderr]    |            -------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 69 |     pub source_entity: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] 70 |     pub target_entity: String,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ComparisonData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `switch` is never used
[INFO] [stderr]  --> src/commands/migration/ui/screens/comparison_apps/common/focus_manager.rs:8:12
[INFO] [stderr]   |
[INFO] [stderr] 7 | impl FocusedSide {
[INFO] [stderr]   | ---------------- method in this implementation
[INFO] [stderr] 8 |     pub fn switch(&self) -> Self {
[INFO] [stderr]   |            ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FocusManager` is never constructed
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/common/focus_manager.rs:17:12
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub struct FocusManager {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `get_focused_side`, `set_focused_side`, `switch_focus`, `is_source_focused`, and `is_target_focused` are never used
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/common/focus_manager.rs:22:12
[INFO] [stderr]    |
[INFO] [stderr] 21 | impl FocusManager {
[INFO] [stderr]    | ----------------- associated items in this implementation
[INFO] [stderr] 22 |     pub fn new() -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 28 |     pub fn get_focused_side(&self) -> FocusedSide {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 32 |     pub fn set_focused_side(&mut self, side: FocusedSide) {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 36 |     pub fn switch_focus(&mut self) {
[INFO] [stderr]    |            ^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 40 |     pub fn is_source_focused(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 44 |     pub fn is_target_focused(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Exact`, `Manual`, and `Prefix` are never constructed
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub enum MappingType {
[INFO] [stderr]    |          ----------- variants in this enum
[INFO] [stderr] 14 |     Exact,    // ✅ Perfect match
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 15 |     Manual,   // 🔧 User-defined mapping
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 16 |     Prefix,   // 🎯 Prefix-based match
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `MappingType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `view_info` is never read
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:41:9
[INFO] [stderr]    |
[INFO] [stderr] 39 |     View {
[INFO] [stderr]    |     ---- field in this variant
[INFO] [stderr] 40 |         name: String,
[INFO] [stderr] 41 |         view_info: ViewInfo,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ViewNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `details` is never read
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:52:9
[INFO] [stderr]    |
[INFO] [stderr] 49 |     ViewItem {
[INFO] [stderr]    |     -------- field in this variant
[INFO] [stderr] ...
[INFO] [stderr] 52 |         details: String,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ViewNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Filters` and `SortOrders` are never constructed
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:61:5
[INFO] [stderr]    |
[INFO] [stderr] 59 | pub enum ViewComponentType {
[INFO] [stderr]    |          ----------------- variants in this enum
[INFO] [stderr] 60 |     Columns,
[INFO] [stderr] 61 |     Filters,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 62 |     SortOrders,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ViewComponentType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: variants `Filter` and `SortOrder` are never constructed
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:86:5
[INFO] [stderr]    |
[INFO] [stderr] 84 | pub enum ViewItemType {
[INFO] [stderr]    |          ------------ variants in this enum
[INFO] [stderr] 85 |     Column,
[INFO] [stderr] 86 |     Filter,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 87 |     SortOrder,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ViewItemType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `icon` is never used
[INFO] [stderr]   --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:91:12
[INFO] [stderr]    |
[INFO] [stderr] 90 | impl ViewItemType {
[INFO] [stderr]    | ----------------- method in this implementation
[INFO] [stderr] 91 |     pub fn icon(&self) -> &'static str {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `form_info` is never read
[INFO] [stderr]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:110:9
[INFO] [stderr]     |
[INFO] [stderr] 108 |     Form {
[INFO] [stderr]     |     ---- field in this variant
[INFO] [stderr] 109 |         name: String,
[INFO] [stderr] 110 |         form_info: FormInfo,
[INFO] [stderr]     |         ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `FormNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `tab_info` is never read
[INFO] [stderr]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:115:9
[INFO] [stderr]     |
[INFO] [stderr] 113 |     Tab {
[INFO] [stderr]     |     --- field in this variant
[INFO] [stderr] 114 |         name: String,
[INFO] [stderr] 115 |         tab_info: FormTab,
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `FormNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `section_info` is never read
[INFO] [stderr]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:122:9
[INFO] [stderr]     |
[INFO] [stderr] 120 |     Section {
[INFO] [stderr]     |     ------- field in this variant
[INFO] [stderr] 121 |         name: String,
[INFO] [stderr] 122 |         section_info: FormSection,
[INFO] [stderr]     |         ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `FormNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `detect_simple_mappings` is never used
[INFO] [stderr]    --> src/commands/migration/ui/screens/comparison_apps/hierarchy_nodes.rs:561:12
[INFO] [stderr]     |
[INFO] [stderr] 407 | impl HierarchyBuilder {
[INFO] [stderr]     | --------------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 561 |     pub fn detect_simple_mappings(source_nodes: &mut [ViewNode], target_nodes: &[ViewNode]) {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `show_comparison_placeholder` is never used
[INFO] [stderr]    --> src/commands/migration/ui/screens/comparison_select_screen.rs:109:8
[INFO] [stderr]     |
[INFO] [stderr]  43 | impl ComparisonSelectScreen {
[INFO] [stderr]     | --------------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 109 |     fn show_comparison_placeholder(&mut self, comparison_name: &str) -> ScreenResult {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/commands/migration/ui/screens/loading_screen.rs:34:12
[INFO] [stderr]    |
[INFO] [stderr] 34 |     Failed(Vec<String>),
[INFO] [stderr]    |     ------ ^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `LoadingScreenState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 34 -     Failed(Vec<String>),
[INFO] [stderr] 34 +     Failed(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: fields `source`, `target`, `match_score`, and `is_manual` are never read
[INFO] [stderr]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:47:9
[INFO] [stderr]    |
[INFO] [stderr] 46 | pub struct Match<T> {
[INFO] [stderr]    |            ----- fields in this struct
[INFO] [stderr] 47 |     pub source: T,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 48 |     pub target: Option<T>,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 49 |     pub match_score: f64,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 50 |     pub is_manual: bool,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Match` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `field_matches`, `view_matches`, and `form_matches` are never read
[INFO] [stderr]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:72:9
[INFO] [stderr]    |
[INFO] [stderr] 54 | pub struct ComparisonData {
[INFO] [stderr]    |            -------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 72 |     pub field_matches: Vec<Match<FieldInfo>>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 75 |     pub view_matches: Vec<Match<ViewInfo>>,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 76 |     pub form_matches: Vec<Match<FormInfo>>,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ComparisonData` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `hide_matched` is never read
[INFO] [stderr]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:83:9
[INFO] [stderr]    |
[INFO] [stderr] 80 | pub struct SharedState {
[INFO] [stderr]    |            ----------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 83 |     pub hide_matched: bool,
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `SharedState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: multiple variants are never constructed
[INFO] [stderr]   --> src/commands/migration/ui/screens/unified_compare_screen.rs:88:5
[INFO] [stderr]    |
[INFO] [stderr] 87 | pub enum LoadingState {
[INFO] [stderr]    |          ------------ variants in this enum
[INFO] [stderr] 88 |     NotStarted,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 89 |     LoadingSourceFields,
[INFO] [stderr] 90 |     LoadingTargetFields,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 91 |     LoadingSourceViews,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 92 |     LoadingTargetViews,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 93 |     LoadingSourceForms,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 94 |     LoadingTargetForms,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 95 |     ComputingMatches,
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 96 |     Complete,
[INFO] [stderr] 97 |     Error(String),
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `LoadingState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `has_field_match`, `get_source_field_mapping`, and `get_target_field_mapping` are never used
[INFO] [stderr]    --> src/commands/migration/ui/screens/unified_compare_screen.rs:136:12
[INFO] [stderr]     |
[INFO] [stderr] 135 | impl UnifiedCompareScreen {
[INFO] [stderr]     | ------------------------- associated items in this implementation
[INFO] [stderr] 136 |     pub fn new(config: Config, comparison: SavedComparison) -> Self {
[INFO] [stderr]     |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 535 |     fn has_field_match(&self, field_name: &str) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 569 |     fn get_source_field_mapping(&self, field: &FieldInfo) -> Option<FieldMapping> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 607 |     fn get_target_field_mapping(&self, field: &FieldInfo) -> Option<FieldMapping> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `active`, `warning`, `breadcrumb`, and `breadcrumb_separator` are never read
[INFO] [stderr]   --> src/commands/migration/ui/styles.rs:8:9
[INFO] [stderr]    |
[INFO] [stderr]  3 | pub struct AppStyles {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr]  8 |     pub active: Style,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 12 |     pub warning: Style,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 13 |     pub info: Style,
[INFO] [stderr] 14 |     pub breadcrumb: Style,
[INFO] [stderr]    |         ^^^^^^^^^^
[INFO] [stderr] 15 |     pub breadcrumb_separator: Style,
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: multiple methods are never used
[INFO] [stderr]    --> src/config.rs:248:12
[INFO] [stderr]     |
[INFO] [stderr] 100 | impl Config {
[INFO] [stderr]     | ----------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 248 |     pub fn add_field_mapping(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 271 |     pub fn get_field_mappings(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 281 |     pub fn remove_field_mapping(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 321 |     pub fn add_prefix_mapping(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 344 |     pub fn get_prefix_mappings(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 354 |     pub fn remove_prefix_mapping(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 389 |     pub fn list_prefix_mappings(&self) -> &HashMap<String, HashMap<String, String>> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 396 |     pub fn save_migration(&mut self, migration: SavedMigration) -> Result<()> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 403 |     pub fn get_migration(&self, name: &str) -> Option<&SavedMigration> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 408 |     pub fn list_migrations(&self) -> Vec<&SavedMigration> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 420 |     pub fn remove_migration(&mut self, name: &str) -> Result<()> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 430 |     pub fn touch_migration(&mut self, name: &str) -> Result<()> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 440 |     pub fn add_comparison_to_migration(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 459 |     pub fn remove_comparison_from_migration(
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `is_custom` is never read
[INFO] [stderr]   --> src/dynamics/metadata.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr]  8 | pub struct FieldInfo {
[INFO] [stderr]    |            --------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 12 |     pub is_custom: bool,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FieldInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `entity_name`, `is_custom`, and `fetch_xml` are never read
[INFO] [stderr]   --> src/dynamics/metadata.rs:18:9
[INFO] [stderr]    |
[INFO] [stderr] 16 | pub struct ViewInfo {
[INFO] [stderr]    |            -------- fields in this struct
[INFO] [stderr] 17 |     pub name: String,
[INFO] [stderr] 18 |     pub entity_name: String,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 19 |     pub view_type: String,
[INFO] [stderr] 20 |     pub is_custom: bool,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] 21 |     pub columns: Vec<ViewColumn>,
[INFO] [stderr] 22 |     pub fetch_xml: String,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ViewInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `width` is never read
[INFO] [stderr]   --> src/dynamics/metadata.rs:28:9
[INFO] [stderr]    |
[INFO] [stderr] 26 | pub struct ViewColumn {
[INFO] [stderr]    |            ---------- field in this struct
[INFO] [stderr] 27 |     pub name: String,
[INFO] [stderr] 28 |     pub width: Option<u32>,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ViewColumn` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `is_custom` and `state` are never read
[INFO] [stderr]   --> src/dynamics/metadata.rs:37:9
[INFO] [stderr]    |
[INFO] [stderr] 33 | pub struct FormInfo {
[INFO] [stderr]    |            -------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 37 |     pub is_custom: bool,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr] 38 |     pub state: i32, // 0 = Inactive, 1 = Active
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FormInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name` and `entity_name` are never read
[INFO] [stderr]   --> src/dynamics/metadata.rs:45:9
[INFO] [stderr]    |
[INFO] [stderr] 44 | pub struct FormStructure {
[INFO] [stderr]    |            ------------- fields in this struct
[INFO] [stderr] 45 |     pub name: String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 46 |     pub entity_name: String,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FormStructure` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name`, `visible`, `expanded`, and `order` are never read
[INFO] [stderr]   --> src/dynamics/metadata.rs:52:9
[INFO] [stderr]    |
[INFO] [stderr] 51 | pub struct FormTab {
[INFO] [stderr]    |            ------- fields in this struct
[INFO] [stderr] 52 |     pub name: String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 53 |     pub label: String,
[INFO] [stderr] 54 |     pub visible: bool,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 55 |     pub expanded: bool,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 56 |     pub order: i32,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FormTab` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `name`, `visible`, `columns`, and `order` are never read
[INFO] [stderr]   --> src/dynamics/metadata.rs:62:9
[INFO] [stderr]    |
[INFO] [stderr] 61 | pub struct FormSection {
[INFO] [stderr]    |            ----------- fields in this struct
[INFO] [stderr] 62 |     pub name: String,
[INFO] [stderr]    |         ^^^^
[INFO] [stderr] 63 |     pub label: String,
[INFO] [stderr] 64 |     pub visible: bool,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 65 |     pub columns: i32, // Number of columns in the section
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 66 |     pub order: i32,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FormSection` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `label`, `visible`, `readonly`, `row`, and `column` are never read
[INFO] [stderr]   --> src/dynamics/metadata.rs:73:9
[INFO] [stderr]    |
[INFO] [stderr] 71 | pub struct FormField {
[INFO] [stderr]    |            --------- fields in this struct
[INFO] [stderr] 72 |     pub logical_name: String,
[INFO] [stderr] 73 |     pub label: String,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr] 74 |     pub visible: bool,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 75 |     pub required_level: String, // None, ApplicationRequired, SystemRequired
[INFO] [stderr] 76 |     pub readonly: bool,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 77 |     pub row: i32,
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 78 |     pub column: i32,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `FormField` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ViewStructure` is never constructed
[INFO] [stderr]    --> src/dynamics/metadata.rs:270:12
[INFO] [stderr]     |
[INFO] [stderr] 270 | pub struct ViewStructure {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ViewColumnDetail` is never constructed
[INFO] [stderr]    --> src/dynamics/metadata.rs:282:12
[INFO] [stderr]     |
[INFO] [stderr] 282 | pub struct ViewColumnDetail {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ViewFilter` is never constructed
[INFO] [stderr]    --> src/dynamics/metadata.rs:292:12
[INFO] [stderr]     |
[INFO] [stderr] 292 | pub struct ViewFilter {
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `ViewSortOrder` is never constructed
[INFO] [stderr]    --> src/dynamics/metadata.rs:300:12
[INFO] [stderr]     |
[INFO] [stderr] 300 | pub struct ViewSortOrder {
[INFO] [stderr]     |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `FetchXmlDetails` is never constructed
[INFO] [stderr]    --> src/dynamics/metadata.rs:307:12
[INFO] [stderr]     |
[INFO] [stderr] 307 | pub struct FetchXmlDetails {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_view_structure` is never used
[INFO] [stderr]    --> src/dynamics/metadata.rs:317:8
[INFO] [stderr]     |
[INFO] [stderr] 317 | pub fn parse_view_structure(view_info: &ViewInfo) -> Result<ViewStructure> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/commands/migration/ui/components/footer_component.rs:103:26
[INFO] [stderr]     |
[INFO] [stderr] 103 |     fn build_footer_text(&self) -> Text {
[INFO] [stderr]     |                          ^^^^^     ^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                          |
[INFO] [stderr]     |                          the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 103 |     fn build_footer_text(&self) -> Text<'_> {
[INFO] [stderr]     |                                        ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/commands/migration/ui/components/list_component.rs:299:25
[INFO] [stderr]     |
[INFO] [stderr] 299 |     fn build_list_items(&self) -> Vec<ListItem> {
[INFO] [stderr]     |                         ^^^^^         ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 299 |     fn build_list_items(&self) -> Vec<ListItem<'_>> {
[INFO] [stderr]     |                                               ++++
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `render_relationship_field` is never used
[INFO] [stderr]    --> src/commands/migration/ui/components/relationship_renderer.rs:264:12
[INFO] [stderr]     |
[INFO] [stderr] 262 | impl RelationshipRenderer {
[INFO] [stderr]     | ------------------------- associated function in this implementation
[INFO] [stderr] 263 |     /// Create a styled line for a relationship field
[INFO] [stderr] 264 |     pub fn render_relationship_field(field: &RelationshipField) -> Line<'static> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `dynamics-cli` (bin "dynamics-cli") generated 81 warnings (run `cargo fix --bin "dynamics-cli"` to apply 7 suggestions)
[INFO] [stderr] warning: `dynamics-cli` (bin "dynamics-cli" test) generated 80 warnings (79 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.27s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/dynamics_cli-1564c5983ed2d920)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/dynamics_cli-b9f199ca7d740792)
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test commands::migration::ui::components::field_renderer::tests::test_field_display_with_exact_mapping ... ok
[INFO] [stdout] test commands::migration::ui::components::relationship_renderer::tests::test_extract_target_entity ... ok
[INFO] [stdout] test commands::migration::ui::components::field_renderer::tests::test_custom_field_display ... ok
[INFO] [stdout] test commands::migration::ui::components::field_renderer::tests::test_field_display_without_mapping ... ok
[INFO] [stdout] test commands::migration::ui::components::relationship_renderer::tests::test_relationship_extraction ... ok
[INFO] [stdout] test commands::migration::ui::components::hierarchy_tree::tests::test_hierarchy_tree_basic_operations ... ok
[INFO] [stdout] test commands::migration::ui::components::relationship_renderer::tests::test_relationship_grouping ... ok
[INFO] [stdout] test commands::migration::ui::components::relationship_renderer::tests::test_relationship_type_parsing ... ok
[INFO] [stdout] test commands::migration::ui::components::relationship_renderer::tests::test_relationship_field_creation ... ok
[INFO] [stdout] test commands::migration::ui::components::hierarchy_tree::tests::test_hierarchy_tree_expansion ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/mod.rs (/opt/rustwide/target/debug/deps/mod-794a883a87e2473f)
[INFO] [stdout] 
[INFO] [stdout] running 54 tests
[INFO] [stdout] test error_handling::position_tracking::test_lexer_position_error ... ok
[INFO] [stdout] test error_handling::position_tracking::test_parser_position_error ... ok
[INFO] [stdout] test error_handling::position_tracking::test_position_error_formatting ... ok
[INFO] [stdout] test error_handling::position_tracking::test_successful_parsing_with_positions ... ok
[INFO] [stdout] test fql::advanced_features::test_combined_query ... ok
[INFO] [stdout] test fql::advanced_features::test_options_aggregatelimit ... ok
[INFO] [stdout] test fql::advanced_features::test_distinct ... ok
[INFO] [stdout] test fql::advanced_features::test_options_formatted ... ok
[INFO] [stdout] test fql::advanced_features::test_options_datasource ... ok
[INFO] [stdout] test fql::advanced_features::test_options_multiple ... ok
[INFO] [stdout] test fql::aggregation::test_count_aggregation ... ok
[INFO] [stdout] test fql::aggregation::test_count_aggregation_contact_entity ... ok
[INFO] [stdout] test fql::basic_queries::test_entity_with_attributes ... ok
[INFO] [stdout] test fql::advanced_features::test_options_no_lock ... ok
[INFO] [stdout] test fql::basic_queries::test_entity_with_alias ... ok
[INFO] [stdout] test fql::advanced_features::test_options_return_total_count ... ok
[INFO] [stdout] test fql::aggregation::test_count_aggregation_opportunity_entity ... ok
[INFO] [stdout] test fql::aggregation::test_count_with_grouping ... ok
[INFO] [stdout] test fql::filtering::test_complex_null_and_range_conditions ... ok
[INFO] [stdout] test fql::filtering::test_between_condition ... ok
[INFO] [stdout] test fql::filtering::test_between_operator ... ok
[INFO] [stdout] test fql::basic_queries::test_basic_entity_query ... ok
[INFO] [stdout] test fql::filtering::test_date_filtering ... ok
[INFO] [stdout] test fql::filtering::test_explicit_and_conditions ... ok
[INFO] [stdout] test fql::filtering::test_not_null_condition ... ok
[INFO] [stdout] test fql::filtering::test_multiple_filters_implicit_and ... ok
[INFO] [stdout] test fql::filtering::test_simple_filter ... ok
[INFO] [stdout] test fql::filtering::test_nested_conditions ... ok
[INFO] [stdout] test fql::filtering::test_in_operator ... ok
[INFO] [stdout] test fql::filtering::test_multiple_null_checks ... ok
[INFO] [stdout] test fql::filtering::test_or_conditions ... ok
[INFO] [stdout] test fql::integration_examples::test_comparison_example ... ok
[INFO] [stdout] test fql::filtering::test_null_check ... ok
[INFO] [stdout] test fql::filtering::test_null_condition ... ok
[INFO] [stdout] test fql::joins::test_left_join ... ok
[INFO] [stdout] test fql::joins::test_join_with_complex_relationship ... ok
[INFO] [stdout] test fql::joins::test_join_with_attributes ... ok
[INFO] [stdout] test fql::advanced_features::test_options_useraworderby ... ok
[INFO] [stdout] test fql::aggregation::test_multiple_aggregations ... ok
[INFO] [stdout] test fql::joins::test_join_with_alias_and_conditions ... ok
[INFO] [stdout] test fql::advanced_features::test_options_latematerialize ... ok
[INFO] [stdout] test fql::joins::test_simple_join ... ok
[INFO] [stdout] test fql::integration_examples::test_high_value_opportunities_example ... ok
[INFO] [stdout] test fql::ordering_pagination::test_limit ... ok
[INFO] [stdout] test fql::filtering::test_between_with_dates ... ok
[INFO] [stdout] test fql::integration_examples::test_recent_contacts_without_activities_example ... ok
[INFO] [stdout] test fql::basic_queries::test_entity_with_all_attributes ... ok
[INFO] [stdout] test fql::ordering_pagination::test_order_by ... ok
[INFO] [stdout] test fql::joins::test_multiple_joins ... ok
[INFO] [stdout] test fql::ordering_pagination::test_page ... ok
[INFO] [stdout] test fql::joins::test_subquery_like_patterns ... ok
[INFO] [stdout] test fql::aggregation::test_having_clause ... ok
[INFO] [stdout] test fql::integration_examples::test_account_summary_by_industry_example ... ok
[INFO] [stderr] error: test failed, to rerun pass `--test mod`
[INFO] [stdout] test fql::advanced_features::test_options_custom_unknown ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- fql::advanced_features::test_options_custom_unknown stdout ----
[INFO] [stdout] Testing FQL: .account | options(customoption: "value", anotheroption: true)
[INFO] [stdout] Tokens: [Dot, Identifier("account"), Pipe, Options, LeftParen, Identifier("customoption"), Identifier(":"), String("value"), Comma, Identifier("anotheroption"), Identifier(":"), True, RightParen, Eof]
[INFO] [stdout] AST: Query { entity: Entity { name: "account", alias: None }, attributes: [], filters: [], joins: [], order: [], aggregations: [], group_by: [], having: None, limit: None, page: None, distinct: false, options: QueryOptions { no_lock: false, return_total_record_count: false, formatted: false, custom_options: {"anotheroption": "true", "customoption": "value"} } }
[INFO] [stdout] Generated XML:
[INFO] [stdout] <fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false" anotheroption="true" customoption="value">
[INFO] [stdout]   <entity name="account">
[INFO] [stdout]   </entity>
[INFO] [stdout] </fetch>
[INFO] [stdout] 
[INFO] [stdout] Expected XML:
[INFO] [stdout] <fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false" customoption="value" anotheroption="true">
[INFO] [stdout]   <entity name="account">
[INFO] [stdout]   </entity>
[INFO] [stdout] </fetch>
[INFO] [stdout] XML mismatch!
[INFO] [stdout] Generated (normalized): <fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false" anotheroption="true" customoption="value"><entity name="account"></entity></fetch>
[INFO] [stdout] Expected (normalized):  <fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false" customoption="value" anotheroption="true"><entity name="account"></entity></fetch>
[INFO] [stdout] 
[INFO] [stdout] thread 'fql::advanced_features::test_options_custom_unknown' (44) panicked at tests/fql/advanced_features.rs:115:40:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Generated XML does not match expected XML
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: anyhow::error::<impl anyhow::Error>::msg
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/backtrace.rs:27:14
[INFO] [stdout]    1: anyhow::__private::format_err
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.99/src/lib.rs:695:13
[INFO] [stdout]    2: mod::fql::test_fql_to_xml
[INFO] [stdout]              at ./tests/fql/mod.rs:55:20
[INFO] [stdout]    3: mod::fql::advanced_features::test_options_custom_unknown
[INFO] [stdout]              at ./tests/fql/advanced_features.rs:115:5
[INFO] [stdout]    4: mod::fql::advanced_features::test_options_custom_unknown::{{closure}}
[INFO] [stdout]              at ./tests/fql/advanced_features.rs:108:33
[INFO] [stdout]    5: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    6: core::ops::function::FnOnce::call_once
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    7: test::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]    8: test::run_test_in_process::{{closure}}
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]    9: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   10: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   11: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   12: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   13: test::run_test_in_process
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   14: test::run_test::{{closure}}
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   15: test::run_test::{{closure}}
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   16: std::sys::backtrace::__rust_begin_short_backtrace
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   17: std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   18: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   19: std::panicking::catch_unwind::do_call
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   20: std::panicking::catch_unwind
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   21: std::panic::catch_unwind
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   22: std::thread::Builder::spawn_unchecked_::{{closure}}
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   23: core::ops::function::FnOnce::call_once{{vtable.shim}}
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   25: std::sys::thread::unix::Thread::new::thread_start
[INFO] [stdout]              at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   26: <unknown>
[INFO] [stdout]   27: clone
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5c8bfa6636f2 - std::backtrace_rs::backtrace::libunwind::trace::hcab59e1e990fdc24
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5c8bfa6636f2 - std::backtrace_rs::backtrace::trace_unsynchronized::he24cc57f3d2f47b7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5c8bfa6636f2 - std::sys::backtrace::_print_fmt::hf8d65ede198eeb54
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5c8bfa6636f2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h67edf0e4d33c343c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5c8bfa67405f - core::fmt::rt::Argument::fmt::hef94184842aeafdd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/rt.rs:173:76
[INFO] [stdout]    5:     0x5c8bfa67405f - core::fmt::write::hcf0c66b48a8fa606
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/fmt/mod.rs:1468:25
[INFO] [stdout]    6:     0x5c8bfa62fa91 - std::io::default_write_fmt::h69967ac0ba93195f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x5c8bfa62fa91 - std::io::Write::write_fmt::h8db9396209deaa1c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/io/mod.rs:1954:13
[INFO] [stdout]    8:     0x5c8bfa63baf2 - std::sys::backtrace::BacktraceLock::print::h07e5435aa717b414
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    9:     0x5c8bfa640fbf - std::panicking::default_hook::{{closure}}::h91001850288db5f7
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:301:27
[INFO] [stdout]   10:     0x5c8bfa640e51 - std::panicking::default_hook::h2346dbb704ef5512
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:325:9
[INFO] [stdout]   11:     0x5c8bfa5ade3e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h18383b2e29377420
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   12:     0x5c8bfa5ade3e - test::test_main_with_exit_callback::{{closure}}::h272d7ef99aef06dc
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x5c8bfa64167f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6dba6e441651a0d1
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1999:9
[INFO] [stdout]   14:     0x5c8bfa64167f - std::panicking::panic_with_hook::hd2b063a6090d23a4
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:842:13
[INFO] [stdout]   15:     0x5c8bfa6414da - std::panicking::panic_handler::{{closure}}::he666d95f139a333e
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:707:13
[INFO] [stdout]   16:     0x5c8bfa63bc29 - std::sys::backtrace::__rust_end_short_backtrace::h631ad224854ebee5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:174:18
[INFO] [stdout]   17:     0x5c8bfa623f6d - __rustc[1d67440d6e82e4f]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:698:5
[INFO] [stdout]   18:     0x5c8bfa67d720 - core::panicking::panic_fmt::h420ddb7fd73daf53
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panicking.rs:75:14
[INFO] [stdout]   19:     0x5c8bfa67cdc6 - core::result::unwrap_failed::hdde076be853d034f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/result.rs:1855:5
[INFO] [stdout]   20:     0x5c8bfa5852de - core::result::Result<T,E>::unwrap::hc30df40969782b05
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/result.rs:1226:23
[INFO] [stdout]   21:     0x5c8bfa5852de - mod::fql::advanced_features::test_options_custom_unknown::h9d484033c5f04772
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/fql/advanced_features.rs:115:40
[INFO] [stdout]   22:     0x5c8bfa585337 - mod::fql::advanced_features::test_options_custom_unknown::{{closure}}::h0f3092c77d324c70
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/fql/advanced_features.rs:108:33
[INFO] [stdout]   23:     0x5c8bfa588f36 - core::ops::function::FnOnce::call_once::hbc48bb8b3c97646c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5c8bfa5adbfb - core::ops::function::FnOnce::call_once::h70887edf07a630ba
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5c8bfa5adbfb - test::__rust_begin_short_backtrace::h27763c4cbbdb8601
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x5c8bfa5c3865 - test::run_test_in_process::{{closure}}::h4dc8bc6d5e3924d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x5c8bfa5c3865 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h75905e8ffe81974f
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x5c8bfa5c3865 - std::panicking::catch_unwind::do_call::h0bc60366ba66eba5
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   29:     0x5c8bfa5c3865 - std::panicking::catch_unwind::hae1ec7bf94407afa
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   30:     0x5c8bfa5c3865 - std::panic::catch_unwind::h0f4ff4773d84d3cd
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5c8bfa5c3865 - test::run_test_in_process::h03fbc77ae48b3f10
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x5c8bfa5c3865 - test::run_test::{{closure}}::h83476a9c453dc4d3
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x5c8bfa59a054 - test::run_test::{{closure}}::h515482ad1e7fe7de
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x5c8bfa59a054 - std::sys::backtrace::__rust_begin_short_backtrace::hed09f6ac5fe9d647
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/backtrace.rs:158:18
[INFO] [stdout]   35:     0x5c8bfa59d91a - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h988e2cd969319888
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:559:17
[INFO] [stdout]   36:     0x5c8bfa59d91a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd70e28dc46ec20be
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x5c8bfa59d91a - std::panicking::catch_unwind::do_call::hdc29e11311eb7655
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:590:40
[INFO] [stdout]   38:     0x5c8bfa59d91a - std::panicking::catch_unwind::h9e402d6a96fef41c
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panicking.rs:553:19
[INFO] [stdout]   39:     0x5c8bfa59d91a - std::panic::catch_unwind::h9213c0c54aec70e0
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5c8bfa59d91a - std::thread::Builder::spawn_unchecked_::{{closure}}::h6262965869ed2b87
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/thread/mod.rs:557:30
[INFO] [stdout]   41:     0x5c8bfa59d91a - core::ops::function::FnOnce::call_once{{vtable.shim}}::h05c05ed02619e462
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5c8bfa636d8f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h2044e71c41d3958a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/alloc/src/boxed.rs:1985:9
[INFO] [stdout]   43:     0x5c8bfa636d8f - std::sys::thread::unix::Thread::new::thread_start::hf277835320aa8e5a
[INFO] [stdout]                                at /rustc/bb624dcb4c8ab987e10c0808d92d76f3b84dd117/library/std/src/sys/thread/unix.rs:126:17
[INFO] [stdout]   44:     0x7e055a29faa4 - <unknown>
[INFO] [stdout]   45:     0x7e055a32ca34 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     fql::advanced_features::test_options_custom_unknown
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 53 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "36cca2c1f85beff8aae738e3cf18c609795dc9f462a2556676ebbc9332a2fbc0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "36cca2c1f85beff8aae738e3cf18c609795dc9f462a2556676ebbc9332a2fbc0", kill_on_drop: false }`
[INFO] [stdout] 36cca2c1f85beff8aae738e3cf18c609795dc9f462a2556676ebbc9332a2fbc0
