Something I've done more than once is to forget to select a format when adding a new pub, causing the new submission to default to "unknown". More often than not, these submissions have been accepted by a moderator without any sort of querying or fixing my oversight.
My personal preference would be not to have the UI default to "unknown", but have the format drop-down default to a blank/unselectable value, and force an editor to deliberately select a value. This seems analogous to forcing an editor to enter "8888-00-00" rather than leaving the field blank when pub date is unknown. However, a certain moderator disagreed with me.
As a compromise, I would suggest having a yellow warning when format=unknown has been submitted, similar to the advisory warnings for new author, duplicate ISBN, etc - the user workflow is unchanged, but there's a visual queue that allows an editor to quickly and easily cancel the erroneous submission, hit back button a couple of times, and resubmit with the fixed format value, long before the error is ever seen by a moderator.
Original discussion: http://www.isfdb.org/wiki/index.php/User_talk:ErsatzCulture#Bloodwitch
A patch to implement this will be added to this ticket shortly...
Anonymous
Implementation of this change attached. As with my previously submitted patch, this is on a version of the file that has all the tabs & spaces made consistent, so will show up with hundreds of changes in a diff.
Here is a diff against a version of the file that had the whitespace made consistent, but before any changes were made, that makes it clearer what I've done:
common $ diff viewers.py viewers.py.ConsistentSpacing
199,202c199,200
< elif Label == 'Binding': # aka "Format"
< if not value or value in ('unknown',):
< warning = 'Format is "unknown"'
< elif value not in FORMATS:
Notes:
A yellow warning is a good idea. Re: the larger issue of making the default value in the drop-down list "unknown", there is a long history of tweaking the default values of all kinds of drop-down lists. I would suggest discussing it on the Community Portal to see what other editors think.
Implemented in common/viewers.py, installed in SVN 354 on 2020-05-24. Closing the FR.