Source: docs/threat-model.md v1.0, Tamp.7 (planned hardening). Scout re-scan S-1.
contracts/events/src/event_ops.rs:745: let anchor_idx = existing_count + (idx as u32); is the one bare addition left in the contract. Unreachable in practice (2³² winner records) and it traps under overflow-checks = true, but it breaks the checked-arithmetic rule adopted for the earlier Scout findings.
Source:
docs/threat-model.mdv1.0, Tamp.7 (planned hardening). Scout re-scan S-1.contracts/events/src/event_ops.rs:745:let anchor_idx = existing_count + (idx as u32);is the one bare addition left in the contract. Unreachable in practice (2³² winner records) and it traps underoverflow-checks = true, but it breaks the checked-arithmetic rule adopted for the earlier Scout findings.existing_count.saturating_add(idx as u32)docs/scout-audit-report.mdfor the SDK 23.5 workaround) and confirm the finding is gone