I have tried to do some research, but find nothing in the Constitution.
All I find is Congressional legislation:
{...
10 U.S. Code § 624 - Promotions: how made
(a)
(1)
When the report of a selection board convened under
section 611(a) of this title is approved by the President, the Secretary of the military department concerned shall place the names of all officers approved for promotion within a competitive category on a single list for that competitive category, to be known as a promotion list, in the order of the seniority of such officers on the active-duty list or based on particular merit, as determined by the promotion board. A promotion list is considered to be established under this section as of the date of the approval of the report of the selection board under the preceding sentence.
(2)
Except as provided in subsection (d), officers on a promotion list for a competitive category shall be promoted to the next higher grade when additional officers in that grade and competitive category are needed. Promotions shall be made in the order in which the names of officers appear on the promotion list and after officers previously selected for promotion in that competitive category have been promoted. Officers to be promoted to the grade of first lieutenant or lieutenant (junior grade) shall be promoted in accordance with regulations prescribed by the Secretary concerned.
...}
So I do not see any congressional aspect.
Seems promotions are totally up to the military and Sec of Defense?