more work on descriptors and constraint system