Product pillar · v0.8.1
product Product
Product or service overview.
$id · https://corpospec.com/schemas/v0.8.1/product.schema.json
Fields
| Field | Type | Required | Description |
|---|---|---|---|
| id | PathRef | yes | Path-based cross-reference relative to .corpospec/ root. Pattern: `^[a-z0-9_-]+(/[a-z0-9_.-]+)+$` |
| name | string | yes | |
| custom | ProductCustom? | — | |
| description | string? | — | |
| design_principles | DesignPrinciple[] | — | |
| distribution | DistributionChannel[] | — | |
| localization | Localization? | — | |
| phases | ProductPhase[] | — | |
| platforms | Platform[] | — | |
| stage | ProductStage? | — | |
| tagline | string? | — | |
| target_customers | TargetCustomer[] | — | |
| technology_stack | object? | — | |
| url | string? | — | |
| value_proposition | ValueProposition? | — |
Definitions
Shared types referenced within this schema.
DesignPrinciple
Design principle with anti-pattern.
type: object
DistributionChannel
Distribution channel for a product.
enum: "app-store", "play-store", "web-direct", "enterprise", "open-source", "sideload", "retail-store", "wholesale", "distributor", "franchise-channel", "direct-sales", "dealer-network", "broker", "catalog"
IsoDate
ISO 8601 date (YYYY-MM-DD).
type: string
Localization
Localization configuration.
type: object
PathRef
Path-based cross-reference relative to .corpospec/ root.
Pattern: `^[a-z0-9_-]+(/[a-z0-9_.-]+)+$`
pattern: ^[a-z0-9_-]+(/[a-z0-9_.-]+)+$
Period
A time period with start and end dates.
type: object
PeriodType
Period type discriminator.
enum: "instant", "duration"
PhaseStatus
Phase status within a product roadmap.
enum: "planned", "in-progress", "complete", "cancelled"
Platform
Target platform for a product.
enum: "ios", "android", "web", "desktop", "cli", "api", "progressive-web-app", "windows", "macos", "linux", "physical-product", "embedded-iot", "service-delivery"
PositioningChange
A positioning change event for the product.
type: object
ProductCustom
Typed custom extension data for `Product`.
Used by both product/overview.yaml and product/roadmap.yaml. Fields from
the overview (positioning, data_sovereignty, etc.) and from the roadmap
(phase_details) are merged into a single struct since both deserialize
as `Product`.
type: object
ProductPhase
A phase in the product roadmap.
type: object
ProductStage
Product development stage.
enum: "concept", "prototype", "mvp", "pre-revenue", "growth", "mature", "sunset"
RoadmapPhaseDetail
Roadmap phase detail for a product roadmap custom field.
type: object
TargetCustomer
Target customer segment.
type: object
ValueProposition
Value proposition definition.
type: object
Reference in your YAML
# yaml-language-server: $schema=https://corpospec.com/schemas/v0.8.1/product.schema.json