games: save browser history and show per-game progress

Đang mở
#69 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
45/100
Loại issue
Tính năng
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Lĩnh vực
frontend, testing

Hướng nghiên cứu

Start by reading the existing game implementation under src/features/games/, then inspect issue #58 and the integrated game it provides. Define and validate a separate versioned browser-storage format for completed sessions, with bounded deduplication and safe handling of unsupported or corrupt data and unavailable storage. Add recent-attempt feedback, compatible-result comparisons, and a clear-history control; done means the requested unit and browser tests pass while existing practice history and /api/platform/progress remain unchanged.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

enhancement games help wanted

Part of #24. Depends on #58 and at least one integrated game.

Student problem

Results disappear after leaving a game, so students cannot review practice or see whether they are improving.

Scope

  • Add a separate, versioned and validated browser-storage format under src/features/games/.
  • Record game ID, rules version, mode, difficulty, completion time, duration and clearly defined result counts/status.
  • Bound retained history, deduplicate completed sessions, and handle malformed data or unavailable storage without blocking practice.
  • Show recent attempts and useful per-game feedback. Compare results only across compatible game/rules/mode/difficulty.
  • Explain that history stays on this browser/device and provide a clear-history control.
  • Preserve existing question-practice history and the /api/platform/progress contract; game results do not fit its MCQ schema.
  • Keep guest history available without login. These are personal practice records, not verified rankings or hiring-readiness scores.

Done when

  • Tests cover reload, validation, duplicates, retention, clearing, storage failure and unsupported schema versions.
  • A browser test finishes a game, reloads, finds the saved result and clears it.
  • Unsupported or corrupt data fails safely without affecting existing learning progress.

Account sync, backend persistence and public leaderboards require separate scope.

Ngôn ngữ chính
TypeScript
Star
1
Fork
1
Merge trung bình
8 giờ 58 phút
Pull request đã merge (30 ngày)
37

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của procoderji-com/procoderji

Tất cả issue của procoderji-com/procoderji

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.