generated from coulomb/repo-seed
Align INTENT.md with delivered layout, add CapabilityRegistryConcept guide, extend schema with promotion_history, ship reuse-surface validate/query/export CLI, register three more helix_forge capabilities, and refresh SCOPE and gap analysis to reflect A3 tooling and D5/A3/C4/R2 self-assessment.
272 lines
6.1 KiB
YAML
272 lines
6.1 KiB
YAML
$schema: https://json-schema.org/draft/2020-12/schema
|
|
$id: https://reuse-surface.local/schemas/capability.schema.yaml
|
|
title: Capability Registry Entry
|
|
description: >
|
|
JSON Schema for YAML front matter in Markdown capability entries under
|
|
registry/capabilities/. Aligns with specs/CapabilityMaturityStandard.md.
|
|
type: object
|
|
additionalProperties: false
|
|
required:
|
|
- id
|
|
- name
|
|
- summary
|
|
- owner
|
|
- status
|
|
- maturity
|
|
- external_evidence
|
|
properties:
|
|
id:
|
|
type: string
|
|
pattern: '^capability(\.[a-z][a-z0-9-]*)+$'
|
|
description: Stable reverse-domain capability identifier.
|
|
name:
|
|
type: string
|
|
minLength: 1
|
|
summary:
|
|
type: string
|
|
minLength: 1
|
|
owner:
|
|
type: string
|
|
minLength: 1
|
|
status:
|
|
type: string
|
|
enum: [draft, reviewed, approved, deprecated]
|
|
domain:
|
|
type: string
|
|
description: Optional domain or product scope for filtering.
|
|
tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
maturity:
|
|
type: object
|
|
additionalProperties: false
|
|
required: [discovery, availability]
|
|
properties:
|
|
discovery:
|
|
$ref: '#/$defs/internalMaturityDimension'
|
|
availability:
|
|
$ref: '#/$defs/internalMaturityDimension'
|
|
external_evidence:
|
|
type: object
|
|
additionalProperties: false
|
|
required: [completeness, reliability]
|
|
properties:
|
|
completeness:
|
|
$ref: '#/$defs/completenessEvidence'
|
|
reliability:
|
|
$ref: '#/$defs/reliabilityEvidence'
|
|
discovery:
|
|
type: object
|
|
additionalProperties: false
|
|
properties:
|
|
intent:
|
|
type: string
|
|
includes:
|
|
type: array
|
|
items:
|
|
type: string
|
|
excludes:
|
|
type: array
|
|
items:
|
|
type: string
|
|
assumptions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
use_cases:
|
|
type: array
|
|
items:
|
|
type: string
|
|
research_memos:
|
|
type: array
|
|
items:
|
|
type: string
|
|
availability:
|
|
type: object
|
|
additionalProperties: false
|
|
properties:
|
|
current_level:
|
|
$ref: '#/$defs/availabilityLevel'
|
|
target_level:
|
|
$ref: '#/$defs/availabilityLevel'
|
|
current_artifacts:
|
|
type: array
|
|
items:
|
|
type: string
|
|
target_artifacts:
|
|
type: array
|
|
items:
|
|
type: string
|
|
consumption_modes:
|
|
type: array
|
|
items:
|
|
type: string
|
|
relations:
|
|
type: object
|
|
additionalProperties: false
|
|
properties:
|
|
depends_on:
|
|
$ref: '#/$defs/capabilityIdList'
|
|
supports:
|
|
$ref: '#/$defs/capabilityIdList'
|
|
used_by:
|
|
$ref: '#/$defs/capabilityIdList'
|
|
related_to:
|
|
$ref: '#/$defs/capabilityIdList'
|
|
specializes:
|
|
$ref: '#/$defs/capabilityIdList'
|
|
generalizes:
|
|
$ref: '#/$defs/capabilityIdList'
|
|
replaces:
|
|
$ref: '#/$defs/capabilityIdList'
|
|
wraps:
|
|
$ref: '#/$defs/capabilityIdList'
|
|
evidence:
|
|
type: object
|
|
additionalProperties: false
|
|
properties:
|
|
documentation:
|
|
type: array
|
|
items:
|
|
type: string
|
|
tests:
|
|
type: array
|
|
items:
|
|
type: string
|
|
consumer_feedback:
|
|
type: array
|
|
items:
|
|
type: string
|
|
bug_reports:
|
|
type: array
|
|
items:
|
|
type: string
|
|
incidents:
|
|
type: array
|
|
items:
|
|
type: string
|
|
consumer_guidance:
|
|
type: object
|
|
additionalProperties: false
|
|
properties:
|
|
recommended_for:
|
|
type: array
|
|
items:
|
|
type: string
|
|
not_recommended_for:
|
|
type: array
|
|
items:
|
|
type: string
|
|
known_limitations:
|
|
type: array
|
|
items:
|
|
type: string
|
|
promotion_history:
|
|
type: array
|
|
items:
|
|
$ref: '#/$defs/promotionRecord'
|
|
$defs:
|
|
confidence:
|
|
type: string
|
|
enum: [low, medium, high]
|
|
discoveryLevel:
|
|
type: string
|
|
enum: [D0, D1, D2, D3, D4, D5, D6, D7]
|
|
availabilityLevel:
|
|
type: string
|
|
enum: [A0, A1, A2, A3, A4, A5, A6, A7]
|
|
completenessLevel:
|
|
type: string
|
|
enum: [C0, C1, C2, C3, C4, C5, C6]
|
|
reliabilityLevel:
|
|
type: string
|
|
enum: [R0, R1, R2, R3, R4, R5, R6]
|
|
capabilityIdList:
|
|
type: array
|
|
items:
|
|
type: string
|
|
pattern: '^capability(\.[a-z][a-z0-9-]*)+$'
|
|
internalMaturityDimension:
|
|
type: object
|
|
additionalProperties: false
|
|
required: [current, target]
|
|
properties:
|
|
current:
|
|
oneOf:
|
|
- $ref: '#/$defs/discoveryLevel'
|
|
- $ref: '#/$defs/availabilityLevel'
|
|
target:
|
|
oneOf:
|
|
- $ref: '#/$defs/discoveryLevel'
|
|
- $ref: '#/$defs/availabilityLevel'
|
|
confidence:
|
|
$ref: '#/$defs/confidence'
|
|
rationale:
|
|
type: string
|
|
completenessEvidence:
|
|
type: object
|
|
additionalProperties: false
|
|
required: [level]
|
|
properties:
|
|
level:
|
|
$ref: '#/$defs/completenessLevel'
|
|
name:
|
|
type: string
|
|
confidence:
|
|
$ref: '#/$defs/confidence'
|
|
basis:
|
|
type: string
|
|
satisfied_expectations:
|
|
type: array
|
|
items:
|
|
type: string
|
|
broken_expectations:
|
|
type: array
|
|
items:
|
|
type: string
|
|
out_of_scope_expectations:
|
|
type: array
|
|
items:
|
|
type: string
|
|
reliabilityEvidence:
|
|
type: object
|
|
additionalProperties: false
|
|
required: [level]
|
|
properties:
|
|
level:
|
|
$ref: '#/$defs/reliabilityLevel'
|
|
name:
|
|
type: string
|
|
confidence:
|
|
$ref: '#/$defs/confidence'
|
|
basis:
|
|
type: string
|
|
evidence:
|
|
type: object
|
|
additionalProperties: true
|
|
known_reliability_risks:
|
|
type: array
|
|
items:
|
|
type: string
|
|
promotionDimension:
|
|
type: string
|
|
enum: [discovery, availability, completeness, reliability]
|
|
promotionRecord:
|
|
type: object
|
|
additionalProperties: false
|
|
required: [date, dimension, from, to, rationale]
|
|
properties:
|
|
date:
|
|
type: string
|
|
pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}$'
|
|
dimension:
|
|
$ref: '#/$defs/promotionDimension'
|
|
from:
|
|
type: string
|
|
to:
|
|
type: string
|
|
rationale:
|
|
type: string
|
|
author:
|
|
type: string |