Bots that visibly write code at a human pace
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 45/100
Research direction
Start with backend/server.js and trace how bot submissions currently emit code-update; also read the existing bot difficulty settings and the tests run by npm test. The goal is a pure seeded timeline whose replay yields the reference solution, while keeping win rates stable; validate with node scripts/check-boundary.js and include a screen recording and before/after win rates in the pull request.
Written by the indexing model from the issue text.
Description
Bot battles feel lifeless. The bot's editor stays blank (its code is an empty string in backend/server.js) until a timer fires and it submits a finished solution all at once. Players can tell instantly that nobody is there.
Goal
Bots that look like they are coding: the opponent editor fills in gradually, with pauses, small mistakes and test runs, at a pace that matches the bot's difficulty.
Design
- Build a typing plan from the bot's reference solution before the battle starts: a timeline of insertions, pauses (longer at the start of a function or a loop) and the occasional typo fixed a moment later.
- Easier bots plan slower, pause more, and may submit a failing version first, then fix it.
- Emit the plan through the same throttled
code-updatepath a human uses, so the frontend needs no special case. - Total time follows the bot's difficulty settings, with randomness so two battles against the same bot are not identical.
- Bots never "react" to the player's code. Their timeline depends only on the problem, the difficulty and a seed.
Definition of done
- A pure, seeded function that turns a solution into a timeline, with tests proving that replaying the timeline produces exactly the reference solution.
- A screen recording of a bot battle in the pull request.
- Bot win rates by difficulty before and after, so the change does not quietly make bots easier or harder.
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
-
Clinic sharing: fast sync refusal message suggests Delete Data, which only developer builds haveOpenbug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
avniproject/avni-client#2228 ·
-
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
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
fable-compiler/Fable#5157 ·
Maintainers usually reply within 1 day
-
New tool: PaperBananaPossibly taken @github-actions claimed this today. Opensubmission triage
Difficulty 1/5 Under an hour Newbie friendliness 75/100
kausalflow/tools#243 · 1 comment ·
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