2.6 KiB
2.6 KiB
Changelog
All notable changes to snipe are documented here.
Format follows Keep a Changelog.
Versions follow Semantic Versioning.
[0.2.0] — 2026-04-12
Added
Trust signal UI — community feedback on seller trust scores (MIT component layer)
web/src/components/TrustFeedbackButtons.vue: "This score looks right / This score is wrong" button pair displayed below the trust badge on each listing card. Shows "Thanks, noted." on submission with no countdown or urgency.web/src/composables/useTrustFeedback.ts:FeedbackStatemachine (idle | sending | confirmed | disputed). Fail-soft: any network error still transitions to confirmed state — the UI never surfaces signal pipeline failures.- Slotted into
ListingCard.vueafter the trust badge, inside.card__score-col. - WCAG (Web Content Accessibility Guidelines) 2.1 compliance:
aria-live="polite"on confirmation message,aria-busyduring send, keyboard-focusable buttons withfocus-visiblestyles,prefers-reduced-motionguard on transitions. - Uses
--trust-high/--trust-lowtheme CSS custom properties for color consistency.
Note: The backend signal endpoint (POST /api/community/signal) and seller signal store are gated on cf-orch community postgres landing. The UI degrades gracefully when the endpoint is absent.
Forgejo feedback FAB (floating action button)
FeedbackButton.vue: floating "Feedback" button in the corner of every view. Opens a two-step modal (type + description → attribution + confirm) that files a Forgejo issue againstCircuit-Forge/snipe. Hidden whenFORGEJO_API_TOKENis unset or in demo mode.GET /api/feedback/status— returns{"enabled": bool}so the button never flashes before checking.POST /api/feedback— files the issue; returnsissue_numberandissue_url.
Live SSE score push (closes #1)
- Background enrichment results pushed to the browser via Server-Sent Events as trust scores complete.
[0.1.0] — 2026-03-25
Added
Initial beta release of Snipe — eBay listing intelligence and trust scoring.
- Listing search via eBay scraper (Kasada bypass with headed Chromium + Xvfb).
- Trust score composite: feedback rate, negative feedback ratio, member age, zero-feedback penalty.
TrustScoredataclass with red flags, partial score flag, composite score (0-100).- Vue 3 SPA frontend: search view, listing card grid, listing detail view, blocklist management.
- FastAPI backend:
/api/search,/api/enrich,/api/blocklist. - Keyword filtering for search queries.
- SQLite persistence via cf-core
dbmodule.