Problem
docs/BIDIRECTIONAL_BOOST_CHANGE.md says future algorithm updates will be understandable "by checking the diffs". In practice the diffs are hard to follow:
- 17 commits touched
home-mixer/params/param.rs since 2026-08-01, all titled "Open-source X Recommendation Algorithm"
- The repo has 0 releases and 0 tags
- Every sync rewrites the
// ... last sync <timestamp> header, so some commits change nothing but that line, while others change ranking weights with the same commit message
Example: b089ce6 (Aug 17) → 6bb4594 (Sep 12), param.rs only
VqvWeight 0.05 → 0.0
DwellWeight 0.0 → 0.05
- Two mode strings
DENSE_WITH_SHORT_DWELL → DENSE_WITH_LONG_DWELL
- New params such as
WeightPerturbationSigma and EnablePhoenixScoreStatsExperimentBucket
None of these are described in a commit message or doc.
Proposal
- Generate a param changelog on each sync (commit body or
docs/PARAM_CHANGES.md): name, old value, new value, date.
- Skip commits whose only change is the sync header, or label them as such.
- Tag each sync so a change can be referenced by version.
- For ranking-weight changes, add a one-line plain-language note in the style of
BIDIRECTIONAL_BOOST_CHANGE.md.
Why
People currently reverse-engineer diffs by hand, and third-party readings fill the gap, often wrongly. A changelog makes the transparency this repo is built for reach the creators it affects.
Problem
docs/BIDIRECTIONAL_BOOST_CHANGE.mdsays future algorithm updates will be understandable "by checking the diffs". In practice the diffs are hard to follow:home-mixer/params/param.rssince 2026-08-01, all titled "Open-source X Recommendation Algorithm"// ... last sync <timestamp>header, so some commits change nothing but that line, while others change ranking weights with the same commit messageExample: b089ce6 (Aug 17) → 6bb4594 (Sep 12),
param.rsonlyVqvWeight0.05 → 0.0DwellWeight0.0 → 0.05DENSE_WITH_SHORT_DWELL→DENSE_WITH_LONG_DWELLWeightPerturbationSigmaandEnablePhoenixScoreStatsExperimentBucketNone of these are described in a commit message or doc.
Proposal
docs/PARAM_CHANGES.md): name, old value, new value, date.BIDIRECTIONAL_BOOST_CHANGE.md.Why
People currently reverse-engineer diffs by hand, and third-party readings fill the gap, often wrongly. A changelog makes the transparency this repo is built for reach the creators it affects.