Spaces:
Running
Running
Commit History
-
Add API key rotation for NewsAPI and Webz Running
f7ce805
-
Sync IRIS-AI model and almanac updates
4adb2a8
-
Upgrade Almanac monthly planner details
4fb4037 -
Improve Almanac cross-year weekly data
fac0b31 -
Fix Almanac weekly calendar navigation
ecb29ff -
Expand weekly Almanac accuracy view
1a3cb2a -
Upgrade Almanac IRIS dashboard view
19b732a -
Add Almanac accuracy and snapshot APIs
a9f8984 -
Add Almanac accuracy seed inputs
d7022e8
-
Fix late-year almanac seasonal signals
d54c280 -
Fix almanac seasonal display layout
2930c8d -
Include almanac data in Space image
8b85824 -
Preserve dashboard state and SEC verification UI
fa65b59 -
Cache SEC ticker snapshot for faster validation
82e7fcd -
Use JSON fallback for almanac demo data
a4795c5 -
Add Hugging Face Space metadata
cbe54a9 -
Sync almanac and FinBERT updates from IRIS-AI
61a6cd4
-
feat: enforce headline search for special market symbols
Add SPECIAL_SYMBOL_TERMS mapping 17 indices/futures/composites to human-readable names and synonyms. Update _get_search_terms() to resolve these first so raw symbols (^GSPC, CL=F) never appear in NewsAPI, Webz.io, or Google News queries. Fix simulation fallback to use display_name and name-based search URLs. Add 34-case test suite covering structure validation, query building, and fallback for all special symbol types.3db7f2a -
feat: allow indices and futures symbols in ticker validation
Extend client-side format validation to accept Yahoo Finance special symbols: indices (^GSPC, ^DJI), futures (CL=F, GC=F), and composite symbols (DX-Y.NYB). Backend already supported these; only the JS format check was blocking them. Add corresponding tests for all new symbol types in both Python and JavaScript test suites.a743902
-
fix: sync dynamic headlines height alignment and refresh frontend cache
732db49 -
fix: sync headlines scroll constraints and bump css cache
52efe46 -
fix: sync dashboard spacing optimization from localhost
45f9901 -
Sync localhost changes after aa6da6b into demo
f21508a
-
Update watchlist with major US indexes
3085bf5
-
fix: add light mode text color overrides for recommendation section
4a45f24 -
fix: enforce clickable URLs on all headlines and fix recommendation click-to-analyze
- Reject headlines without valid http/https URLs in backend (iris_mvp.py) - Add clickThroughUrl/canonicalUrl extraction for yfinance news fallback - Replace simulation mode empty URLs with Google News search links - Filter non-clickable headlines in frontend before rendering - Fix recommendation card click to directly invoke analysis function - Cards now bypass form submission and call analysis logic directly585e64a -
fix: add null guards and defensive error handling across dashboard
- Guard all data.meta/market/signals/evidence accesses with optional chaining - Replace raw .toFixed()/.trim()/.includes() on potentially null values - Replace usdFormatter.format() on NaN with isFinite() guard showing N/A - Fix falsy-zero bug in LLM price check (!llmPrice -> !isFinite(llmPrice)) - Wrap updateDashboard() call in try-catch to isolate render crashes - Guard recSubtitle element access in recommendations IIFE - Remove AMZN duplicate from Technology SECTOR_PEERS (was also in Consumer Cyclical) - Bump app.js cache to v21ece751d -
feat: add Recommended For You section with related stock tickers
- Add /api/related/<ticker> backend endpoint using yfinance sector data - Add horizontal scrollable recommendation cards below price chart - Each card shows ticker, company name, sparkline chart, price and change - Cards are clickable to trigger full risk analysis on the selected ticker - Includes loading skeleton, scroll navigation, and light/dark theme support4e76482
-
fix: widen ticker search box to fully display placeholder text
8a4e2a4 -
feat: expand headlines scope and fix category passthrough to frontend
2d9e14d -
fix: redesign clear button as subtle inline circular icon
87b3299 -
fix: float autocomplete dropdown above dashboard with glass transparency effect
4341536 -
fix: align dashboard card grid to 3-column layout with spanning headlines card
3773031 -
feat: add end-to-end integration tests and VALIDATION.md developer documentation
7cbea93 -
feat: add comprehensive error codes, edge case handling, and graceful degradation
b67fea5 -
feat: add automatic ticker DB refresh with startup integrity checks
fb8e94c -
feat: add LLM data guardrails with real market data anchoring
43a1b2f -
feat: add ticker autocomplete with local database prefix search
dfe26b6 -
feat: wire end-to-end validation flow with error banners and loading states
6ff9f9f -
feat: add instant frontend ticker validation with debounced API verification
d7694d8 -
feat: add validation gate to API endpoints with rate limiting and health check
95c7e7f -
feat: add multi-layer ticker validation with format, local DB, and API checks
97f6726 -
feat: add local ticker database with SEC data download and fuzzy matching
8cd9040 -
Sync mobile responsive CSS from IRIS-AI
a207429
-
fix: per-entry JSON files + 1-min push interval + manual flush endpoint
- Switch from single JSONL append to per-entry feedback_<uuid>.json files (HF recommended pattern: unique filename = no mtime race, no append conflicts) - Reduce push interval 5min -> 1min via FEEDBACK_PUSH_EVERY default - Add /api/feedback/flush endpoint for manual CommitScheduler trigger - Update /api/feedback/persistence to count per-entry files instead of JSONL lines - Auto-remove old feedback.jsonl on startup if migrating from previous approach - Remove dead _FEEDBACK_JSONL variable1666fd8 -
feat: extend news lookback to 14 days, raise headline cap to 25
- Add 14-day date window for NewsAPI (from_param) and Webz.io (ts parameter) - NewsAPI page_size 30 → 50 for more candidates per window - Webz.io size 30 → 40, sort changed to relevancy for better coverage - yfinance supplement threshold 10 → 15 - LLM filter max_keep 12 → 25 to show fuller 14-day context6d53e75 -
feat: broaden news coverage with TICKER_SEARCH_TERMS, wider API queries, two-tier relevance
- Add TICKER_SEARCH_TERMS dict (12 tickers) and _get_search_terms() helper - NewsAPI query now ORs ticker + company names + CEO (e.g. TSLA OR Tesla OR Elon Musk) - Webz.io query now ORs ticker OR primary company name - Keyword fallback upgraded: two-tier relevance (direct mention vs sector+financial) - Expanded _BROAD_FINANCIAL regex (announce/launch/recall/FDA/EV/etc.) - yfinance now supplements at <10 headlines instead of only when empty - Simulation fallback uses company name instead of ticker for generic headlines227f2f5 -
fix: log full traceback when CommitScheduler init fails
008fc83 -
fix: point CommitScheduler to correct dataset repo iris-ai-demo-feedback
bb4f57c -
feat: persist feedback to HF Dataset repo via CommitScheduler
Adds huggingface_hub CommitScheduler so user feedback submitted via /api/feedback survives Space restarts. Feedback is appended to a local JSONL staging file and pushed to Brajmovech/iris-feedback every 5 min. - Add uuid import and CommitScheduler setup block in app.py - Replace submit_feedback() to write JSONL + keep legacy JSON path - Add /api/feedback/persistence diagnostic endpoint - Add huggingface_hub to requirements.txt - Exclude data/feedback_staging/ from git (.gitignore)71dd717