The default scripts included in knife bootstrap greedily install the latest version of Chef from the preferred source (apt, gems, etc.). This is going to cause unexpected behavior the minute Chef 0.10.0 is released.
On the Opscode Platform, 0.10 clients will work just fine. Against open-source 0.9.x deployments, the 0.10 client will fail to complete a chef-client run.
In order to prevent this, the default behavior of the bootstrap scripts should be to install Chef from the current version used (of knife). You should also be able to pass a version argument to the bootstrap command to (set via config as well) declare the intended version to install on the new node.
A workaround (via custom bootstrap scripts) should also be communicated to the community prior to the 0.10.0 release via a blog post and a message to the mailing list.