-- Create enhanced articles table to replace news table structure
CREATE TABLE IF NOT EXISTS articles
(
    id                INTEGER PRIMARY KEY AUTOINCREMENT,
    title             TEXT      NOT NULL,
    url               TEXT      NOT NULL,
    source_type       TEXT      NOT NULL DEFAULT 'rss',     -- 'rss', 'manual'
    rss_content       TEXT,                                 -- RSS description/excerpt
    full_content      TEXT,                                 -- Scraped full content
    summary           TEXT,                                 -- AI-generated summary
    processing_status TEXT      NOT NULL DEFAULT 'pending', -- 'pending', 'processing', 'completed', 'failed'
    published_at      TIMESTAMP NOT NULL,
    added_at          TIMESTAMP NOT NULL DEFAULT (datetime('now')),
    read_at           TIMESTAMP,
    read_count        INTEGER   NOT NULL DEFAULT 0,
    reading_time      INTEGER,                              -- in seconds
    ai_enabled        BOOLEAN   NOT NULL DEFAULT 1,
    created_at        TIMESTAMP NOT NULL DEFAULT (datetime('now')),
    updated_at        TIMESTAMP NOT NULL DEFAULT (datetime('now'))
);

-- Create indexes for performance
CREATE INDEX IF NOT EXISTS idx_articles_published_at ON articles (published_at);
CREATE INDEX IF NOT EXISTS idx_articles_added_at ON articles (added_at);
CREATE INDEX IF NOT EXISTS idx_articles_processing_status ON articles (processing_status);
CREATE INDEX IF NOT EXISTS idx_articles_source_type ON articles (source_type);
CREATE INDEX IF NOT EXISTS idx_articles_read_at ON articles (read_at);
