Jordan-Hall / Jordan-Hall/browser

[P2][SHOP-01] Product, variant and offer graph

Open
#80 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Programme: #1
Epic: #27

## Objective
Normalize commerce data accurately enough for cross-source comparison without merging different variants, conditions, sellers or destination-dependent offers.

## Scope
- Distinct `Product`, `Variant`, `Offer`, seller and marketplace/provider records.
- Entity resolution using identifiers/attributes plus uncertainty state.
- Condition, seller reputation/evidence, stock and observation time.
- Price currency, item price, shipping, tax status, fees and destination dependence.
- Delivery estimates, warranty and returns evidence.
- Offer/source freshness and exact listing link/provider object.
- Conflict/affiliate/commercial relationship metadata.

## Data rules
- Missing shipping/tax is unknown, never zero.
- Similar-looking variants/conditions cannot be merged without sufficient evidence.
- Review/rating data cannot silently move between incompatible variants.

## Acceptance criteria
- [ ] Different size/spec/condition variants remain distinct in adversarial fixtures.
- [ ] Every offer preserves seller, source, exact listing, observation time and price components.
- [ ] Unknown price components remain explicitly unknown.
- [ ] Entity-resolution uncertainty is inspectable and can be corrected.
- [ ] Stale offers are visibly marked and refreshable before transaction preparation.
- [ ] Destination-dependent totals recompute for the selected delivery context.

## Dependencies
- DATA-01
- RES-01

**First phase:** P2
**Maturity target:** P4
**Owner:** connectors-domains

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing dependencies DATA-01 and RES-01, then map the Product, Variant, Offer, seller, marketplace/provider, and uncertainty requirements in the issue. Define completion against the adversarial fixtures, preserved offer provenance and price components, inspectable resolution uncertainty, stale-offer refresh state, and destination-dependent total recalculation.

Written by the indexing model from the issue text.

Assessment

Domain
backend-api-design, data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.