# V2 Puzzle-Solving Bot

`V2PuzzleSolvingBot` covers `TODOS.phase-72.72.19.1.6`: it can attempt
interactive puzzles with brute-force approaches and heuristic approaches while
detecting unsolvable puzzles.

## Runtime Surface

- `FV2PuzzleBotPuzzleProfile` defines interactive puzzle state-space and
  solvability metadata.
- `FV2PuzzleBotAttemptPlan` selects a brute-force or heuristic strategy with a
  bounded attempt budget.
- `RunPuzzleSolvingBot` executes puzzle attempts through the headless
  `V2BotHarness` puzzle script.
- `FV2PuzzleBotPuzzleResult` records solved puzzle results, unsolvable
  detection, attempts used, and failure tags.
- `FormatPuzzleSolvingBotReport` emits a compact solved and unsolvable summary
  for QA dashboards.

## QA Behavior

The puzzle bot is deterministic and state-space oriented. It does not invent
puzzle gameplay; it proves the playtesting harness can attempt interactive
puzzles, use brute-force approaches, use heuristic approaches, detect unsolvable
puzzles, produce solved puzzle results, and report through a headless harness
puzzle script.

Required capabilities: attempt interactive puzzles, brute-force approaches,
heuristic approaches, detect unsolvable puzzles, headless harness puzzle script,
and solved puzzle results.

## Validation Commands

```bash
python3 V2/ue/Tools/check-v2-puzzle-solving-bot.py
python3 V2/ue/Tools/check-v2-combat-bot.py
python3 V2/ue/Tools/check-v2-navigation-stress-test-bot.py
python3 V2/ue/Tools/check-v2-bot-coverage-mapping.py
python3 V2/ue/Tools/check-v2-random-exploration-bot.py
python3 V2/ue/Tools/check-v2-bot-harness.py
python3 V2/ue/Tools/check-v2-tests-module.py
python3 V2/ue/Tools/check-v2-ci-workflow.py
python3 -m json.tool V2/ue/Content/V2/QA/PuzzleSolvingBot_V2_Contract.json
python3 -m json.tool V2/ue/Build/Horde/v2-buildgraph-job.json
python3 V2/tools/validate-v2-docs.py
```
