id: 1dd41f6ce3264ce0a44c459b76ca1762
parent_id: 
item_type: 1
item_id: 16ee20ba74264eb2a2bb0a20a9cea103
item_updated_time: 1785389413287
title_diff: "[{\"diffs\":[[1,\"Gen5 Sanity Check Performance Tracker\"]],\"start1\":0,\"start2\":0,\"length1\":0,\"length2\":37}]"
body_diff: "[{\"diffs\":[[1,\"# Gen5 Sanity Check Performance Tracker\\\n\\\nTrack BB/100 (candidate avg) across iterations. 9-max, 4 CAND + 5 OPP, 75 BB.\\\n\\\n## Iteration History\\\n\\\n| Model | Postflop | Preflop | Range | Date | vs Gen2 | vs Gen3 | vs G48 | vs Mixed | Harrington | Notes |\\\n|-------|----------|---------|-------|------|---------|---------|--------|----------|------------|-------|\\\n| CF v6 (buggy) | — | — | — | 07-22 | — | **-321** | — | — | — | Buggy counterfactual EVs |\\\n| CF v7 (fixed) | — | — | — | 07-22 | — | **-209** | — | — | — | No aggressive masking |\\\n| CF v7 + mask | — | — | — | 07-22 | — | **-20.5** | — | — | — | Aggressive masking added |\\\n| Q-reg v1 | — | — | — | 07-22 | — | **-47.2** | — | — | — | G48 teacher data only |\\\n| **Q-reg v2 (prod v6/v10)** | v6 | v10 | none | 07-22 | **+23.7** | **+12.1** | — | — | 48/53 | Warm-start CF v7 + combined data. OLD test setup (5-bot). |\\\n| v8/v12 (pre-fix) | v8 | v12 | v11 | 07-29 | **-14.4** | **-12.6** | +4.0 | 0* | 52/53 | From scratch, self-play only, min_raise bug |\\\n| v8/v12 (post-fix) | v8 | v12 | v11 | 07-30 | **-0.1** | **+0.0** | pending | pending | 52/53 | min_raise fix → break-even. Train-inference mismatch. |\\\n| prod v6/v10 (post-fix) | v6 | v10 | none | 07-30 | **-0.1** | **0.0** | pending | pending | 52/53 | Also break-even! Bug fix exposed train-inference mismatch. |\\\n| v9/v13 (warm-start, bug data) | v9 | v13 | v11 | 07-30 | pending | pending | pending | pending | pending | Warm-start from v6/v10 on combined_v2. Still bug data. |\\\n\\\n## Critical Insight: Train-Inference Mismatch (2026-07-30)\\\n\\\nThe min_raise fix eliminated 556 forced-call conversions/1000h, but ALL existing models were trained on bug-affected data. The models learned policies assuming their raises would be silently converted to calls. Now that raises actually execute, the models play lines they never learned. This is why both v6/v10 (production) and v8/v12 dropped to break-even.\\\n\\\n**Solution**: Re-collect self-play data WITHOUT the bug (selfplay_v2, in progress). Then retrain all models on clean data.\\\n\\\n## Correlation vs Play Quality\\\n\\\n| Model | Corr | vs Gen3 BB/100 |\\\n|-------|------|----------------|\\\n| Q-reg v1 | 0.605 | -47.2 |\\\n| Q-reg v2 (=v6) | 0.494 | +12.1 (old setup) / 0.0 (new setup, post-fix) |\\\n| postflop v8 | 0.581 | +0.0 (post-fix) |\\\n| postflop v9 | 0.594 | pending |\\\n| preflop v10 | 0.904 | — |\\\n| preflop v12 | 0.438 | — |\\\n| preflop v13 | 0.925 | pending |\\\n\\\n## Recipe for Clean Iteration\\\n\\\n1. Wait for selfplay_v2 collection (clean, no min_raise bug)\\\n2. Combine: single_v1 teacher (2.2M, clean) + selfplay_v2 (~2.3M, clean) = ~4.5M clean\\\n3. Warm-start from v9/v13 (best available initialization)\\\n4. Q-regression, --range-model range_v11\\\n5. Run sanity check, record results here\\\n\\\n## Key Lessons\\\n\\\n1. **Warm-start is critical**: Every from-scratch model was terrible. The breakthrough came from warm-starting.\\\n2. **Combined data beats pure self-play**: Teacher + self-play outperforms either alone.\\\n3. **Aggressive masking at deep stacks is necessary**: Without it, the model over-values big bets.\\\n4. **Correlation metric is unreliable**: Higher corr does not mean better play.\\\n5. **min_raise bug caused 556 forced-call conversions/1000 hands**: Preflop mask ignored engine's dynamic min_raise.\\\n6. **Train-inference mismatch**: Fixing the bug exposed that all models trained on bug data. Must re-collect and retrain.\"]],\"start1\":0,\"start2\":0,\"length1\":0,\"length2\":3358}]"
metadata_diff: {"new":{"id":"16ee20ba74264eb2a2bb0a20a9cea103","parent_id":"5a06903f","latitude":"0.00000000","longitude":"0.00000000","altitude":"0.0000","author":"","source_url":"","is_todo":0,"todo_due":0,"todo_completed":0,"source":"joplin-desktop","source_application":"net.cozic.joplin-desktop","application_data":"","order":1785386171342,"markup_language":1,"is_shared":0,"share_id":"","conflict_original_id":"","master_key_id":"","user_data":"","deleted_time":0},"deleted":[]}
encryption_cipher_text: 
encryption_applied: 0
updated_time: 2026-07-30T05:39:24.859Z
created_time: 2026-07-30T05:39:24.859Z
is_locked: 0
type_: 13