This is a 10 year old GE Profile. Initially it was not cleaning dishes well (if at all), detergent was left in the cup.
I figured a lack of water was the cause, so replaced the inlet valve/solenoid. Perhaps by coincidence it then worked ok for a week or two, but then it went back to the same problem. Running the dishwasher with the door interlock defeated, I could see that the wash tower was not extending, and water was just flowing slowly out of the middle of the wash tower (I checked that the washtower is not blocked). Looking under the machine I could see that the motor was spinning fine (by seeing the back of the motor).
So...today I replaced the impeller/grater/seal per the GE kit, thinking it must be the impeller that was not moving the water. (The old impeller did look at bit worn, but not broken.
Regardless, with the new impeller, the dishwasher still does not clean the dishes, and the open soap cup is still full of (wet) detergent at the end of the cycle.
So what could it be?