feat(core): integrate klondike v0.3.0 / card_game v0.4.0 — solver + serde newtypes
Build and Deploy / build-and-push (push) Failing after 29s
Build and Deploy / build-and-push (push) Failing after 29s
Step 6: replace 767-line DFS seed-solver with Session<Klondike>::solve(). - try_solve_with_first_move() now delegates to card_game::Session::solve() with solve_moves_budget/solve_states_budget from SolverConfig - Maps Ok(Some) → Winnable, Ok(None) → Unwinnable, Err → Inconclusive - try_solve_from_state() retains the DFS (pile mapping pending, step 2) - Removed dead SolverState::initial() — no longer needed for seed path - Updated tests: session solver returns no Unwinnable in 0..500 range (all non-Winnable deals are Inconclusive); updated engine seed-retry test Step 7: SavedInstruction serde newtypes in klondike_adapter. - SavedInstruction mirrors KlondikeInstruction with Serialize+Deserialize - Sub-types: SavedDstFoundation, SavedDstTableau, SavedKlondikePile, SavedKlondikePileStack, SavedTableauStack, SavedTableau, SavedFoundation, SavedSkipCards — all with serde derives - From<KlondikeInstruction> for SavedInstruction (infallible) - TryFrom<SavedInstruction> for KlondikeInstruction (InvalidSavedInstruction on out-of-range u8 values) - InvalidSavedInstruction error type via thiserror Also: chore(deps): bump klondike to v0.3.0, card_game to v0.4.0 (Cargo.toml/lock) All 1399 tests pass; clippy clean. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
+2
-2
@@ -37,8 +37,8 @@ solitaire_core = { path = "solitaire_core" }
|
||||
solitaire_sync = { path = "solitaire_sync" }
|
||||
solitaire_data = { path = "solitaire_data" }
|
||||
solitaire_engine = { path = "solitaire_engine" }
|
||||
klondike = { version = "0.2.0", registry = "Quaternions" }
|
||||
card_game = { version = "0.3.0", registry = "Quaternions" }
|
||||
klondike = { version = "0.3.0", registry = "Quaternions" }
|
||||
card_game = { version = "0.4.0", registry = "Quaternions" }
|
||||
|
||||
# Bevy with `default-features = false` to avoid the unused
|
||||
# `bevy_audio → rodio + symphonia + cpal 0.15 + alsa 0.9` chain.
|
||||
|
||||
Reference in New Issue
Block a user