Beyond Automated Assessment: Building Metacognitive Awareness in Novice Programmers in CS1