Text this: Process-aware programming assessment through temporal knowledge graph reasoning and LLM verification