bug(theme): broken theme manifests are silently skipped — no log warning #63

Open
opened 2026-05-28 01:51:33 +00:00 by funman300 · 0 comments
Owner

Bug

In theme/registry.rs, when a theme manifest fails to parse (malformed JSON, missing required fields, bad image path), the entry is silently skipped. There is no log warning, so during development or after an asset update it is impossible to tell why a theme is not appearing in the theme picker.

Affected file

solitaire_engine/src/theme/registry.rs (or equivalent theme discovery path)

Fix

Log a warn!() for each theme that fails to load, including the theme ID and the error reason:

Err(e) => {
    warn!("Skipping theme '{}': failed to parse manifest: {}", theme_id, e);
}

This is debug-level visibility with zero runtime cost.

## Bug In `theme/registry.rs`, when a theme manifest fails to parse (malformed JSON, missing required fields, bad image path), the entry is silently skipped. There is no log warning, so during development or after an asset update it is impossible to tell why a theme is not appearing in the theme picker. ## Affected file `solitaire_engine/src/theme/registry.rs` (or equivalent theme discovery path) ## Fix Log a `warn!()` for each theme that fails to load, including the theme ID and the error reason: ```rust Err(e) => { warn!("Skipping theme '{}': failed to parse manifest: {}", theme_id, e); } ``` This is debug-level visibility with zero runtime cost.
funman300 added the correctness label 2026-05-28 01:51:33 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: funman300/Ferrous-Solitaire#63