Most form validation libraries answer one question: is this field valid?
Document-generation products need to answer a harder question: is this file safe to export, and if it is technically exportable, does a human still need to review something?
We ran into this problem while building a print-oriented web app. The inputs included structured facts, free-form text, photos, template choices, and page-format decisions. A green check beside every form field did not guarantee a usable PDF.
The model that worked for us has three states:
type CheckerStatus = "pass" | "needs_review" | "cannot_export";






