Graded scan: use_scrydex='0' can still reach the Scrydex live comps fetch via a free-rung identity pin #698
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Follow-up from PR #461 review (round 2, N4).
What: with
use_scrydex='0'("hard-disables Scrydex spend"), a graded scan whose identity gets pinned by a FREE rung — the cert cache (#683), or now the cert-card set-alias rung (#461) — still reaches the graded pricing call._scrydex_graded_comps_tieredserves ourprice_dailybucket first (free), but when there is no fresh row it falls through to_scrydex_graded_comps, which callsscrydex.fetch_card_prices→ one credit spent under a flag that says spend nothing.Pre-existing on main for cache-pinned identities; #461 widens the population (cert-bridge slabs now pin without a live search).
Fix sketch: in the recognizer, when
use_scrydex is False, price ONLY from_price_daily_graded_comps(...)(+ Card Hedge FMV if the cert agrees) and never enter the Scrydex live tiers; surface_graded_comps_unavailableotherwise. Add a test withuse_scrydex=Falseassertingfetch_card_pricesis never awaited.Where:
backend/app/routes/external_scan.py— thescrydex_comps = await _scrydex_graded_comps_tiered(...)sites in_recognize_graded_card_from_imageand the single-pass graded path.Filed from a Claude Code session