# Changelog

> **This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.**

## Score

- CAI 64 → 50 (-14.2)
- Rubric changed (rubric-2026.08.18 → rubric-2026.08.15) — scores are not directly comparable.

## Lenses

- Code Health 80 → 93 (+13.4)
- Architecture 100 → 94 (-5.9)
- Maturity 54 → 55 (+1.1)
- Readiness 66 → 30 (-36.0)
- Security 71 → 66 (-5.1)

## Resolved (89)

- AnsiDecoder.decode_line (cognitive 36) (rich/ansi.py)
- AnsiDecoder.decode_line (cyclomatic 21) (rich/ansi.py)
- Color.downgrade (cognitive 24) (rich/color.py)
- Color.get_ansi_codes (cognitive 16) (rich/color.py)
- Columns.__rich_console__ (cognitive 26) (rich/columns.py)
- Console.__init__ (cognitive 43) (rich/console.py)
- Console.__init__ (cyclomatic 32) (rich/console.py)
- Console._write_buffer (cognitive 65) (rich/console.py)
- Console._write_buffer (cyclomatic 18) (rich/console.py)
- Console.export_html (cognitive 33) (rich/console.py)
- Console.export_svg (cognitive 30) (rich/console.py)
- Console.print (cognitive 32) (rich/console.py)
- Console.print (cyclomatic 18) (rich/console.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) (rich/json.py)
- Duplicated block (14 lines × 2) (rich/style.py)
- Duplicated block (18 lines × 2) (rich/segment.py)
- Duplicated block (36 lines × 2) (rich/progress.py)
- Duplicated block (7 lines × 2) (rich/progress.py)
- …and 69 more

## New (7)

- Coverage not measured — test suite did not build
- Dimension evaluation failed
- Duplicated block (14 lines × 2) (rich/json.py)
- Duplicated block (9 lines × 2) (rich/text.py)
- Low: security finding (details withheld)
- No tests found
- Rotate the exposed credentials — git history can't be un-committed
