Approval comments not enforced on CAB WorkbenchIssue <!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } The customer has a process in place for Emergency Change where there is an approval step at the end in which one of the CAB approvers populate a comment before it can be approved. Customer has a business rule in place on the backendThis works fine in the native UI, if you click approve, a message pops up saying a comment is required and the action is aborted until a comment has been added on the approval step.However in the CAB workbench, you can select approve and then confirm the approval without having a comment enforced. Release<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } NA Cause<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } The customers business rule doesn't seem to be enforced on CAB Workbench. Dev confirmed it is as designed and therefore expected behaviour. Resolution<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Product team advised that the behaviour is expected but this can be achieved through customisation of the OOB widget or creating a new custom widget to use instead of the OOB. Changing the OOB template is probably the easiest but either way this will be considered customisation and the customer will have to own and manage this going forward. Here are the widgets used for the CAB workbench: https://instance_name.service-now.com/sp_widget_list.do?sysparm_query=sys_package.nameLIKECAB&sysparm_view= The widget called "CAB Workbench - Current Agenda Item" has code that touches the approvals (based on reviewing the following code snippet below) var approvalCtrl = { "approve": { "hasFocus": false, "focus": function() { toggleFocus(approvalCtrl.approve); }, "onClick": function() { reauthenticateForApproval() .then(function() { return popModal("cab-approve-pop"); }) .then(function(comment) { $scope.lastApproval = { requiredUserApproval: true, approved: true }; approvalCtrl.enabled = false; return approval.approve($scope.item.task.value, comment); }) .then( function() { approvalCtrl.enable(); agendaCtrl.current.focus(); }, function() { approvalCtrl.enable(); approvalCtrl.approve.focus(); } ); } }, Widget -- cab-current-agenda-item, contains a number of templates, but the two you care about are: 1 - cab-approve-pop https://instance_name.service-now.com/nav_to.do?uri=sp_ng_template.do?sys_id=56519c51eb30220034d1eeea1206feca 2 - cab-reject-pop https://instance_name.service-now.com/nav_to.do?uri=sp_ng_template.do?sys_id=be2ed4d1eb30220034d1eeea1206fe19 You want to make number 1, function like number 2. The "cab_reject-pop" template record contains the below line code, which has "commentRequired()" function defined - This piece of code is what is enforcing the users to comment when they reject an approval - You can modify this line of code and customise the "cab-approve-pop" template to add in the same - again this would be customisation and therefore outside the scope of support. <button class="btn btn-primary btn-sm" type="button" ng-disabled="commentRequired()" ng-click="ok()">${Reject}</button> With this, approvals will expect a comment to be added, just like rejections. I tested this on an OOB and it does work.