Classic Fruits 3×3

FieldCurrent value
Game IDclassic-fruits-3x3
GDDgdd/classic-fruits-3x3-gdd.md
Unique presentationgdd/sevens-jackpot-presentation.md
Math Spec (legacy v1)math/classic-fruits-3x3-math-spec.md
Math Spec (draft v2)math/classic-fruits-3x3-v2-math-spec.md
GDD lifecycledraft target 0.2.0 — SEVENS jackpot design
Math lifecyclev2-draft-0.1 implements GDD 0.2.0; frozen v1 preserved as superseded baseline
ImplementationWired into parity, canonical-hash and publishing paths; not published, not served
Config SHA-256 (v2 draft)f429ff05acdd305fb2880066bbfa897492dea56006728b4db9c8941371ec552c
Config SHA-256 (v1 frozen)735ef19c8acee914c04aca048e36f54296538c94653efe14cd916aac6fe69efa
Backend commitf4cfa83a3560cfdad92bc667fbb8670c9d30599c
Canonical config (v2 draft)backend/libs/mathengine/games/classic_fruits_3x3_v2/classic-fruits-3x3-v2.yaml
Canonical config (v1 frozen)backend/libs/mathengine/games/classic_fruits_3x3/classic-fruits-3x3.yaml

Legacy frozen math

RTP:            95.3967%
Hit frequency:  33.4839%
Sigma:          2.574029
Max win:        65× reachable
State space:    512

Draft v2 math — measured

v2-draft-0.1 implements GDD 0.2.0: five fixed paylines, nine regular symbols, no Wild, and a count-anywhere 7/8/9 SEVENS jackpot paid beside the line wins. The pack is exactly enumerable (70 stops per reel, 343,000 states), so these are closed-form figures, not estimates:

RTP:            96.068513%   (lines 95.077259% + jackpot 0.991254%)
Hit frequency:  11.748980%   (1 in 8.51)
Sigma:          4.323568
Max win:        1300× reachable, ceiling never truncates it
7 SEVENS:       1 in 19,056   Major  50×
8 SEVENS:       1 in 57,167   Grand 250×
9 SEVENS:       1 in 343,000  Super 1000×

Against the GDD's 96.08% reference target: −0.0115 pp. A 10,000,000-round run reproduces the enumeration — RTP 95.97038%, 95% CI [95.70550%, 96.23526%], 0.73 σ from exact, 1300× observed — see the Draft v2 Math Spec and the report at evidence/simulation/2026-08-23-draft-v0.1-10m.json. The 10M run is a measurement. It is not balancing, not a freeze and not certification.

Runtime status

Wired and graded, deliberately not served:

  • registered in the canonical pack-hash gate, the reference↔runtime parity corpus (six vectors executed from both sides) and the math-studio authoring registry, whose preset canonicalizes to the identical config hash;
  • payout composition, replay identity, forced-grid path and no-double-crediting verified through the real spin orchestrator, including against live PostgreSQL;
  • the SEVENS jackpot reaches the client as wins[].type: "jackpot" and as jackpot_symbols / jackpot_payouts in the config contract — the word "scatter" reaches the player nowhere.

Nothing serves it to a player. No migration seeds it, no config cache resolves it, no dev gate admits it; the Game ID classic-fruits-3x3 still resolves to frozen v1.

Known blockers

  • Not frozen and not published. Switching DEV to v2 is a separate, explicit decision.
  • Hit frequency 11.75% and σ 4.32 have not been accepted by Product; the GDD sets no target for either. This is the one genuinely open math question.
  • wins[].payout on a line entry is the award for one payline and must not be summed; documented in openapi.yaml and GDD §5 rather than repriced, because the units are the same for every line game.
  • GDD §7 and §8 still carry the open "confirm against a captured reference round" sentences for the payline-division rule and the 1300× composition.
  • The unique-mechanic presentation gate remains open until moving Visual Refs, backend receipts and deterministic DEV scenarios are approved.
  • No PAR sheet, no certification evidence, no compliance review.
  • Frozen v1 must remain unchanged as historical evidence.

Evidence routing

  • evidence/exact/ — exact calculation artifacts.
  • evidence/simulation/ — aggregate simulation reports and manifests.
  • evidence/parity/ — reference/runtime comparison.
  • evidence/par-sheet/ — generated PAR sheets.
  • evidence/certification/ — certification reports.
  • test-vectors/ — deterministic portable fixtures.