feat(backup,mpc): 添加 prisma 迁移文件

backup-service 和 mpc-service 缺少 prisma/migrations 目录
导致 prisma migrate deploy 无法执行

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Developer 2025-12-04 04:01:47 -08:00
parent 2fd784e3d2
commit 9dee0d36a5
4 changed files with 153 additions and 0 deletions

View File

@ -0,0 +1,65 @@
-- CreateTable
CREATE TABLE "backup_shares" (
"share_id" BIGSERIAL NOT NULL,
"user_id" BIGINT NOT NULL,
"account_sequence" BIGINT NOT NULL,
"public_key" VARCHAR(130) NOT NULL,
"party_index" INTEGER NOT NULL DEFAULT 2,
"threshold" INTEGER NOT NULL DEFAULT 2,
"total_parties" INTEGER NOT NULL DEFAULT 3,
"encrypted_share_data" TEXT NOT NULL,
"encryption_key_id" VARCHAR(64) NOT NULL,
"status" VARCHAR(20) NOT NULL DEFAULT 'ACTIVE',
"access_count" INTEGER NOT NULL DEFAULT 0,
"last_accessed_at" TIMESTAMP(3),
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"revoked_at" TIMESTAMP(3),
CONSTRAINT "backup_shares_pkey" PRIMARY KEY ("share_id")
);
-- CreateTable
CREATE TABLE "share_access_logs" (
"log_id" BIGSERIAL NOT NULL,
"share_id" BIGINT NOT NULL,
"user_id" BIGINT NOT NULL,
"action" VARCHAR(20) NOT NULL,
"source_service" VARCHAR(50) NOT NULL,
"source_ip" VARCHAR(45) NOT NULL,
"success" BOOLEAN NOT NULL DEFAULT true,
"error_message" TEXT,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
CONSTRAINT "share_access_logs_pkey" PRIMARY KEY ("log_id")
);
-- CreateIndex
CREATE UNIQUE INDEX "backup_shares_user_id_key" ON "backup_shares"("user_id");
-- CreateIndex
CREATE UNIQUE INDEX "backup_shares_account_sequence_key" ON "backup_shares"("account_sequence");
-- CreateIndex
CREATE UNIQUE INDEX "backup_shares_public_key_key" ON "backup_shares"("public_key");
-- CreateIndex
CREATE INDEX "idx_backup_public_key" ON "backup_shares"("public_key");
-- CreateIndex
CREATE INDEX "idx_backup_status" ON "backup_shares"("status");
-- CreateIndex
CREATE INDEX "idx_backup_created" ON "backup_shares"("created_at");
-- CreateIndex
CREATE INDEX "idx_log_share" ON "share_access_logs"("share_id");
-- CreateIndex
CREATE INDEX "idx_log_user" ON "share_access_logs"("user_id");
-- CreateIndex
CREATE INDEX "idx_log_action" ON "share_access_logs"("action");
-- CreateIndex
CREATE INDEX "idx_log_created" ON "share_access_logs"("created_at");

View File

@ -0,0 +1,3 @@
# Please do not edit this file manually
# It should be added in your version-control system (i.e. Git)
provider = "postgresql"

View File

@ -0,0 +1,82 @@
-- CreateTable
CREATE TABLE "party_shares" (
"id" VARCHAR(255) NOT NULL,
"party_id" VARCHAR(255) NOT NULL,
"session_id" VARCHAR(255) NOT NULL,
"share_type" VARCHAR(20) NOT NULL,
"share_data" TEXT NOT NULL,
"public_key" TEXT NOT NULL,
"threshold_n" INTEGER NOT NULL,
"threshold_t" INTEGER NOT NULL,
"status" VARCHAR(20) NOT NULL DEFAULT 'active',
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"last_used_at" TIMESTAMP(3),
CONSTRAINT "party_shares_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "session_states" (
"id" VARCHAR(255) NOT NULL,
"session_id" VARCHAR(255) NOT NULL,
"party_id" VARCHAR(255) NOT NULL,
"party_index" INTEGER NOT NULL,
"session_type" VARCHAR(20) NOT NULL,
"participants" TEXT NOT NULL,
"threshold_n" INTEGER NOT NULL,
"threshold_t" INTEGER NOT NULL,
"status" VARCHAR(20) NOT NULL,
"current_round" INTEGER NOT NULL DEFAULT 0,
"error_message" TEXT,
"public_key" TEXT,
"message_hash" VARCHAR(66),
"signature" TEXT,
"started_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"completed_at" TIMESTAMP(3),
CONSTRAINT "session_states_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "share_backups" (
"id" VARCHAR(255) NOT NULL,
"share_id" VARCHAR(255) NOT NULL,
"backup_data" TEXT NOT NULL,
"backup_type" VARCHAR(20) NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"created_by" VARCHAR(255),
CONSTRAINT "share_backups_pkey" PRIMARY KEY ("id")
);
-- CreateIndex
CREATE INDEX "idx_ps_party_id" ON "party_shares"("party_id");
-- CreateIndex
CREATE INDEX "idx_ps_session_id" ON "party_shares"("session_id");
-- CreateIndex
CREATE INDEX "idx_ps_status" ON "party_shares"("status");
-- CreateIndex
CREATE UNIQUE INDEX "party_shares_party_id_session_id_key" ON "party_shares"("party_id", "session_id");
-- CreateIndex
CREATE INDEX "idx_ss_session_id" ON "session_states"("session_id");
-- CreateIndex
CREATE INDEX "idx_ss_party_id" ON "session_states"("party_id");
-- CreateIndex
CREATE INDEX "idx_ss_status" ON "session_states"("status");
-- CreateIndex
CREATE UNIQUE INDEX "session_states_session_id_party_id_key" ON "session_states"("session_id", "party_id");
-- CreateIndex
CREATE INDEX "idx_share_id" ON "share_backups"("share_id");
-- CreateIndex
CREATE INDEX "idx_created_at" ON "share_backups"("created_at");

View File

@ -0,0 +1,3 @@
# Please do not edit this file manually
# It should be added in your version-control system (i.e. Git)
provider = "postgresql"