Status: ready-for-dev
As a developer, I want a solver script that pre-computes attempt counts for every target word using multiple algorithms, So that word difficulty scores are data-driven, not manual estimates.
Multi-algorithm solver: Given the solver script runs against the word bank, when it processes each target word with at least two solving algorithms, then it records attempt counts and computes an aggregated difficulty score per word.
Writes updated word bank: Given the solver completes, when it writes data/word-bank.json, then every target has a real difficulty value replacing the default 3.0.
Removes unsolvable words: Given a word is not solvable within 6 attempts by any algorithm, when the solver processes it, then that word is flagged or removed from the target set.
Shared types: Given the solver is TypeScript, when it imports types from shared/, then it uses the same WordBank and TargetWord interfaces as the server.
[ ] Task 1: Initialize solver package (AC: 4)
solver/package.json with TypeScript + tsx + @wordle/shared dependencysolver/tsconfig.jsonsolver to root workspace[ ] Task 2: Implement solver algorithms (AC: 1, 3)
solver/src/index.ts — orchestrates solvers, aggregates results, writes outputsolver/src/entropy.ts — entropy/information-theory based solversolver/src/minimax.ts — minimax or alternative solver[ ] Task 3: Test and run solver (AC: 2)
data/word-bank.jsondifficulty = (entropyAttempts + minimaxAttempts) / 2
solver/package.json, solver/tsconfig.jsonsolver/src/index.ts, solver/src/entropy.ts, solver/src/minimax.tspackage.json to add solver workspace