Skip to content

BUG Scenario success rate counts ERROR attempts that were later retried or resumed #2819

Description

When an attempt errors, an ERROR AttackResult is saved, and a retry or resume then adds a new row for the same objective. Keeping those ERROR rows as history is intentional, but objective_achieved_rate and group_success_rate divide by every row, so each recovered error still drags the rate down. Running the existing Crescendo retry-and-resume test flow and printing the rate:

rows: ['success', 'error', 'error', 'success']  unique objectives: 2  objective_achieved_rate: 50

Both objectives succeeded, so that should be 100. This number feeds the console, JSON and HTML reports. The GUI already gets it right (calculate_progress_counts explicitly avoids "inflating retries or error attempts"), so the GUI and CLI show different rates for the same run.

Suggested fix: skip ERROR attempts that were replaced by a later attempt of the same unit, using the same unit identity the GUI uses.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions