-- 001_init.sql
-- Checkpoint 服务初始建表

CREATE TABLE IF NOT EXISTS checkpoints (
    id         BIGSERIAL PRIMARY KEY,
    user_id    VARCHAR(128) NOT NULL,
    state      VARCHAR(64)  NOT NULL,
    timestamp  BIGINT       NOT NULL,
    content    JSONB,

    created_at TIMESTAMPTZ  NOT NULL DEFAULT now()
);

-- 核心查询索引：按用户 + 时间范围
CREATE INDEX IF NOT EXISTS idx_checkpoints_user_ts
    ON checkpoints (user_id, timestamp);

-- 快速获取用户最新检查点
CREATE INDEX IF NOT EXISTS idx_checkpoints_user_latest
    ON checkpoints (user_id, timestamp DESC);
