Reproduction
Inject a nonzero symplectic microstep status after mutating trial state, then return through both macrostep paths.
Expected
A rejected step retains the last accepted standard-coordinate state and returns before conversion, collision updates, wall work, or time-index advancement.
Actual
The caller can continue processing the rejected trial state, so output and subsequent operations no longer describe the last accepted trajectory point.
Environment
SIMPLE main before PR #456; symplectic guiding-centre modes.
Evidence
PR #456 adds a forced-rejection regression covering both macrostep paths. It preserves every accepted-step numerical and physical contract, including the output schema.
Reproduction
Inject a nonzero symplectic microstep status after mutating trial state, then return through both macrostep paths.
Expected
A rejected step retains the last accepted standard-coordinate state and returns before conversion, collision updates, wall work, or time-index advancement.
Actual
The caller can continue processing the rejected trial state, so output and subsequent operations no longer describe the last accepted trajectory point.
Environment
SIMPLE
mainbefore PR #456; symplectic guiding-centre modes.Evidence
PR #456 adds a forced-rejection regression covering both macrostep paths. It preserves every accepted-step numerical and physical contract, including the output schema.