First pass cleanup ExecuteSchedule (packages)
In ExecuteSchedule, missing attributes is a ProgrammingError

This is substituting ProgrammingError for cfPS. For example, when adding
packages, the package_method needs to have an add command. But this
runtime error is checked during scheduling of packages, and a package
should not be scheduled for adding if the add command is not present.

This is done to simplify ExecuteSchedule for compliance.
DeleteTypeContext before PromiseType frame pop, in ScheduleAgentOperations
First pass cleanup ExecutePatch (packages)
In ExecutePatch, missing attributes is a ProgrammingError
Record compliance for package schedule execution