CDF CDI assessment record
A recorded human assessment against the six Index dimensions, on a ninety-day cadence. Distinct from the signal log: signals are emitted automatically, this is a judgement someone made and put their name to. CORRECTED against real artefacts: every field is snake_case on disk (level_label, average_score, lowest_score, lowest_dimensions) while the TypeScript interface is camelCase. The writer wins.
- Schema
cdi-assessment.schema.json, served as JSON at its$id: https://cognitive-delivery.github.io/contract/1.x/cdi-assessment.schema.json- Dialect
http://json-schema.org/draft-07/schema#- Root
- object, open (additional properties are carried)
required:schema_version,assessment_id,created_at,assessor,participants,dimensions,summary,ninety_day_priority,next_assessment_due,source - Stability
- none stated at the root; every declared property carries its own
- Properties
- 25 declared: 25 under the root, 0 in definitions
Properties
Every declared property under the root, in the schema's own order. [] is an array's items, .* the shape of every unnamed member, #name a definition. Objects carry additional properties unless a row says otherwise.
| Path | Type | Required | Description | Constraints | Stability |
|---|---|---|---|---|---|
schema_version | string | yes | Contract version this record was written against, as major.minor. One rule across every schema (schema set 1.2): a reader compares the major only, and a minor it has not met is additive by the contract's own rule. | pattern ^\d+\.\d+$ | stable |
assessment_id | string | yes | stable | ||
created_at | string | yes | ISO 8601 with a timezone. | pattern ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:\d{2})$ | stable |
assessor | string | yes | stable | ||
participants | array | yes | stable | ||
participants[] | string | ||||
dimensions | array | yes | One entry per dimension, each of the six exactly once (schema set 1.2: minItems, maxItems and one contains per id). The dimension set is closed because it is the instrument; an assessment of five dimensions is not an assessment. | min items 6 max items 6 must contain an item: object, with id = "provenance-integrity", requires idmust contain an item: object, with id = "supervisory-clarity", requires idmust contain an item: object, with id = "scope-definition", requires idmust contain an item: object, with id = "review-substance", requires idmust contain an item: object, with id = "constraint-fidelity", requires idmust contain an item: object, with id = "capability-calibration", requires id | stable |
dimensions[] | object | ||||
dimensions[].id | string #dimensionId | yes | stable | ||
dimensions[].score | integer | yes | 1 Absent, 2 Informal, 3 Documented, 4 Complete, 5 Substantive. The four-to-five step is the distinction between a control that exists and a control that changes what someone does. A whole number: the levels are discrete and a 3.7 is a score nobody can act on. | min 1 max 5 | stable |
dimensions[].evidence | string | yes | Why this score. A score without evidence is an opinion. | stable | |
dimensions[].name | string | yes | stable | ||
dimensions[].level_label | string | yes | stable | ||
summary | object | yes | stable | ||
summary.profile | string | yes | one of "flat", "audit-ready", "split", "brittle", "emerging" | stable | |
summary.average_score | number | yes | stable | ||
summary.lowest_score | number | yes | stable | ||
summary.lowest_dimensions | array | yes | stable | ||
summary.lowest_dimensions[] | string #dimensionId | ||||
ninety_day_priority | object | yes | stable | ||
ninety_day_priority.dimension | string #dimensionId | yes | stable | ||
ninety_day_priority.action | string | yes | stable | ||
ninety_day_priority.success_measure | string | yes | How you will know it worked. Required, so that a priority cannot be recorded without one. | stable | |
ninety_day_priority.review_date | string | yes | stable | ||
next_assessment_due | string | yes | stable | ||
source | object | yes | Self-describing, so a record found on its own still says what instrument produced it. | stable | |
source.instrument | string | yes | stable | ||
source.version | string | yes | stable |
Definitions
The named shapes this schema refers to as #name. A row above that links here is not expanded in place; its constraints are the definition's.
#dimensionId
| Path | Type | Required | Description | Constraints | Stability |
|---|---|---|---|---|---|
#dimensionId | string | one of "provenance-integrity", "supervisory-clarity", "scope-definition", "review-substance", "constraint-fidelity", "capability-calibration" |