FormBindingKind : fields is the only kind: it deliberately keeps the declared-fields fallback, grants nothing and changes no behaviour, and exists only to turn "nobody has looked at this key" into "somebody looked and the declared fields are right" – which is why its reason is mandatory. There is no fail kind, because an unresolved form key still leaves a completable task. Before 6.0.0 a binding could also carry app, naming an Orvanta app to render in place of the declared fields; apps were removed (#1720) and the kind with them (#1759).
fields is the only kind: it deliberately keeps the declared-fields fallback, grants nothing and changes no behaviour, and exists only to turn "nobody has looked at this key" into "somebody looked and the declared fields are right" – which is why its reason is mandatory. There is no fail kind, because an unresolved form key still leaves a completable task. Before 6.0.0 a binding could also carry app, naming an Orvanta app to render in place of the declared fields; apps were removed (#1720) and the kind with them (#1759).