These were previously represented as tables, however this caused some annoyance.
To get the name of a penalty of puzzle type, you had to do an extra join or preload. Both of these should be readily available when fetching a session or solve.
The tables only had :id and :name columns, meaning they could be represented as enumerated strings/atoms.
These were previously represented as tables, however this caused some annoyance.
:id
and:name
columns, meaning they could be represented as enumerated strings/atoms.