# Generated by Django 5.1.4 on 2026-04-06 03:08 import uuid from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='SplatJob', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('status', models.CharField(choices=[('queued', 'Queued'), ('running', 'Running'), ('succeeded', 'Succeeded'), ('failed', 'Failed')], db_index=True, default='queued', max_length=20)), ('current_step', models.CharField(blank=True, choices=[('extracting_frames', 'Extracting frames'), ('running_colmap', 'Running COLMAP'), ('training_gsplat', 'Training gsplat'), ('exporting', 'Exporting .ksplat'), ('quality_check', 'Quality check')], default='', max_length=30)), ('progress', models.PositiveSmallIntegerField(default=0)), ('runpod_job_id', models.CharField(blank=True, db_index=True, default='', max_length=255)), ('celery_task_id', models.CharField(blank=True, default='', max_length=255)), ('retry_count', models.PositiveSmallIntegerField(default=0)), ('error_message', models.TextField(blank=True, default='')), ('pipeline_logs', models.JSONField(blank=True, default=dict)), ('colmap_points', models.PositiveIntegerField(blank=True, null=True)), ('queued_at', models.DateTimeField(auto_now_add=True)), ('started_at', models.DateTimeField(blank=True, null=True)), ('finished_at', models.DateTimeField(blank=True, null=True)), ], options={ 'db_table': 'splat_jobs', }, ), ]