Reference
What it does
Where x/market implements the raw order–match–lease state machine, the marketplace module carries the coordination surfaces around it: how offerings are presented, how marketplace-level rules are applied, and how the exchange is exposed to client interfaces as a coherent product rather than a bag of primitives.
It gives the protocol a place to evolve marketplace behavior — listing rules, offering metadata, cross-module orchestration — without overloading the core matching engine, keeping the state machine in x/market small and verifiable.
Why it exists: Separating the matching engine from marketplace presentation is a deliberate design split: the core exchange must stay minimal and stable, while the marketplace surface can grow with the network. The two-module split keeps consensus-critical logic isolated from product-level iteration.
State
Primary objects
| Concept | Definition |
|---|---|
Offering | A provider-facing presentation of leasable capacity, described with shared resource units and attributes. |
Approved client | A client interface permitted to interact with identity-sensitive marketplace flows, governed via x/config. |
Messages
Messages & queries
Message and query surfaces are documented at implementation level in the module docs ↗ and the source ↗. The objects above are the state those messages create and transition.
Connections
Module interactions
-
x/marketBuilds directly on the order, match, and lease primitives. -
x/providerSurfaces provider offerings and attributes to tenants. -
x/resourcesUses shared resource definitions to describe offerings consistently. -
x/reviewReputation signals feed offer presentation and tenant choice.
Flows
Core flow
- Present — Offerings are presented. Provider capacity surfaces through offering metadata that tenants can browse, filter, and compare.
- Rule — Marketplace rules apply. Listing rules and marketplace-level behavior shape what tenants see and how offers compete.
- Expose — Clients get a coherent product. The exchange reaches client interfaces as one integrated surface instead of raw primitives.
- Evolve — Behavior grows without core risk. New marketplace behavior lands in this module; the x/market state machine stays small and verifiable.
Questions
Asked about x/marketplace
Why two modules instead of one?
Separating the matching engine from marketplace presentation keeps consensus-critical logic isolated from product-level iteration — the core exchange stays minimal and stable while the surface grows with the network.
What lives here versus x/market?
Coordination surfaces — offerings, listing rules, cross-module orchestration — live here. Order–match–lease state transitions live in x/market.
How do reputation signals reach tenants?
Review and standing signals feed offer presentation and tenant choice through this surface, so track records influence discovery where decisions happen.
Related