- Add shared.cd_rates table for cross-tenant market data (CD rates from Bankrate) - Create standalone Puppeteer scraper script (scripts/fetch-cd-rates.ts) for cron-based rate fetching - Add investment-planning backend module with 3 endpoints: snapshot, cd-rates, recommendations - AI service gathers tenant financial data (accounts, investments, budgets, projects, cash flow) and calls OpenAI-compatible API (NVIDIA endpoint) for structured investment recommendations - Create InvestmentPlanningPage with summary cards, current investments table, market CD rates table, and AI recommendation accordion - Add Investment Planning to sidebar under Planning menu - Configure AI_API_URL, AI_API_KEY, AI_MODEL environment variables Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
18 lines
664 B
SQL
18 lines
664 B
SQL
-- Migration: Add CD rates table to shared schema
|
|
-- For existing deployments that already have the shared schema initialized
|
|
|
|
CREATE TABLE IF NOT EXISTS shared.cd_rates (
|
|
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
|
|
bank_name VARCHAR(255) NOT NULL,
|
|
apy DECIMAL(6,4) NOT NULL,
|
|
min_deposit DECIMAL(15,2),
|
|
term VARCHAR(100) NOT NULL,
|
|
term_months INTEGER,
|
|
fetched_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
|
source_url VARCHAR(500),
|
|
created_at TIMESTAMPTZ DEFAULT NOW()
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_cd_rates_fetched ON shared.cd_rates(fetched_at DESC);
|
|
CREATE INDEX IF NOT EXISTS idx_cd_rates_apy ON shared.cd_rates(apy DESC);
|