OWF FINAL COMMAND RUNNER LOG
============================
Started: 2026-05-05 00:49:39

OWF FINAL COMMAND RUNNER
========================
Mode: Auto-fail protected
Rule: Stop immediately if any protected step fails.


RUNNING: STEP 12AR — Overgenerate Candidate Pool Engine
------------------------------------------------------------
STEP 12AR OVERGENERATE CANDIDATE POOL ENGINE
===========================================
Target Candidates: 1000
Generated Candidates: 1000
Attempts: 139305
Output: /root/outputs/raw_lineups.csv
Report: /root/outputs/overgenerate_candidate_pool_report.csv
STATUS: PASS

STATUS: PASS
STEP 12AR — Overgenerate Candidate Pool Engine completed successfully.

RUNNING: STEP 12AM — Portfolio Grade Gate
------------------------------------------------------------
Detected raw_lineups.csv columns:
P1, P2, C, 1B, 2B, 3B, SS, OF1, OF2, OF3, Salary, P1_team, P1_salary, P1_game, P1_opponent, P2_team, P2_salary, P2_game, P2_opponent, C_team, C_salary, C_game, C_opponent, 1B_team, 1B_salary, 1B_game, 1B_opponent, 2B_team, 2B_salary, 2B_game, 2B_opponent, 3B_team, 3B_salary, 3B_game, 3B_opponent, SS_team, SS_salary, SS_game, SS_opponent, OF1_team, OF1_salary, OF1_game, OF1_opponent, OF2_team, OF2_salary, OF2_game, OF2_opponent, OF3_team, OF3_salary, OF3_game, OF3_opponent, StrategyTag, CeilingPath, PrimaryStackTeam, PrimaryStackCount, TeamStackSummary, PrimaryGame, PrimaryOpponent, BringBackCount, MaxGameStackCount, CorrelationTag, GameStackTag, GameEnvironmentTag, HitterTeamSummary, HitterGameSummary, total_salary, total_projection, total_ceiling, total_ownership, avg_ownership, stack_score, step_12ar_lineup_number, step_12ar_source, step_12ar_signature, step_12ai_quality_score, step_12ai_quality_label, step_12ai_detected_salary, step_12ai_detected_projection, step_12ai_detected_ceiling, step_12ai_detected_ownership, step_12ai_detected_stack_score, step_12ai_structure_score

STEP 12AM FIELD MAPPING
=======================
Score Column: step_12ai_quality_score
Salary Column: Salary
Projection Column: total_projection
Ceiling Column: total_ceiling
Ownership Column: avg_ownership
Stack Column: stack_score
Structure Column: step_12ai_structure_score
Score Scale Mode: already_100_scale
Raw Score Min: 127.401
Raw Score Max: 252.806
Normalized Score Min: 127.401
Normalized Score Max: 252.806

STEP 12AM PORTFOLIO GRADE REPORT
================================
Total Lineups: 1000
Elite: 1000
Strong: 0
Playable: 0
Fallback: 0
STATUS: PASS
Portfolio quality gate passed.
Report created: /root/outputs/portfolio_grade_report.csv

STATUS: PASS
STEP 12AM — Portfolio Grade Gate completed successfully.

RUNNING: STEP 12AQ — Unique Lineup Recovery Engine
------------------------------------------------------------
Detected raw_lineups.csv columns:
P1, P2, C, 1B, 2B, 3B, SS, OF1, OF2, OF3, Salary, P1_team, P1_salary, P1_game, P1_opponent, P2_team, P2_salary, P2_game, P2_opponent, C_team, C_salary, C_game, C_opponent, 1B_team, 1B_salary, 1B_game, 1B_opponent, 2B_team, 2B_salary, 2B_game, 2B_opponent, 3B_team, 3B_salary, 3B_game, 3B_opponent, SS_team, SS_salary, SS_game, SS_opponent, OF1_team, OF1_salary, OF1_game, OF1_opponent, OF2_team, OF2_salary, OF2_game, OF2_opponent, OF3_team, OF3_salary, OF3_game, OF3_opponent, StrategyTag, CeilingPath, PrimaryStackTeam, PrimaryStackCount, TeamStackSummary, PrimaryGame, PrimaryOpponent, BringBackCount, MaxGameStackCount, CorrelationTag, GameStackTag, GameEnvironmentTag, HitterTeamSummary, HitterGameSummary, total_salary, total_projection, total_ceiling, total_ownership, avg_ownership, stack_score, step_12ar_lineup_number, step_12ar_source, step_12ar_signature, step_12ai_quality_score, step_12ai_quality_label, step_12ai_detected_salary, step_12ai_detected_projection, step_12ai_detected_ceiling, step_12ai_detected_ownership, step_12ai_detected_stack_score, step_12ai_structure_score

Detected player columns:
P1, P2, C, 1B, 2B, 3B, SS, OF1, OF2, OF3

STEP 12AQ UNIQUE LINEUP RECOVERY ENGINE
=======================================
Total Input Lineups: 1000
Elite: 1000
Strong: 0
Playable: 0
Fallback: 0
Max Fallback Allowed: 10

STEP 12AQ FINAL REPORT
======================
Final Lineups: 1000
Fallback Used: 0
Duplicates: 0
5-Hitter Rule Failures: 0
Max Team Hitters Found: 5
Duplicate / Blank Candidates Skipped: 0
5-Hitter Candidates Skipped: 0
STATUS: PASS
Unique lineup recovery complete.
Report created: /root/outputs/portfolio_filter_rebuild_report.csv

STATUS: PASS
STEP 12AQ — Unique Lineup Recovery Engine completed successfully.

RUNNING: STEP 12AS — Final 100 Selection Engine
------------------------------------------------------------

STEP 12AS FINAL SELECTION ENGINE
================================
Candidate Lineups: 1000
Target DK Entries: 528

STEP 12AS FINAL REPORT
======================
Final Selected Lineups: 528
Duplicate Lineups: 0
5-Hitter Rule Failures: 0

Grade Counts:
  Elite: 528

Top Stack Exposure:
  NYY: 76
  MIL: 67
  HOU: 63
  LAD: 63
  WSH: 47
  ARI: 42
  PIT: 38
  BAL: 37
  CHC: 28
  STL: 13

Top Game Exposure:
  BAL@NYY 05/03/2026 01:35PM ET: 114
  MIL@WSH 05/03/2026 01:35PM ET: 113
  LAD@STL 05/03/2026 02:15PM ET: 76
  ARI@CHC 05/03/2026 02:20PM ET: 70
  HOU@BOS 05/03/2026 01:35PM ET: 66
  CIN@PIT 05/03/2026 01:35PM ET: 49
  PHI@MIA 05/03/2026 01:40PM ET: 24
  SF@TB 05/03/2026 01:40PM ET: 16

STATUS: PASS
Final 100 selection complete.
Report created: /root/outputs/final_100_selection_report.csv

STATUS: PASS
STEP 12AS — Final 100 Selection Engine completed successfully.

RUNNING: STEP 12W — DraftKings CSV Builder
------------------------------------------------------------
======================================
STEP 12AF — DK CSV FINAL UPLOAD SAFETY
======================================
DK entries loaded: 528
Raw lineups loaded: 528
DK roster columns detected: ['P', 'P', 'C', '1B', '2B', '3B', 'SS', 'OF', 'OF', 'OF']

FINAL SAFETY CHECK
------------------
DK upload rows: 528
Strategy audit rows: 528
Salary floor: 48500
Salary cap: 50000
Duplicate lineups: 0
5-hitter max: PASSED
DK template headers: PRESERVED
Strategy fields: PRESERVED IN AUDIT CSV

DK upload CSV: /root/outputs/dk_lineups.csv
Strategy audit CSV: /root/outputs/dk_lineups_strategy_audit.csv

STATUS: PASS
FINAL VALIDATION PASSED — DK CSV IS SAFE TO UPLOAD
======================================

STATUS: PASS
STEP 12W — DraftKings CSV Builder completed successfully.

RUNNING: STEP 12AO — Final Build Receipt Engine
------------------------------------------------------------
OWF DK BUILD RECEIPT
====================
Timestamp: 2026-05-05 00:52:22
Final Status: PASS

DK CSV Path: /root/outputs/dk_lineups.csv
Raw Lineups Path: /root/outputs/raw_lineups.csv
DK CSV Exists: True
Raw Lineups Exists: True

DK CSV Rows: 528
Raw Lineup Rows: 528
Duplicate Lineups: 0

Salary Audit:
  Salary Found: True
  Min Salary: 48500
  Max Salary: 50000

5-Hitter Rule Audit:
  Status: NOT_DIRECTLY_AUDITED
  Max Hitters Found: None
  Note: No max-hitter team-count column found in final CSV. Upstream validator must enforce 5-hitter max.

Issues: None

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

STATUS: PASS
STEP 12AO — Final Build Receipt Engine completed successfully.

FINAL BUILD RECEIPT
===================
OWF DK BUILD RECEIPT
====================
Timestamp: 2026-05-05 00:52:22
Final Status: PASS

DK CSV Path: /root/outputs/dk_lineups.csv
Raw Lineups Path: /root/outputs/raw_lineups.csv
DK CSV Exists: True
Raw Lineups Exists: True

DK CSV Rows: 528
Raw Lineup Rows: 528
Duplicate Lineups: 0

Salary Audit:
  Salary Found: True
  Min Salary: 48500
  Max Salary: 50000

5-Hitter Rule Audit:
  Status: NOT_DIRECTLY_AUDITED
  Max Hitters Found: None
  Note: No max-hitter team-count column found in final CSV. Upstream validator must enforce 5-hitter max.

Issues: None

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

OWF FINAL COMMAND RUNNER SUMMARY
================================
Finished: 2026-05-05 00:52:22
Final Status: PASS

Production-safe outputs:
  DK Upload CSV: /root/outputs/dk_lineups.csv
  Build Receipt TXT: /root/outputs/build_receipt.txt
  Build Receipt JSON: /root/outputs/build_receipt.json
  Command Runner Log: /root/outputs/final_command_runner_log.txt

SAFE TO REVIEW / DOWNLOAD DK CSV
