Skip to content

Add Best Buy WebHarbor mirror#48

Open
Lxr-max wants to merge 1 commit into
aiming-lab:mainfrom
Lxr-max:add-bestbuy-site
Open

Add Best Buy WebHarbor mirror#48
Lxr-max wants to merge 1 commit into
aiming-lab:mainfrom
Lxr-max:add-bestbuy-site

Conversation

@Lxr-max

@Lxr-max Lxr-max commented Jun 4, 2026

Copy link
Copy Markdown

Site name

Best Buy

Site slug

bestbuy

Upstream URLs

Contribution type

New Website

Contributor

XuanRui LI / Lxr-max

Contact email

mingduanmu845@gmail.com

Safety note

Deterministic demo retail data only; no real payment, no real checkout, no live Best Buy calls, no external runtime network calls.

Implementation summary

  • Added a self-contained Flask + SQLAlchemy Best Buy mirror under sites/bestbuy/.
  • Implemented category browsing, search, filters, product detail pages, compare flow, store lookup, support/help search, wishlist, cart, mock checkout, order lookup, and rewards/account pages.
  • Added deterministic local SVG product/store/category artwork and deterministic synthetic commerce/support data.
  • Registered bestbuy in websyn_start.sh, control_server.py, Dockerfile, and updated repo docs/skill references for the new site count and port range.

Seed row counts (instance_seed/bestbuy.db)

  • users: 4
  • categories: 12
  • brands: 25
  • products: 156
  • stores: 15
  • store_inventory: 1989
  • reviews: 339
  • orders: 60
  • order_items: 80
  • reward_accounts: 4
  • reward_activities: 20
  • wishlist_items: 16
  • compare_items: 12
  • cart_items: 8
  • deals: 18
  • support_articles: 24
  • support_tickets: 8
  • protection_plans: 312
  • pickup_slots: 45
  • delivery_options: 3
  • payment_mocks: 60

Benchmark users

Task count and categories

  • Task count: 19
  • Categories covered: search, category filters, compare, protection plan comparison, wishlist, cart, store pickup, delivery selection, mock checkout, confirmation, order lookup, rewards, support article search, store amenities, order history, multi-page reasoning.

Selected WebSyn port

  • 40015

Key routes

  • /, /home, /categories, /category/<category_slug>, /products, /product/<sku>, /deals, /stores, /stores/<store_slug>, /support, /search
  • /cart, /cart/add, /checkout, /checkout/shipping, /checkout/pickup, /checkout/payment, /checkout/review, /checkout/confirmation
  • /login, /register, /logout, /account, /account/orders, /account/rewards, /account/wishlist, /order-lookup, /order/<order_number>

Verification commands and results

  • py -3 -m py_compile sites/bestbuy/app.py
  • py -3 -m py_compile sites/bestbuy/seed_data.py
  • py -3 -m py_compile sites/bestbuy/_health.py
  • JSONL/schema validation for sites/bestbuy/tasks.jsonl ✅ (19 tasks, unique IDs, correct web_name / web / upstream_url fields)
  • Repo-wide duplicate task ID check ✅ (sites/*/tasks.jsonl, 16 files / 662 tasks total)
  • Local Flask smoke via test client ✅
  • Real HTTP smoke against container ✅

Docker result

  • Built with: docker build -t webharbor:bestbuy-pr .
  • Ran container with: docker run -d --name webharbor-bestbuy-submit -p 8201:8101 -p 41015:40015 webharbor:bestbuy-pr
  • Control plane health returned ok=true and all 16 registered sites alive ✅

Smoke test result

  • HTTP 200 on: /, /home, /categories, /products, /cart, /checkout, /order-lookup, /support, /login
  • End-to-end HTTP flow checks passed for: login, logout, search, filtered browse, wishlist, rewards, account orders, add to cart, shipping step, payment step, checkout review, confirmation, order lookup ✅
  • Example confirmation order during smoke: BBY-240061

Reset + MD5 result

  • POST /reset/bestbuy returned ready=true
  • MD5 matched for runtime vs seed DB inside container:
    • 71c41f6f167e00c4b7bf725a1ccf343d /opt/WebSyn/bestbuy/instance/bestbuy.db
    • 71c41f6f167e00c4b7bf725a1ccf343d /opt/WebSyn/bestbuy/instance_seed/bestbuy.db
  • Container restart re-check also passed ✅

Screenshot paths

  • Screenshot capture was attempted but could not be completed on this machine.
  • npx playwright install chromium failed with network ECONNRESET, so no review-only screenshots were produced in sites/bestbuy/scraped_data/submission_review/.

HF asset status

Known limitations

  • Product, store, and category artwork is locally generated SVG content, not copied Best Buy-owned imagery.
  • No real payment, order placement, shipping, inventory reservation, or external runtime calls exist.
  • Screenshot capture is still pending due local browser automation download issues on this machine.

Manual reviewer notes

  • This contribution adds a new registered site and updates repo-level port/count references from 15 sites to 16.
  • Best Buy runtime state is fully resettable from instance_seed/bestbuy.db and verified via control-plane reset + MD5 matching.

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.

1 participant