{
  "schema_version": "kj-methodology-changelog-v1",
  "project_id": "kj-dashboard",
  "method_version": "v10",
  "updated_at": "2026-08-03",
  "contact": {
    "label": "Сообщить об ошибке классификации",
    "href": "mailto:editorial@qdev.run?subject=KJ%20dashboard%20correction",
    "response_policy": "Correction requests should include the evidence ID, source URL if available, and a short explanation of the suspected false positive or false negative."
  },
  "entries": [
    {
      "date": "2026-08-03",
      "title": "Инициальная граница расширена, зарубежный слой добавлен",
      "summary": "Точки считаются пунктуацией и не влияют на классификацию: К.-Ж., К-Ж и К - Ж — нормативная дефисная пара. В строгий слой добавлены бездефисные и неполные варианты как ошибки, а media.foreign_media_articles подключён без повторного сложения производных и raw-слоёв.",
      "artifact_urls": [
        "https://kj.qdev.run/dataset-core.json",
        "https://kj.qdev.run/data/coverage-diagnostics.json"
      ]
    },
    {
      "date": "2026-07-23",
      "title": "Linguistic basis registry and review rubric published",
      "summary": "Published a language-by-language registry separating official name controls, the Russian orthographic basis, and the dashboard's narrow classifier boundary. The independent-review rubric now requires referent confirmation before judging the hyphenated initial pair; no classifier-quality metric was added or inferred.",
      "artifact_urls": [
        "https://kj.qdev.run/data/linguistic-basis.json",
        "https://kj.qdev.run/data/review/status-v1.json"
      ]
    },
    {
      "date": "2026-07-20",
      "title": "QazPipe date-recovery candidates published",
      "summary": "Added exact matched primary-page candidates for unresolved rows whose public pages do not expose a publication date. Candidates are upstream handoff data only and cannot enter chronology.",
      "artifact_urls": [
        "https://kj.qdev.run/data/date-recovery-candidates.json",
        "https://kj.qdev.run/data/date-recovery-queue.json"
      ]
    },
    {
      "date": "2026-07-20",
      "title": "Exact-row date provenance added",
      "summary": "Recovered publication dates only where an exact QazLake source row could be matched to an auditable primary-source page with an explicit publication date. Remaining rows stay excluded from chronology and are handed to QazPipe.",
      "artifact_urls": [
        "https://kj.qdev.run/data/source-date-row-overrides.json",
        "https://kj.qdev.run/data/date-recovery-queue.json"
      ]
    },
    {
      "date": "2026-07-18",
      "title": "Content products published",
      "summary": "Added source profiles, saved evidence slices, and chart manifest exports without changing the v9 classification rules.",
      "artifact_urls": [
        "https://kj.qdev.run/data/source-profiles.json",
        "https://kj.qdev.run/data/saved-slices.json",
        "https://kj.qdev.run/data/chart-manifest.json"
      ]
    },
    {
      "date": "2026-07-18",
      "title": "QazStack and AVDS4 public contracts published",
      "summary": "Published the QazStack consumer contract and AVDS4 static-token-bridge profile as explicit interoperability boundaries.",
      "artifact_urls": [
        "https://kj.qdev.run/data/qazstack-consumer-contract.json",
        "https://kj.qdev.run/data/avds4-consumer-profile.json"
      ]
    },
    {
      "date": "2026-07-17",
      "title": "Methodology v9 stabilized",
      "summary": "Locked the strict initial-form denominator, date-quality disclosure, source-macro sensitivity, and exact-text cluster sensitivity.",
      "artifact_urls": [
        "https://kj.qdev.run/dataset-core.json",
        "https://kj.qdev.run/data/catalog.json"
      ]
    }
  ],
  "correction_states": [
    {
      "state": "reported",
      "description": "A reader or source reports a suspected classification or provenance issue with an evidence ID."
    },
    {
      "state": "reviewed",
      "description": "The row is checked against source URL, snippet, matched variants, and current v10 rules."
    },
    {
      "state": "patched",
      "description": "If the report is valid, the dataset, source-date provenance, or methodology note is updated and the changelog receives a new entry."
    }
  ]
}
