Airfoil Integration Complete Checklist

This document is intended to provide a checklist of tasks needed to be accomplished before an airfoil is fully integrated into Buffalo Wings.

New Aifoil Checklist

  1. Add schema dataclass(es) with field metadata, public exports, and AirfoilDefinitionSpec union membership.

  2. Add family metadata to AirfoilFactory.supported_families() with correct constructable, source flags, and default_source.

  3. Add a canonical AirfoilFactory.default_spec(...) starter spec.

  4. Add schema validation dispatch in validate_spec(...), plus family-specific validation tests.

  5. Add runtime construction in AirfoilFactory.from_spec(...).

  6. Keep runtime-support reporting aligned: dispatch.py, _runtime_supports_spec(...), and constructable metadata should agree.

  7. If the family has both designation and params, define source conversion policy:

  • exact switch_source_exact

  • approximate switch_source_approx[_result] if useful

  1. Add describe_spec(...) formatting:

  • designation-aware short form

  • parameter-aware long form

  • sensible generic fallback if rich formatting is deferred

  1. Add round-trip coverage for constructable families:

  • from_spec(spec).to_spec() == spec

  1. Add docs and examples so the family is discoverable from the public API guide.