Exercise templates
Exercises are reusable client components under
app/src/screens/exercises/, referenced by lesson modules generated through
the content pipeline. Each exercise type (for example: multiple choice,
ordering, free response) is a template — the content pipeline fills it with
generated data, it doesn't generate new exercise UI.
When you need a new interaction type, add the template once in app/, wire
it into the client-side content map (catalog-map.ts), and it becomes
available to every future course the pipeline generates — including courses
you haven't written yet.