v0.6.1 — Wire Cache, CompanyFacts & Full Multi-Period Ratios
Summary
Fixes the two "shelf-ware" issues from v0.6.0 and closes the remaining multi-period gap.
Cache Now Active in Pipeline
CacheLayerwired into orchestrator's_cached_snapshot()method- Past-period filings:
set_immutable()(cached forever) - Current-period filings:
set_current()(24h TTL) ea.analyze("AAPL")called twice now serves the second call from cache
CompanyFacts Cross-Validation Active
CompanyFactsClient.validate_metrics()called automatically after each annual snapshot fetch- Discrepancies logged as warnings (Revenue, Net Income, Total Assets, Liabilities, Equity)
- Never modifies parsed values — validation only
Full Multi-Period Balance Sheet & Cash Flow
retrieve_multi_year_data()now pulls balance sheet and cash flow statements across all periods- New time series: FCF, CapEx, ROE %, ROA %, Debt-to-Equity over multiple years/quarters
- YoY growth and CAGR computed for all ratio time series
- New helpers:
_extract_bs_cf_values(),_compute_derived_bs_ratios()
Integration Tests
- Real amended filing test: Fetches actual 10-K/A and verifies data
- Small-cap filer test: SIRI — verifies handling of sparse data and missing line items
README Updated
- Documented typed API (
ea.analyze()), scoring models, caching, CompanyFacts, concurrent peers, output formats, optional extras
Test Count
- 250 unit tests passing (+8 new)
🤖 Generated with Claude Code