generated from coulomb/repo-seed
Bootstrap and first implementation
This commit is contained in:
247
schemas/capability.schema.yaml
Normal file
247
schemas/capability.schema.yaml
Normal file
@@ -0,0 +1,247 @@
|
||||
$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-z0-9]+(\.[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
|
||||
$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-z0-9]+(\.[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
|
||||
Reference in New Issue
Block a user