feat(hunch): surface live odds + 24h volume + Crypto taxonomy + cursor draining - #1293
Merged
Conversation
…tegory/tags
Hunch's agent list item now carries live binary odds, a trailing-24h volume,
and stays crypto-native in category. Wire all three into the normalizer so the
hosted catalog surfaces Hunch properly:
- Price binary YES/NO from `raw.odds` on the bare list path (explicit
detail/quote odds still win) — Hunch markets no longer ingest at price 0, so
they appear in price-gated compare/arbitrage/hedge/matched-prices.
- `volume24h` now passes through `raw.volume24hUsd` (was hard-0) — the recency
signal the catalog ranks on.
- Map Hunch's 17 native categories onto pmxt's top-level taxonomy ("Crypto",
"event"→"Culture") + granular tags (top category + subtype label + token), so
Hunch answers `?category=` filters and matches with higher confidence.
New raw fields are optional → the adapter is correct before AND after the Hunch
API deploys. 54 normalizer tests (+7). tsc clean.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The Hunch list now paginates. A catalog crawl (no explicit limit) follows `nextCursor` to drain the whole catalogue — so the hosted catalog ingests every Hunch market, not just the first 200. An explicit limit still fetches one page. MAX_LIST_PAGES (50) backstops a runaway cursor loop. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.
Follow-up to the merged Hunch venue adapter (#1150). Makes Hunch markets actually surface and rank in the hosted catalog's cross-venue features (compare / arbitrage / hedge / matched-prices), which are all price-gated.
What & why
/marketslist item now carries binary YES/NO odds. The normalizer prices binary outcomes fromraw.oddson the bare list path (explicit detail/quote odds still win). Before this, every Hunch market ingested at price 0 and was excluded from all price-gated cross-venue features. Verified live: all 69 open binary markets now price (e.g.$BNKR → 0.68/0.32).volume24hnow passes throughraw.volume24hUsd(was hard-0) — the recency signal the catalog ranks on.Crypto,event→Culture) + granular tags (["Crypto","Market Cap","BNKR"]). Verified live: 109/112 markets →Crypto. So Hunch answers?category=filters and matches with higher confidence.fetchRawMarketsfollows the newnextCursorto drain the whole catalogue on a no-limit crawl (the Hunch list now paginates), so the catalog ingests every market, not just the first 200.All new raw fields are optional → the adapter is correct before and after the Hunch API deploy (the Hunch side is already live in prod). New: 54 normalizer + 2 fetcher tests, tsc clean.
🤖 Generated with Claude Code