···11+-- Cache statistics table
22+CREATE TABLE IF NOT EXISTS cache_stats (
33+ id INTEGER PRIMARY KEY AUTOINCREMENT,
44+ cache_key TEXT NOT NULL,
55+ cache_type TEXT NOT NULL, -- 'file_tree'
66+ event_type TEXT NOT NULL, -- 'hit', 'miss', 'invalidate'
77+ user_id INTEGER,
88+ response_time_ms INTEGER,
99+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
1010+ FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE SET NULL
1111+);
1212+1313+-- Index for efficient queries
1414+CREATE INDEX IF NOT EXISTS idx_cache_stats_created_at ON cache_stats(created_at);
1515+CREATE INDEX IF NOT EXISTS idx_cache_stats_type_event ON cache_stats(cache_type, event_type);
1616+1717+-- Auto-cleanup trigger: delete logs older than 7 days
1818+CREATE TRIGGER IF NOT EXISTS cleanup_old_cache_stats
1919+AFTER INSERT ON cache_stats
2020+BEGIN
2121+ DELETE FROM cache_stats
2222+ WHERE created_at < datetime('now', '-7 days');
2323+END;