{
  "$schema": "https://verifymcp.io/schemas/changelog.json",
  "server": "openreadout-openreadout",
  "component": "openreadout",
  "generated_at": "2026-11-05T04:50:41.194Z",
  "tracking_since": "2026-10-03",
  "counts": {
    "critical": 0,
    "security": 15,
    "functional": 0,
    "cosmetic": 0
  },
  "events": [
    {
      "id": "chg_01a14d99-bf31-7c49-84cf-a7b7b41af6c5",
      "kind": "check.reverified",
      "family": "stability",
      "subject_kind": "check",
      "subject": "stability",
      "subject_child": "",
      "from_code": "stability.insufficient_history",
      "to_code": "stability.version_churn",
      "from_value": "unverified",
      "to_value": "fail",
      "materiality": "security",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "to": "0.4.0",
        "days": "4",
        "from": "0.3.0",
        "added": "2",
        "breaks": "0",
        "removed": "6"
      },
      "occurred_on": "2026-10-18",
      "occurred_at": "2026-10-18 06:01:23.728597+00",
      "observed_since": "2026-10-17",
      "source": "scan",
      "summary": "Stability (unverified → fail)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a14d99-bf31-7c49-84cf-a7b7b41af6c5"
    },
    {
      "id": "chg_01a14d6f-a3e6-7302-ba80-063585a4cd58",
      "kind": "check.unverifiable",
      "family": "tool-safety-injection",
      "subject_kind": "check",
      "subject": "tool-safety-injection",
      "subject_child": "",
      "from_code": "toolsafety.injection_clean",
      "to_code": "toolsafety.sandbox_pending",
      "from_value": "pass",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "reason": "version_superseded"
      },
      "occurred_on": "2026-10-18",
      "occurred_at": "2026-10-18 05:15:21.011115+00",
      "observed_since": "2026-10-17",
      "source": "scan",
      "summary": "Tool safety (pass → unverified)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a14d6f-a3e6-7302-ba80-063585a4cd58"
    },
    {
      "id": "chg_01a14d6f-a3f2-754f-b4ac-09602071f1ee",
      "kind": "check.reason",
      "family": "stability",
      "subject_kind": "check",
      "subject": "stability",
      "subject_child": "",
      "from_code": "stability.insufficient_history",
      "to_code": "stability.sandbox_pending",
      "from_value": "unverified",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "reason": "version_superseded"
      },
      "occurred_on": "2026-10-18",
      "occurred_at": "2026-10-18 05:15:21.011115+00",
      "observed_since": "2026-10-17",
      "source": "scan",
      "summary": "Stability (Stability not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet.)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a14d6f-a3f2-754f-b4ac-09602071f1ee"
    },
    {
      "id": "chg_01a13c5a-da68-71c9-a843-7a65342d5f97",
      "kind": "check.reason",
      "family": "stability",
      "subject_kind": "check",
      "subject": "stability",
      "subject_child": "",
      "from_code": "stability.sandbox_pending",
      "to_code": "stability.insufficient_history",
      "from_value": "unverified",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {},
      "occurred_on": "2026-10-14",
      "occurred_at": "2026-10-14 21:39:09.443466+00",
      "observed_since": "2026-10-13",
      "source": "scan",
      "summary": "Stability (Stability not yet verified: not enough scan history yet (needs a 30-day window).)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a13c5a-da68-71c9-a843-7a65342d5f97"
    },
    {
      "id": "chg_01a13c5a-da67-7b4a-9e74-314dfbe51363",
      "kind": "check.appeared",
      "family": "tool-safety-manipulation",
      "subject_kind": "check",
      "subject": "tool-safety-manipulation",
      "subject_child": "",
      "from_code": null,
      "to_code": "toolsafety.manipulation_clean",
      "from_value": null,
      "to_value": "pass",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "units": "34",
        "judged": "34"
      },
      "occurred_on": "2026-10-14",
      "occurred_at": "2026-10-14 21:39:09.443466+00",
      "observed_since": "2026-10-13",
      "source": "scan",
      "summary": "First check of Judged manipulation (pass)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a13c5a-da67-7b4a-9e74-314dfbe51363"
    },
    {
      "id": "chg_01a13c5a-da66-7d51-9815-d304e2f7b74f",
      "kind": "check.reverified",
      "family": "tool-safety-injection",
      "subject_kind": "check",
      "subject": "tool-safety-injection",
      "subject_child": "",
      "from_code": "toolsafety.sandbox_pending",
      "to_code": "toolsafety.injection_clean",
      "from_value": "unverified",
      "to_value": "pass",
      "materiality": "security",
      "direction": "improvement",
      "score_delta": null,
      "detail": {},
      "occurred_on": "2026-10-14",
      "occurred_at": "2026-10-14 21:39:09.443466+00",
      "observed_since": "2026-10-13",
      "source": "scan",
      "summary": "Injection markers (unverified → pass)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a13c5a-da66-7d51-9815-d304e2f7b74f"
    },
    {
      "id": "chg_01a13945-2528-7d7f-82c0-85369b3ec996",
      "kind": "check.reverified",
      "family": "vulnerabilities",
      "subject_kind": "check",
      "subject": "vulnerabilities",
      "subject_child": "",
      "from_code": "cve.inconclusive",
      "to_code": "cve.none",
      "from_value": "unverified",
      "to_value": "pass",
      "materiality": "security",
      "direction": "improvement",
      "score_delta": null,
      "detail": {
        "seen": "5",
        "assessed": "6",
        "resolved": "5",
        "tree_source": "registry",
        "tree_status": "resolved"
      },
      "occurred_on": "2026-10-14",
      "occurred_at": "2026-10-14 07:16:35.044502+00",
      "observed_since": "2026-10-13",
      "source": "scan",
      "summary": "Known CVEs (unverified → pass)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a13945-2528-7d7f-82c0-85369b3ec996"
    },
    {
      "id": "chg_01a13486-d0f0-764a-9ccd-a7ba85c12d00",
      "kind": "check.unverifiable",
      "family": "vulnerabilities",
      "subject_kind": "check",
      "subject": "vulnerabilities",
      "subject_child": "",
      "from_code": "cve.none",
      "to_code": "cve.inconclusive",
      "from_value": "pass",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "reason": "root_version_missing"
      },
      "occurred_on": "2026-10-13",
      "occurred_at": "2026-10-13 09:10:12.961219+00",
      "observed_since": "2026-10-12",
      "source": "scan",
      "summary": "Known CVEs (pass → unverified)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a13486-d0f0-764a-9ccd-a7ba85c12d00"
    },
    {
      "id": "chg_01a12d42-7f46-7e87-b8dc-241c9f828052",
      "kind": "check.verdict",
      "family": "install-scripts",
      "subject_kind": "check",
      "subject": "install-scripts",
      "subject_child": "",
      "from_code": "installscript.unreviewed",
      "to_code": "installscript.none",
      "from_value": "partial",
      "to_value": "pass",
      "materiality": "security",
      "direction": "improvement",
      "score_delta": null,
      "detail": {
        "tier": "none"
      },
      "occurred_on": "2026-10-11",
      "occurred_at": "2026-10-11 23:18:15.070848+00",
      "observed_since": "2026-10-07",
      "source": "scan",
      "summary": "Install scripts (partial → pass)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a12d42-7f46-7e87-b8dc-241c9f828052"
    },
    {
      "id": "chg_01a12d42-7f48-72f0-b842-b3db1fb9bfc5",
      "kind": "check.verdict",
      "family": "build-provenance",
      "subject_kind": "check",
      "subject": "build-provenance",
      "subject_child": "",
      "from_code": "provenance.none",
      "to_code": "provenance.verified",
      "from_value": "fail",
      "to_value": "pass",
      "materiality": "security",
      "direction": "improvement",
      "score_delta": null,
      "detail": {
        "repo": "openreadout/openreadout"
      },
      "occurred_on": "2026-10-11",
      "occurred_at": "2026-10-11 23:18:15.070848+00",
      "observed_since": "2026-10-07",
      "source": "scan",
      "summary": "Provenance (fail → pass)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a12d42-7f48-72f0-b842-b3db1fb9bfc5"
    },
    {
      "id": "chg_01a12d42-7f48-79cf-a5e8-fd05bf97afd2",
      "kind": "check.reason",
      "family": "tool-safety-injection",
      "subject_kind": "check",
      "subject": "tool-safety-injection",
      "subject_child": "",
      "from_code": "toolsafety.sandbox_failed",
      "to_code": "toolsafety.sandbox_pending",
      "from_value": "unverified",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "reason": "version_superseded"
      },
      "occurred_on": "2026-10-11",
      "occurred_at": "2026-10-11 23:18:15.070848+00",
      "observed_since": "2026-10-07",
      "source": "scan",
      "summary": "Tool safety (Tool safety not yet verified: we do not have a sandbox capture of the tool definitions this version of the package serves yet.)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a12d42-7f48-79cf-a5e8-fd05bf97afd2"
    },
    {
      "id": "chg_01a12d42-7f52-7d17-a51b-d477b1d5b03c",
      "kind": "check.reason",
      "family": "stability",
      "subject_kind": "check",
      "subject": "stability",
      "subject_child": "",
      "from_code": "stability.sandbox_failed",
      "to_code": "stability.sandbox_pending",
      "from_value": "unverified",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "reason": "version_superseded"
      },
      "occurred_on": "2026-10-11",
      "occurred_at": "2026-10-11 23:18:15.070848+00",
      "observed_since": "2026-10-07",
      "source": "scan",
      "summary": "Stability (Stability not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet.)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a12d42-7f52-7d17-a51b-d477b1d5b03c"
    },
    {
      "id": "chg_01a12d42-7f55-77dc-90e8-c3f1274dc7b2",
      "kind": "installscript.hooks_changed",
      "family": "install-scripts",
      "subject_kind": "package",
      "subject": "hooks",
      "subject_child": "",
      "from_code": "installscript.unreviewed",
      "to_code": "installscript.none",
      "from_value": "postinstall",
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "to": "",
        "from": "postinstall"
      },
      "occurred_on": "2026-10-11",
      "occurred_at": "2026-10-11 23:18:15.070848+00",
      "observed_since": "2026-10-07",
      "source": "scan",
      "summary": "The code this package runs automatically changed (postinstall)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a12d42-7f55-77dc-90e8-c3f1274dc7b2"
    },
    {
      "id": "chg_01a12d42-7f58-751b-8a32-a75c28582e7a",
      "kind": "provenance.repo_changed",
      "family": "build-provenance",
      "subject_kind": "package",
      "subject": "repo",
      "subject_child": "",
      "from_code": "provenance.none",
      "to_code": "provenance.verified",
      "from_value": null,
      "to_value": "openreadout/openreadout",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "to": "openreadout/openreadout",
        "from": ""
      },
      "occurred_on": "2026-10-11",
      "occurred_at": "2026-10-11 23:18:15.070848+00",
      "observed_since": "2026-10-07",
      "source": "scan",
      "summary": "The attested source repository moved (openreadout/openreadout)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a12d42-7f58-751b-8a32-a75c28582e7a"
    },
    {
      "id": "chg_01a105c6-bb52-7ee0-b310-9bbb7b4d3640",
      "kind": "check.reverified",
      "family": "supplychain-malware",
      "subject_kind": "check",
      "subject": "supplychain-malware",
      "subject_child": "",
      "from_code": "supplychain.malware_inconclusive",
      "to_code": "supplychain.malware_clean",
      "from_value": "unverified",
      "to_value": "pass",
      "materiality": "security",
      "direction": "improvement",
      "score_delta": null,
      "detail": {},
      "occurred_on": "2026-10-04",
      "occurred_at": "2026-10-04 07:17:52.467788+00",
      "observed_since": "2026-10-03",
      "source": "scan",
      "summary": "Malware scan (unverified → pass)",
      "link": "https://verifymcp.io/servers/openreadout-openreadout/openreadout#chg-chg_01a105c6-bb52-7ee0-b310-9bbb7b4d3640"
    }
  ],
  "days": [
    {
      "date": "2026-11-04",
      "total": 88,
      "delta": 1,
      "tracked": true,
      "explained": false,
      "beyond_event_horizon": false,
      "attribution": {
        "category": "Stability & Change Management",
        "from": 48,
        "to": 51,
        "delta": 3,
        "others": [],
        "accrual": null,
        "partial": false,
        "compared_to": "2026-11-03",
        "summary": "No change was recorded against any check on this day. Stability & Change Management went from 48 to 51."
      },
      "event_count": 0
    },
    {
      "date": "2026-11-02",
      "total": 87,
      "delta": 1,
      "tracked": true,
      "explained": false,
      "beyond_event_horizon": false,
      "attribution": {
        "category": "Stability & Change Management",
        "from": 41,
        "to": 45,
        "delta": 4,
        "others": [],
        "accrual": null,
        "partial": false,
        "compared_to": "2026-11-01",
        "summary": "No change was recorded against any check on this day. Stability & Change Management went from 41 to 45."
      },
      "event_count": 0
    },
    {
      "date": "2026-10-31",
      "total": 86,
      "delta": 1,
      "tracked": true,
      "explained": false,
      "beyond_event_horizon": false,
      "attribution": {
        "category": "Stability & Change Management",
        "from": 35,
        "to": 38,
        "delta": 3,
        "others": [],
        "accrual": null,
        "partial": false,
        "compared_to": "2026-10-30",
        "summary": "No change was recorded against any check on this day. Stability & Change Management went from 35 to 38."
      },
      "event_count": 0
    },
    {
      "date": "2026-10-29",
      "total": 85,
      "delta": 1,
      "tracked": true,
      "explained": false,
      "beyond_event_horizon": false,
      "attribution": {
        "category": "Stability & Change Management",
        "from": 28,
        "to": 31,
        "delta": 3,
        "others": [],
        "accrual": null,
        "partial": false,
        "compared_to": "2026-10-28",
        "summary": "No change was recorded against any check on this day. Stability & Change Management went from 28 to 31."
      },
      "event_count": 0
    },
    {
      "date": "2026-10-27",
      "total": 84,
      "delta": 1,
      "tracked": true,
      "explained": false,
      "beyond_event_horizon": false,
      "attribution": {
        "category": "Stability & Change Management",
        "from": 21,
        "to": 25,
        "delta": 4,
        "others": [],
        "accrual": null,
        "partial": false,
        "compared_to": "2026-10-26",
        "summary": "No change was recorded against any check on this day. Stability & Change Management went from 21 to 25."
      },
      "event_count": 0
    },
    {
      "date": "2026-10-24",
      "total": 83,
      "delta": 1,
      "tracked": true,
      "explained": false,
      "beyond_event_horizon": false,
      "attribution": {
        "category": "Stability & Change Management",
        "from": 11,
        "to": 15,
        "delta": 4,
        "others": [],
        "accrual": null,
        "partial": false,
        "compared_to": "2026-10-23",
        "summary": "No change was recorded against any check on this day. Stability & Change Management went from 11 to 15."
      },
      "event_count": 0
    },
    {
      "date": "2026-10-22",
      "total": 82,
      "delta": 1,
      "tracked": true,
      "explained": false,
      "beyond_event_horizon": false,
      "attribution": {
        "category": "Stability & Change Management",
        "from": 5,
        "to": 8,
        "delta": 3,
        "others": [],
        "accrual": null,
        "partial": false,
        "compared_to": "2026-10-21",
        "summary": "No change was recorded against any check on this day. Stability & Change Management went from 5 to 8."
      },
      "event_count": 0
    },
    {
      "date": "2026-10-20",
      "total": 81,
      "delta": 1,
      "tracked": true,
      "explained": false,
      "beyond_event_horizon": false,
      "attribution": {
        "category": "Stability & Change Management",
        "from": 0,
        "to": 1,
        "delta": 1,
        "others": [],
        "accrual": null,
        "partial": false,
        "compared_to": "2026-10-19",
        "summary": "No change was recorded against any check on this day. Stability & Change Management went from 0 to 1."
      },
      "event_count": 0
    }
  ]
}