CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  phone VARCHAR(20) UNIQUE NOT NULL,
  token VARCHAR(64) UNIQUE NOT NULL,
  contacts_consent_at TIMESTAMP NULL,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) CHARACTER SET utf8mb4;
CREATE TABLE numbers (
  id INT AUTO_INCREMENT PRIMARY KEY,
  phone VARCHAR(20) UNIQUE NOT NULL,
  best_name VARCHAR(100) NULL,
  spam_score INT DEFAULT 0
) CHARACTER SET utf8mb4;
CREATE TABLE contributions (
  id INT AUTO_INCREMENT PRIMARY KEY,
  number_id INT NOT NULL,
  user_id INT NOT NULL,
  name VARCHAR(100) NULL,
  is_spam TINYINT(1) DEFAULT 0,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  UNIQUE KEY uq (number_id, user_id),
  FOREIGN KEY (number_id) REFERENCES numbers(id)
) CHARACTER SET utf8mb4;
CREATE TABLE app_versions (
  id INT AUTO_INCREMENT PRIMARY KEY,
  version_code INT NOT NULL,
  apk_url VARCHAR(255) NOT NULL,
  notes VARCHAR(255) NULL
) CHARACTER SET utf8mb4;
