# Publish Preview — Phase 2A Status ## Status Phase 2A is mostly closed. ## Confirmed - retention policy works - `refresh=true` works - cached read works - response contract is more consistent - cleanup actually removes old records from the database ## Retention result For the current draft version, exactly 2 preview artifacts remain in the database, matching the configured retention policy. ## Response contract The response now explicitly returns: - `preview_cache_cleanup.retention=2` - `deleted_count` - `deleted_artifact_ids` ## Runtime state - logs are clean - no new exceptions were observed