Skip to content

Commit 71c248b

Browse files
authored
Update schema.sql
1 parent 634610e commit 71c248b

File tree

1 file changed

+46
-34
lines changed

1 file changed

+46
-34
lines changed

main/api/mcp/database/schema.sql

Lines changed: 46 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -2,53 +2,65 @@ CREATE TABLE users (
22
user_id VARCHAR(255) PRIMARY KEY,
33
balance FLOAT NOT NULL DEFAULT 0.0,
44
wallet_address VARCHAR(255) NOT NULL,
5+
access_token VARCHAR(255),
6+
refresh_token VARCHAR(255),
57
api_key VARCHAR(255),
68
api_secret VARCHAR(255),
7-
reputation INTEGER NOT NULL DEFAULT 0,
8-
access_token VARCHAR(255)
9-
);
10-
11-
CREATE TABLE vials (
12-
vial_id VARCHAR(255) NOT NULL,
13-
user_id VARCHAR(255) NOT NULL,
14-
code TEXT NOT NULL,
15-
wallet_address VARCHAR(255) NOT NULL,
16-
webxos_hash VARCHAR(255) NOT NULL,
17-
PRIMARY KEY (vial_id, user_id),
18-
FOREIGN KEY (user_id) REFERENCES users(user_id)
19-
);
20-
21-
CREATE TABLE quantum_links (
22-
link_id VARCHAR(255) PRIMARY KEY,
23-
user_id VARCHAR(255) NOT NULL,
24-
quantum_state JSONB NOT NULL,
25-
FOREIGN KEY (user_id) REFERENCES users(user_id)
26-
);
27-
28-
CREATE TABLE transactions (
29-
transaction_id VARCHAR(255) PRIMARY KEY,
30-
user_id VARCHAR(255) NOT NULL,
31-
amount FLOAT NOT NULL,
32-
destination_address VARCHAR(255) NOT NULL,
33-
timestamp TIMESTAMP NOT NULL,
34-
FOREIGN KEY (user_id) REFERENCES users(user_id)
9+
totp_secret VARCHAR(32)
3510
);
3611

3712
CREATE TABLE sessions (
38-
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
39-
session_key VARCHAR(255) UNIQUE NOT NULL,
13+
session_key VARCHAR(255) PRIMARY KEY,
4014
user_id VARCHAR(255) REFERENCES users(user_id),
41-
expires_at TIMESTAMP NOT NULL,
42-
created_at TIMESTAMP DEFAULT NOW()
15+
expires_at TIMESTAMP NOT NULL
4316
);
4417

4518
CREATE TABLE security_events (
4619
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
4720
event_type VARCHAR(100) NOT NULL,
4821
user_id VARCHAR(255),
4922
client_id VARCHAR(255),
50-
ip_address INET,
23+
ip_address VARCHAR(45),
5124
user_agent TEXT,
5225
details JSONB,
53-
created_at TIMESTAMP DEFAULT NOW()
26+
created_at TIMESTAMP NOT NULL DEFAULT NOW()
27+
);
28+
29+
CREATE TABLE audit_logs (
30+
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
31+
user_id VARCHAR(255),
32+
action VARCHAR(100) NOT NULL,
33+
details JSONB,
34+
ip_address VARCHAR(45),
35+
created_at TIMESTAMP NOT NULL DEFAULT NOW(),
36+
notified BOOLEAN DEFAULT FALSE
37+
);
38+
39+
CREATE TABLE notifications (
40+
id SERIAL PRIMARY KEY,
41+
user_id VARCHAR(255) NOT NULL,
42+
notification_type VARCHAR(100) NOT NULL,
43+
details JSONB,
44+
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
5445
);
46+
47+
CREATE TABLE blocks (
48+
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
49+
hash VARCHAR(64) NOT NULL,
50+
previous_hash VARCHAR(64),
51+
data JSONB,
52+
created_at TIMESTAMP NOT NULL DEFAULT NOW()
53+
);
54+
55+
CREATE TABLE vials (
56+
vial_id VARCHAR(255) PRIMARY KEY,
57+
user_id VARCHAR(255) REFERENCES users(user_id),
58+
balance FLOAT NOT NULL DEFAULT 0.0,
59+
status VARCHAR(50) NOT NULL DEFAULT 'stopped'
60+
);
61+
62+
CREATE INDEX idx_sessions_user_id ON sessions(user_id);
63+
CREATE INDEX idx_security_events_user_id ON security_events(user_id);
64+
CREATE INDEX idx_audit_logs_user_id ON audit_logs(user_id);
65+
CREATE INDEX idx_notifications_user_id ON notifications(user_id);
66+
CREATE INDEX idx_vials_user_id ON vials(user_id);

0 commit comments

Comments
 (0)