Add progressive hints to practice problems
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
- Issue type
- Feature
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- javascript, next.js, node.js
- Domain
- backend, frontend, full-stack, testing
Research direction
Read backend/arena/docs/problems.md and backend/arena/scripts/validate-problems.js to understand the problem format and validation, then trace how practice problems and battle payloads are assembled from frontend/pages/problems/[slug].js and frontend/pages/battle.js. Add and document optional hints, validate them, display them one at a time only in practice, and ensure battle responses omit them. Add examples for five problems and tests for validation and battle payloads; run npm test and node scripts/check-boundary.js.
Written by the indexing model from the issue text.
Description
Players who are stuck get nothing between the examples and giving up. Problems have no hints field today.
What to do
- Add an optional
hintsfield to the problem format: an array of short strings, from gentle nudge to near-solution. Document it inbackend/arena/docs/problems.md. - Teach
backend/arena/scripts/validate-problems.jsto accept it and reject empty or non-string hints. - In practice (
frontend/pages/problems/[slug].js), show a "Show hint" button that reveals one hint at a time. - Hints must not be available during ranked battles (
frontend/pages/battle.js). Make sure the backend does not send them to battle clients at all, not just hide them in the UI. - Write hints for at least five existing problems as examples.
Definition of done
- Hints appear one by one in practice and never in a battle response (check the network payload).
- Tests cover the validator and the battle payload.
npm testandnode scripts/check-boundary.jspass.
- Dominant language
- JavaScript
- Stars
- 0
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from sennaicodes/codearena
-
Add issue and pull request templatesMay be free again @franciscorodr26 claimed this 17 days ago, and no pull request is open. Opendocumentation good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
sennaicodes/codearena#13 · 1 comment ·
-
enhancement help wanted
Difficulty 5/5 Over a week Newbie friendliness 45/100
sennaicodes/codearena#34 ·
-
enhancement help wanted
Difficulty 5/5 Over a week Newbie friendliness 35/100
sennaicodes/codearena#33 ·
-
enhancement help wanted
Difficulty 5/5 Over a week Newbie friendliness 45/100
sennaicodes/codearena#32 ·
-
enhancement help wanted
Difficulty 5/5 Over a week Newbie friendliness 38/100
sennaicodes/codearena#31 ·
All issues in sennaicodes/codearena
Similar issues
-
bug confirmed issue
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
open-webui/open-webui#33196 · 2 comments ·
Maintainers usually reply within 1 day
-
area: apple-music area: build-release bug effort: small priority: high
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
ChristianTabor/Argon#32 ·
Maintainers usually reply within 1 day
-
0️⃣ phase/new
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100