# Changelog

## Score

- CAI 58 → 55 (-3.6)
- Rubric changed (rubric-2026.10.1 → rubric-2026.10.5) — scores are not directly comparable.

## Lenses

- Code Health 98 → 72 (-25.4)
- Architecture 98 → 99 (+0.6)
- Maturity 49 → 49 (+0.0)
- Readiness 41 → 41 (+0.0)
- Security 97 → 97 (+0.0)

## New (4)

- Orphaned file (sagemaker-pyspark-sdk/setup.py)
- Orphaned file (sagemaker-spark-sdk/build.sbt)
- Orphaned file (sagemaker-spark-sdk/src/main/scala/com/amazonaws/services/sagemaker/sparksdk/transformation/util/RequestBatchIterator.scala)
- Redundant Type Hierarchy: The `CustomNamePolicyWithTimeStampSuffix` class and its corresponding `CustomNamePolicyWithTimeStampSuffixFactory` appear to be functionally identical to `CustomNamePolicy` and `CustomNamePolicyFactory` except for the implicit timestamp suffix behavior. However, the API exposes them as distinct, parallel classes with identical constructor signatures (trainingJobName, modelName, endpointConfigName, endpointName). This forces users to choose between two nearly identical types rather than configuring a single type via a parameter (e.g., `use_timestamp=True`).
