···1+-- OAuth client session storage (replaces in-memory MemoryAuthStore)
2+CREATE TABLE IF NOT EXISTS oauth_client_sessions (
3+ session_key VARCHAR NOT NULL PRIMARY KEY,
4+ did VARCHAR NOT NULL,
5+ session_id VARCHAR NOT NULL,
6+ data TEXT NOT NULL,
7+ created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
8+ updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
9+);
10+11+CREATE INDEX IF NOT EXISTS idx_oauth_client_sessions_did ON oauth_client_sessions(did);
12+13+-- OAuth authorization request storage (transient, keyed by state token)
14+CREATE TABLE IF NOT EXISTS oauth_auth_requests (
15+ state VARCHAR NOT NULL PRIMARY KEY,
16+ data TEXT NOT NULL,
17+ created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
18+);