perf: sync protocol and core hardening updates
This commit is contained in:
parent
152fed3b87
commit
4390ebf5a9
283 changed files with 29231 additions and 2295 deletions
17
deploy/migrations/0076_album_group_reservations.up.sql
Normal file
17
deploy/migrations/0076_album_group_reservations.up.sql
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
-- sendMultiMedia 必须在解析上传媒体、逐条发送之前持久预留 grouped_id。
|
||||
-- 这张表把每个发送 random_id 固定到会话作用域内的相册组,使中途失败后
|
||||
-- 客户端只重试失败子集时仍能恢复首次整包使用的 grouped_id;intent_hash
|
||||
-- 同时阻止内容已改变的相同 random_id 借旧预留错误合并。
|
||||
CREATE TABLE album_group_reservations (
|
||||
sender_user_id BIGINT NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
||||
peer_type TEXT NOT NULL CHECK (peer_type IN ('user', 'channel')),
|
||||
peer_id BIGINT NOT NULL CHECK (peer_id > 0),
|
||||
random_id BIGINT NOT NULL CHECK (random_id <> 0),
|
||||
intent_hash BYTEA NOT NULL CHECK (octet_length(intent_hash) = 32),
|
||||
grouped_id BIGINT NOT NULL CHECK (grouped_id <> 0),
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
|
||||
PRIMARY KEY (sender_user_id, peer_type, peer_id, random_id)
|
||||
);
|
||||
|
||||
COMMENT ON TABLE album_group_reservations IS
|
||||
'Durable pre-send binding from album item random_id to grouped_id; never reconstructed from a retry subset.';
|
||||
Loading…
Add table
Add a link
Reference in a new issue