[Unit] Description=Lakehouse quote ingest — multi-source consensus snapshot into the local SQLite cache (Yahoo+Nasdaq+CNBC) After=network-online.target lakehouse-agent.service Wants=network-online.target [Service] # Oneshot driven by lakehouse-quote-ingest.timer. Runs as root to match # the lakehouse-agent (mcp-server) service that owns the cache db — both # write data/_quote_cache/quotes.db, so they must share a user (see # README "Why both services run as root"). busy_timeout in quotes.ts # serializes the concurrent writes. Type=oneshot WorkingDirectory=/home/profit/lakehouse/mcp-server ExecStart=/home/profit/.bun/bin/bun run /home/profit/lakehouse/mcp-server/quote_ingest.ts # No args → refreshes every ticker already tracked in the cache. Cold # tickers (new basket entries) warm on-demand via the serving path. TimeoutStartSec=300