okvs and nstore operations require a transaction handle, but single stand alone database operations that are an implicit transaction, like:

(okvs-in-transaction db (lambda (txn) (okvs-ref txn (pack "hello"))))

From the tutorial don't need this feature, and their code is thus more complicated with ceremony than required.  This might also slow them down by requiring 3 round trip calls to the database when only 1 is required.  The transaction handle might be replaced with #f, 'no-transaction or whatever, or made optional.

Echoing Rhys Ulerich concern that "Databases not providing the guarantees one requests are scary...", the transaction handle feature in general could give a false sense of security if the underlying OKVS doesn't support transactions.  This might be addressed by using the config facility or something like it, or SRFI-167 could suggest or require bolting on a transaction facility.

- Harold