feat(home): 인기 커뮤니티 점수 정책을 변경한다

This commit is contained in:
2026-07-10 08:55:54 +09:00
parent 8a7396b677
commit 699b1621b7
5 changed files with 56 additions and 9 deletions

View File

@@ -28,6 +28,16 @@ class RecommendationScorePolicy {
}
}
fun calculateCommunityCreatorNewBoost(debutAt: LocalDateTime, now: LocalDateTime): Double {
val days = ChronoUnit.DAYS.between(debutAt.toLocalDate(), now.toLocalDate())
return when {
days <= RecommendationScoreSpec.NEW_BOOST_10_DAY_LIMIT -> RecommendationScoreSpec.COMMUNITY_NEW_BOOST_10_DAYS
days <= RecommendationScoreSpec.NEW_BOOST_20_DAY_LIMIT -> RecommendationScoreSpec.COMMUNITY_NEW_BOOST_20_DAYS
days <= RecommendationScoreSpec.NEW_BOOST_30_DAY_LIMIT -> RecommendationScoreSpec.COMMUNITY_NEW_BOOST_30_DAYS
else -> RecommendationScoreSpec.DEFAULT_NEW_BOOST
}
}
fun calculateDebutCreatorScore(
followIncrease: Long,
contentActivityScore: Long,

View File

@@ -18,7 +18,7 @@ object RecommendationScoreSpec {
const val CHEER_DONATION_COUNT_WEIGHT = 0.1
const val COMMUNITY_LIKE_WEIGHT = 0.5
const val COMMUNITY_COMMENT_WEIGHT = 0.5
const val COMMUNITY_COMMENT_WEIGHT = 0.4
const val COMMUNITY_FOLLOWER_WEIGHT = 0.1
const val NEW_BOOST_10_DAYS = 1.5
@@ -30,5 +30,8 @@ object RecommendationScoreSpec {
const val CHEER_NEW_BOOST_10_DAYS = 1.15
const val CHEER_NEW_BOOST_20_DAYS = 1.10
const val CHEER_NEW_BOOST_30_DAYS = 1.05
const val COMMUNITY_NEW_BOOST_10_DAYS = 1.15
const val COMMUNITY_NEW_BOOST_20_DAYS = 1.10
const val COMMUNITY_NEW_BOOST_30_DAYS = 1.05
const val DEFAULT_NEW_BOOST = 1.0
}

View File

@@ -28,6 +28,11 @@ class RecommendationSnapshotWindowPolicy {
)
}
fun previousKstSevenDayUtcWindow(nowUtc: LocalDateTime): RecommendationSnapshotWindow {
val dayWindow = previousKstDayUtcWindow(nowUtc)
return dayWindow.copy(startUtc = dayWindow.startUtc.minusDays(6))
}
companion object {
private val UTC_ZONE: ZoneId = ZoneId.of("UTC")
private val KST_ZONE: ZoneId = ZoneId.of("Asia/Seoul")