IMNSHO, these relatively fine distinctions between "contrib" and
"works-in-progress" are mostly and non-productive. It's easy to come
up with equally legitimate reasons for having 3 or 4 or more such
divisions, rather than two, as others here have already alluded to,
which should be a clue. Using the hard-to-change physical
organization of the CVS repository to control these various
easy-to-change fine distinctions sounds like a bad idea to me.
Besides, is there really so much stuff in contrib already
that it's too hard to sort out what's what? I don't think so. Nor
will there be anytime soon.
At best, all this "works-in-progress" CVS location is providing is a
rather poor band-aid for the fact that there's currenly no real
information anywhere describing status of the various packages. Seems
to me it is both easier and better to simply fix that problem
directly. Requiring all contributed work in include
some sort of README desribing the status of the code is
pretty trivial, and a better solution.
Just put everything in "contrib". Include a README in your package
explaining its status, etc. This currently adds basically zero extra
work for contributors, so if your short term goal is really just to
start getting more code into openacs.org CVS as easily and
expeditiously as possible, this seems to be the way to go.
As far as methods to help sort and organize contrib, to make it easier
for people to find what they want, etc., some of Jeff's ideas above
sound worth pursuing.
I think the primary "quality standard for contrib" should simply be:
The OpenACS community thinks the contributed code might be useful to
some OpenACS users. If other additional standards should be applied,
it's not obvious to me what they are or why they should be required.
Largely all merely IMO, of course. :)