A lot of these matches still saying under 2:5 ═══...

Créé le : 15 septembre 2026

Répondu en utilisant GPT-5.6 Thinking par Chat01

Question

TennisLocks_FINAL_v1163_DEEP_FINAL_PMF_ROUTE_CLEANUP_20260914.txt

A lot of these matches still saying under 2:5

════════════════════════════════════════
🎾 TENNISLOCKS 🔒
OFFICIAL MATCH MODEL
VERSION 3.0
GENERATED 7:32 PM | September 14, 2026
ENGINE Point • Game • Set Probability Model
════════════════════════════════════════

🎯 ATP-CH Rennes Challenger (OUTDOOR) | Best of 3 | Line: 22.5
Tour: ATP-CH | Court speed (CPI): 38
Metadata confidence: HIGH

────────────────────────────────────────
Maxime Janvier vs Sascha Gueymard Wayenburg
────────────────────────────────────────

────────────────────────────────────────
💰 MODEL PICKS:

  • TOP [PROP] Maxime Janvier win 1+ set: probability 82.3% | model odds -464 | status OFFICIAL BET
  • #2 [TOTAL GAMES] OVER 22.5: model pick | settlement 56.5% | status OFFICIAL BET

🟡 LOW CONFIDENCE:

  • Sets 2.5: UNDER 51.2% | forecast only

🚫 NO BETS:

  • Match Winner: NO BET | forecast Maxime Janvier 61.7% | forecast side retained, but betting status is below OFFICIAL BET
    ────────────────────────────────────────

Match type: Both break more, close matchup. Shorter games. (RETURN_RETURN_EVEN)
Risk: 0.15 (LOW)
Pricing data quality: WEAK | opponent-rank samples 7/7 | trust 1.00

PLAYER INTEL
┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
Maxime Janvier Sascha Gueymard Wayenburg
Rank 625 332
Elo 1278 1427
Avg Opp Rank 292 253
Schedule A: MID (trust 1.00, ranks 7) | B: MID (trust 1.00, ranks 7)
Serve Style ace 6.2% ace 13.5%
Momentum RECENT_RESULTS RECENT_RESULTS
Hold % 74.7% 69.8%
Recent-row SPW (raw) 62.0% 54.2%
Dominance Ratio 0.57 0.76
Recent Hold SD 9.0% 22.5%
Break Rate 30.2% 25.3%
1st Srv Win % 70.3% 65.8%
2nd Srv Win % 49.8% 49.2%
1st Srv In % 61.5% 60.5%
Recent-row implied hold77.7% (62.0% SPW) 60.4% (54.2% SPW)

Signals: forecast side retained, but betting status is below OFFICIAL BET

════════════════════════════════════════

🎲 SETS OUTLOOK
[SET RESEARCH REF] CANONICAL_POINT_ROOT | CH/HARD/MAIN/CANONICAL_POINT_STATE_SET_COUNTS_V1144 | read-only, no live blend
[SET INPUTS] SPW A/B 60.5% / 58.2% | Hold A/B 74.7% / 69.8% | route UNIFIED_CURRENT_POINT_ROOT_V1113
[SET TB CAL] not applied | tree P(7-6) 16.4% | raw 16.4% | hist not measured | n null | CANONICAL_POINT_ROOT_NO_HISTORICAL_SET_TB_MUTATOR_V1144 | set-winner margin preserved by construction
[SET AUTHORITY] ACTIVE | BO3_SET_COVERAGE_LENGTHEN_ONLY_IPF_EXACT_SCORE_AUTHORITY_V1160 | Sets Won coverage owns P2/P3; IPF reconciles exact scores with Match Winner
[BO3 COVERAGE MODEL] Sets Won semantics own length margin | Winner x Set Count reconciled by IPF | no direct four-cell subtraction | no corpus P3 target
[BO3 COVERAGE EFFECT] canonical P3 48.8% | final P3 48.8% | delta +0.0pp | coverage cannot shorten canonical root
[BO3 UNDER AUTHORITY] canonical point/game/set root only | recent coverage may soften or overturn Under, never strengthen sweep mass
[BO3 COVERAGE EVIDENCE] A 1+ set 67.1% | B 1+ set 58.5% | requested P3 48.8%
[BO3 FINAL COVERAGE] A 1+ set 82.3% | B 1+ set 66.5% | identity 48.8%
[BO3 WINNER-LANE SPLIT] if A wins, 3-set 45.7% (canonical 45.7%) | if B wins, 3-set 53.7% (canonical 53.7%)
[BO3 EXACT-SCORE RECONCILIATION] IPF preserves Winner + P2/P3 + canonical cell association | minimum exact cell 17.7% | zeroed 2-1 lanes forbidden
[BO3 RECENT SET EVIDENCE] A matches 7 | straight losses 2 | sets 7-12 || B matches 7 | straight losses 3 | sets 6-10
[SET LENGTH ROOT] final Sets Won / Both Win a Set / Over 2.5 identity P3 48.8% | one exact-score PMF
[SET WINNER ALIGN] final winner error 0.0e+0 | final set-count margin error 0.0e+0
[SET EXACT PMF] 2-0 33.5% | 2-1 28.2% | 0-2 17.7% | 1-2 20.5% | final P3 48.8%
[SET ACTION] LOW FORECAST UNDER 2.5 | probability 51.2% | model fair odds -105 | forecast only
[SET BETTING GATE] final exact-score PMF direction always visible | HIGH >= 60.0% = official PICK | MID 55.0%-<60.0% = LEAN | LOW >50.0%-<55.0% = forecast only | no BO3 data-quality confidence cap
[SET FAIR PRICE] Over 2.5 +105 | Under 2.5 -105
[SET TREE DIAGNOSTIC] canonical P(2) 51.2% | canonical P(3) 48.8% | canonical point/game/set tree

📊 Player Stats (Current Live-Source Audit):

  • Serve/return diagnostic: ret2 A/B 50.6% / 56.8% | BP save A/B 58.4% / 37.9%
  • Visible target-surface row coverage: Maxime Janvier through 2026-09-07 [EXACT_POINT_DATE_BOUNDED] | Sascha Gueymard Wayenburg through 2026-09-07 [EXACT_POINT_DATE_BOUNDED] | CURRENT POINT INPUTS ELIGIBLE
  • Live row sources: Maxime Janvier [CURRENT_EXACT_TML_V939 x7] | Sascha Gueymard Wayenburg [CURRENT_EXACT_TML_V939 x7] | date precision A/B TOURNEY_START_DATE x7 / TOURNEY_START_DATE x7
  • Winner point-source reconciliation: MATCH-LEVEL COMPARABLE EB | A MATCH_RATE_ONLY / B MATCH_RATE_ONLY | pricing SPW 62.1% / 55.2% | pricing RPW 34.7% / 39.2%
  • Surface SPW reference (HARD): Maxime Janvier (No verified same-tour surface SPW rate) | Sascha Gueymard Wayenburg (No verified same-tour surface SPW rate) [TA_SURFACE_SPW_RATE_UNAVAILABLE]
  • Surface serve priors: Maxime Janvier Ace 6.7% / DF 6.5% / 1stIn 61.3% | Sascha Gueymard Wayenburg Ace 14.8% / DF 3.9% / 1stIn 61.3% [AUTOFILL_CURRENT_EXACT_THIS_TOUR_364D_PERSISTED_V1076]
  • Maxime Janvier: Hold 74.7% (raw: 77.9%, serve vs this returner) [hold seed]
  • Sascha Gueymard Wayenburg: Hold 69.8% (raw: 58.1%, serve vs this returner) [hold seed]
  • Style: Maxime Janvier [ace 6.2% / ace 6.2%] | Sascha Gueymard Wayenburg [ace 13.5% / ace 13.5%]
  • Recent current-source results (audit): Maxime Janvier W-L 2-5, SS 0-2, Sets 7-12 ; Sascha Gueymard Wayenburg W-L 2-5, SS 2-3, Sets 6-10
  • 1st Srv Win: Maxime Janvier 70.3% | Sascha Gueymard Wayenburg 65.8%
  • 2nd Srv Win: Maxime Janvier 49.8% | Sascha Gueymard Wayenburg 49.2%
  • 1st Srv In: Maxime Janvier 61.5% | Sascha Gueymard Wayenburg 60.5%
  • Raw recent-row SPW: Maxime Janvier 62.0% | Sascha Gueymard Wayenburg 54.2% [diagnostic row aggregate; official pricing uses the exact-point posterior root]
  • Break Rate (from hold): Maxime Janvier 30.2% | Sascha Gueymard Wayenburg 25.3%
  • Dominance Ratio: Maxime Janvier 0.57 | Sascha Gueymard Wayenburg 0.76 [MISMATCH]
  • Recent Hold SD: Maxime Janvier 9.0% | Sascha Gueymard Wayenburg 22.5% | Match: 15.8%
  • Elo (diagnostic only; not official serve authority): Maxime Janvier 29.8%
    Source: Elo_Lookup sheet (Maxime Janvier=1278, Sascha Gueymard Wayenburg=1427)
  • Serve vs this returner (Maxime Janvier): 61.7% | Elo 29.8% (calibrates official serve when induce fires)
  • Recent-row implied hold (diagnostic): Maxime Janvier 77.7% (SPW 62.0%) | Sascha Gueymard Wayenburg 60.4% (SPW 54.2%) (small sample)

Totals Fair Line (canonical structural threshold ref): 24.5 (CDF 50/50) | Full-dist median ref: 24.0
Full-dist range (pricing ref): P10=17 | P50=24 | P90=32
Totals EV (tree mean): 24.6 | Median: 24.0
Projected match duration: ~115 min | 2 sets ~90 min / 3 sets ~142 min | research projection only
Settlement full-dist mode: 19g | settlement density zone: 18-20g 20.7%
All-match median ref: 24.0g | Conditional totals (not picks): E[T|2 sets] 19.8 | E[T|3 sets] 29.7 | alternative 3-set probability 49%
Settlement PMF top exacts: 19g 7.3% | 22g 7.0% | 20g 6.9% | 18g 6.6% | 29g 5.4% | 17g 5.4% | 30g 5.4% | 31g 5.3% [canonical full-match mixture]

========================================

🎯 TOTAL GAMES
[OFFICIAL TOTAL GAMES DECISION] PICK OVER 22.5 | 56.5% | OFFICIAL BET
Final pricing direction: OVER 56.5% from the official cumulative full-match Total Games threshold probability.
Pricing method: all legal full-match score paths are summed against your Total Games line. No single exact score controls the pick.
At 22.5: Over 56.5% | Under 43.5%
Total Games probability authority: ONE canonical joint score+games PMF | no second threshold recalibration is applied after the current length root.
Set-count decomposition at 22.5:
2-set lane: 51.2% match mass | P(Over | 2 sets) 15.9% | contributes 8.1pp raw Over mass
3-set lane: 48.8% match mass | P(Over | 3 sets) 99.3% | contributes 48.4pp raw Over mass
Combined no-push P(Over 22.5) = 56.5% from all lanes.
First-server sensitivity (diagnostic only): A serves first -> Over 56.6% | B serves first -> Over 56.5% | mean-total gap 0.04g
Projected total-games distribution: fair line 24.5 | mean 24.6 | median 24 | largest single exact bucket 19g (7.3%, not a majority and not the O/U authority)
Exact-total concentration: dominant 3-game cluster 18-20g = 20.7% | cluster side UNDER at 22.5
OVER threshold mass is spread across 17 exact totals | strongest OVER exact 29g = 5.4% unconditional / 9.6% of the OVER side | effective support 21.4 totals.
Shape note: the Over mass is spread across longer matches; the densest exact totals sit under the line. Official totals still use your sheet line and the cumulative tree, not a local-cluster veto.
Unconditional pricing distribution: 80% range 17-31 | SD 5.8 | mode 19g (7.3%) | leaders 19g 7.3% | 22g 7.0% | 20g 6.9% | 18g 6.6% | 29g 5.4%
########################################
🎯 PROP PROJECTIONS 🎯
########################################

📊 Maxime Janvier - Player Props:
Games Won: mean 12.9 | median 13 | mode 12 | full-match distribution
1st Set Games Won: 5.20 projected
Sets Won: BET 1+ SET | 82.3% | HIGH
Serve Games: not requested | enter a service prop line to price
Serve Points Played: not requested | enter a service prop line to price
Serve Points Won: not requested | enter a Serve Points Won line to price
Aces: not requested | enter a Aces line to price
Double Faults: not requested | enter a Double Faults line to price
Breaks Won: not requested | enter a Breaks Won line to price
Break Points Created: not requested | enter a Break Points line to price
BP Conversion: not requested | enter a Break Points line to price
Opp BP Save: not requested | enter a Break Points line to price
Opponent Matchup: opp return 35% | context only; official pricing uses the final match tree
Historical sample: 14.1 service games | projected Games Won CV: 26%

📊 Sascha Gueymard Wayenburg - Player Props:
Games Won: mean 11.7 | median 12 | mode 12 | full-match distribution
1st Set Games Won: 4.71 projected
Sets Won: LEAN UNDER 1.5 SETS | 61.7% | MEDIUM
Serve Games: not requested | enter a service prop line to price
Serve Points Played: not requested | enter a service prop line to price
Serve Points Won: not requested | enter a Serve Points Won line to price
Aces: not requested | enter a Aces line to price
Double Faults: not requested | enter a Double Faults line to price
Breaks Won: not requested | enter a Breaks Won line to price
Break Points Created: not requested | enter a Break Points line to price
BP Conversion: not requested | enter a Break Points line to price
Opp BP Save: not requested | enter a Break Points line to price
Opponent Matchup: opp return 22% | context only; official pricing uses the final match tree
Historical sample: 10.7 service games | projected Games Won CV: 34%

🎲 Match-Level Context:
Sets Played: LOW FORECAST UNDER 2.5 | P(2 sets) 51.2% / P(3 sets) 48.8% | projected 2 sets
3-set match / both players win a set: YES 48.8% | NO 51.2% | no betting action
Exact match-score paths: Maxime Janvier 2-0 33.5% | Maxime Janvier 2-1 28.2% | Sascha Gueymard Wayenburg 2-0 17.7% | Sascha Gueymard Wayenburg 2-1 20.5%
If forecast winner Maxime Janvier wins: straight sets 54.3% | Sascha Gueymard Wayenburg steals one set 45.7% conditional (28.2% of all match paths)
Individual win 1+ set: Maxime Janvier 82.3% | Sascha Gueymard Wayenburg 66.5% | identity input for 3-set probability
Straight-set loss chance: Maxime Janvier 17.7% | Sascha Gueymard Wayenburg 33.5%
Games/aces/breaks use the full match tree, not a single 2-0 or 2-1 scoreline.
Surface: HARD | Tour ace reference 7.1% | double-fault reference 4.1%

We just fixed the sets played but there’s still loud of issues within there that still need fixed and removed

Réflexion

Resource uri: /response/turn3 Showing 694 of 1022 lines. Response output was truncated at a line boundary to fit the tool response budget.

undefined

Réflexion

Resource uri: /response/turn4 Showing 256 of 256 lines.

undefined

Réflexion

Resource uri: /response/turn5 Showing 272 of 272 lines.

undefined

Réflexion

Patched and tested winner-equivalent sets logic and syntax

Worked for 4m 52s

Réponse

Yes — the remaining problem was broader than the Sets Played PMF fix. The publisher was still turning every 50–55% majority into a directional LOW FORECAST, which is why 51.2% kept showing up loudly as “UNDER 2.5.” The original code explicitly classified >50%–<55% as LOW and then exposed that side throughout the report. (TennisLocks_FINAL_v1163_DEEP_FINAL_PMF_ROUTE_CLEANUP_20260914.txt)

I cleaned that up in v1164. BO3 Sets Played now works like this: 60%+ = official pick, 55–<60% = lean, below 55% = PASS / no clear length edge. The underlying P2/P3 probabilities are still shown for audit, but a 51.2/48.8 split no longer becomes a public “Under” forecast.

I also removed the second source of the problem: Match-Level Context was independently taking whichever side was barely above 50% and printing projected 2 sets or projected 3 sets. (TennisLocks_FINAL_v1163_DEEP_FINAL_PMF_ROUTE_CLEANUP_20260914.txt) The top board was separately putting those same weak directions under 🟡 LOW CONFIDENCE. (TennisLocks_FINAL_v1163_DEEP_FINAL_PMF_ROUTE_CLEANUP_20260914.txt) Both are neutralized below 55%.

For your Janvier/Gueymard example, the output will now behave more like:

text
Sets Played: PASS | P(2 sets) 51.2% / P(3 sets) 48.8% | no clear length edge

instead of:

text
LOW FORECAST UNDER 2.5 projected 2 sets

I also fixed another contradiction from your sample: BO3 Under 1.5 Sets is exactly equivalent to losing/winning the match, depending on the player. So Sascha Under 1.5 Sets at 61.7% should not appear as a separate MEDIUM Sets Won lean while Maxime Match Winner at the same 61.7% is a NO BET. Those winner-equivalent Sets Won lines are now displayed as equivalent context only, with no separate Sets Won action.

Finally, I repaired the stale internal release identifier—the file header was v1163 while the runtime build tag was still identifying an older v1159 build—and ran a JavaScript syntax check on the patched release successfully.

Download the patched TennisLocks v1164 file

Partager cette Q&R