# Generated manually for QualificationReplayV1. import uuid import django.db.models.deletion from django.db import migrations, models class Migration(migrations.Migration): dependencies = [("trading_studio", "0001_initial")] operations = [ migrations.CreateModel( name="QualificationReplayRun", fields=[ ( "id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False ), ), ("created_at", models.DateTimeField(auto_now_add=True)), ("updated_at", models.DateTimeField(auto_now=True)), ("fold", models.CharField(max_length=120)), ("scenario_name", models.CharField(max_length=160)), ("runner_name", models.CharField(max_length=160)), ("replay_mode", models.CharField(default="CANARY_ONLY", max_length=32)), ("input_hash", models.CharField(max_length=128)), ("calibration", models.JSONField(default=dict)), ("configuration", models.JSONField(default=dict)), ("summary", models.JSONField(default=dict)), ( "dataset_version", models.ForeignKey( on_delete=django.db.models.deletion.PROTECT, related_name="qualification_runs", to="trading_studio.marketdatasetversion", ), ), ( "strategy_version", models.ForeignKey( on_delete=django.db.models.deletion.PROTECT, related_name="qualification_runs", to="trading_studio.strategyversion", ), ), ], ), migrations.CreateModel( name="QualificationReplayLedger", fields=[ ( "id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False ), ), ("created_at", models.DateTimeField(auto_now_add=True)), ("updated_at", models.DateTimeField(auto_now=True)), ("sequence", models.PositiveIntegerField()), ("identity", models.CharField(max_length=512)), ("result", models.JSONField(default=dict)), ( "qualification_run", models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="ledger_rows", to="trading_studio.qualificationreplayrun", ), ), ], ), migrations.AddConstraint( model_name="qualificationreplayrun", constraint=models.UniqueConstraint( fields=( "strategy_version", "dataset_version", "fold", "scenario_name", "runner_name", "input_hash", ), name="unique_qualification_replay_identity", ), ), migrations.AddConstraint( model_name="qualificationreplayledger", constraint=models.UniqueConstraint( fields=("qualification_run", "sequence"), name="unique_qualification_ledger_sequence", ), ), migrations.AddConstraint( model_name="qualificationreplayledger", constraint=models.UniqueConstraint( fields=("qualification_run", "identity"), name="unique_qualification_ledger_identity", ), ), ]