Overview ======== The resolver package sits above raw ``AttributeModifier`` wiring. You register available conversion edges, then ask the resolver to adapt a design so that a target set of attributes is present on the output tree. Typical roles include: - **Design-intent preservation** – keep the model authored in attributes such as density or shore hardness, then derive fabrication-facing attributes only when needed. - **Automatic path solving** – find the shortest valid conversion chain from the attributes already present on the design to the requested output. - **Module-based material knowledge** – package empirical conversion data into reusable registration helpers for material families or machine backends. The public entry points are documented under :doc:`api`; bundled registration helpers live under :doc:`modules`. .. currentmodule:: pyvcad_attribute_resolver .. automodule:: pyvcad_attribute_resolver :no-members: :no-inherited-members: