MaintainerPulse

temporal prediction of dependency maintenance risk

dogpile-cache sqlalchemy/dogpile.cache ✓ low risk

25%
no release in the next 12 months
28%
new issues will go unanswered (30 days)
93%
maintainer activity collapse within 12 months
51%
chance of a release within 12 months (survival model)

Model risk over time

calibrated P(no release next 12mo) at each historical monthly snapshot
0%50%100%2018-012020-072022-122025-06high risk

Repository activity, last 36 months

pushes issues PyPI release
05102023-092024-072025-052026-08

What drives this score

TreeSHAP contributions; raises risk / lowers risk
releases, all time-package age (months)-days since last release+code reviews, 12mo-

Survival curve

P(still no release) m months ahead, discrete-time hazard model
0%50%100%036912

What if? — poke the model

drag a signal and the deployed models rescore this package live (implied signals move together — two years without a release also zeroes "releases, last 12mo"). The needle tracks the activity-collapse model, a logistic regression: monotone by construction, so it responds smoothly to counterfactuals where the tree models step.

maintainer activity collapse, 12mo

In plain words

Signals at the latest snapshot

days since last release 325 releases, last 12mo 2
people pushing, last 12mo 1 bus factor (top pusher share) 100%
issues opened, last 12mo 1 30-day response rate 100%
stars accumulated 280 open vulns without fix 0

Probabilities are isotonic-calibrated on a held-out validation year and evaluated on future snapshots the models never saw (PR-AUC 0.894, precision@50 = 1.00 on the headline target).