# Generated by Django 5.2.16 on 2026-08-15 05:46 import uuid from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='Agent', 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)), ('name', models.CharField(max_length=200, unique=True)), ('role', models.CharField(choices=[('PROJECT_ARCHAEOLOGIST', 'Project Archaeologist'), ('PLANNER', 'Planner'), ('CODER', 'Coder'), ('REVIEWER', 'Reviewer'), ('PROJECT_JUDGE', 'Project Judge')], max_length=80)), ('description', models.TextField(blank=True)), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='AgentRun', 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='QUEUED', max_length=32)), ('input_contract', models.JSONField(blank=True, default=dict)), ('output_contract', models.JSONField(blank=True, default=dict)), ('metrics', models.JSONField(blank=True, default=dict)), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='AgentVersion', 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)), ('version', models.PositiveIntegerField()), ('model', models.CharField(max_length=120)), ('system_contract', models.TextField()), ('capabilities', models.JSONField(blank=True, default=list)), ('tools', models.JSONField(blank=True, default=list)), ('permissions', models.JSONField(blank=True, default=dict)), ('context_policy', models.JSONField(blank=True, default=dict)), ('workflow', models.JSONField(blank=True, default=dict)), ('retry_policy', models.JSONField(blank=True, default=dict)), ('evaluator', models.JSONField(blank=True, default=dict)), ('benchmark_status', models.CharField(default='UNBENCHMARKED', max_length=32)), ('promotion_status', models.CharField(choices=[('CANDIDATE', 'Candidate'), ('CHALLENGER', 'Challenger'), ('CHAMPION', 'Champion'), ('REJECTED', 'Rejected')], default='CANDIDATE', max_length=32)), ], ), migrations.CreateModel( name='BenchmarkRun', 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)), ('benchmark_set', models.JSONField(blank=True, default=list)), ('metrics', models.JSONField(blank=True, default=dict)), ('decision', models.CharField(default='PENDING', max_length=32)), ], options={ 'abstract': False, }, ), ]