cipher / scripts /setup_database.sql
salmanch123
feat: push fixed compilation tsconfig
60050be
Raw
History Blame Contribute Delete
2.17 kB
-- ==========================================
-- CipherTrust Protocol: Supabase Database Setup
-- Run this script inside your Supabase SQL Editor
-- ==========================================
-- Enable UUID extension for secure random IDs
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
-- Table: Autonomous Agents / Robots Registry
CREATE TABLE IF NOT EXISTS agents (
id SERIAL PRIMARY KEY,
agent_id INT UNIQUE NOT NULL,
operator_address VARCHAR(42) NOT NULL,
registered_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
active BOOLEAN DEFAULT TRUE,
trust_variance INT DEFAULT 100,
public_reputation_badge VARCHAR(42) DEFAULT NULL
);
-- Index for agent query optimizations
CREATE INDEX IF NOT EXISTS idx_agents_operator ON agents(operator_address);
-- Table: Redundant Telemetry Audits
CREATE TABLE IF NOT EXISTS telemetry_rounds (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
agent_id INT REFERENCES agents(agent_id) ON DELETE CASCADE,
round_id INT NOT NULL,
submitted_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP,
sensor_a_reading INT NOT NULL,
sensor_b_reading INT NOT NULL,
is_anomaly BOOLEAN DEFAULT FALSE
);
CREATE INDEX IF NOT EXISTS idx_telemetry_agent_round ON telemetry_rounds(agent_id, round_id);
-- Table: Location Triangulation Log
CREATE TABLE IF NOT EXISTS location_proofs (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
operator_address VARCHAR(42) NOT NULL,
calculated_x INT NOT NULL,
calculated_y INT NOT NULL,
distance_sq_a INT NOT NULL,
distance_sq_b INT NOT NULL,
distance_sq_c INT NOT NULL,
verified BOOLEAN NOT NULL,
timestamp TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);
-- Table: Multi-Factor Authentication Audits
CREATE TABLE IF NOT EXISTS auth_audits (
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
user_address VARCHAR(42) NOT NULL,
auth_type VARCHAR(30) NOT NULL, -- 'biometrics', 'passwordless', 'passport'
status VARCHAR(15) NOT NULL, -- 'success', 'failed'
timestamp TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);
CREATE INDEX IF NOT EXISTS idx_auth_user ON auth_audits(user_address);