Weighting what was said recently
A complaint that stopped a year ago is history; the same complaint this month is a problem.
What it is
Review platforms present everything at once, so a business reading its own page sees a decade of opinion flattened into one average. The thing that matters — whether it is getting worse — is invisible there.
So every finding carries a date where the source gives one, and the recent half of the evidence is compared with the older half. A theme whose negative findings are mostly recent is escalated; one whose negatives are mostly old is not.
How far it goes
Recent means the last 180 days, and a theme is escalated only when at least half its negative findings fall inside that window.
Performed by
research/analysis.py. This page names the functions that do it, and
the build fails if any of them is renamed — marketing copy has no
compiler, so we gave this page one.