It was very confusing for me to do this exercise as I was not able to check how the Database class looks like. I could not check the logic, whether I have to impelement some of the part, which were already in Database class. In the end, the exercise was easy, but I had to download it locally and check the tests.
I suggest to add to task main file how the Database is implemented.
I haven’t solved the exercise myself (yet), but from looking through the instructions the missing information is about the DbState field and the State enum. We could add that here:
Note that, internally, the database transitions through a number of states. These states are part of its enum `State`: `TransactionStarted`, `DataWritten`, `Invalid`, `Closed`. Read the current state from the public field `DbState` on the database object. You can rely on the fact that the database is in a `Closed` state at the start of each exercise.