# Changelog

## Baseline

- First survey — no prior run to compare against. CAI 66.

## Lenses

- Code Health 83
- Architecture 99
- Maturity 64
- Readiness 61
- Security 63
- Domain Modelling 100

## Changes since last survey

- 300 commits — 252 feature/other, 48 fixes

## By area

- caffeine/src — 98 commits
- jcache/src — 69 commits
- simulator/src — 61 commits
- .github/workflows — 33 commits
- .claude/docs — 9 commits
- .claude/skills — 8 commits
- .github/actions — 4 commits
- examples/indexable — 3 commits
- gradle/plugins — 3 commits
- guava/src — 3 commits
- .claude/rules — 2 commits
- examples/coalescing-bulkloader-reactor — 2 commits
- examples/write-behind-rxjava — 2 commits
- (root) — 1 commit
- gradle/libs.versions.toml — 1 commit
- simulator/build.gradle.kts — 1 commit

## Notable commits

- fix: Add regression tests for unpinned cache behaviors
- fix: Fix CAMP tie-breaking and miss-path priority refresh
- fix: Fix CaffeineSpec sentinel collision for maximumSize, maximumWeight, initialCapacity
- fix: Fix CountMin64TinyLfu reset over-correcting size after halving
- fix: Fix DClockPolicy port mismatches against linux/mm/workingset.c
- fix: Fix GDWheelPolicy.add() reducing queueIndex by wrong dimension
- fix: Fix JCache close/createCache races and recursive teardown
- fix: Fix JCache filter-exception and invoke put-stat conformance
- fix: Fix JCache zero update-expiry divergence across the write paths
- fix: Fix JCache zero-creation-expiry, Guava null-query, and simulator bugs
- fix: Fix LongPreprocessor stripping underscores from unrelated args (#1960)
- fix: Fix S->L promotion guard in CartPolicy
- fix: Fix SerializationProxy dropping zero-duration expiration on round-trip
- fix: Fix TimerWheel zero-boundary handling and async expiration delay
- fix: Fix UnboundedLocalCache.replace async notification bypass
- fix: Fix ageOf to mask writeTime tag bit during refresh
- fix: Fix bug in S3Fifo paper when the small-queue threshold floors to zero
- fix: Fix build cache relocatability: absolute paths in task inputs (#1947)
- fix: Fix design-decisions notes and indexable example
- fix: Fix equals-receiver reversal in asMap read views
- …and 280 more

## Architecture

- 0 containers · 1 bounded contexts · 0 dependency edges (baseline)
