Repurposed widgets require the user to have state information as well. For example, if a <div> is used to make a checkbox you would need to know if it were checked or not. States, properties, and values need to be programmatically determinable.
Proposed Change:
Change 4.1.2 to "For all user interface components, the name and role can be programmatically determined, states, properties, and values that can be set by the user can programmatically determined and set, and notification of changes to these items is available to user agents, including assistive technologies."
The success criterion has been updated as proposed. It now reads:
For all user interface components, the name and role can be programmatically determined; states, properties, and values that can be set by the user can be programmatically determined and programmatically set; and notification of changes to these items is available to user agents, including assistive technologies.