Currently, during project billing, they system recognizes projects that have unbilled transactions. Once the user processes these projects using the Run Project Billing screen (or on the Project profile screen), these project fall off the queue now that there are no more transactions that have an unbilled status.
Naturally, there might be some mistakes in the billing process, which requires the user to then delete the produced invoice from AR, and Run Project Billing again (maybe to change a date, etc.). Even after this revised invoice is created and released, the project still shows up in the Run Project Billing screen. The user will always see that project there, cluttering up the view.
The same thing happens when a produced invoice generated from the Projects module is reversed in AR, or a Credit Memo is applied.