记录重复投递 payload 差异

This commit is contained in:
andy
2026-07-09 18:40:56 +08:00
parent 1282d4aede
commit c1f9870fce
8 changed files with 314 additions and 10 deletions

View File

@@ -0,0 +1,17 @@
-- M001 SourceMessage Inbox重复投递 payload 差异明细表,只在幂等命中且 payload 内容变化时追加保存。
CREATE TABLE platform_source_message_payload_duplicate (
id BIGINT NOT NULL COMMENT '重复投递 payload 明细 ID',
inbox_id BIGINT NOT NULL COMMENT '所属 SourceMessage Inbox 记录 ID关联首次保存的来源消息',
original_payload_sha256 CHAR(64) NOT NULL COMMENT '首次保存 payload 的 SHA-256 哈希,用于和重复投递 payload 对比',
duplicate_payload_sha256 CHAR(64) NOT NULL COMMENT '本次重复投递 payload 的 SHA-256 哈希',
payload_json LONGTEXT NOT NULL COMMENT '本次重复投递的 AgentBus 规范 JSON 原始载荷,普通查询接口不得返回',
provider_frame_id VARCHAR(128) NULL COMMENT '本次重复投递的 AgentBus frame ID仅用于排查推送帧',
provider_session_id VARCHAR(128) NULL COMMENT '本次重复投递的 AgentBus session ID仅用于排查连接会话',
schema_version VARCHAR(64) NULL COMMENT '本次重复投递 payload 结构版本AgentBus 有提供则保存',
received_at DATETIME(6) NOT NULL COMMENT '本项目收到本次重复投递的 UTC 时间',
created_at DATETIME(6) NOT NULL COMMENT '记录创建 UTC 时间',
PRIMARY KEY (id),
KEY idx_source_message_payload_duplicate_inbox_time (inbox_id, received_at),
KEY idx_source_message_payload_duplicate_hash (duplicate_payload_sha256),
KEY idx_source_message_payload_duplicate_frame (provider_frame_id)
) COMMENT='SourceMessage 重复投递 payload 差异明细表,用于排查同一外部邮件 ID 的重复投递内容变化';