Two root causes prevented gold and PRE-MARKET VERIFIED cards from showing
in wizard-created searches:
1. computeScore compared annual property rates (e.g. 1080 CHF/m²/year)
against monthly AI-extracted budget (e.g. 150 CHF/m²/month), causing
a constant -8 penalty and capping Bern retail at ~79%. Fix: divide
rentPricePerSqm by 12 before comparing.
2. generateSyntheticMatches set resultType: VERIFIED_PORTFOLIO for
schattenmarktRelease-enabled properties, which Results.tsx filters
out for demand users. Fix: set resultType: FUTURE_AVAILABILITY for
these properties so the schattenmarkt signal is resolved and the
PRE-MARKET VERIFIED card is rendered.
Also adds a score discount (×0.82 for probabilistic FUTURE_AVAILABILITY,
×0.92 for PRE-MARKET) to keep tier distribution realistic.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>