{
  "$schema": "https://verifymcp.io/schemas/changelog.json",
  "server": "yail259-frankensurf",
  "component": "frankensurf",
  "generated_at": "2026-11-05T04:52:49.524Z",
  "tracking_since": "2026-10-14",
  "counts": {
    "critical": 7,
    "security": 4,
    "functional": 0,
    "cosmetic": 0
  },
  "events": [
    {
      "id": "chg_01a17d3c-fdbc-7287-b9bd-3d29f3d68d85",
      "kind": "check.verdict",
      "family": "provenance-repo",
      "subject_kind": "check",
      "subject": "provenance-repo",
      "subject_child": "",
      "from_code": "provenance.repo_http_error",
      "to_code": "provenance.repo_verified",
      "from_value": "fail",
      "to_value": "pass",
      "materiality": "security",
      "direction": "improvement",
      "score_delta": null,
      "detail": {},
      "occurred_on": "2026-10-27",
      "occurred_at": "2026-10-27 12:01:51.526735+00",
      "observed_since": "2026-10-26",
      "source": "scan",
      "summary": "Source repository (fail → pass)",
      "link": "https://verifymcp.io/servers/yail259-frankensurf/frankensurf#chg-chg_01a17d3c-fdbc-7287-b9bd-3d29f3d68d85"
    },
    {
      "id": "chg_01a1784d-ad3a-7617-ac6c-d49984ed1897",
      "kind": "check.verdict",
      "family": "provenance-repo",
      "subject_kind": "check",
      "subject": "provenance-repo",
      "subject_child": "",
      "from_code": "provenance.repo_verified",
      "to_code": "provenance.repo_http_error",
      "from_value": "pass",
      "to_value": "fail",
      "materiality": "security",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "status": "404"
      },
      "occurred_on": "2026-10-26",
      "occurred_at": "2026-10-26 13:01:58.945296+00",
      "observed_since": "2026-10-25",
      "source": "scan",
      "summary": "Source repository (pass → fail)",
      "link": "https://verifymcp.io/servers/yail259-frankensurf/frankensurf#chg-chg_01a1784d-ad3a-7617-ac6c-d49984ed1897"
    },
    {
      "id": "chg_01a16d92-7aa6-7ca0-940a-a50111c431da",
      "kind": "advisory.identified",
      "family": "vulnerabilities",
      "subject_kind": "advisory",
      "subject": "CVE-2026-112398",
      "subject_child": "",
      "from_code": null,
      "to_code": "cve.unpatched_critical",
      "from_value": null,
      "to_value": "high",
      "materiality": "critical",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "id": "CVE-2026-112398",
        "severity": "high"
      },
      "occurred_on": "2026-10-24",
      "occurred_at": "2026-10-24 11:01:18.613022+00",
      "observed_since": "2026-10-23",
      "source": "scan",
      "summary": "CVE-2026-112398 affects this package (high)",
      "link": "https://verifymcp.io/servers/yail259-frankensurf/frankensurf#chg-chg_01a16d92-7aa6-7ca0-940a-a50111c431da"
    },
    {
      "id": "chg_01a1686c-cdcb-7e29-bfd5-3d1aed038692",
      "kind": "advisory.identified",
      "family": "vulnerabilities",
      "subject_kind": "advisory",
      "subject": "CVE-2026-96639",
      "subject_child": "",
      "from_code": null,
      "to_code": "cve.unpatched_critical",
      "from_value": null,
      "to_value": "high",
      "materiality": "critical",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "id": "CVE-2026-96639",
        "severity": "high"
      },
      "occurred_on": "2026-10-23",
      "occurred_at": "2026-10-23 11:02:03.426691+00",
      "observed_since": "2026-10-22",
      "source": "scan",
      "summary": "CVE-2026-96639 affects this package (high)",
      "link": "https://verifymcp.io/servers/yail259-frankensurf/frankensurf#chg-chg_01a1686c-cdcb-7e29-bfd5-3d1aed038692"
    },
    {
      "id": "chg_01a1637d-31f8-7bb2-ae72-4612318bd669",
      "kind": "advisory.identified",
      "family": "vulnerabilities",
      "subject_kind": "advisory",
      "subject": "CVE-2026-112393",
      "subject_child": "",
      "from_code": null,
      "to_code": "cve.unpatched_critical",
      "from_value": null,
      "to_value": "high",
      "materiality": "critical",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "id": "CVE-2026-112393",
        "severity": "high"
      },
      "occurred_on": "2026-10-22",
      "occurred_at": "2026-10-22 12:01:51.587752+00",
      "observed_since": "2026-10-21",
      "source": "scan",
      "summary": "CVE-2026-112393 affects this package (high)",
      "link": "https://verifymcp.io/servers/yail259-frankensurf/frankensurf#chg-chg_01a1637d-31f8-7bb2-ae72-4612318bd669"
    },
    {
      "id": "chg_01a1637d-31f9-7c69-8c26-704de4819aef",
      "kind": "advisory.identified",
      "family": "vulnerabilities",
      "subject_kind": "advisory",
      "subject": "CVE-2026-112900",
      "subject_child": "",
      "from_code": null,
      "to_code": "cve.unpatched_critical",
      "from_value": null,
      "to_value": "high",
      "materiality": "critical",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "id": "CVE-2026-112900",
        "severity": "high"
      },
      "occurred_on": "2026-10-22",
      "occurred_at": "2026-10-22 12:01:51.587752+00",
      "observed_since": "2026-10-21",
      "source": "scan",
      "summary": "CVE-2026-112900 affects this package (high)",
      "link": "https://verifymcp.io/servers/yail259-frankensurf/frankensurf#chg-chg_01a1637d-31f9-7c69-8c26-704de4819aef"
    },
    {
      "id": "chg_01a15e8c-9951-7aad-b10b-df1700ae280a",
      "kind": "check.verdict",
      "family": "vulnerabilities",
      "subject_kind": "check",
      "subject": "vulnerabilities",
      "subject_child": "",
      "from_code": "cve.none",
      "to_code": "cve.unpatched_critical",
      "from_value": "pass",
      "to_value": "fail",
      "materiality": "critical",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "path": "Pillow",
        "refs": "[\"CVE-2026-112403\"]",
        "seen": "28",
        "direct": "1",
        "package": "pillow",
        "version": "12.3.0",
        "assessed": "29",
        "resolved": "28",
        "severity": "high",
        "vulnerable": "[{\"name\":\"pillow\",\"version\":\"12.3.0\",\"depth\":1,\"path\":[\"Pillow\"],\"refs\":[\"CVE-2026-112395\",\"CVE-2026-112397\",\"CVE-2026-112400\",\"CVE-2026-112403\",\"CVE-2026-112404\",\"CVE-2026-112895\",\"CVE-2026-112896\",\"CVE-2026-112897\",\"CVE-2026-112899\"]}]",
        "tree_source": "registry",
        "tree_status": "resolved"
      },
      "occurred_on": "2026-10-21",
      "occurred_at": "2026-10-21 13:00:34.987458+00",
      "observed_since": "2026-10-20",
      "source": "scan",
      "summary": "Known CVEs (pass → fail)",
      "link": "https://verifymcp.io/servers/yail259-frankensurf/frankensurf#chg-chg_01a15e8c-9951-7aad-b10b-df1700ae280a"
    },
    {
      "id": "chg_01a15e8c-9956-799e-b8fb-559fde563905",
      "kind": "advisory.identified",
      "family": "vulnerabilities",
      "subject_kind": "advisory",
      "subject": "CVE-2026-112403",
      "subject_child": "",
      "from_code": null,
      "to_code": "cve.unpatched_critical",
      "from_value": null,
      "to_value": "high",
      "materiality": "critical",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "id": "CVE-2026-112403",
        "severity": "high"
      },
      "occurred_on": "2026-10-21",
      "occurred_at": "2026-10-21 13:00:34.987458+00",
      "observed_since": "2026-10-20",
      "source": "scan",
      "summary": "CVE-2026-112403 affects this package (high)",
      "link": "https://verifymcp.io/servers/yail259-frankensurf/frankensurf#chg-chg_01a15e8c-9956-799e-b8fb-559fde563905"
    },
    {
      "id": "chg_01a15e8c-9959-78c0-8932-31fbe9367502",
      "kind": "score.status_changed",
      "family": "",
      "subject_kind": "score",
      "subject": "status",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": "scored",
      "to_value": "failed",
      "materiality": "critical",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "to": "failed",
        "from": "scored"
      },
      "occurred_on": "2026-10-21",
      "occurred_at": "2026-10-21 13:00:34.987458+00",
      "observed_since": "2026-10-20",
      "source": "scan",
      "summary": "Score status (scored → failed)",
      "link": "https://verifymcp.io/servers/yail259-frankensurf/frankensurf#chg-chg_01a15e8c-9959-78c0-8932-31fbe9367502"
    },
    {
      "id": "chg_01a13db2-dbad-7d24-950f-2d645f69eb69",
      "kind": "check.reason",
      "family": "stability",
      "subject_kind": "check",
      "subject": "stability",
      "subject_child": "",
      "from_code": "stability.sandbox_pending",
      "to_code": "stability.sandbox_failed",
      "from_value": "unverified",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "reason": "startup_failure",
        "status": "unreachable"
      },
      "occurred_on": "2026-10-15",
      "occurred_at": "2026-10-15 03:54:53.941624+00",
      "observed_since": "2026-10-14",
      "source": "scan",
      "summary": "Stability (Stability not yet verified: this package installed, but its server did not start, so we have no schema to compare.)",
      "link": "https://verifymcp.io/servers/yail259-frankensurf/frankensurf#chg-chg_01a13db2-dbad-7d24-950f-2d645f69eb69"
    },
    {
      "id": "chg_01a13db2-dbb0-7dce-ba6b-7118d6887768",
      "kind": "check.reason",
      "family": "tool-safety-injection",
      "subject_kind": "check",
      "subject": "tool-safety-injection",
      "subject_child": "",
      "from_code": "toolsafety.sandbox_pending",
      "to_code": "toolsafety.sandbox_failed",
      "from_value": "unverified",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "reason": "startup_failure",
        "status": "unreachable"
      },
      "occurred_on": "2026-10-15",
      "occurred_at": "2026-10-15 03:54:53.941624+00",
      "observed_since": "2026-10-14",
      "source": "scan",
      "summary": "Tool safety (Tool safety not yet verified: this package installed, but its server did not start, so we have no tool text to scan.)",
      "link": "https://verifymcp.io/servers/yail259-frankensurf/frankensurf#chg-chg_01a13db2-dbb0-7dce-ba6b-7118d6887768"
    }
  ],
  "days": [
    {
      "date": "2026-10-28",
      "total": 0,
      "delta": 0,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 1
    },
    {
      "date": "2026-10-27",
      "total": 0,
      "delta": 0,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 1
    },
    {
      "date": "2026-10-26",
      "total": 0,
      "delta": 0,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 2
    },
    {
      "date": "2026-10-24",
      "total": 0,
      "delta": 0,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 1
    },
    {
      "date": "2026-10-23",
      "total": 0,
      "delta": 0,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 1
    },
    {
      "date": "2026-10-22",
      "total": 0,
      "delta": 0,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 2
    },
    {
      "date": "2026-10-21",
      "total": 0,
      "delta": -49,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 3
    },
    {
      "date": "2026-10-17",
      "total": 49,
      "delta": 0,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 1
    }
  ]
}