Description
All puzzle types are currently hardcoded into the core crate, making it hard for contributors to add new puzzle categories without touching central match statements. Introduce a Puzzle trait so new puzzle kinds can be implemented and registered without modifying core dispatch logic.
Acceptance Criteria
Description
All puzzle types are currently hardcoded into the core crate, making it hard for contributors to add new puzzle categories without touching central match statements. Introduce a
Puzzletrait so new puzzle kinds can be implemented and registered without modifying core dispatch logic.Acceptance Criteria
Puzzletrait defined withgenerate(),check_answer(),hint(), anddifficulty()methodsPuzzleRegistryallows registering new puzzle implementations at startupexamples/showing registrationCONTRIBUTING.mdupdated with a short guide on adding a new puzzle type