The Puzzle History and Replay from it #447
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
spec
wayfinder:grilling
wayfinder:map
wayfinder:prototype
wayfinder:research
wayfinder:task
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Depends on
#445 Hint, Show solution, give up and an unrated retry
amaurycoudr/chess-project
Reference
amaurycoudr/chess-project#447
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Parent
#440
What to build
A Player can review every Puzzle they tried and replay any of them, unrated.
/puzzles/history, Account-only like/puzzles: one row per Attempt, newest first, cursor-paginated like the Game list. Each row shows the date, a small read-only board of the start position, the Puzzle's rating, solved or failed, the rating change, and "last replayed" when set. A "failed only" filter, kept in the URL. Pending Attempts are not listed.history({ cursor?, failedOnly? })andreplay({ puzzleId })on thepuzzlerouter; an unreadable cursor and a not-replayable Puzzle are refused.Seams: S1 (the API through its RPC contract), S3 (the app's router with the API fakes) and S4 (
apps/e2e). Covers stories 39-45 of #440, and stories 1, 9, 11, 15, 39, 43 in a real browser.Acceptance criteria
historylists resolved Attempts newest first with their fields, paginates, and filters to failed.replayof an attempted Puzzle serves it from its start as a Replay and sets "last replayed at"; the History keeps one row for it.replayof a Puzzle never attempted, or unknown, is refused.CONTRIBUTING.md, "The five commands").marked this issue as related to #440
marked this issue as related to #445
mentioned in merge request !554