# Generated by Django 5.2.16 on 2026-08-15 05:46 import django.db.models.deletion import uuid from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ('agents', '0001_initial'), ('projects', '0001_initial'), ] operations = [ migrations.CreateModel( name='Review', 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(max_length=32)), ('findings', models.JSONField(blank=True, default=list)), ('summary', models.TextField(blank=True)), ('reviewer', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='reviews', to='agents.agentversion')), ('task', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='reviews', to='projects.task')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='TestRun', 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)), ('command', models.TextField()), ('status', models.CharField(max_length=32)), ('duration_seconds', models.FloatField(default=0)), ('output_artifact', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='projects.artifact')), ('project', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='test_runs', to='projects.project')), ('task', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='test_runs', to='projects.task')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Verification', 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)), ('level', models.CharField(choices=[('TASK', 'Task'), ('MILESTONE', 'Milestone'), ('PROJECT', 'Project')], max_length=32)), ('result', models.CharField(choices=[('PASS', 'Pass'), ('FAIL', 'Fail'), ('BLOCKED', 'Blocked')], max_length=32)), ('contract', models.JSONField(blank=True, default=dict)), ('evidence', models.JSONField(blank=True, default=list)), ('summary', models.TextField(blank=True)), ('judge', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='agents.agentversion')), ('milestone', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='projects.milestone')), ('project', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='verifications', to='projects.project')), ('task', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='projects.task')), ], options={ 'abstract': False, }, ), ]