노출 기준을 한 곳에 모으던 날
moment와 inst, 추천과 탐색이 각각 처리하던 노출 기준을 공용 코어로 통합해 모든 화면에서 일관된 판단 기준을 적용한다.
같은 콘텐츠가 화면에 따라 다른 기준으로 노출되는 문제가 있었다. 추천에서 적용되는 moment 노출 조건이 탐색 화면에서는 별도 로직으로 처리되고, inst의 표시 자격도 위치마다 미세하게 달랐다. 노출 판단을 각 화면이 개별적으로 수행하는 구조에서는, 진입점이 늘어날수록 불일치도 함께 증가한다.
이를 해결하기 위해 노출 기준을 화면 레이어에서 분리해 공용 코어로 이전했다. moment와 inst, 추천과 탐색이 동일한 판단 로직을 공유하며, 어떤 진입점에서 접근하든 동일한 콘텐츠는 동일한 기준으로 처리된다. 표시 조건과 자격 판단은 단일 지점에서 결정되고, iOS 화면은 그 결과를 렌더링하는 역할로 제한된다.
재생 계층에도 같은 원칙을 적용했다. 릴스 전환과 비디오 루프, 오디오 세션과 트랙 로딩, 이펙터의 초기화 시점이 서로 맞지 않아 발생하던 불일치를 정리해, 화면 전환 시에도 오디오와 비주얼이 일관된 상태를 유지하도록 했다. 모든 콘텐츠 진입점에서 동일한 동작 기준을 보장하는 것이 이번 작업의 목표였다.