feat: add governed knowledge lifecycle

This commit is contained in:
hailin
2026-07-27 19:01:19 +08:00
parent 1a49ce4eae
commit 07c9ea1cc4
32 changed files with 5893 additions and 178 deletions

View File

@@ -0,0 +1,73 @@
import uuid
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
("knowledge", "0007_ticketknowledgedistillation"),
]
operations = [
migrations.AddField(
model_name="knowledgedocument",
name="public_id",
field=models.UUIDField(default=uuid.uuid4, editable=False, unique=True),
),
migrations.AddField(
model_name="knowledgedocument",
name="extension",
field=models.CharField(blank=True, max_length=16),
),
migrations.AddField(
model_name="knowledgedocument",
name="mime_type",
field=models.CharField(blank=True, max_length=160),
),
migrations.AddField(
model_name="knowledgedocument",
name="file_size",
field=models.PositiveBigIntegerField(default=0),
),
migrations.AddField(
model_name="knowledgedocument",
name="sha256",
field=models.CharField(blank=True, max_length=64),
),
migrations.AddField(
model_name="knowledgedocument",
name="scan_status",
field=models.CharField(default="pending", max_length=40),
),
migrations.AddField(
model_name="knowledgedocument",
name="scan_result",
field=models.JSONField(blank=True, default=dict),
),
migrations.AddField(
model_name="knowledgedocument",
name="processing_attempts",
field=models.PositiveSmallIntegerField(default=0),
),
migrations.AddField(
model_name="knowledgedocument",
name="task_id",
field=models.CharField(blank=True, max_length=120),
),
migrations.AddField(
model_name="knowledgedocument",
name="indexed_at",
field=models.DateTimeField(blank=True, null=True),
),
migrations.AddIndex(
model_name="knowledgedocument",
index=models.Index(
fields=["knowledge_base", "parse_status", "created_at"],
name="knowledge_k_knowled_df0102_idx",
),
),
migrations.AddIndex(
model_name="knowledgedocument",
index=models.Index(fields=["sha256"], name="knowledge_k_sha256_4df74c_idx"),
),
]