- server: Go 单二进制骨架,embed 内嵌前端,配置/迁移/HTTP 路由 - store: system.db + event.db 两套迁移,业务表 + 种子数据 - domain: 积分引擎(并列三口径/计分通道/流水/排名/破纪录)+ 68 个测试 - web: Vite + Vue 三入口骨架 + shared 层(类型/API/WebSocket 客户端) - console: Electron 宿主骨架(选屏/防熄屏/进程守护/托盘)
14 lines
613 B
SQL
14 lines
613 B
SQL
-- id 就是实时协议的 version,必须单调递增、不重用,所以用 AUTOINCREMENT。
|
|
CREATE TABLE IF NOT EXISTS change_log (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
entity_type TEXT NOT NULL,
|
|
entity_id INTEGER,
|
|
action TEXT NOT NULL CHECK (action IN ('upsert', 'void', 'replace')),
|
|
payload_json TEXT NOT NULL DEFAULT '{}',
|
|
-- actor_id 指向系统库 users,跨库不能建外键。
|
|
actor_id INTEGER,
|
|
created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_change_log_entity ON change_log(entity_type, entity_id);
|