Skip to content

product (entity)

Generated from solutions/ontological/lib/model/entities/product/schema.ts.

Schema version: 1.

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.
FieldTypeRequiredDescription
typestringyesDispatch tag for the validator framework.
schema_versionstringNumeric 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).
idstringyesImmutable 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.
statusstringLifecycle 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.
titlestringyesHuman-readable product name. Frontmatter is canonical; the body opens with # <title> for readability.
createdstringyesISO date the product was first authored.
last_reviewedstringISO date the product was last reviewed.
relatedarrayCross-references as wikilinks. Products may link narrative docs (vision) as well as entities, so any wikilink target is legal.
tagsarrayFree-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_reviewbooleanReview-tracking flag.
  • open/draft
  • open/active
  • closed/sunset