Skip to content

feat: prevent infinite looping when a failing relay processes failures#5

Merged
krogrammer merged 4 commits into
mainfrom
failure-loop
May 11, 2026
Merged

feat: prevent infinite looping when a failing relay processes failures#5
krogrammer merged 4 commits into
mainfrom
failure-loop

Conversation

@krogrammer
Copy link
Copy Markdown
Collaborator

@krogrammer krogrammer commented Apr 28, 2026

If a Relay interested in Failures is broken and throws exceptions during processing, StandardTelemeter will record a Failure event that will eventually come back through the pipeline to that broken Relay, leading to an infinite loop of Failure events being processed and recorded.

This prevents that situation by having StandardTelemeter apply a RelayFailure facet to the failure events recorded when a Relay fails. Relays will not be allowed to process any RelayFailure that they are a cause of.

This PR also contains an update to the pre-commit hook. Now it will run the Kotlinter Gradle task, instead of relying on a locally installed Ktlint (where the version may not match).

@krogrammer krogrammer changed the title Prevent infinite looping when a failing relay processes failures feat: prevent infinite looping when a failing relay processes failures May 7, 2026
@krogrammer krogrammer force-pushed the failure-loop branch 2 times, most recently from 037069f to 29c61eb Compare May 11, 2026 18:15
@krogrammer krogrammer merged commit fb1afc7 into main May 11, 2026
11 checks passed
@krogrammer krogrammer deleted the failure-loop branch May 11, 2026 18:35
@github-actions
Copy link
Copy Markdown

🎉 This PR is included in version 1.2.1 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants