@transistor@ (are you a former Bell Labs employee?

)
Calibre has the option to do Tri-state logic. All you have to do is adjust you thinking, to make use without greatly expanding (bloating) your column count
Done Reading: Blank, not read. Date <2001, aborted/abandoned. Date >2000, finished
Edited (touch up to my liking): Blank, not touched
VC (started this with sigil flightcrew) T, passed (inc minor warns). F failed (has red flags). Blank not checked
I also have a User_Tags for marking infrequent found issues.

wide (flat file looking) tables are slow and bulky, avoid when possible
I still am amazed how well Kovid did for the initial Calibre2 DB structure and application features. Most of our current
suggestions are to now
fill edge usage cases