Product Contracts¶
Status¶
Normative Business Domain Specification
Purpose¶
This document defines Product Domain contracts.
Contracts describe capabilities required by the Product Domain without binding it to infrastructure.
ProductRepository¶
ProductRepository persists and retrieves Product aggregates.
It must not expose SQL, WordPress or storage-specific concepts.
ProductIdentityResolver¶
ProductIdentityResolver establishes or confirms Canonical Product Identity from evidence.
Resolution must be deterministic, traceable and explainable.
ProductFactory¶
ProductFactory creates Product aggregates in valid initial state.
It must not create inconsistent Products silently.
ProductConsistencyPolicy¶
ProductConsistencyPolicy evaluates consistency from identity, identifiers, observations, variants and conflicts.
ProductVariantPolicy¶
ProductVariantPolicy decides whether a Variant belongs to a Product.
ProductObservationNormalizer¶
ProductObservationNormalizer prepares Observations for domain evaluation.
It must not contain feed-specific parsing.
Contract Rules¶
Contracts must depend on Product Domain language.
Contracts must not depend on:
- SQL;
- WordPress;
- Docker;
- CLI;
- HTTP;
- frontend;
- cache;
- runtime jobs.
Architecture Decision¶
Decision: CERTIFIED.
Product contracts define integration points while preserving Domain independence.