mirror of
https://github.com/langgenius/dify.git
synced 2026-09-02 14:25:35 +08:00
43 lines
1.8 KiB
SQL
43 lines
1.8 KiB
SQL
-- Knowledge Platform schema migration
|
|
-- Migration id: 0044_document_semantic_window_checkpoints
|
|
-- Dialect: tidb
|
|
-- Persists validated semantic-window model responses for generation-scoped retry recovery.
|
|
|
|
CREATE TABLE IF NOT EXISTS `document_semantic_window_checkpoints` (
|
|
`tenant_id` VARCHAR(255) NOT NULL,
|
|
`knowledge_space_id` CHAR(36) NOT NULL,
|
|
`document_asset_id` CHAR(36) NOT NULL,
|
|
`document_version` INT NOT NULL,
|
|
`publication_generation_id` CHAR(36) NOT NULL,
|
|
`window_id` VARCHAR(128) NOT NULL,
|
|
`input_fingerprint` VARCHAR(71) NOT NULL,
|
|
`model_fingerprint` VARCHAR(71) NOT NULL,
|
|
`response_text` MEDIUMTEXT NOT NULL,
|
|
`completion` JSON NOT NULL,
|
|
`created_at` DATETIME(3) NOT NULL,
|
|
PRIMARY KEY (
|
|
`tenant_id`, `knowledge_space_id`, `publication_generation_id`,
|
|
`window_id`, `input_fingerprint`
|
|
),
|
|
CONSTRAINT `document_semantic_window_checkpoints_scope_fk`
|
|
FOREIGN KEY (`tenant_id`, `knowledge_space_id`)
|
|
REFERENCES `knowledge_spaces` (`tenant_id`, `id`) ON DELETE CASCADE,
|
|
CONSTRAINT `document_semantic_window_checkpoints_asset_fk`
|
|
FOREIGN KEY (`knowledge_space_id`, `document_asset_id`, `document_version`)
|
|
REFERENCES `document_assets` (`knowledge_space_id`, `id`, `version`) ON DELETE CASCADE,
|
|
CONSTRAINT `document_semantic_window_checkpoints_fingerprint_ck`
|
|
CHECK (
|
|
`input_fingerprint` REGEXP '^sha256:[a-f0-9]{64}$'
|
|
AND `model_fingerprint` REGEXP '^sha256:[a-f0-9]{64}$'
|
|
),
|
|
CONSTRAINT `document_semantic_window_checkpoints_completion_ck`
|
|
CHECK (JSON_TYPE(`completion`) = 'OBJECT'),
|
|
CONSTRAINT `document_semantic_window_checkpoints_version_ck`
|
|
CHECK (`document_version` >= 1)
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS `document_semantic_window_checkpoints_asset_idx`
|
|
ON `document_semantic_window_checkpoints` (
|
|
`knowledge_space_id`, `document_asset_id`, `document_version`
|
|
);
|