# Changelog

## Score

- CAI 54 → 47 (-7.3)
- Rubric changed (rubric-2026.08.18 → rubric-2026.08.15) — scores are not directly comparable.

## Lenses

- Code Health 86 → 95 (+9.0)
- Architecture 96 → 94 (-1.4)
- Maturity 59 → 62 (+2.6)
- Readiness 36 → 18 (-18.0)
- Security 77 → 77 (-0.1)

## Resolved (47)

- Boundary-crossing change coupling: utils.py ↔ factory.py (cli/utils.py)
- Change coupling: factory.py ↔ model_catalog.py (tradingagents/llm_clients/factory.py)
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- Duplicated block (13 lines × 2) (cli/main.py)
- Duplicated block (14 lines × 3) (tradingagents/agents/risk_mgmt/aggressive_debator.py)
- Duplicated block (14 lines × 3) (tradingagents/dataflows/y_finance.py)
- Duplicated block (22 lines × 2) (tradingagents/agents/researchers/bear_researcher.py)
- Duplicated block (24 lines × 3) (tradingagents/agents/analysts/fundamentals_analyst.py)
- Duplicated block (26 lines × 2) (tradingagents/agents/analysts/market_analyst.py)
- Duplicated block (7 lines × 3) (cli/main.py)
- Duplicated block (7 lines × 3) (tradingagents/reporting.py)
- Duplicated block (8 lines × 2) (cli/main.py)
- Duplicated block (8 lines × 3) (tradingagents/reporting.py)
- Duplicated block (9 lines × 2) (tradingagents/dataflows/yfinance_news.py)
- Duplicated block (9 lines × 2) (tradingagents/reporting.py)
- FileTooLong: cli/main.py (cli/main.py)
- Hotspot: cli/main.py (cli/main.py)
- Hotspot: tradingagents/dataflows/alpha_vantage_indicator.py (tradingagents/dataflows/alpha_vantage_indicator.py)
- Hotspot: tradingagents/dataflows/interface.py (tradingagents/dataflows/interface.py)
- …and 27 more

## New (15)

- Coverage not measured — test suite did not build
- Dimension evaluation failed
- Duplicated block (12 lines × 2) (tradingagents/graph/trading_graph.py)
- Duplicated block (7 lines × 2) (tests/test_cli_env_skip.py)
- Low IaC: DS-0026 (Dockerfile)
- No tests found
- main.display_complete_report (cognitive 34) (main)
- main.display_complete_report (cyclomatic 21) (main)
- main.extract_content_string (cognitive 17) (main)
- main.get_user_selections (cognitive 19) (main)
- main.get_user_selections (cyclomatic 18) (main)
- main.run_analysis (cognitive 114) (main)
- main.run_analysis (cyclomatic 37) (main)
- main.update_display (cognitive 31) (main)
- main.update_display (cyclomatic 19) (main)
