# Changelog

## Score

- CAI 55 → 55 (+0.1)
- Rubric changed (rubric-2026.09.8 → rubric-2026.09.16) — scores are not directly comparable.

## Lenses

- Code Health 100 → 100 (+0.0)
- Architecture 69 → 69 (+0.0)
- Maturity 49 → 49 (+0.0)
- Readiness 44 → 44 (+0.0)
- Security 97 → 98 (+0.8)

## Resolved (1)

- Documentation: no licence statement (README.md)

## New (3)

- Duplicate intent for manifest parsing. AndroidProject has two methods for manifest retrieval (parse vs get) with identical signatures, and a separate ManifestParser class exists that duplicates the logic of extracting package/activity info from a manifest file. It is unclear if AndroidProject methods delegate to ManifestParser or if they are redundant implementations.
- Inconsistent naming for command execution. DryrunUtils has both execute and run, while AndroidProject has execute_command. The distinction between 'execute' and 'run' in DryrunUtils is unclear (one takes a command string, the other a path, but the semantic difference is subtle and naming is inconsistent with AndroidProject's execute_command).
- Inconsistent validation method signatures. AndroidProject.valid? takes an argument, while Github.valid? takes none. This creates confusion about whether validation is self-contained or requires external context.
