Skip to content

[NightlyBuildAgent] Trade-specific scoring badges + pricing copy polish - #474

Open
manazoid4 wants to merge 3 commits into
mainfrom
nightly-build-agent-2026-08-16
Open

[NightlyBuildAgent] Trade-specific scoring badges + pricing copy polish#474
manazoid4 wants to merge 3 commits into
mainfrom
nightly-build-agent-2026-08-16

Conversation

@manazoid4

Copy link
Copy Markdown
Owner

Problem

Lead card badges on the find-jobs page showed "Verified signal" as a generic fallback for all trades, regardless of what the lead title actually described. An electrician scanning for electrical jobs would see the same badge as a plumber — no trade-specific context.

Pricing page had two friction points: (1) the featured plan CTA said "START AFTER COVERAGE CHECK →" which sounds like a gatekeeping process, reducing click-through; (2) the hero micro-label said "FOUNDER-ASSISTED PILOT" which is meaningless to a tradesman scanning quickly. Competitors (Checkatrade, MyBuilder) were not named.

User impact

  • Electricians scanning for jobs now see trade-relevant badges: EV CHARGER, REWIRE, CONSUMER UNIT, EICR, SOLAR PV — not "Verified signal"
  • Plumbers see BOILER, BATHROOM, HEAT PUMP, DRAINAGE badges from lead titles
  • Roofers, builders, HVAC, landscapers, painters, carpenters all get trade-matched fallback labels
  • Pricing page hero now names Checkatrade and MyBuilder explicitly, explains why JobFilter is different (no shared auction, no five-trade blast)
  • Featured plan CTA is now "START PILOT — £39/MO →" with "No credit card required to browse. Cancel any month." — removes the perception of a gatekeeping process

Scope

Changed:

  • src/pages/FindJobsPage.tsx — Added TRADE_SPECIFIC_SIGNALS map (8 trades × ~10 keywords each). Updated parseTradeReasons to accept activeTrade and leadTitle params and inject trade-specific fallback badges when backend reasons are generic. Added activeTrade prop to LeadResultCard and wired it through both call sites.
  • src/pages/PricingPage.tsx — Updated hero micro-label, hero body copy (names Checkatrade/MyBuilder), CTA label, free-scan CTA label, and featured plan supporting text.

Left out:

  • Backend scoring changes — this is a display-layer enhancement; the backend already returns reasons when available
  • New pages, new routes, new data sources

Verification

  • npm run lint (TypeScript clean — no errors)
  • npm run build (passes, all routes generated)
  • Trade-specific badge logic: keyword matching against lead.title only triggers when backend provides no parsed reasons — existing leads with specific backend reasons are unaffected

Remaining risk

Trade-specific badge keywords are matched against lead titles — if a title is very short or uses abbreviations, no keywords may match and the badge falls back to "Verified signal" (same as before). No regression.


Generated by Claude Code

- Add TRADE_SPECIFIC_SIGNALS map (electrical/plumbing/roofing/building/
  painting/hvac/landscaping/carpentry) so lead card badges show relevant
  keywords (EV CHARGER, BOILER, FLAT ROOF, etc.) when backend reasons
  are generic — electrician scans see EV charger / rewire badges, plumber
  scans see boiler / bathroom badges
- Pass activeTrade prop through LeadResultCard to parseTradeReasons
- PricingPage: swap vague "FOUNDER-ASSISTED PILOT" label for
  "£39/MO — NO SHARED AUCTION, NO FIVE-TRADE BLAST" and name
  Checkatrade / MyBuilder explicitly in hero copy
- PricingPage: change confusing "START AFTER COVERAGE CHECK →" CTA to
  "START PILOT — £39/MO →" with "No credit card required to browse.
  Cancel any month." underneath
- All TypeScript clean, build passes
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

@supabase

supabase Bot commented Aug 16, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project nfjwuwsuaapufmkppoeo because there are no changes detected in supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

@vercel

vercel Bot commented Aug 16, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
job-filter-v1 Ready Ready Preview Aug 16, 2026 12:52pm

@alwaysmeticulous

alwaysmeticulous Bot commented Aug 16, 2026

Copy link
Copy Markdown

✅ Meticulous spotted 0 visual differences across 169 screens tested: view results.

Meticulous evaluated ~4 hours of user flows against your PR.

Expected differences? Click here. Last updated for commit b7cef13 [vault] update changelog 2026-08-16. This comment will update as new commits are pushed.

Pin nanoid to >=3.3.18 (GHSA-2v37-7h3g-55p8) and postcss to >=8.5.23
(GHSA-fxqj-rqcc-2cmp) via package.json overrides. npm audit now reports
0 vulnerabilities. Build confirmed green.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants