Well, starting to 'evalute Rugged' I ran into what that actually meant. So I top-skinned amp-git to amp_rugged and got all the tests to pass. This is somewhat limited since the tests are somewhat limited, but it's encouraging.
Rugged/libgit2 operates at a slightly higher level than the pure-ruby support it subsumes; I pretty much dropped the direct object/packfile tests since those APIs aren't exposed. In most cases I subbed Rugged objects and changed the property names, and dropped a few tests that didn't fit. We can play fairly loose with the internal structures. To an extent developing amp_rugged will be developing rugged/libgit2; I've already had several patches accepted (though a few of them triggered larger refactorings)
Next step would be to start replacing the command shell-outs. Since these don't appear to have test coverage, I expect to try and develop a general repo-spec first. Is the API on Amp-hg looking about right, or is there more work to do?
--
Justin Love --
http://JustinLove.name/http://ComputerGeneratedDreams.com/"[T]he woods would be silent if no bird sang except the best."
- Henry Van Dyke