As an offshoot of #3777 I pointed out that depthWriteEnabled defaulting to false may be surprising, and @greggman pointed out that depthCompare defaulting to "always" may be surprising.
The question raised was, should we make these required for now? We would be able to change them back to having default values post-V1 but would help prevent blank-screens and other difficult-to-debug developer issues.