Prior to this commit, the SQL fragments included variables that were set configured at a global level. With this commit, we're now saying that each lever "knows" what variable it needs; and providing the means at lever declaration time to "say" what those variable names are. (e.g. `Articles::Feeds::LEVER_CATALOG`). Then as part of the variant configuration (in the `./config/feed-variants/*.json` files) we now include the expected value of those parameters; which by convention (and coercion) are integers. This relates to forem/forem#17584 because we want to move from a privileged user reaction that has two values (`negative` and `positive`) into four values (`very_negative`, `negative`, `positive`, and `very_positive`). To do that, we'll create a new lever; but that's for another pull request.
104 lines
1.9 KiB
JSON
104 lines
1.9 KiB
JSON
{
|
|
"max_days_since_published": 15,
|
|
"order_by": "relevancy_score_and_publication_date",
|
|
"levers": {
|
|
"daily_decay": {
|
|
"cases": [
|
|
[0, 1],
|
|
[1, 0.99],
|
|
[2, 0.985],
|
|
[3, 0.98],
|
|
[4, 0.975],
|
|
[5, 0.97],
|
|
[6, 0.965],
|
|
[7, 0.96],
|
|
[8, 0.955],
|
|
[9, 0.95],
|
|
[10, 0.945],
|
|
[11, 0.94],
|
|
[12, 0.935],
|
|
[13, 0.93],
|
|
[14, 0.925]
|
|
],
|
|
"fallback": 0.9
|
|
},
|
|
"comments_count_by_those_followed": {
|
|
"cases": [
|
|
[0, 0.95],
|
|
[1, 0.98],
|
|
[2, 0.99]
|
|
],
|
|
"fallback": 0.93
|
|
},
|
|
"comments_count": {
|
|
"cases": [
|
|
[0, 0.8],
|
|
[1, 0.82],
|
|
[2, 0.84],
|
|
[3, 0.86],
|
|
[4, 0.88],
|
|
[5, 0.9],
|
|
[6, 0.92],
|
|
[7, 0.94],
|
|
[8, 0.96],
|
|
[9, 0.98]
|
|
],
|
|
"fallback": 1
|
|
},
|
|
"featured_article": { "cases": [[1, 1]], "fallback": 0.85 },
|
|
"following_author": {
|
|
"cases": [
|
|
[0, 0.8],
|
|
[1, 1]
|
|
],
|
|
"fallback": 1
|
|
},
|
|
"following_org": {
|
|
"cases": [
|
|
[0, 0.95],
|
|
[1, 1]
|
|
],
|
|
"fallback": 1
|
|
},
|
|
"latest_comment": {
|
|
"cases": [
|
|
[0, 1],
|
|
[1, 0.9988]
|
|
],
|
|
"fallback": 0.988
|
|
},
|
|
"matching_positive_tags_intersection_points": {
|
|
"cases": [
|
|
[0, 0.7],
|
|
[1, 0.7303],
|
|
[2, 0.7606],
|
|
[3, 0.7909],
|
|
[4, 0.8212],
|
|
[5, 0.8515],
|
|
[6, 0.8818],
|
|
[7, 0.9121],
|
|
[8, 0.9424],
|
|
[9, 0.9727]
|
|
],
|
|
"fallback": 1
|
|
},
|
|
"privileged_user_reaction": {
|
|
"cases": [
|
|
[-1, 0.2],
|
|
[1, 1]
|
|
],
|
|
"fallback": 0.95,
|
|
"negative_reaction_threshold": -10,
|
|
"positive_reaction_threshold": 10
|
|
},
|
|
"public_reactions": {
|
|
"cases": [
|
|
[0, 0.9988],
|
|
[1, 0.9988],
|
|
[2, 0.9988],
|
|
[3, 0.9988]
|
|
],
|
|
"fallback": 1
|
|
}
|
|
}
|
|
}
|