# Changelog

## Score

- CAI 68 → 64 (-3.7)
- Rubric changed (rubric-2026.10.1 → rubric-2026.10.5) — scores are not directly comparable.

## Lenses

- Code Health 100 → 76 (-24.3)
- Architecture 69 → 69 (+0.0)
- Maturity 52 → 49 (-2.5)
- Readiness 90 → 90 (+0.0)
- Security 94 → 94 (+0.0)
- Domain Modelling 100 → 100 (+0.0)

## Resolved (2)

- Off-boarding risk: anonymized user #1
- Redundant Rebuild Logic: There is a public convenience method `PgSearch.Multisearch.rebuild` that appears to wrap or duplicate the functionality of the `Rebuilder` class. The `Rebuilder` class exposes `initialize` and `rebuild`, while the parent `Multisearch` module also exposes a `rebuild` method. It is unclear if `Multisearch.rebuild` is a factory for `Rebuilder` or a direct implementation. If it is a factory, the `Rebuilder` class should likely be private or internal, or the public API should only expose the `Rebuilder` pattern for consistency with other complex operations.

## New (2)

- Dual API for rebuilding: A class method `PgSearch.Multisearch.rebuild` exists alongside a dedicated `Rebuilder` class. The class method accepts legacy parameters (`deprecated_clean_up`) and delegates to or mirrors the functionality of the `Rebuilder` class, creating two entry points for the same operation with different signatures and responsibilities.
- Off-boarding risk: anonymized user #1

## Changes since last survey

- 19 commits — 16 feature/other, 3 fixes

## By area

- lib/pg_search — 8 commits
- (repo) — 6 commits
- (root) — 3 commits
- doc/plans — 2 commits

## Notable commits

- fix: Add changelog entry for sort-only conditions fix
- fix: Merge pull request #600 from sean0407/codex/fix-sort-only-empty-conditions
- fix: fix: omit empty rank conditions for sort-only scopes
- change: Alias rank subquery keys with hashed names
- change: Credit composite primary key support in changelog
- change: Derive association join keys from the model
- change: Expand long endless methods
- change: Extract association join subquery and condition
- change: Extract scope options rank key helpers
- change: Index rank keys by their aliases
- change: Join associations on every composite primary-key column
- change: Merge causztic/pg_search composite primary key support
- change: Merge pull request #599 from Casecommons/document-pg-search-naming
- change: Merge pull request #601 from Casecommons/composite-primary-keys
- change: Merge pull request #602 from Casecommons/pin-json-active-record-8-0
- change: Merge remote-tracking branch 'origin/master' into pr-600
- change: Pin json below 3 for Active Record 8.0 test runs
- change: Plan composite primary key follow-ups
- change: Simplify composite primary key spec fixtures
