Scan Engine definitions: Manageability
Scan Engine Manageability definitions measure the extent to which ServiceNow instances, applications, or infrastructure can be effectively monitored, configured, and maintained.
Australia definitions
The following manageability definitions have been added for the Australia 2026 release:
| Number | Active | Level of Finding | Unique ServiceNow Product | Short Description | Business Impact | Steps to Resolve | Supporting Documentation |
|---|---|---|---|---|---|---|---|
| sn_SE10002 | 1 | Act | Multiple tables are using the same number prefix | Multiple tables sharing the same number prefix can result in confusion and wasted effort and time due to workflow, integration, or script malfunctions leading to incorrect record processing or data inconsistencies as well as in inaccurate searches and reports. | This prefix is being shared by multiple tables. Tables should either have their own prefix or share their extended table's prefix. | Documentation | |
| sn_SE10021 | 1 | Act | onSubmit client script should not use asynchronous AJAX methods | Client side logic could be skipped without the user's knowledge. Further, this may result in inaccurate data. | Use a synchronous AJAX call (getXMLWait()) to make a trip to the server within an onSubmit client script. | Documentation | |
| sn_SE10022 | 1 | Act | onBefore transform scripts should not use target.update() | Additional impact to database server which may impact other processes. | Remove target.update(). | Documentation | |
| sn_SE10030 | 1 | Act | Remove Package calls from script | Functionality could break during an upgrade. | Replace the Package call with the appropriate GlideScriptable class. | Documentation | |
| sn_SE10034 | 1 | Suggest | Scripts should not contain hard-coded sys_ids | Unexpected results in production. | Consider using a property that references the record which had a hardcoded sys_id. | Documentation | |
| sn_SE10036 | 1 | Suggest | Access Controls are typically setup by role not group | Higher maintenance as well as group/role access conflicts. | Consider setting up the Access Control to restrict access based on what role the user has versus what group the user is in. | Documentation | |
| sn_SE10043 | 1 | Suggest | Unnecessary Catalog UI Policy since it doesn't apply anywhere | Developer may need to spend time to figure out why this record exists. | Delete the Catalog UI Policy or check one of the Applies To check boxes. | Documentation | |
| sn_SE10044 | 1 | Suggest | Unnecessary Catalog Client Script since it doesn't apply anywhere | Developer may need to spend time to figure out why this record exists. | Delete the Catalog UI Policy or check one of the Applies To check boxes. | Documentation | |
| sn_SE10049 | 1 | Suggest | Avoid DOM Manipulation (document, $, gel, or jQuery) | Unexpected results in production. | Remove any references to document object calls. | Documentation | |
| sn_SE10055 | 1 | Act | Aysnc business rules shouldn't use previous/changes/changesTo/changesFrom in the Script field | Unexpected results in production. | If the previous variable needs to be referenced or the business rule should only run when a field value changes then consider converting the business rule to run after. | Documentation | |
| sn_SE10057 | 1 | Recommend | GlideRecord's initialize() or newRecord() method should be called when inserting new records | Unexpected results in production. | After creating the GlideRecord object call the initialize() or newRecord() method. Use newRecord() to include default values. | Documentation | |
| sn_SE10059 | 1 | Act | g_form.showErrorBox()/hideErrorBox() should be replaced with g_form.showFieldMsg()/hideFieldMsg() | Future upgrades could limit the use of these legacy methods and break code in production. | Use g_form.showFieldMsg() or g_form.hideFieldMsg() functions in place of g_form.showErrorBox() and/or g_form.hideErrorBox() functions. | Documentation | |
| sn_SE10061 | 1 | Suggest | Unnecessary UI Policy Action - all actions set to 'Leave Alone' | Developer may need to spend time to figure out why this record exists. | Delete the UI Policy Action. | Documentation | |
| sn_SE10071 | 1 | Suggest | gs.getProperty(system Properties of type true|false) returns string values as in 'true'/'false' | If string values are treated as booleans, it might give an unexpected result |
|
Documentation | |
| sn_SE10097 | 1 | Suggest | Script Include names should be in Upper Camel Case | Development time may be increased. |
|
Documentation | |
| sn_SE10098 | 1 | Suggest | Catalog Variables names should follow the snake_case format with the first letter being lower case | Development time may be increased. |
|
Documentation | |
| sn_SE10103 | 1 | Suggest | Avoid configuring notifications to be sent to a specific user | Important notifications may be not be communicated to the correct user (they may not be communicated to any user). This could result in interrupted processes. | Consider sending the notification to a specific group or use derived fields from the record that's triggering the notification. | Documentation | |
| sn_SE10104 | 1 | Act | Users should not be granted roles directly | Unintended users may have access to certain functionality within the platform. | Consider creating a group, grant the group the desired roles, then associate the group to the user. The user will now inherit the role through the group. | Documentation | |
| sn_SE10118 | 1 | Act | Mid server version should match the instance version | Configuration data may not be updated as discovery may not run correctly. | Attempt to auto upgrade the MID Server by using the Upgrade MID Server UI Action on the MID Server record. Use the Validate UI Action on the MID Server record. If an error occurred, then follow the below instructions. Download the latest MID Server (in the Downloads module under the MID Server application). Have your server admin install the latest MID Server zip file on the server. Use the Validate UI Action on the MID Server record. | Documentation | |
| sn_SE10135 | 1 | Suggest | Workflows should not contain over 30 activities | Increased development time | Consider creating a subflow to remove some of the activities from the main workflow. | Documentation | |
| sn_SE10136 | 1 | Suggest | Workflows shouldn't call the notification activity | Increased development time and possibly inconsistent email notifications. | Replace the notification activity with a create event activity. Then create a notification based on the event triggered from the workflow. | Documentation | |
| sn_SE10137 | 1 | Suggest | Workflows should not contain over 3 branch activities | Workflows may break during execution resulting in incomplete processes. | Consider creating a subflow to remove some of the branch activities from the main workflow. | Documentation | |
| sn_SE10145 | 1 | Act | UI Pages shouldn't have the same name as a table (and vice versa) | Can cause confusion when referencing the name of the table or the UI page. | Rename the UI Page to a unique name, since the Table name is an autogenerated value. | Documentation | |
| sn_SE10241 | 1 | Suggest | Discovery schedule names should be related to what is being discovered | Saves time in administration of discovery by alleviating need to manually search schedules for specific targets or segments | Rename discovery schedules to reflect either the network segment in-scope, or items expected to be discovered. | Documentation | |
| sn_SE10244 | 1 | Recommend | UI Actions should have defined conditions for visibility | Prevents accidental running of UI Actions that could affect data | Edit the UI Action and provide conditions for when UI action should be visible. | Documentation | |
| sn_SE10245 | 1 | Suggest | UI Actions should be kept simple | Simplifies maintenance and development of UI Actions | Create a business rule for advanced and complex logic. Edit the UI Action and reduce script complexity, calling a script include, or allowing business rule to react instead. | Documentation | |
| sn_SE10252 | 1 | Act | Scripts should not use gs.sql | Functionality may be impacted, resulting in poor user experience. | Convert any uses of gs.sql to GlideRecord. | Documentation | |
| sn_SE10254 | 1 | Act | Script Include names should be unique | Functionality may be broken causing a poor user experience. | Take the newer script include (or least used script include) and rename it so it has a unique API Name. Any scripts referencing this script include will need to be updated to reference the new api name. | Documentation | |
| sn_SE10257 | 1 | Act | Consider moving to the 2011 SLA Engine | Less control over SLA definitions that may result in inaccurate SLA calculations. | Set the value of the com.snc.sla.engine.version system property to 2011. Note: Activating the 2011 SLA engine will deactivate all business rules on the task_sla table (except for the rule Task SLA Empty Schedule Warning, which is part of the 2011 engine). If you have added any additional business rules or customized the default business rules, these will not be automatically deactivated. | Documentation | |
| sn_SE10260 | 1 | Act | An item in the Product Catalog should be linked to a Product Model | Less visibility into the management of your assets | Create or associate an existing Product Model to the Product Catalog Item. | Documentation | |
| sn_SE10261 | 1 | Recommend | The newest version of Agile Development should be utilized | Possibility of not being able to utilize new features that could result in reduced development/management time. | Review Agile Development 2.0 to determine if it will be a good fit for your company's agile process. | Documentation | |
| sn_SE10265 | 1 | Act | Scheduled Jobs should not be run with inactive users. | Unnecessary burden on the system. | Determine if the scheduled job still needs to be run and if so update the Run As field to be an active user. | Documentation | |
| sn_SE10268 | 1 | Act | Unsupported property "glide.ui11.show_switch_link" should not be set to true | Unexpected behavior that may result in invalid data or poor user experience. | Set the "glide.ui11.show_switch_link" property value to false. | Documentation | |
| sn_SE10272 | 1 | Act | Custom tables should not be extended from the Catalog Task, Problem, Change Request, or Incident. | Unnecessary time spent during upgrades. | Reevaluate the requirements behind this and remove the extended tables; process-related needs should be addressed by standardizing processes at the organizational level, with required data captured in variables rather than custom table attributes, and non-ITSM use cases (e.g., Facility Problems, Changes, or Incidents) implemented as custom apps or via existing <ph conref="../reusables/conrefs.dita#conrefs/company-no-reg-tm"/> store applications. | Documentation | |
| sn_SE10283 | 1 | Suggest | Variable Validation Regex should be used for data validation | Having a consistent method to validate your data will improve user experience. | Consider using Variable Validation Regex records to configure common data validation within the service catalog. | Documentation | |
| sn_SE10286 | 1 | Suggest | Service Catalog User Criteria should be enabled | Less configuration and setup for service catalog access resulting in lower risk deployments. | Enable user criteria on your system by setting the service catalog property glide.sc.use_user_criteria to true. | Documentation | |
| sn_SE10288 | 1 | Act | Transform maps should not have boolean fields in their import set table | Possibility of inaccurate data in the system. | Replace the True/False field on the import set table to string field and write the transformation script to populate the value on the target record if needed. This will make sure if this field is not part of the data provided for update, it won't be modified on the target record. | Documentation | |
| sn_SE10290 | 1 | Act | Knowledge Articles with "Valid to" date in the past | Relevant articles may become expired or irrelevant articles may be maintained in the Knowledge Base. | Review any identified knowledge articles in this situation and update the "Valid To" date or retire the knowledge article. | Documentation | |
| sn_SE10291 | 1 | Act | Duplicate fields on one form | Inaccurate data and user frustration. | Review and remove any duplicate form fields, as this could cause issues with saving. | Documentation | |
| sn_SE10292 | 1 | Act | Enable unique number indexing | Duplicate numbers can cause confusion and errors. | Enable a unique index on this table. Navigate to System Definition > Tables, select the table of this scanned record, navigate to the Database Indexes related list and select New, then check the "Unique Index" box, move the "number" field into the selected box and press "Create Index". | Documentation | |
| sn_SE10294 | 1 | Act | Strict mode should be enabled for GlideRecord queries | Unintended or unexplainable side effects from the use of allowing invalid queries. | Navigate to sys_properties and add or review the property "glide.invalid_query.returns_no_rows". Ensure the property value is set to true. | Documentation | |
| sn_SE10299 | 1 | Act | All events should have a description | Having an event with an empty description will cause the purpose to be unclear. | Populate the Description field. | Documentation | |
| sn_SE10300 | 1 | Suggest | Reports with duplicate name | Increased confusion and corruption in the report library. | Consider using a unique naming convention for reports. | Documentation | |
| sn_SE10301 | 1 | Act | Do not use ^NQ in a before query business rule | The NQ (top-level OR) operator will OR all previous query terms with following query terms. This may alter the results of the original query itself. | Remove the ^NQ (top level OR) from the script field. This might require refactoring the business rule to use a different approach. | Documentation | |
| sn_SE10302 | 1 | Suggest | Scripted REST service and their resources should have meaningful short descriptions | It may be difficult to find a specific scripted REST service without a short description. | Fill in the short description field on these resources for documentation purposes. | Documentation | |
| sn_SE10304 | 1 | Suggest | Events should have the "Fired by" field populated | It may be difficult to track the business rule that runs the event without the Fired by field. | Populate the Fired by field with the name of the business rule that runs the event. | Documentation | |
| sn_SE10305 | 1 | Act | Dictionary entry present for a table that does not exist | Increased development/troubleshooting time. | Deactivate the orphaned dictionary entry. | Documentation | |
| sn_SE10306 | 1 | Recommend | Enable LDAP listener | The instance may not receive information about users' accounts until the next scheduled refresh resulting in outdated user data. | Set the Listener flag on the record to true. | Documentation | |
| sn_SE10307 | 1 | Recommend | JavaScript Mode should not be set to Compatibility Mode for Applications | Errors may slip through undetected with Compatibility Mode. | Set the JavaScript mode to ES5 Standards if editing a global application or to ECMAScript 2021 (ES12) if using a scoped application. Compatibility mode should not be selected. | Documentation | |
| sn_SE10415 | 1 | Act | Author elective updates should be processed from Store apps | If the property value is false, Deletes in your author_elective_update folder will not be written as Skip records in the Upgrade History entry for application upgrades. | Either create or update the system property "com.glide.apps.include_my_deletes" with the value of true. | Documentation | |
| sn_SE10451 | 1 | Act | REST Web Services should not write data directly | Scripted REST web services simply provide an interface for a transaction rather than maintaining CRUD operations. Maintaining these operations is more difficult within a web service as opposed to a script include. | Use a script include rather than a scripted REST web service to conduct CRUD operations. | Documentation | |
| sn_SE10454 | 1 | Suggest | User defined in the "Run as" field is inactive or not valid | Scheduled job may not run as expected with invalid/inactive user credentials. | Update the "Run as" field to a different user, or ensure that the user record is active and the "User ID" field is populated. | Documentation | |
| sn_SE10456 | 1 | Recommend | SOAP Web Services should not write data directly | Scripted SOAP web services simply provide an interface for a transaction rather than maintaining CRUD operations. Maintaining these operations is more difficult within a web service as opposed to a script include. | Use a script include rather than a scripted SOAP web service to conduct CRUD operations. | Documentation | |
| sn_SE10464 | 1 | Act | Active Task SLA Definitions for Vulnerable Item (VIT) record | May cause unexpected behavior within the instance. | Disable all Task SLA definitions. | Documentation | |
| sn_SE10477 | 1 | Recommend | gs.now() should no longer be used in scripts | The gs.now() call is unsupported and may cause unexpected behavior. | Replace "gs.now()" with new "GlideDate().getDisplayValue()". | Documentation | |
| sn_SE10481 | 1 | Act | The sys_update_xml table exceeds the recommended threshold | Performance issues may arise during upgrades. | Group the sys_update_xml table by the "Type" column, and take note of the largest groups. Often, there will be just one or two update types constituting the majority of the records. Once you have identified the type(s) of updates contributing the most, determine if those updates could be a result of some customization. If that's the case, recreate the table without extending sys_metadata, or figure out a way to avoid creating/deleting records on it so frequently. There could also be a custom script responsible for the excess updates. Disable the customization and carefully clean up the excess records that were generated. If you are unable to identify the cause, contact <ph conref="../reusables/conrefs.dita#conrefs/company-no-reg-tm"/> support for assistance. | Documentation | |
| sn_SE10482 | 1 | Recommend | Checks for direct calls to Java packages | Additional impact to database server which may impact other processes. | It is recommended to run the Package Call Removal Tool, and replace all Java package calls with the Glide alternative. | Documentation | |
| sn_SE10484 | 1 | Act | Checks if ATF test/test suite execution is enabled on non-production instances | Without ATF, testing may not be performed to ensure important functionality behaves as expected. | Navigate to Automated Test Framework > Administration > Properties, then select the property "Enable test/test execution suite". | Documentation | |
| sn_SE10485 | 1 | Act | Can Contribute / Cannot Contribute user criteria should be defined on each knowledge base | Any user would be able to contribute content when no user criteria is defined. | Define Can Contribute or Cannot Contribute user criteria for each knowledge base. | Documentation | |
| sn_SE10486 | 1 | Suggest | Check for server/client scripts that differ from baseline | Prevent scripts from unnecessary skips during upgrade. | Review the changes to these server/client scripts and revert to the baseline version if appropriate. Otherwise, thoroughly test after an upgrade. | Documentation | |
| sn_SE10487 | 1 | Recommend | Check for usage of an unsupported API | APIs that are no longer supported may behave unexpectedly. | Replace unsupported API calls with supported APIs such as GlideQueryGlobalAPI or GlideRecordAPI. Alternatively, search from the sys_dictionary table for field validation. | Documentation | |
| sn_SE10496 | 1 | Recommend | HR Template has an assignment group mapping that will conflict with Assignment Rules | HR users without the required skills may be assigned to a case. | Review the HR Template and remove the group if needed or disable the assignment rule if that is no longer needed. | Documentation | |
| sn_SE10528 | 1 | Recommend | Minimize canceled discoveries | Vital discovery schedules and processes may be canceled if the max run-time value is reached. Not completing Discovery will lead to innacurate data in the CMDB. | Schedule discoveries during times that are offset, allocate more resources, or increase the defined maximum run time. | Documentation | |
| sn_SE10530 | 1 | Suggest | Breakdowns should be named uniquely | Users may get confused on the correct Breakdown to use for Indicators due to duplicate names. | Rename the Breakdown with an appropriate and unique name. | Documentation | |
| sn_SE10531 | 1 | Recommend | Collection job without indicators | Jobs without indicators may be inefficiently collecting non-relevant data. | In the Indicators tab, select the name of the job indicator that you want to configure or define a new one. | Documentation | |
| sn_SE10532 | 1 | Recommend | Indicator used in multiple active collection jobs | The collection job may collect irrelevant data. | Review the idicators defined in collection jobs to ensure they are not defined for multiple jobs. | Documentation | |
| sn_SE10544 | 1 | Suggest | Dashboards should have at least one tab | Content may become disorganized without the use of tabs. | Investigate the root cause for the dashboard to have no tabs. If the dashboard was transported using Update Sets, make sure you follow the steps provided in the documentation to unload all the required pieces. Else select the configuration icon on a dashboard to open the Configuration pane, then select Create Tab. | Documentation | |
| sn_SE10546 | 1 | Suggest | Ensure default states are used for releases | Custom states can be difficult to maintain/enforce if documentation is not created for them. | Use the default states on the Releases table. | Documentation | |
| sn_SE10547 | 1 | Suggest | Avoid using non-internationalized strings in HTML templates. | Use the ${} or gs.getMessage() syntax in the HTML Template, Client Script, or Server Script fields of a widget to tag strings for translation so you can localize your Service Portal content. | Use the ${} or gs.getMessage() syntax in the HTML Template, Client Script, or Server Script fields of a widget to tag strings for translation so you can localize your Service Portal content. | Documentation | |
| sn_SE10550 | 1 | Suggest | Baseline HR States have been modified | Custom states can be difficult to maintain/enforce if documentation is not created for them. | Use the default states for HR-related records. | Documentation | |
| sn_SE10552 | 1 | Review | Workflow(s) checked out for an extended time | Workflow(s) checked out for an extended time period represent either abandoned work or data sanitation that is not being completed. | Publish the workflows which are checked out for more than 7 days. | Documentation | |
| sn_SE10553 | 1 | Suggest | Breakdown sources should have valid Facts table and field values | Using a non-valid facts table or field value will result in unexpected data collection. | For the Facts Table, select the table that the breakdown source gets elements from. In the Field table, select a field that contains a unique value for every record. | Documentation | |
| sn_SE10554 | 1 | Suggest | Interactive filters that are based on a reference should be mapped to a reference table and field | The interactive filter will be incomplete and not reference specific reports/fields without a reference. | Add a mapping to the interactive filter on the "Interactive Filter References" related list. | Documentation | |
| sn_SE10555 | 1 | Recommend | Report assigned to a user which is not active | The user will not receive the report since they are inactive. | Activate the user or assign the report to an already active user. | Documentation | |
| sn_SE10556 | 1 | Recommend | Widget with an automated indicator that is no longer scheduled | The widget will no longer display accurate or timely data that the automated indicator collects. | Re-schedule the automated indicator so that it continues to run. | Documentation | |
| sn_SE10557 | 1 | Recommend | Unused breakdown source | Data collected by the breakdown source serves no purpose as it is not used by any breakdowns. | Create a breakdown that uses the breakdown source or remove the breakdown source. If not needed, delete the breakdown source. | Documentation | |
| sn_SE10558 | 1 | Suggest | Active HR Record Producer must have Category and Catalog defined to show up in HR portal and Search | The record producer would not appear on the portal if the category and catalog are not populated | Add a category and catalog to the record producer. | Documentation | |
| sn_SE10560 | 1 | Recommend | Reports should not be shared with roles that have no users | No users would receive the report since there are no users assigned the role defined in the report. | Assign the role to the users which need access to the report. | Documentation | |
| sn_SE10561 | 1 | Act | Scoped app uses logging utils or depreciated methods for logging rather than the verbosity method. | Restricted to only global scope and inaccessible from a private application scope. | Use gs.error, gs.warn, gs.info or gs.debug. | Documentation | |
| sn_SE10562 | 1 | Recommend | Use Notification Categories | Users have the option to subscribe or unsubscribe to notifications based on the category. Having these values will allow users to self-service their notification preferences. | Add a category value to the notification. | Documentation | |
| sn_SE10564 | 1 | Suggest | Duplicate foundation/core data found. | Duplicate data may create confusion for CSM admins and users. | Review the duplicate data and remove data that is deemed as unnecessary. | Documentation | |
| sn_SE10565 | 1 | Suggest | Business rules "Copy Incident State to State" & "Copy State to Incident State" should remain active | Avoid issues if you use the "State" or "Incident State" fields on the Incident form while creating or updating an incident record because both of these fields are synced in the back end. The fields are synced only when the following business rules are activated: Copy State to Incident State Copy Incident State to State | Re-activate these business rules: "Copy Incident State to State" and "Copy State to Incident State". If they have been removed, obtain copies from another instance. | Documentation | |
| sn_SE10566 | 1 | Recommend | Workflow activity references an empty or invalid group | Activities that run a script, send notifications, or request approvals will not execute as expected and will point to the invalid or empty group. This can cause objects created by these activities to be lost. | Make sure the correct group is assigned to the activity and that there are active users in the group. | Documentation | |
| sn_SE10569 | 1 | Recommend | No breakdown mapping found for breakdown | Without a breakdown mapping, the breakdown cannot be used | Create a breakdown mapping. | Documentation | |
| sn_SE10570 | 1 | Recommend | Avoid use of inline templates in widgets | Might increase the likelihood of production issues in Service Portal | Create a related Angular ng-template record for the widget. | Documentation | |
| sn_SE10572 | 1 | Recommend | Report shared with a group which has no users | Either the correct users should have access to this report, or the report is no longer needed. If an organizational change is not correctly reflected in your groups and sharing for these reports, the users who need them will likely request new reports, leading to duplification. A large number of reports adds overhead for the system and administrators. | Investigate this Report to ensure that the group sharing on this report is accurate. Deactivate the report if nobody requires access to it. Investigate this Group to ensure that any recent organizational changes didn't orphan it. | Documentation | |
| sn_SE10573 | 1 | Recommend | Core fields on the Incident table should be read-only | If the auto-generated information that is captured within an incident is edited, then that could cause confusion and data loss. |
|
Documentation | |
| sn_SE10576 | 1 | Recommend | Indicators should have unique names | Duplicate indicator names may cause confusion and become harder to maintain. | Ensure indicators have unique names. | Documentation | |
| sn_SE10579 | 1 | Act | Data Collector jobs with errors or warnings | Important benchmark data may not be captured with errors or warnings present. | Review and resolve outstanding errors and warnings within the data collector job. | Documentation | |
| sn_SE10580 | 1 | Review | Consider making fields on the Change Task table mandatory | Without mandatory fields, data collection on the Change Task table can be less effective, leading to incomplete or inconsistent information. |
|
Documentation | |
| sn_SE10581 | 1 | Suggest | All interactive filters that are based on a cascading filter should be mapped to cascading filter | The interactive filter will be incomplete and not reference specific reports/fields without the cascading filter. | Add a mapping to the interactive filter on the "Cascading Filter" related list. | Documentation | |
| sn_SE10584 | 1 | Suggest | Check for automatic indicators with no scores entered | Indicators that lack scores aren't serving their purpose of providing a metric for business processes. | Review and resolve automatic indicators that are not entering scores. | Documentation | |
| sn_SE10586 | 1 | Recommend | sn_grc_metric_base_definition table field Deprecation | From Vancouver release, the 'latest_data' & 'previous_data' in sn_grc_metric_base_definition & sn_grc_metric_metric will be deprecated. | Set up percentage-based thresholds for metric data. Use the new role sn_grc_metric.developer to edit the script in automated metric definition. | Documentation | |
| sn_SE10588 | 1 | Recommend | GlideEncrypter Deprecation | Beginning with the Vancouver family release, the GlideEncrypter API is not recommended for use, as this API is deprecated according to NIST guidelines | Consider using GlideElement API or the Key Management Framework as alternatives. | Documentation | |
| sn_SE10589 | 1 | Suggest | Workforce Optimization for ITSM | System errors and performance degradation may occur due to unnecessary conditional checks |
|
Documentation | |
| sn_SE10590 | 1 | Suggest | Deprecation of Instance Security Center | Instance Security Center (ISC) will reach the end of sales by September 2024. SSC is the recommended solution going forward. | Get the application Security Center from <ph conref="../reusables/conrefs.dita#conrefs/company-no-reg-tm"/> store. | Documentation | |
| sn_SE10591 | 1 | Suggest | Table m2m_user_consent_info will be deprecated & migrated to sys_analytics_user_consent_decision | The deprecation and migration of the m2m_user_consent_info table to sys_analytics_user_consent_decision in ServiceNow 's Vancouver release may require updates to custom applications and data migration, impacting compatibility and reporting functionalities. | Consider using the new table sys_analytics_user_consent_decision instead of the deprecated m2m_user_consent_info. | Documentation | |
| sn_SE10598 | 1 | Review | Article paragraph too lengthy | Lengthy paragraphs can overwhelm AI and result in fragmented or unclear summaries. | Separate lengthy paragraphs into multiple paragraphs and consider shortening paragraphs to the most relevant information. | Documentation | |
| sn_SE10617 | 1 | Review | Now Assist works best when articles are complete with Ownership Groups | Knowledge articles are poorly maintained with no clear owners. | Check that sys_property glide.knowman.ownership_group.enabled exists and is set to "true". Create and/or change if necessary. | Documentation | |
| sn_SE10620 | 1 | Review | Stale Article Metrics | The "Valid To" field on knowledge articles controls whether articles can be browsed, searched, and used by generative AI. Articles not being updated may contain outdated information. | The Valid To date should ideally be set to less than 1 year into the future. On a periodic basis, have the article author or a member of the ownership group look through these articles to determine if they are relevant or need updates. | Documentation | |
| sn_SE10622 | 1 | Review | View Metrics | Articles which aren't being used very often may have outdated information and they needlessly take up space in the database. | Review articles with fewer views to ensure the content is relevant and up-to-date. Consider retiring articles with no views. | Documentation | |
| sn_SE10623 | 1 | Review | Articles with images should have alternative text. | Users with accessibility needs, such as visual disabilities, may not be able to view images and videos without the alternate text. | Locate images in knowledge articles and ensure the attribute alternative description is populated with meaningful text. | Documentation | |
| sn_SE10624 | 1 | Review | Article with No Meta and No Tags | Article relevancy may be under or over stated without use of meta tags to help with relevancy. | Create tags that match the user's potential query and enter them in to the Meta field on the Knowledge form. | Documentation | |
| sn_SE10625 | 1 | Review | Reduce creation of duplicate articles as much as possible | Generative AI responses will be skewed, giving more importance to duplicated data than is desired. | Locate duplicate knowledge articles and consolidate them. Make use of user criteria. If you need to show articles in multiple places, consider using Unified Taxonomy in Employee Center. | Documentation | |
| sn_SE10626 | 1 | Review | Knowledge blocks don't work with Now Assist, don't use in articles with Now Assist | Now Assist can't properly parse content in knowledge blocks, so they need to be removed and the functionality replaced with field-level security. This can be templatized using article templates | remove knowledge blocks from flagged articles. Replace with field-level security via article templates if desired. | Documentation | |
| sn_SE10629 | 1 | Recommend | Do not use gs.nowDateTime() to set a GlideDateTime object. | Do not use gs.nowDateTime() to set a GlideDateTime object. The nowDateTime() method returns the date time in local format and the local time zone. The GlideDateTime object uses the date time in the internal format and UTC time zone. | Replace var gdt = new GlideDateTime(gs.nowDateTime()); with var gdt = new GlideDateTime();. | Documentation | |
| sn_SE10630 | 1 | Act | FD_DATA References Non-Existent Fields or Objects | This will result in errors and incorrect data retrieval. | Update the object name or field name in the flow step script. | Documentation | |
| sn_SE10631 | 1 | Act | Invalid Column in Flow or Action | This will result in undefined data if the field does not exist in the table. | Update the field name in the flow step script. | Documentation | |
| sn_SE10632 | 1 | Suggest | Missing description in flow and/or hierarchy items | Missing descriptions might cause confusion as to what the purpose of the flow/subflow/action is | Flows, Subflows, and Actions should contain descriptions. | Documentation | |
| sn_SE10634 | 1 | Suggest | Too many actions in a single flow | If a flow contains more than 25 actions, it would make it less readable and less reusable | If a flow contains more than 25 actions, consider using a subflow instead of the actions. | Documentation | |
| sn_SE10635 | 1 | Suggest | Legacy "Send Email" action in a flow | Using the newer "Send Notification" action is preferred over the legacy "Send Email" action. | Using the newer "Send Notification" action is preferred over the legacy "Send Email" action. | Documentation | |
| sn_SE10636 | 1 | Suggest | Missing log step in flow | Missing log would make debugging challenging | Add a LOG step to each branch of a flow to make debugging easier. | Documentation |