fix(migration): add CHECK constraint on text length (defense in depth)
V18: text column now has CHECK (length(text) <= 10000) to enforce the 10,000 character limit at the database level, complementing the application-level enforcement in TranscriptionService.sanitizeText(). Fixes @Nora: "DB constraint catches anything the application misses" Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -2,7 +2,7 @@ CREATE TABLE transcription_blocks (
|
||||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
annotation_id UUID NOT NULL REFERENCES document_annotations(id) ON DELETE RESTRICT,
|
||||
document_id UUID NOT NULL REFERENCES documents(id) ON DELETE CASCADE,
|
||||
text TEXT NOT NULL DEFAULT '',
|
||||
text TEXT NOT NULL DEFAULT '' CHECK (length(text) <= 10000),
|
||||
label VARCHAR(200),
|
||||
sort_order INTEGER NOT NULL DEFAULT 0,
|
||||
version INTEGER NOT NULL DEFAULT 0,
|
||||
|
||||
Reference in New Issue
Block a user