a7e274d846
Executor: - FOREIGN KEY enforcement: checks referenced row exists on INSERT - Type enforcement: INTEGER, FLOAT, BOOLEAN, TIMESTAMP validated - GROUP BY execution: actual row grouping with count(*) aggregation - WebSocket broadcast: onChange callback wired into INSERT/UPDATE/DELETE - CREATE INDEX handler: creates B-Tree index + populates from existing data - ALTER TABLE ADD COLUMN: actually adds column to table definition - LIKE evaluation with regex pattern matching - FK metadata stored in ColumnDef (fkTable, fkColumn) Parser: - CREATE INDEX / CREATE UNIQUE INDEX parser added - ALTER TABLE now parses ADD COLUMN with type HTTP Server: - Rate limiter wired (token bucket per client IP) - CORS headers on all responses (Allow-Origin: *, OPTIONS preflight) - 429 Too Many Requests when rate limit exceeded All 216 tests pass