I think that all publicly funded projects should be open sourced. However, recognizing that some of the code base may come from non-open source endevors, I believe the following pratices should be adopted.
A) If NO "commercial" code exists in the project, it must be open sourced.
B) If "commerical" code exists in the project, one of the following needs to happen.
B1) Attempt to nogoiate a source distribution agreement with the "commercial" party.
B2) Failing B1, attempt to nogoiate a binary only distribution in library/object, format. If a library/object format is not possible (ex: non-open code is part of the primary code base), see B3
B3) Failing B1 and B2, there is no other recourse but to not allow open distribution of the code. This is extremely unfortunate, but unavoidable as the first two option failed.
Let me first state that I think this would be a major set back. But, the only other option would be to not allow the use of any non-open code in publicly fund projects.
Anyway, there is my two cents.