This is a continuation of Should General have a guideline or rule preventing registration of vibe-coded packages? , as suggested there in the post #68 by ericphanson.
There appears to be consensus that the registration process should mostly stay in the current form, with small additional limitations. It however has been suggested to complement the current system by tags reflecting some specific aspects of a package, one of the aspects being “curation”, “quality” or similar.
The same had been actually suggested by me before (Please more bureaucracy on package registrations! - #11 by Eben60), and more or less rejected, but now, with attitudes toward the issue seemingly changed, I’m coming back to it.
I think several quality categories can be introduced, like bronze/silver/gold badges, but let’s start with the most basic.
I’d suggest that after a certain time (e.g. 6 month) upon the initial registration, the author/maintainer can apply for a badge. There generally would be three kinds of checks:
- Automated checks
- Information provided by the authors (see my suggestions in this thread)
- Expert human decision in the end
Relevant metrics which can probably be collected more or less automatically are e.g.:
- CI set up?
- Test coverage set up in CI?
- Test coverage extent.
- Exported and public functions documented?
- Downloads / Stars / Downstream dependencies
- Authors reputation (number of “quality packages” they have already created, commits to Julia and “quality packages”).
- Maintainance (updates, fixing of open issues).
For packages showing high metrics on all scores (reputed author or organization, lot of downloads..), the badge can be awarded without an additional review by an expert.
The badge will be awarded for a limited period of time (e.g. 1 or 2 years), then maintainers can re-apply.
In the thread “Please more bureaucracy”, one of the main objections was the system was not waterproof and could be cheated. Well, sure any system can be cheated…
Now, before we start discussing the details, I’d suggest to first clarify the main issue: If there is really a desire to set up that kind of system. Which is related to another main question: Who? I.e.: Who is going to implement?