from django.db import migrations, models import django.db.models.deletion import uuid class Migration(migrations.Migration): dependencies = [ ("agents", "0005_progenysignal_graph_lineage"), ("graph", "0004_unique_champion_graph_version"), ] operations = [ migrations.CreateModel( name="ProgenyInvestigation", 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)), ("status", models.CharField(default="OPEN", max_length=32)), ("signal_clusters", models.JSONField(blank=True, default=list)), ("affected_projects", models.JSONField(blank=True, default=list)), ("affected_agents", models.JSONField(blank=True, default=list)), ("affected_graph_versions", models.JSONField(blank=True, default=list)), ("affected_nodes", models.JSONField(blank=True, default=list)), ("hypotheses", models.JSONField(blank=True, default=list)), ("recommended_target", models.CharField(max_length=80)), ("confidence", models.FloatField(default=0.0)), ("recommended_route", models.CharField(max_length=120)), ("proposed_experiments", models.JSONField(blank=True, default=list)), ("expected_impact", models.TextField(blank=True)), ("estimated_cost", models.CharField(blank=True, max_length=80)), ("signals", models.ManyToManyField(blank=True, related_name="investigations", to="agents.progenysignal")), ], ), migrations.CreateModel( name="ImprovementCandidate", 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)), ("status", models.CharField(default="PROPOSED", max_length=32)), ("target_type", models.CharField(max_length=80)), ("target_id", models.CharField(blank=True, max_length=120)), ("target_label", models.CharField(blank=True, max_length=240)), ("hypothesis", models.TextField()), ("recommended_route", models.CharField(blank=True, max_length=120)), ("evidence", models.JSONField(blank=True, default=dict)), ("agent_version", models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="improvement_candidates", to="agents.agentversion")), ("execution_graph_version", models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="improvement_candidates", to="graph.executiongraphversion")), ("investigation", models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="improvement_candidates", to="agents.progenyinvestigation")), ], ), ]