fix(ops): stop feed alert firing on orphaned and static feeds - #79
Merged
Merged
Conversation
Both monitored feeds were orphaned on purpose (market 1 -> static stable feed 2026-09-09, market 2 -> static cNGN feed at the SRM cutover 2026-09-10) and the numo-feeds publisher was retired 2026-09-22, so the alert fires every minute on staleness nothing can act on. getSpot() selector 0x2b37269c from `cast sig`.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
numo-feed-alertfires every minute on two feeds that nothing reads. Sameself-correcting shape as #77's zero-open-interest exit: a condition re-evaluated
every run, not a disabled timer.
Why they are stale
cNGN feed at the SRM cutover on 2026-09-10. Neither monitored feed is the spot
feed of any SRM market any more.
numo-feeds) was retired 2026-09-22 after its relayer ran out ofgas, so the staleness is now permanent and expected.
Two skips, both narrow
OraclesSetlogs (
spotFeedsis internal; latest event per market wins). Re-point a marketat one of these and its alert comes straight back on the next run.
getSpot()but never writesspotDetail, sonow - 0reads as ~1.8e9 seconds stale forever. Only applies when the storedprice is 0 and the feed still answers
getSpot().A live feed that was never published has no timestamp and cannot price, so it
is not classified static and still alerts.
Verified against Base mainnet
0x507D6456…, returns 1e18)0x41512C6a…into the live set)The third row is the one that matters: the dead cNGN feed has a stale price in
slot 6 but reverts
getSpot(), so it is correctly not silenced.SEL_GET_SPOTis0x2b37269cfromcast sig "getSpot()", not written by hand —the first attempt at this selector was wrong and would have failed silently by
classifying every feed as non-static.