diff --git a/src/documents/migrations/0017_document_latest_content.py b/src/documents/migrations/0017_document_latest_content.py new file mode 100644 index 000000000..3d6063bb2 --- /dev/null +++ b/src/documents/migrations/0017_document_latest_content.py @@ -0,0 +1,23 @@ +# Generated by Django 5.2.12 on 2026-03-31 18:52 + +from django.db import migrations +from django.db import models + + +class Migration(migrations.Migration): + dependencies = [ + ("documents", "0016_sha256_checksums"), + ] + + operations = [ + migrations.AddField( + model_name="document", + name="latest_content", + field=models.TextField( + blank=True, + help_text="Materialized effective content for root documents. Uses the latest version content when available.", + null=True, + verbose_name="latest content", + ), + ), + ] diff --git a/src/documents/models.py b/src/documents/models.py index 08f995ff6..fc6e83625 100644 --- a/src/documents/models.py +++ b/src/documents/models.py @@ -196,6 +196,16 @@ class Document(SoftDeleteModel, ModelWithOwner): # type: ignore[django-manager- ), ) + latest_content = models.TextField( + _("latest content"), + blank=True, + null=True, + help_text=_( + "Materialized effective content for root documents. " + "Uses the latest version content when available.", + ), + ) + content_length = models.GeneratedField( expression=Length("content"), output_field=PositiveIntegerField(default=0),