Skip to content

product (entity)

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

Schema version: 2.

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.
statestringLifecycle 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 (N-41AZ-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.
created_atstringISO 8601 timestamp the entity was authored, finer than created. Optional: stamped by tooling that authors entities, never required.
provenancestringWhat authored the entity when it was not written by hand: a skill invocation, tool, or import source (e.g. sdlc:capability-map packages/ts). Optional: absent means hand-authored.
statusstringOKF v0.2’s own document-maturity key — DISTINCT from the entity’s own lifecycle state field (do not confuse the two). Optional: absent means OKF makes no maturity claim about this document.
descriptionstring
resourcestring
stale_afterstring
generatedobject
verifiedarray
sourcesarray
usage_windowobject
  • open/draft
  • open/active
  • closed/sunset
  • draft
  • stable
  • deprecated