TDD-style validation of #25538: pins the invariant that
BaseReportState._get_url(result_format=CSV) emits a URL with
type=POST_PROCESSED, which is what carries the chart's saved query_context
(including time filters) through to the CSV renderer. The original report
described a chart with a "last 30 days" filter producing a CSV containing
all 219 rows of the underlying table rather than the 14 filtered rows.
Closes#25538
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>