fix: always extract options from attr_names