Skip to content

feat: add central capability metadata schema definition#74

Merged
normenmueller merged 2 commits into
trunkfrom
feat/38-central-capability-metadata-schema
May 11, 2026
Merged

feat: add central capability metadata schema definition#74
normenmueller merged 2 commits into
trunkfrom
feat/38-central-capability-metadata-schema

Conversation

@normenmueller
Copy link
Copy Markdown
Owner

Summary

Create the single authoritative schema file for capability metadata at adm/gdl/dev/schemas/capability-meta.schema.yaml using a custom YAML DSL (architecture decision U1).

Changes

  • Schema file (adm/gdl/dev/schemas/capability-meta.schema.yaml): Declares 3 required fields (id, version, owner) and 5 optional fields (do_not_use_when, distinguish_from, requires, conflicts, sources) per AC-01 through AC-09.
  • Tests (utl/cap/checks/tst/capability-meta-schema.test.mjs): 31 structural tests verifying schema correctness against all applicable ACs.
  • Test integration (utl/cap/package.json): Schema tests added to npm test runner.

Architecture Decisions

  • U1: Custom YAML DSL format (zero new dependencies, governance-readable)
  • U2: All 5 sources entry properties required per entry

Acceptance Criteria

  • AC-01: Central schema file at canonical path
  • AC-02: Exactly 3 required fields
  • AC-03: Exactly 5 optional fields with correct types
  • AC-05: Excluded fields absent
  • AC-07: owner required with Semantic Authority semantics
  • AC-08: do_not_use_when typed as string array
  • AC-09: distinguish_from as array of {id, boundary} objects

closes #38

- Delete ai4x-negative-applicability-population.md (absorbed into Epic #73)
- Park ai4x-organization-design.md (curate-dependent)
- Park ai4x-lifecycle-feedback-loop.md (curate-dependent)
- Mark ai4x-context-budget-model.md as partially absorbed (token_estimate → #72, budget/truncation parked)
Create the single authoritative schema file for capability metadata at
adm/gdl/dev/schemas/capability-meta.schema.yaml using a custom YAML DSL.

- Declare 3 required fields: id, version, owner
- Declare 5 optional fields: do_not_use_when, distinguish_from, requires,
  conflicts, sources
- Document DSL semantics, exhaustiveness rule, and migration notes
- Add 31 structural tests covering AC-01 through AC-09
- Integrate schema tests into utl/cap npm test runner

closes #38
@normenmueller normenmueller merged commit 0154762 into trunk May 11, 2026
1 check passed
@normenmueller normenmueller deleted the feat/38-central-capability-metadata-schema branch May 11, 2026 12:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

S1: Define central capability metadata schema

1 participant