Beyond Stars: MTTX Brings Developer Responsiveness to Dependency Decisions, from Dashboard to IDE to GitHub Actions

How fast do open-source packages update their dependencies and remediate known vulnerable dependencies, over time?

Imranur Rahman*, Ranindya Paramitha†, Mahzabin Tamanna*, Laurie Williams*
*North Carolina State University, †University of Bristol
Architecture of MTTX: inputs, CLI, historical dependency resolver, OSV index, dependency analyzer, and reporting, with the interactive dashboard, the IDE extensions, and the GitHub Action, which run the CLI

Architecture of MTTX. Numbers give the order of the steps. The resolver resolves each version constraint as of a past date, and the dashed slots show where a new ecosystem plugs in. At the bottom, the interactive dashboard, the IDE extensions, and the GitHub Action run the CLI and show its results.

Overview

Developers often choose a dependency by its GitHub stars and download counts, but these signals are cheap and easy to fake. MTTX gives a signal of observed behavior instead: how quickly the developers of a package responded to new dependency releases and to security fixes over time. It computes two metrics for the direct dependencies of a package in npm, PyPI, or Cargo: Mean Time To Update (MTTU), how long the dependencies stay behind their newest version, and Mean Time To Remediate (MTTR), how long the dependencies keep a known vulnerability after a fix is available.

Prior work computed these metrics with a research prototype for a fixed set of packages. MTTX computes them for any package and time window, with each version constraint resolved as of a past date, so it never uses data from the future. It brings the values to each point where developers decide on a dependency: an interactive dashboard to select one, an IDE extension while they code, and a GitHub Action in CI. All of them run one CLI, which researchers can also run in batches over thousands of packages.

Try It

Compare MTTU and MTTR of up to 5 packages from one ecosystem, with deps.dev data.

What do you want to see?

Privacy: the Host stores the package names that you submit, so that it can show and reuse the results. For the rate limits, it stores a hash of your IP address for one hour, and it never stores the IP address itself. Cloudflare Turnstile checks that a person sends the form.

Use MTTX in Your Workflow

MTTU and MTTR show how the maintainers of a package responded to new dependency versions and to fixed vulnerabilities in the past. MTTX brings this evidence to each place where you decide on a dependency: when you select it, while you code, and in CI. The same Tool computes every value, so the numbers agree everywhere.

Compare candidate packages before you add one

The interactive dashboard on this page compares up to five packages from one ecosystem, with no installation. Our server runs the Tool with deps.dev data and shows a bar chart, a table, and a plain-English Explanation of each value. Per-release mode adds line charts that show how MTTU and MTTR changed at each release.

  1. Go to Try It, pick the ecosystem, and type the names of the candidate packages.
  2. Pick a time window and a mode, and then select Compute.
  3. Read the Explanation under the table, and download the CSV file if you want to keep the values.
Go to Try It

The sample loads precomputed results at once, so you see the charts and the Explanation without a wait.

Validation

328
offline tests: unit, integration, regression, and metamorphic
90 / 90
case-study packages manually verified: the dependency resolution at each release point and the MTTU and MTTR computation
72 / 90
case-study packages whose scores match the reference scores of prior work exactly (80 within one day)

The test types follow research on testing scientific software; TESTING.md maps each type to its tests. CI runs the suite on Ubuntu, macOS, and Windows with Python 3.10–3.12. All front ends run the same CLI, so they give the same values: for express (npm, 2024–2025, deps.dev), the interactive dashboard, the container image, and the GitHub Action all report an MTTU of 120.32 days and an MTTR of 3.08 days.

Who Can Use It

  • Researchers who study technical lag, software supply chains, or maintainer behavior can compute MTTU and MTTR for thousands of packages and get a full time series per package.
  • Developers can compare how promptly candidate libraries keep their own dependencies current and patched, in the interactive dashboard before they choose one and in their IDE while they code.
  • Development teams can report MTTU and MTTR in CI with the GitHub Action, and review the dependencies that each pull request adds.
  • Security teams can run a batch over their portfolio to find the projects that lag behind available fixes.
  • Builders of security metrics, such as the OpenSSF Scorecard, can use MTTU and MTTR as signals of maintenance.

Demo Video

Watch on YouTube

BibTeX

Until the paper is published, please cite the software:

@software{rahman2026dependencyupdatemetric,
  title  = {Beyond Stars: {MTTX} Brings Developer Responsiveness to Dependency Decisions, from Dashboard to {IDE} to {GitHub} Actions},
  author = {Rahman, Imranur and Paramitha, Ranindya and Tamanna, Mahzabin and Williams, Laurie},
  year   = {2026},
  doi    = {10.5281/zenodo.23608337},
  url    = {https://github.com/imranur-rahman/dependency-update-metrics}
}