{"adoption": {"forks": 346, "observed_at": "2026-08-28T04:05:23.622577+00:00", "stars": 1695}, "canonical_url": "https://ross.abutalabs.com/products/kpatch", "card": {"archived": false, "artifact_type": "cli-tool", "description": "NOTICE: kpatch is deprecated", "domain": ["operating-systems", "security"], "enriched": true, "function": ["security", "developer-tools", "build-tool"], "health_score": 95, "homepage": null, "language": "C", "license": "GPL-2.0", "license_family": "copyleft", "maturity": "maintenance", "member_repos": ["dynup/kpatch"], "name": "dynup/kpatch", "platform": ["cli"], "pushed_at": "2026-08-25T13:46:49+00:00", "repo": "dynup/kpatch", "stars": 1695, "tags": ["kernel", "live-patching", "kernel-patching", "hot-patching", "uptime", "sysadmin", "deprecated", "devops", "linux"], "topics": [], "urls": [], "use_cases": ["patch a running linux kernel without rebooting", "apply critical kernel security fixes immediately without downtime", "avoid reboots while keeping the kernel patched", "live patch the kernel on production servers", "build kernel live patches from source diffs"], "what_it_is": "kpatch is a Linux dynamic kernel patching infrastructure that lets sysadmins apply critical security patches to a running kernel without rebooting or restarting processes. It is now deprecated and in maintenance mode, with its kpatch-build functionality replaced by the upstream klp-build tool in Linux 6.19+.", "when_to_avoid": ["you are on Linux 6.19 or newer - use the upstream klp-build tool instead", "you need new features or support for the latest kernels and toolchains", "you cannot tolerate the risk of kernel crashes or data loss from live patching"], "when_to_choose": ["you need to apply kernel security patches to running systems without rebooting", "you run older kernels (pre-6.19) on x86-64, ppc64le, arm64, s390, or loongarch64 and need live patching", "you want more control over uptime without sacrificing security"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/kpatch", "repo": "dynup/kpatch", "role": "main", "score": 72}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:23.622577+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:37:56.242970+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3b656f721ccc1e2c56deb4d22692181b873562c4a870c49b03221a05ff5a398e", "fetched_at": "2026-08-28T04:05:23.622577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dynup/kpatch"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:23.622577+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:37:56.242970+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3b656f721ccc1e2c56deb4d22692181b873562c4a870c49b03221a05ff5a398e", "fetched_at": "2026-08-28T04:05:23.622577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dynup/kpatch"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:37:56.242970+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3b656f721ccc1e2c56deb4d22692181b873562c4a870c49b03221a05ff5a398e", "fetched_at": "2026-08-28T04:05:23.622577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dynup/kpatch"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:05:23.622577+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:23.622577+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:23.622577+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:37:56.242970+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3b656f721ccc1e2c56deb4d22692181b873562c4a870c49b03221a05ff5a398e", "fetched_at": "2026-08-28T04:05:23.622577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dynup/kpatch"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:23.622577+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:23.622577+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:37:56.242970+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3b656f721ccc1e2c56deb4d22692181b873562c4a870c49b03221a05ff5a398e", "fetched_at": "2026-08-28T04:05:23.622577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dynup/kpatch"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:23.622577+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:23.622577+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:23.622577+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:37:56.242970+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3b656f721ccc1e2c56deb4d22692181b873562c4a870c49b03221a05ff5a398e", "fetched_at": "2026-08-28T04:05:23.622577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dynup/kpatch"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:23.622577+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:23.622577+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:37:56.242970+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3b656f721ccc1e2c56deb4d22692181b873562c4a870c49b03221a05ff5a398e", "fetched_at": "2026-08-28T04:05:23.622577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dynup/kpatch"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:37:56.242970+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3b656f721ccc1e2c56deb4d22692181b873562c4a870c49b03221a05ff5a398e", "fetched_at": "2026-08-28T04:05:23.622577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dynup/kpatch"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:37:56.242970+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3b656f721ccc1e2c56deb4d22692181b873562c4a870c49b03221a05ff5a398e", "fetched_at": "2026-08-28T04:05:23.622577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dynup/kpatch"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:37:56.242970+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3b656f721ccc1e2c56deb4d22692181b873562c4a870c49b03221a05ff5a398e", "fetched_at": "2026-08-28T04:05:23.622577+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dynup/kpatch"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 22}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4586, "days_push": 8, "days_rel": 309, "gap_med": 280, "n_releases_24m": 2}, "score": 72, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}