Skip to content

feat: add package registry and maintainability check (#1400)#1403

Open
RuchitAgrawal wants to merge 1 commit intooracle:mainfrom
RuchitAgrawal:feat/1400-add-registry-and-heath-check
Open

feat: add package registry and maintainability check (#1400)#1403
RuchitAgrawal wants to merge 1 commit intooracle:mainfrom
RuchitAgrawal:feat/1400-add-registry-and-heath-check

Conversation

@RuchitAgrawal
Copy link
Copy Markdown
Contributor

Summary

Adds a new check mcn_registry_maintainability_1 that validates whether a package exists on its public registry and is actively maintained.

Description of changes

The check uses three signals when available:

  • Registry presence and release recency: Uses the existing find_publish_timestamp() to confirm the package exists and check how many days have passed since the last release. Exceeding the threshold fails the check.
  • Deprecated/yanked status: Reads the yanked flag for PyPI packages and the deprecated field for npm packages from existing registry JSON responses. A yanked or deprecated package always fails, regardless of release age.
  • GitHub repository signals: If the source repo is on GitHub, calls the existing get_repo_data() to check if the repo is archived and how recently code was pushed. An archived repo always fails.

Results include remediation guidance and links to the registry page and source repository. The inactivity threshold is configurable via defaults.ini under registry_maintainability (default: 365 days).

Related issues

Closes #1400

Checklist

  • I have reviewed the contribution guide.
  • My PR title and commits follow the Conventional Commits convention.
  • My commits include the "Signed-off-by" line.
  • I have signed my commits following the instructions provided by GitHub. Note that we run GitHub's commit verification tool to check the commit signatures. A green verified label should appear next to all of your commits on GitHub.
  • I have updated the relevant documentation, if applicable.
  • I have tested my changes and verified they work as expected.

Signed-off-by: ruchitagrawal <rragrawal16@gmail.com>
@RuchitAgrawal RuchitAgrawal requested a review from behnazh-w as a code owner May 2, 2026 13:14
@oracle-contributor-agreement oracle-contributor-agreement Bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label May 2, 2026
@behnazh-w
Copy link
Copy Markdown
Member

@RuchitAgrawal Thanks for the PR! Could you suggest a few packages that would fail this check? That would help us identify good candidates to include in integration tests.

@behnazh-w
Copy link
Copy Markdown
Member

@RuchitAgrawal Looks like the integration tests are failing. You can search for "case failed" in the log to see which test is failing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

OCA Verified All contributors have signed the Oracle Contributor Agreement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature Request] - [Add package registry and maintenance health check]

2 participants