plexus.reports.blocks.acceptance_rate_timeline module

class plexus.reports.blocks.acceptance_rate_timeline.AcceptanceRateTimeline(config: Dict[str, Any], params: Dict[str, Any] | None, api_client: PlexusDashboardClient)

Bases: FeedbackRatesBase

Report block that measures score-result acceptance rate over time (bucketed).

This is the same core metric as AcceptanceRate (score_result_acceptance_rate), but computed per time bucket instead of as a single aggregate.

DEFAULT_DESCRIPTION: str | None = 'Score result acceptance rate over time'
DEFAULT_NAME: str | None = 'Acceptance Rate Timeline'
TRAILING_BUCKET_DAYS: Dict[str, int] = {'trailing_14d': 14, 'trailing_1d': 1, 'trailing_30d': 30, 'trailing_7d': 7}
async generate() Tuple[Dict[str, Any] | None, str | None]

Generates the data for this report block asynchronously.

Access block configuration via self.config and report parameters via self.params. Use self.api_client for data fetching. Use self._log(“message”) to record log information.

Returns:
A tuple containing:
  • A dictionary containing the generated data (JSON-serializable), or None on failure.

  • A string containing concatenated log messages, or None if no logs.