result=Column(String(255),comment='Match result/outcome (main result only, e.g. RET2)')
winning_outcomes=Column(JSON,comment='Array of winning outcomes from extraction associations (e.g., ["WIN1", "X1", "12"])')
under_over_result=Column(String(50),comment='UNDER/OVER result if applicable')
done=Column(Boolean,default=False,nullable=False,comment='Match completion flag (0=pending, 1=done)')
running=Column(Boolean,default=False,nullable=False,comment='Match running flag (0=not running, 1=running)')
status=Column(Enum('pending','scheduled','bet','ingame','done','cancelled','failed','paused'),default='pending',nullable=False,comment='Match status enum')