Context
forge test is green (189/189), but under forge coverage --ir-minimum one SubscriptionManager test fails (timestamp-sensitive assertion under coverage instrumentation, which disables via-ir optimizations). The coverage CI job is therefore continue-on-error: true. Current line coverage: 80.46% (494/614).
Proposed solution
- Reproduce with
forge coverage --ir-minimum --report summary in contracts/
- Make the affected test robust to instrumentation (avoid exact
block.timestamp equality; use vm.warp deltas / bounds)
- Flip the job to blocking and add a minimum-coverage threshold (e.g. fail under 75% lines)
Acceptance criteria
forge coverage --ir-minimum exits 0
- Coverage job required in CI with threshold
Effort: 1–2 hours.
Context
forge testis green (189/189), but underforge coverage --ir-minimumone SubscriptionManager test fails (timestamp-sensitive assertion under coverage instrumentation, which disables via-ir optimizations). ThecoverageCI job is thereforecontinue-on-error: true. Current line coverage: 80.46% (494/614).Proposed solution
forge coverage --ir-minimum --report summaryincontracts/block.timestampequality; usevm.warpdeltas / bounds)Acceptance criteria
forge coverage --ir-minimumexits 0Effort: 1–2 hours.