qol-tray-rustlisted
Install: claude install-skill qol-tools/qol-skills
# qol-tray Rust Backend Reference
Pairs with the `qol-tray-core` (cross-platform overview + make commands) and `qol-world-canvas` (UI side of dive targets) skills. This skill focuses on the Rust internals: plugin system, daemon supervision, IPC, feature modules, concurrency and error-handling idioms, and shared-crate placement.
## Layout discovery and invariants
Derive the maintained module inventory from `src/lib.rs`, binary declarations in `Cargo.toml`, and the source tree. Do not use this skill as a snapshot of which feature directories happen to exist.
Before changing layout, inspect direct root files, module declarations, file/directory hybrids, platform-module shapes, and stable public re-exports. Then apply these invariants:
- Keep the source root limited to `main.rs` and `lib.rs`. Put every implementation beneath its owning capability directory.
- Preserve existing public imports with explicit `lib.rs` re-exports when moving a public module; do not force consumers to follow physical layout churn.
- Never combine `foo.rs` with `foo/`. A module with children uses `foo/mod.rs`.
- Within one `platform/` directory, use one OS module form consistently: all files or all directories. Non-OS helpers such as `common.rs` may remain flat.
- Keep target selection in the owning `platform/mod.rs`; do not introduce new target gates in business modules.
- Do not create `shared/`, `common/`, or `utils/` dumping grounds. Route code to the capability that owns its state and invarian