CREATE TABLE `categories` ( `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL, `name` text NOT NULL, `emoji` text DEFAULT '📦' NOT NULL, `created_at` integer NOT NULL ); --> statement-breakpoint CREATE UNIQUE INDEX `categories_name_unique` ON `categories` (`name`);--> statement-breakpoint CREATE TABLE `items` ( `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL, `name` text NOT NULL, `weight_grams` real, `price_cents` integer, `category_id` integer NOT NULL, `notes` text, `product_url` text, `image_filename` text, `created_at` integer NOT NULL, `updated_at` integer NOT NULL, FOREIGN KEY (`category_id`) REFERENCES `categories`(`id`) ON UPDATE no action ON DELETE no action ); --> statement-breakpoint CREATE TABLE `settings` ( `key` text PRIMARY KEY NOT NULL, `value` text NOT NULL ); --> statement-breakpoint CREATE TABLE `setup_items` ( `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL, `setup_id` integer NOT NULL, `item_id` integer NOT NULL, FOREIGN KEY (`setup_id`) REFERENCES `setups`(`id`) ON UPDATE no action ON DELETE cascade, FOREIGN KEY (`item_id`) REFERENCES `items`(`id`) ON UPDATE no action ON DELETE cascade ); --> statement-breakpoint CREATE TABLE `setups` ( `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL, `name` text NOT NULL, `created_at` integer NOT NULL, `updated_at` integer NOT NULL ); --> statement-breakpoint CREATE TABLE `thread_candidates` ( `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL, `thread_id` integer NOT NULL, `name` text NOT NULL, `weight_grams` real, `price_cents` integer, `category_id` integer NOT NULL, `notes` text, `product_url` text, `image_filename` text, `created_at` integer NOT NULL, `updated_at` integer NOT NULL, FOREIGN KEY (`thread_id`) REFERENCES `threads`(`id`) ON UPDATE no action ON DELETE cascade, FOREIGN KEY (`category_id`) REFERENCES `categories`(`id`) ON UPDATE no action ON DELETE no action ); --> statement-breakpoint CREATE TABLE `threads` ( `id` integer PRIMARY KEY AUTOINCREMENT NOT NULL, `name` text NOT NULL, `status` text DEFAULT 'active' NOT NULL, `resolved_candidate_id` integer, `category_id` integer NOT NULL, `created_at` integer NOT NULL, `updated_at` integer NOT NULL, FOREIGN KEY (`category_id`) REFERENCES `categories`(`id`) ON UPDATE no action ON DELETE no action );