notify: small prepation changes for retry on 429 mechanism - #5553
notify: small prepation changes for retry on 429 mechanism#5553SoloJacobs wants to merge 3 commits into
Conversation
`retry_stage.go` will ignore the retry, if the notification was delivered successfully. This change is technically a change in behaviour, since it affects the tracing attributes. Signed-off-by: Solomon Jacobs <solomonjacobs@protonmail.com>
This part of our notification retry logic is especially tricky. Thus, I used an httptest server to generate errors from the SDK. This allows to safely make changes to `ErrorWithReason`. Signed-off-by: Solomon Jacobs <solomonjacobs@protonmail.com>
This change simplifies the number errors handled by `TestClassifyClientError`. No test coverage is lost, since `TestNotifyWithInvalidTemplate` already covers the behaviour in question. Small change in behaviour: `template` errors are now always surfaced before client errors. Signed-off-by: Solomon Jacobs <solomonjacobs@protonmail.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (3)
Included review availability: Your plan provides up to 8 included reviews per hour; 7 remain after this review. 📝 WalkthroughWalkthroughOpsGenie successful notifications no longer request retries. SNS resolves API URLs before client creation and centralizes error classification for client creation and publishing, with tests for status-specific retry behavior and failure reasons. ChangesOpsGenie retry handling
SNS error classification
Priority: ⬇️ Low Estimated code review effort: 3 (Moderate) | ~25 minutes Merge Risk: ⚪ Minimal · up to Successful OpsGenie notifications no longer request retries, while SNS resolves endpoints earlier and classifies failures by status. No current-head merge-blocking risk remains. 🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (3 passed)
Full details: Description checkExplanation The description states the preparation purpose and correctly marks the release notes as NONE. However, it omits most of the required checklist, including issue tracking, applicable bugfix and breaking-change confirmations, documentation status, and other required contribution checks. Resolution Complete the repository pull request template. Include the issue status, applicable bugfix and test confirmation, feature and performance checks, breaking-change confirmations, documentation status, sign-off status, best-practices confirmation, and the release-notes block.
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Some small changes, to prepare #5497
Which user-facing changes does this PR introduce?