4.1.2 includes the phrase "available to user agents, including assistive technologies", but other criteria say "available to user agents" without the "including assistive technologies". The phrase is not strictly required since we define user agents as including assistive technologies; you may feel it's useful to re-emphasize that here, but if that's the case, wouldn't it also be warranted in those criteria that say "programmatically..." by adding "including assistive technology" to the definitions of programmatically set and programmatically determined?
Delete the phrase ", including assistive technologies", to read "For all user interface components, the name and role can be programmatically determined, values that can be set by the user can be programmatically set, and notification of changes to these items is available to user agents."
Although the definition of user agent includes assistive technologies, the definition blurs the distinction between support for users with disabilities that is provided directly by the user agent and support that is provided by an external service that interacts with a user agent that does not provide that support directly. Within WCAG, we use assistive technology to refer to the latter sort of service. We call out support for assistive technology explicitly so that programmatically determinable information is available to assistive technology, and not just to the host user agent.
In SC 4.1.2, it is a particularly important distinction for the notification of changes to user interface components. Information can be programmatically determined without requiring notification of changes. This would require constant polling of the content to notice changes. For many technologies, the host user agent is implementing the change, so it is automatically notified, but assistive technology needs explicit notification.