product (entity)
Generated from solutions/ontological/lib/model/entities/product/schema.ts.
Schema version: 1.
Description
Section titled “Description”A Product is a thing this project builds and ships — the SDLC plugin
itself, an OSS library extracted from it, the harness. The project is
multi-product: each Product scopes the Drivers (and, when the type
ships, Goals) beneath it, so the why chain
(D-7F2M-why-what-verify-chain) always roots in a concrete shipped
thing.
A Product is not:
- A Milestone (a Milestone is a release of a Product, not the product).
- The project. The project hosts several Products; each sibling earns its own entity when it spins out.
Properties
Section titled “Properties”| Field | Type | Required | Description |
|---|---|---|---|
type | string | yes | Dispatch tag for the validator framework. |
schema_version | string | Numeric string version of the per-type schema this instance conforms to. Compare numerically when ordering versions. Independent of any product version. The value 0 is a documented sentinel meaning ‘pre-SDLC-managed’ — audit treats it as intentional, not stale. Optional in frontmatter: never in any per-type required set (audit flags a MISSING stamp as drift, not the validator). | |
id | string | yes | Immutable identifier in canonical PR-NNNN shape per D-0002-entity-identifier-shape: ‘PR-’ + 4 zero-padded chars [0-9A-Z] (Products use incrementing numbering; ‘P’ is taken by Principle). Never renamed once assigned. |
status | string | Lifecycle stage. open/* states are active; closed/* are terminal. open/draft: boundary still being defined; open/active: built and operated; closed/sunset: no longer built or operated. | |
title | string | yes | Human-readable product name. Frontmatter is canonical; the body opens with # <title> for readability. |
created | string | yes | ISO date the product was first authored. |
last_reviewed | string | ISO date the product was last reviewed. | |
related | array | Cross-references as wikilinks. Products may link narrative docs (vision) as well as entities, so any wikilink target is legal. | |
tags | array | Free-form labels. Required at the common level, defaulting to []. Per-type schemas may add a contains constraint (e.g. Principle requires exactly one principle/<category> tag). | |
need_human_review | boolean | Review-tracking flag. |
status
Section titled “status”open/draftopen/activeclosed/sunset