Derive the walkthrough from exploration with lexvm solve --write
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 49/100
- Issue type
- Feature
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- typescript, yaml
Research direction
Start with packages/engine/src/explore.ts to see how shortestWin is produced, then read packages/cli/src/commands/check.ts and packages/cli/src/generate/pipeline.ts to follow CLI commands and the verify gate. Check docs/spec/content-pack.md section 14 and docs/authoring/pipeline.md for the authoring rules. Done when solve can print and safely write a winning path, generate can derive one, and the documented acceptance criteria pass.
Written by the indexing model from the issue text.
Description
Context
Every pack must ship a walkthrough, and lexvm check replays it. Writing a correct 60-90 step walkthrough requires simulating the game state over the whole story. That is the hardest part of pack generation for LLMs, and the part repair loops converge on most slowly: the model must predict a path the engine can compute exactly. explore already finds the shortest winning path using only actions the player UI offers (ExploreReport.shortestWin): 69 steps for the noir pack against its authored 74, and 11 for the demo pack against 17.
Scope
- New CLI command
lexvm solve <pack> [--write] [--max-states N]: runs exploration and prints the shortest winning path as canonical commands; with--writeit replaceswalkthroughin the pack source (the file that defines it), preserving the rest of the YAML. lexvm generate: option to skip the walkthrough in the logic stage and fill it withsolvebefore the verify gate. The generated walkthrough is still replayed bycheck.- Prompt kit and authoring guide: document that an authored walkthrough remains the intended solution and is preferred when present;
solveis the fallback for generated packs. - Diagnostic when an authored walkthrough is much longer than the shortest win (possible detours) as info.
Acceptance criteria
-
lexvm solve packs/locked-studyprints a winning path thatcheckreplays successfully. -
--writeproduces a pack whosecheckresult is unchanged apart from the walkthrough length. - Incomplete exploration without a win reports a clear error and does not write.
-
lexvm generatecan run with walkthrough derivation enabled; tests with a fake LLM cover it. - Spec, authoring guide and pipeline docs updated; prompts regenerated.
References
- packages/engine/src/explore.ts
- packages/cli/src/commands/check.ts
- packages/cli/src/generate/pipeline.ts
- docs/spec/content-pack.md (section 14)
- docs/authoring/pipeline.md
- Dominant language
- TypeScript
- Stars
- 0
- Forks
- 0
- Avg merge
- 28m
- Merged PRs (30d)
- 2
Getting set up
- No Dockerfile or Docker Compose file
- Has a 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 nullthrone/lexvm
-
area: web good first issue priority: low type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
nullthrone/lexvm#49 ·
-
area: infra good first issue priority: low type: chore
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
nullthrone/lexvm#41 ·
-
area: engine good first issue priority: low type: feature
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
nullthrone/lexvm#27 ·
-
area: web priority: low type: research
Difficulty 5/5 Over a week Newbie friendliness 35/100
nullthrone/lexvm#63 ·
-
area: infra area: web priority: medium type: chore
Difficulty 5/5 Over a week Newbie friendliness 38/100
nullthrone/lexvm#62 ·
All issues in nullthrone/lexvm
Similar issues
-
area:desktop bug documentation
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
anthropics/claude-code#104801 ·
Maintainers usually reply within 1 day
-
check:passed streams:add
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
spudly/design-system#110 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 1 day
-
[Bug]: REST API URL starting with "http" but no scheme (e.g. httpbin.org/get) is not given an http:// prefixPossibly taken @ItsDeadlyProgrammer claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
appsmithorg/appsmith#42471 · 1 comment ·
Maintainers usually reply within 2 days