-- Migration 088: Extend raw_crawl_payloads for discovery payloads -- -- Enables saving raw store data from Dutchie discovery crawls. -- Store discovery returns raw dispensary objects - save them for historical analysis. -- Add payload_type to distinguish product crawls from discovery crawls ALTER TABLE raw_crawl_payloads ADD COLUMN IF NOT EXISTS payload_type VARCHAR(32) NOT NULL DEFAULT 'product'; -- Add state_code for discovery payloads (null for product payloads) ALTER TABLE raw_crawl_payloads ADD COLUMN IF NOT EXISTS state_code VARCHAR(10); -- Add store_count for discovery payloads (alternative to product_count) ALTER TABLE raw_crawl_payloads ADD COLUMN IF NOT EXISTS store_count INTEGER; -- Make dispensary_id nullable for discovery payloads ALTER TABLE raw_crawl_payloads ALTER COLUMN dispensary_id DROP NOT NULL; -- Add index for discovery payload queries CREATE INDEX IF NOT EXISTS idx_raw_crawl_payloads_type_state ON raw_crawl_payloads(payload_type, state_code) WHERE payload_type = 'store_discovery'; -- Comments COMMENT ON COLUMN raw_crawl_payloads.payload_type IS 'Type: product (default), store_discovery'; COMMENT ON COLUMN raw_crawl_payloads.state_code IS 'State code for discovery payloads (e.g., AZ, MI)'; COMMENT ON COLUMN raw_crawl_payloads.store_count IS 'Number of stores in discovery payload';