Canon Record Metadata Schema
Her Canon-record'un frontmatter'ı makine-doğrulanabilir bir sözleşmeye uyar. Bu kayıt o sözleşmenin governance-record'udur; makine-okunur-kaynak:
canon/_schemas/canon-record.schema.json(JSON-Schema draft-07).
1. Zorunlu alanlar
canon_id · title · canon_area · record_type · record_plane · governance_status · decision_level · risk_class · owner · schema_version · created_at · updated_at. (Pattern + enum'lar + tarih-format JSON-schema'da.)
2. Dört status-ekseni (birbirinden bağımsız)
governance_status: draft → proposed → accepted → effective → superseded → retired
implementation_status: not_applicable | not_started → partial → implemented
evidence_status: none → reported → observed → reproducible → independently_verified
deployment_status: not_applicable → not_deployed → staging → production
🔴 accepted ≠ effective; eksenler karıştırılmaz (CAN-GOV-LCYCLE-001).
3. Record-type'a göre koşullu zorunluluk (Option B)
JSON-schema if/then ile uygulanır:
| Koşul | Kural |
|---|---|
record_plane: normative | governance_status zorunlu; runtime-eksenleri (implementation/deployment) not_applicable/optional |
record_plane: evidence | evidence_status zorunlu |
governance_status: accepted | approved_by + approved_at zorunlu |
governance_status: effective | approved_by + approved_at + effective_at zorunlu |
deployment_status: staging | evidence_status ≥ observed (kanıtsız-staging-iddiası-yasak) |
deployment_status: production | evidence_status = independently_verified ve evidence_refs boş-değil |
🔴 Tek zaman-alanı: effective_at (yürürlük-tarihi); effective_date kullanılmaz. 🔴 Tarihler format: date (created_at/updated_at) / format: date-time (approved_at/effective_at) ile doğrulanır — geçersiz-tarih (2026-99-99, 2026-02-31) reddedilir; governance-lint format-checker'ı etkin çalıştırır.
4. Zaman ve izlenebilirlik
approved_by = governance_status'u accepted/effective yapan yetkili (Verify-değil). effective_at = yürürlük-tarihi (normatif) veya exact-SHA-runtime-tarihi (release). traceability.{upstream,downstream} + evidence_refs (CAN-TRC-MODEL-001). provenance yalnız legacy_ref:... (authority-vermez).
5. Doğrulama
🔴 Commit-öncesi ve CI'da her record'un frontmatter'ı JSON-schema'ya doğrulanır; ihlal = governance-lint bulgusu.
CAN-GOV-META-001 · governance/normative · JSON-schema-record · 4-status-ekseni · effective_at-tek-alan · governance_status: proposed · Canon Foundation v2.