Optionaloptions: QualityRecorderOptionsAccumulate: reduce scored steps up to a slider position.
Optionalkeys: ReadonlySet<string>Aggregate: reduce ALL scored steps to a single value.
Reset state before each executor.run() — prevents cross-run accumulation.
Translate: quality entry for a specific runtimeStageId.
Find the lowest-scoring step.
All per-step quality entries as a read-only Map (insertion-ordered).
Overall quality score — average of all step scores.
Progressive quality score up to a slider position.
A series that ended after giving up or timing out is a drop at its stage. onAttempt for the last attempt
fires after that attempt's onStageEnd (when it returned), so a recovered series amends the scored entry; a
series that gave up has none, and is scored here.
Expose collected data for inclusion in executor.getSnapshot().recorders.
All per-step quality entries (insertion-ordered).
Pluggable observer for scope operations.
All methods are optional — implement only the hooks you need. Recorders are invoked synchronously in attachment order. If a recorder throws, the error is caught and passed to onError hooks of other recorders; the scope operation continues normally.