I defined the features by looking at examples of N-best lists, and finding common examples of things which I felt intuitively should be penalized. The current set of features is as follows:
rank: Place in the N-best list
no_dialogue_move: Hypothesis produces no dialogue move
underconstrained_query: Query with no contentful constraints
non_indefinite_existential: Existentials with non-indefinite arg, e.g. "is there the meeting next week"
non_show_imperative: Imperatives where the main verb isn't "show" or something similar
indefinite_meeting_and_meeting_referent: combination of indefinite mention of meeting + available meeting referent