wc-archetype-mutation

star 121

The mutation operator for the FIFA World Cup Fantasy evolution engine. Applies small, bounded, feasibility-preserving perturbations to a recombined offspring squad/plan — swap one differential for an adjacent-price alternative, reorder the bench by kickoff, shift one captain-ladder step, try one fixture-swing transfer, nudge one enabler. Mutation rate is low by default and raised on demand by the diversity governor when the population has collapsed. Each mutation stays inside budget/nation/formation feasibility. Use in the mutate stage after recombination, or when wc-population-diversity calls for more exploration.

lyndonkl By lyndonkl schedule Updated 6/11/2026

name: wc-archetype-mutation description: The mutation operator for the FIFA World Cup Fantasy evolution engine. Applies small, bounded, feasibility-preserving perturbations to a recombined offspring squad/plan — swap one differential for an adjacent-price alternative, reorder the bench by kickoff, shift one captain-ladder step, try one fixture-swing transfer, nudge one enabler. Mutation rate is low by default and raised on demand by the diversity governor when the population has collapsed. Each mutation stays inside budget/nation/formation feasibility. Use in the mutate stage after recombination, or when wc-population-diversity calls for more exploration.

wc-archetype-mutation — bounded exploration

The mutation operator from the genetic loop (evolution-protocol.md). After recombination has fused the best blocks, mutation explores the neighbourhood of each offspring — small perturbations that might find a slightly better local arrangement or, when the diversity governor raises the rate, push an offspring away from a collapsed template. It is the explore side of the explore/exploit dial.

Inputs

  • An offspring candidate (post-crossover, feasible) with block tags.
  • mutation_rate (default low, e.g. ~1 perturbation per offspring; raised by wc-population-diversity to ~2–3 when collapse is detected).
  • Live constraints (budget, nation cap, phase) for the feasibility guard.

Mutation moves (pick per the rate; each must keep feasibility)

Move What it does When apt
Differential swap replace one BB4 pick with an adjacent-price, similar-EV alternative of lower ownership exploring the rank axis; diversity-injection toward differential
Enabler nudge swap a BB5 enabler for an equal-price guaranteed starter with a marginally better fixture freeing optionality without touching value blocks
Captain-ladder shift reorder one step of MB2 (promote a different day-2 captain candidate) matchday plans; exploring captaincy variance
Bench reorder re-rank MB3 bench by a refined kickoff/likely-points read improving manual-sub optionality
Fixture-swing transfer for a transfer plan, try one alternative in→out pair targeting a steeper fixture delta exploring A4-style edges
Formation flex shift the XI between two valid formations (e.g. 3-4-3 ↔ 3-5-2) the same 15 supports exploring attack/defence balance

Workflow

- [ ] 1. Read offspring + mutation_rate + constraints
- [ ] 2. Pick `rate` moves, biased by any diversity-injection target passed in (e.g. "push toward differential")
- [ ] 3. Apply each move; re-check feasibility (budget, nation cap, formation, 15-man shape)
- [ ] 4. Reject any move that breaks feasibility or destroys a building block; retry an alternative move
- [ ] 5. Emit the mutated offspring + a mutation log (what changed, why)

Bounds (mutation is small by design)

  • Never a wholesale rebuild. That's the Wildcard / a fresh strategist run, not mutation. Mutation touches ~1 (default) to ~3 (raised) elements.
  • Feasibility-preserving. A mutation that breaks budget/nation/formation is discarded, not repaired (repair is crossover's job; mutation simply tries a different small move).
  • Block-respecting. Mutation perturbs within or at the edge of a block (swap a differential, nudge an enabler) — it does not split a value block (never break the clean-sheet stack as a "mutation").
  • Directed when asked. If wc-population-diversity passes an injection target ("move toward high-variance / differential"), bias move selection that way.

Output

mutated_offspring: <candidate>
mutation_log:
  - move: differential_swap
    change: "BB4: out [player A, 12% owned] → in [player B, 4% owned, similar xEV]"
    rationale: "diversity injection toward differential; raises ceiling variance"
  feasibility_ok: true

Guardrails

  • Keep the default rate low — over-mutation destroys the gains recombination just made (the document's "too much disruption tears apart useful structure").
  • One mutated copy per offspring (don't fan out many mutants unless the diversity governor explicitly asks).
  • Always log the change so lineage stays auditable.
Install via CLI
npx skills add https://github.com/lyndonkl/claude --skill wc-archetype-mutation
Repository Details
star Stars 121
call_split Forks 16
navigation Branch main
article Path SKILL.md
More from Creator