This is code generated as part of our course on agentic coding. The code below was written by Claude Code using its default model in late Feb 2026.
The purpose of this assigment was to help students realize that, in the absence of explicit prompting to this effect, Claude Code (in its current state) is highly unlikely to generate code with a clean separation of concerns. The specific concern we wanted to focus on was the factoring-out of business rules. This is to set up students to learn about business rules, author them separately, and then figure out how to incorporate them into the program: e.g., using something like the RETE algorithm.
The hope is that once students learn this concept, they will recognize it in future tasks, and think to prompt for it to be done more deliberately. Since Claude doesn't do it automatically, it's something they need to be taught abo