redbear-info + redbear-compositor: split monolithic main.rs into module trees
Phase 3D file split: - redbear-info: 4577-line main.rs -> 1237-line main.rs + 16 module files - redbear-compositor: 4439-line main.rs -> 117-line main.rs + 8+ module files ## redbear-info (Phase 3D-1) Split the monolithic main.rs into: - cli.rs (OutputMode, Options, parse_args) - common.rs (all shared types, helpers, INTEGRATIONS table, probe fns) - output.rs (ANSI constants, print_help, state_marker/color, DIVIDER) - pci.rs (collect_hardware, collect_irq_runtime_reports, location formatting) - quirks_db.rs (TOML quirk parsing, QuirkEntry, etc.) - boot_timeline.rs (boot timeline parsing + display) - modes/ (table, json, test, quirks, probe, boot, device, health, help) All 31 unit tests pass. cargo check passes. fn main count is exactly 1. ## redbear-compositor (Phase 3D-2) Split the monolithic main.rs into: - common.rs (Framebuffer, MmapBuffer, map_framebuffer, time utilities) - output.rs (output/surface state types) - input.rs (KeyboardState, PointerState, modifiers) - render.rs (composite_buffer, presentation feedback) - clients.rs (ClientState, client management) - wayland_handlers.rs (dispatch method) main.rs now only contains the entry point. The remaining module extraction (display_backend.rs, event_loop.rs) is staged in the existing modules (display_backend.rs, etc.) which already contain their respective functionality. cargo check passes for all 49 packages per --check-sweep redbear-mini. Per AGENTS.md policy: - NO STUBS: all extracted code is real and complete - NEVER DELETE: all original behavior preserved - RUST-ONLY: all new code is Rust - public visibility appropriately applied for cross-module usage
This commit is contained in: