Yeah — that blanket LOW-to-PASS rule was too wide....

Créé le : 12 mars 2026

Répondu en utilisant GPT-5.4 Thinking par Chat01

Question

Tennislocks_v17.10.0_line_mass_refactor_multichain_test_patched_updated.txt

Yeah — that blanket LOW-to-PASS rule was too wide.[1]
The tighter fix is to kill only LOW-confidence OVERs when the file’s own totals context says the match is 2-set heavy and the entered line is sitting on or near the modeled landing zone through p3, med2, nearLineMass, and the mode fields already used elsewhere in totals logic.[1]

Patch spot

Do this inside getTotalsConfLabel(...).[1]
Add one local for modeAdj in the shape-fields area, then add the veto block after LEAN caps and before Force LOW policy.[1]

Add this local

Put this near the other shape fields, alongside p3, med2, med3, splitGap, risk, and band.[1]

js
var modeAdj = Number.isFinite(ctx.modeAdj) ? Number(ctx.modeAdj) : Number.isFinite(ctx.mode) ? Number(ctx.mode) : NaN;

Add this veto

This version does not pass every LOW play.
It only passes a LOW Over when the file is already signaling a 2-set dominant shape via p2 = 1 - p3, near-line congestion via nearLineMass, and a landing zone sitting right on the line via modeAdj or med2.[1]

js
// ---- LEAN pick caps ---- if (pick.indexOf('LEAN') === 0) { if (pTmp < 0.56) tier = 'LOW'; else if (ctx.reason === 'cluster tiebreak' && tier === 'HIGH') tier = 'MID'; } // ---- Alt-line veto: fake OVER in a 2-set / near-line shape ---- var p2 = Number.isFinite(p3) ? (1 - p3) : NaN; var nearMode = Number.isFinite(modeAdj) && Number.isFinite(line) && Math.abs(modeAdj - line) <= 1.0; var nearTwoSetCenter = Number.isFinite(med2) && Number.isFinite(line) && Math.abs(med2 - line) <= 1.0; if (side === 'OVER' && pick !== 'PASS' && tier === 'LOW' && Number.isFinite(p2) && p2 >= cfg.p2Gate && nearLineMass >= 0.14 && (nearMode || nearTwoSetCenter)) { return 'PASS'; } // ---- Force LOW policy ---- if (ctx && ctx.forceTotalsTierLow && tier !== 'PASS') tier = 'LOW'; return tier; }

Why this is the right one

That is narrower because the file already treats p3/p2 as the set-shape signal, med2 as the 2-set center, modeAdj as the most likely landing proxy, and nearLineMass as congestion around the typed line.[1]
So this patch only kills the exact bad case you described: a cheap Over survives as LOW, but the broader structure says the match is mostly two sets and the line is parked right on the most likely scoring pocket.[1]

U might have to refine the logic bc my script works just as intended just need this tiny patch I don’t want to mess up anything on my script so look at the place and how it works

Update my script then send it as a downloadable txt link

Réflexion

bash -lc sed -n '15055,15218p' /mnt/data/Tennislocks_v17.10.0_line_mass_refactor_multichain_test_patched_updated_totals_veto_patch.txt

Thought for 2m 37s

Réponse

Done — I patched your uploaded script (Tennislocks_v17.10.0_line_mass_refactor_multichain_test_patched_updated.txt) with:

  • the new modeAdj local inside getTotalsConfLabel(...)
  • the narrow LOW-Over veto block placed after LEAN caps and before Force LOW

Download the updated txt here:

Download the patched script

I only touched that function and left the rest of the script alone.

Partager cette Q&R