Edit: Also, you should probably mention that you work for Joyent.
Software does tend to remain stable if you never make any changes to it, but that's not necessarily the right path.
Oh well, if nothing else, this whole io.js thing has set fire to joyent. It's nice to see something happening at last.
I guess competition is a good thing.
Also, are these tests public? How many does iojs pass/fail?
Rod Vagg has a project called NAN[0] to try and allow node modules to compile across node versions.
The last thing you want is to get some weird errors because of a bug in the latest V8 engine. Those bugs tend to never show in development, and is not found in unit testing. But will show up in production when you have thousands of people using it. And there's often nothing you can do about them, then maybe downgrading, or wait for the next Node.JS version.
We are also pleased to report that this release of Node.js has tests passing on all of our supported platforms. On the one hand, this seems obvious (what are tests for if not to verify before you release it?!), but this is actually the first release of Node.js that has operated under this constraint. Requiring that all tests pass before releasing Node.js marks an important development for the project, and is essential for building a solid path moving forward.
It's unclear what the divergence will be in the future, but the emphasis of the node.js team on stability may or may not be shared by io.js -- and in particular, this may be reflected in things like the V8 version, changes in which tend to subtly break esoteric things on different platforms. Inasmuch as the divergence represents different operating principles (i.e., enterprise-grade stability vs. bleeding edge), it may well be helpful -- and I think it's entirely conceivable that the projects will develop a symbiotic relationship moving forward.