Commit Graph

3 Commits

Author SHA1 Message Date
Peter Foster
426089fb3e Apply second code review fixes: robustness and correctness
- AiAssistantService: 90s HTTP timeout; RefineWithCorrections uses 29.99 example
  price and explicit "Never return 0" instruction; treat returned 0 as missing and
  keep original price instead
- EbayAuthService: shared static HttpClient for all auth/token calls; SemaphoreSlim
  double-checked locking on GetAppTokenAsync to prevent concurrent token fetches
- EbayPriceResearchService: 15s timeout; require ≥5 samples before suggesting;
  trim top/bottom 10% outliers; BEST_MATCH sort avoids spam/broken listing bias
- PhotoAnalysisView: spinner-show inside try (Issue 1); decimal→double casts use
  Math.Round to avoid 19.99→19.989... drift (Issue 6); Dispatcher.CheckAccess guard
  for off-thread callers (Issue 7); save toast always restarts instead of silently
  dropping rapid saves, eliminating any stuck-flag path (Issue 8)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 18:14:00 +01:00
Peter Foster
c02c69aaa6 Add AI corrections/refinement to Photo Analysis view
Adds a Corrections box and "Refine with AI" button below the
description. User types what the AI got wrong (e.g. "earrings are
white gold with diamonds, not silver and zirconium") and clicks
Refine — the AI rewrites the title, description and price while
keeping all other analysis fields intact.

AiAssistantService.RefineWithCorrectionsAsync() sends the current
listing text + corrections as a single text prompt and parses the
JSON response back into the title/description/price fields.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 17:53:06 +01:00
Peter Foster
9fad0f2ac0 Initial commit: EbayListingTool WPF application
C# WPF desktop app for creating eBay UK listings with AI-powered
photo analysis. Features: multi-photo vision analysis via OpenRouter
(Claude), local listing save/export, saved listings browser,
single item listing form, bulk import from CSV/Excel, and eBay
OAuth authentication.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 17:33:27 +01:00