Marketplace Listing Publishing

Create a seller profile, draft a listing, prefill it from a manifest, upload versions, and submit the product for publication.

Overview

Description

Marketplace Listing Publishing gives creators a controlled path from seller onboarding to a reviewable product submission. A Marketplace account can become a seller, create a listing draft, edit its catalog metadata, prefill fields from a supported manifest, upload an immutable version payload, and submit the current draft for review. The seller dashboard exposes listings across draft, in-review, published, suspended, and archived states so the creator can understand where each product stands.

The service keeps listing metadata, versions, payload integrity, and publication transitions separate. Uploading a version does not publish it. Submission strict-parses the manifest, checks the payload and version rules, creates a durable review record, and then routes the listing according to risk, seller tier, and findings. The CLI and shared storefront can both rely on the browser-safe publish schemas rather than maintaining divergent request shapes.

Selling Points

  • Supports an end-to-end seller workflow from profile creation through submitted version.
  • Prefills drafts from manifests to reduce repeated catalog entry.
  • Preserves version history and integrity metadata independently of listing copy.
  • Shows seller-owned listings across every lifecycle state.
  • Uses one typed contract for UI and command-line publishing clients.

User Story

A creator becomes a Marketplace seller, starts a draft for a reusable skill, and imports its manifest to prefill the listing type and descriptive fields. They refine the title, price, category, and compatibility, upload version 1.0.0, and submit it. The dashboard changes the listing to the appropriate review state and retains the generated report, allowing the seller to correct and resubmit if an operator rejects the version.

Extension Surface

The capability is extensible because the supported listing taxonomy includes multiple Dots-native and code-bearing payload types with type-specific manifest contracts in packages/marketplace-client/src/schemas/manifest.ts. New supported types can be added through schema, scanner, delivery, and installer parity work. Sellers cannot invent unrecognized types, skip required packaging fields, or publish a payload whose type has no matching installation or delivery path.

Capabilities & Limits

Publishing can onboard a seller, create and patch owned drafts, prefill from a manifest, upload versions, validate semver and checksums, submit for review, and return the current review state. The system protects drafts so one seller cannot edit another seller’s listing.

It does not make an uploaded artifact public automatically, accept reserved or unsupported listing types, or allow editing of a listing in an incompatible lifecycle state. Publication outcome is owned by the submission review pipeline, not by the draft form or upload call.

Implementation Map

  • packages/marketplace-storefront/src/components/seller/PublishFlow.tsx
  • packages/marketplace-client/src/schemas/publish.ts
  • packages/marketplace-client/src/schemas/manifest.ts
  • apps/marketplace/src/routes/publish.ts
  • apps/marketplace/src/services/listing-publish-service.ts

Properties

Property
Value
product
dots-platform
extensibility
extensible
module
CLI
packages
marketplace-client, marketplace-storefront, apps-marketplace
status
shipped
surface
cross-cutting
summary
Create a seller profile, draft a listing, prefill it from a manifest, upload versions, and submit the product for publication.

Connections

Marketplace Listing Publishing · Explore connections

  • implemented bytopackages/marketplace-storefront/src/components/seller/PublishFlow.tsx
  • implemented bytoapps/marketplace/src/routes/publish.ts
  • implemented bytopackages/marketplace-client/src/schemas/publish.ts
  • implemented bytoapps/marketplace/src/services/listing-publish-service.ts
  • implementstoDS_Marketplace — Comprehensive Module Spec

Connected Records5

Implemented by
apps/marketplace/src/routes/publish.ts
apps/marketplace/src/services/listing-publish-service.ts
packages/marketplace-client/src/schemas/publish.ts
packages/marketplace-storefront/src/components/seller/PublishFlow.tsx
Implements
DS_Marketplace — Comprehensive Module Spec
5 connections.