fix: backfill symbol_demand for sidebar-added symbols + analyst ratings schema fix

- Add await ctx.cache.subscribe() to addSymbol mutation so symbols
  added via the sidebar get registered in symbol_demand and yfinance
  jobs are queued immediately
- Backfill PEP, WYNN, STZ, CELH into symbol_demand + adapter_queue
- Upgrade yahoo-finance2 3.15.3 -> 3.15.4 and pass validateResult:false
  to quoteSummary() to handle Yahoo schema drift
- Add error detail logging for analyst ratings schema failures
- Update .gitignore with common ignores
This commit is contained in:
Investor Flow Build
2026-07-23 18:02:24 -04:00
parent 5ef2b2f060
commit e262187c3c
204 changed files with 25014 additions and 2934 deletions
@@ -29,7 +29,7 @@ function createMockFetch(
responses: Record<string, { body: unknown; status?: number; etag?: string; lastModified?: string }>,
) {
let callCount = 0;
async function mockFetch(url: string | URL, init?: RequestInit): Promise<Response> {
async function mockFetch(url: string | URL | Request, init?: RequestInit): Promise<Response> {
const urlStr = typeof url === 'string' ? url : url.toString();
callCount++;
for (const [key, resp] of Object.entries(responses)) {
@@ -56,7 +56,7 @@ function createHeaderRecordingMockFetch(
responses: Record<string, { body: unknown; status?: number; etag?: string; lastModified?: string }>,
) {
const calls: FetchCall[] = [];
async function mockFetch(url: string | URL, init?: RequestInit): Promise<Response> {
async function mockFetch(url: string | URL | Request, init?: RequestInit): Promise<Response> {
const urlStr = typeof url === 'string' ? url : url.toString();
const headers: Record<string, string> = {};
if (init?.headers) {