Zurich Patch 10
The Zurich Patch 10 release contains important problem fixes.
- Zurich Patch 10 was released on June 16, 2026.
-
- Build date: 06-12-2026_2311
- Build tag: glide-zurich-07-01-2025__patch10-05-22-2026
For more information about the release cycle, see the ServiceNow Release Cycle.
For a downloadable, sortable version of the fixed problems in this release, click here.
Overview
Zurich Patch 10 includes 356 problem fixes in various categories. The chart previous shows the top 10 problem categories included in this patch.
Changes in Zurich Patch 10
- Authentication factors
- Authentication factors help identify and verify callers, allowing only authorized users to access AI voice agents on the ServiceNow AI Platform.
- Explore authentication factors for AI voice agents
- Email OTP delivers a temporary numeric code to the caller’s registered email address. It is easy to deploy and familiar to most users. Callers can enter the code via keypad or by speaking the digits. Email OTP is susceptible to email account compromise and phishing, and should not be used as a standalone factor for sensitive operations.
- Configure authentication factors for AI voice agents
- To secure voice agent environments, configure authentication factors that first identify the caller, then authenticate them before granting access.
- Theming for AI Search in Service Portal
- The default value for the background color for title highlights in search results is transparent.
Notable fixes
The following problems and their fixes are ordered by potential impact to customers, starting with the most significant fixes.
| Problem | Short description | Description | Steps to reproduce |
|---|---|---|---|
|
Authentication PRB1969882 |
Login screen performance issues on iOS 26.2 RC and in Zurich instances | After upgrading to iOS 26.2, users are unable to log in to any instance using the Now Mobile app. The login page is extremely slow or unresponsive, and it can fail to load or accept credentials. The issue affects multiple users and device models. It's reproducible across different instances, and it also impacts the Agent app. |
Observe that the screen loads slowly and is non-responsive. |
|
Database Persistence - Data Access PRB2007256 |
The text search doesn't return results in non-English languages | After downloading language plugins and switching the system language to a non-English language, results aren't returned when the property 'glide.db_query.replace _distinct_with_groupby' is set to 'false.' When the language is set to English, results are returned. |
Refer to the listed KB article for details. |
|
Instance Scan PRB1992382 |
Instance scan jobs get stuck in a sleep loop for days, which causes the subsequent scans to fail | Instance scan findings are written to the database asynchronously and are tracked using a global counter. If any write fails, the counter doesn't decrement properly; it goes up but never comes back down. This causes all future scans to hang indefinitely, waiting for a counter that will never reach zero. There's no timeout or logging to flag this, so scans can get stuck silently. |
Refer to the listed KB article for details. |
|
Password2 Encryption PRB2015257 |
There's excessive growth on the sys_rollback_incremental table and higher binlog generation due to 'Mass Encryption Job' | This causes a large increase in the disk space on the database server. |
Refer to the listed KB article for details. |
|
Related Lists PRB2025356 |
User can't add records in a related list because of the strict ACL check and missing ACLs for required roles | Users with missing ACLs aren't able to add new records in the related list due to a strict ACL check. |
Refer to the listed KB article for details. |
|
Request Management PRB1973824 |
Added approvers names don't appear on the Approver list of Request and RITM | When adding approvers to a Request (REQ) or Requested Item (RITM) via the Multi-Row Add (MRA) component in the 'Related Records' section of Service Operations Workspace (SOW), a success message is displayed confirming that the approvers have been added. However, the Approver list doesn't display the newly added approver names. Similarly, when attempting to add approvers from the UI16 related list, the approvers aren't added. |
Refer to the listed KB article for details. |
|
Virtual Agent PRB2007255 |
There's memory pressure on nodes due to high memory for the cache 'com.glide.cs.qlue.module. coma.MessageBatchingSession' | Users with 2GB nodes may encounter memory issues that can cause the events process jobs to yield. |
Run a heap dump. Observe that MacMessageBatchingSession or MessageBatchingSession uses over 50 MB of memory. |
All other fixes
| Problem | Short description | Description | Steps to reproduce |
|---|---|---|---|
|
Access Control PRB1892720 |
'Applies to' in the Deny Unless Read ACL doesn't work for users with elevated privileges | It always returns true for any record for users with elevated privileges. | |
|
Activity Stream PRB2005727 |
Navigation fails for sources beyond sliding windows in an activity stream | When selecting a citation source in an incident summary response, navigation doesn't work properly if the cited activity (comment or email) is more than three pages away or before the current activity stream view. The user receives a message stating 'The source may be hidden in your current view', even though the source exists and isn't filtered. |
|
|
Activity Stream PRB2016617 |
Unguarded Jelly expression in form.xml causes RhinoEcmaError warnings on every classic form load | On any classic UI16 form load, the platform Jelly template evaluator throws a RhinoEcmaError warning in the system log. The warning is present on every classic form, regardless of application scope or record type. There is no functional outage; forms load and save correctly, and all transactions return HTTP 200 with normal response times. The main impact is high-volume system log noise. |
Expected behavior: No RhinoEcmaError warnings are generated during a standard form load. Actual behavior: On forms without an activity stream, one warning entry is generated per form load. On forms with an activity stream, two warning entries are generated per form load. |
|
Activity Stream PRB2018487 |
A citation URL is retained and fields are highlighted when a user logs in to an instance again |
Expected behavior: The citation URL shouldn't be preserved after triggering the citation source flow. Actual behavior: The URL that is created after selecting a citation source is preserved, and causes the citation scroll and highlight to trigger. |
|
|
Activity Stream PRB2023624 |
For the Core UI only, update the Activity Stream icon for AI specialist vs Agentic Workflow | This is a product update. | |
|
Activity Stream PRB2033885 |
A new activity comment has the type as 'Field changes' instead of 'Comments' |
Note that the comment type (top right of tile) is 'Field changes [dot timestamp]' instead of 'Comments [dot timestamp]'. |
|
|
Agent Chat PRB1943203 |
When hovering through the response templates, the preview is obstructed/hidden behind the case form | The response templates are obstructed in the header. |
Observe that the preview is obstructed/hidden behind the case form. |
|
Agent Chat PRB2000390 |
The date format is incorrect in the Active Chat window | The date/time format is displayed as 'MMM DD, YYYY HH:MM a.m.' instead of 'DD-MM-YYYY HH:MM:SS' in the Active Chat window. |
Expected behavior: The date/time format should display as 'DD-MM-YYYY HH:MM:SS' at the top of the Active Chat window. Actual behavior: The date/time format is displayed as 'MMM DD, YYYY HH:MM a.m.' in the Active Chat window. |
|
Agent Chat PRB2012130 |
There's a misleading VA Message while agent connection is still in progress | Before the agent accepts the workItem, there's a VA Message that says 'Live Agent Engaged'. |
Connect to LA. Observe that the VA Message says 'Live Agent Engaged' before the agent accepts the workItem. |
|
Agent Chat PRB2013475 |
LA conversation ends when sys_prop is set to empty | When sys_prop is deleted, the off-Glide LA topic is still called for LA transfer. |
Scenario 1:
Observe that the conversation ends. Scenario 2:
Observe that the off-Glide LA topic is still called for LA transfer, even when sys_prop is deleted. |
|
Agent Chat PRB2013947 |
Inbox Advanced Work Assignment (AWA) interactions aren't presented according to the Configuration field and order for the walkup experience | When an agent receives multiple chats in Service Operations Workspace (SOW), they are initially displayed in descending order, with the most recent chat at the top. However, after a refresh, the chat order appears to change and seemingly displays in a different order. |
Notice that the chat order is jumbled in a different order. |
|
Agent Chat PRB2014178 |
Optimize the request to fetch previous interactions for a requester to show conversation history in Agent chat | If there are no custom filters, there is no need to create the list of interaction records by going through all the returned records from the DB query. |
Observe that the server memory has gone up significantly. |
|
Agent Chat PRB2021490 |
Enhance the chat desktop notification | When the user selects the new chat message desktop notification, they should get focused back on the workspace tab. The workspace tab that the new chat message belongs to should also be focused and opened. | |
|
Agent Chat PRB2022900 |
AWA workItem responder changes | Update WorkItemResponder's onEnter and OnExit to add and remove notifications in the ui_notification_inbox table. Also, create a system property (glide.awa.work_ item.notifications.enabled) to determine whether to show or hide user preference at the agent level. | |
|
Agent Chat PRB2022906 |
Add user preference for app shell notifications | Add support to display a new user preference 'Inbox Workspace Notifications' based on the system property glide.awa.work_ item.notifications.enabled. | |
|
Agent Chat PRB2022911 |
Polaris app shell changes | This is a product update. | |
|
Agent Chat PRB2023682 |
Add the interaction number to desktop notifications to differentiate between interactions | The desktop notification should contain the IMS number to indicate which chat the notification is for. |
Expected behavior: The desktop notification contains the IMS number to indicate which chat the notification is for. Actual behavior: The desktop notification only says that a new chat arrived. |
|
Agile Development PRB2022589 |
Add 'None' choice to the rm_epic.status field and make it the default for new epics | The Epic Status field (rm_epic.status) currently doesn't include a 'No status' option, which prevents epics from having an unset/neutral status. This causes ambiguity in reporting and makes it difficult to distinguish between epics that have not yet been assigned a status vs. those intentionally marked as green, yellow, or red. |
Expected behavior: 'No status' is available as a selectable option to represent epics with no status assigned, enabling accurate status transition tracking for usage analytics. Actual behavior: 'No status' isn't available as an option in the Status field list. Available options are limited to green, yellow, and red. |
|
AI Agents (Glide Family) PRB1997916 |
There's an extra 'response' layer in the JSON input passed by the agent to a scripted tool, causing performance issues | The final tool of creating the regulatory change tasks expects the input to be in the format - { 'finalPlan_json': {...}, 'finalPlan_html': '...' }. But with the latest code, one 'response' layer is added, which causes performance issues. |
Scenario 1:
Notice that number of regulatory tasks in the related list doesn't change. Tasks aren't being created. Scenario 2:
Expected behavior: The JSON object returned by the skill tool should display in VA. Actual behavior: The JSON object will be wrapped/contained in a format like this: { response: { model_output: 'actual JSON object' }}. |
|
AI Agents (Glide Family) PRB2011068 |
Data to Glide from off-Glide isn't getting logged with the actual user | Any record update or creation doesn't have the created_by or updated_by set as the actual user. |
Make a set cache call to Glide from off-Glide. Observe that any record update or creation doesn't have the created_by or updated_by set as the actual user. |
|
AI Agents (Glide Family) PRB2018916 |
AI Agent execution fails with 'Tool access denied' for triggering user after the update set migration | After migrating AI Agents (built in Agent Studio) from a development environment to a client test environment via update set, the agents fail to execute. The triggering user receives an error indicating that they don't have access to the agent's tools, and the agent never starts. |
Observe that the agent fails to start. An error states that the triggering user doesn't have access to the agent's tools. |
|
AI Agents (Glide Family) PRB2022336 |
Caching improvements for NextWave architecture | This is a product update. | |
|
AI Agents (Glide Family) PRB2022344 |
Java changes for conversation history support for a Knowledge Graph tool in AI Agent Studio | This is a product update. | |
|
AI Agents (Glide Family) PRB2022649 |
AI Agents are stuck indefinitely and the facts response is empty | When running AutoEval for the Enterprise Architecture Explorer – Query Agent, the evaluation run gets stuck indefinitely while processing certain questions and datasets. During execution, AutoEval doesn't progress to completion, progress keeps retrying without advancing, and the run never completes successfully. GenAI logs repeatedly show: 'JSON{ 'facts': []}Show more lines'. Despite retries, no new facts are generated and the evaluation pipeline makes no forward progress. |
Observe that the evaluation stalls on certain questions, AutoEval keeps retrying internally, and the run never completes. |
|
AI Agents (Glide Family) PRB2025221 |
Cache service intermittently fails and gets calls across different keys | ||
|
AI Agents (Glide Family) PRB2025859 |
The OffGlideScriptObject. generateAuthorizationInfo API creates JSON Web Tokens (JWT) with current session users | The API sn_cs_offglide.OffGlideScriptObject .generateAuthorizationInfo() creates JWT with current user sessions, even though the userID value is passed in the request. | |
|
AI Agents (Glide Family) PRB2025974 |
User session is logged out when opening AI-generated interaction records | The user session is logged out when opening AI-generated interaction records that were created/updated by the incident_intelligence_agent. The interaction record remains in the WIP state, even though the associated conversation has been marked as faulted. The issue is specific to the in Service Operations Workspace view, as opening the same record in platform view works without issue. | |
|
AI Agents (Glide Family) PRB2030410 |
An instance isn't invoking DARE calls due to new properties not being allow listed in the cache configuration's invalidation script |
Expected behavior: The response should be received from DARE. Actual behavior: The response is coming from NextWave. |
|
|
AI Agents (Glide Family) PRB2030948 |
Tools using data stream actions aren't able to retrieve data in NAVA |
Observe that the tool isn't able to retrieve data. |
|
|
AI Experience Framework - Glide PRB2015131 |
Turn on UI validation for 'Record Update' and 'Create Agent' | This is a product update. | |
|
AI Experience Framework - Glide PRB2018366 |
/api/now/aiux_service/sysprops doesn't enforce an allowlist | ||
|
AI Experience Framework - Glide PRB2024769 |
Chat gate service uses a GlideRecord query with ACL evaluation, blocking non-admin users from reading the 'Deployment channel' table | In chat-gate-service.js (line 13), the chatEnabled check uses glideRecord_query to query the 'Deployment channel' table. This evaluates all ACLs for the current user, so only admin users have the necessary read access to that table. Non-admin users are blocked from fetching chatEnabled, which prevents the chat from functioning for them. |
Expected behavior: chatEnabled is fetched successfully regardless of the user role. Actual behavior: glideRecord_query evaluates ACLs and denies non-admin users read access to the deployment channel table. |
|
AI Experience Framework - Glide PRB2027126 |
AIX Webserver Glide integration | This is a product update. | |
|
AI Experience Framework - Glide PRB2027128 |
Migration in Glide | This is a product update. | |
|
AI Gateway - Security PRB2024062 |
AI Gateway security Q2 complete feature update | This is a product update. | |
|
AI Search (Glide) PRB2001677 |
A Knowledge Graph (KG) NLQ call should pass the caller ID in the Caller field, not meta |
In an instance with KG, navigate to 'Make a kgnlq query'. Observe one_api_service_ plan_feature invocation. It doesn't match the design with respect to the Caller field. |
|
|
AI Search (Glide) PRB2002346 |
When a KB only has an embedded KBB with embedded_match = false, the KB should send itself instead of the KBB | The KBB content is sent to the LLM instead of KB. |
Expected behavior: The content of the KB is sent to LLM. Actual behavior: Only the KBB content (defhi) is sent to the LLM. |
|
AI Search for Service Portal PRB2023882 |
The 'View all results' option isn't available in the chat response shared by assistant |
Expected behavior: The 'View all results' option is visible. Actual behavior: There is no 'View all results' option in the side panel bottom. |
|
|
AI Search UX PRB1989246 |
When records are searched in global search, it isn't opening the form directly | When a user tries to search the incident number in the global search when the zoom size is 150% and left navigator is pinned, then the incident record isn't opening directly. It instead displays a search result page. However, when the zoom size is 100%, then the incident record is opening directly in a form page. |
Expected behavior: Users should see the incident form record directly. Actual behavior: Users are seeing the search results page. |
|
AI Search UX PRB1991340 |
Search input intermittently skips characters | The search input intermittently drops characters when users type quickly, especially under a heavy event load. |
Observe intermittent character loss. |
|
AI Search UX PRB1994212 |
The hidden description in the source code is visible in the chatbot for 'Order guide' and not for 'Catalog item' in Now Assist Virtual Agent (NAVA) | On the catalog item, it's possible to hide the description using the following in the code source: '<div style=''display: none;''> TEXT TO HIDE.' When attempting to do the same in the order guide, it's not working properly in the chatbot, and both texts are visible. This issue occurs only on the chatbot preview of the order guide, and not when consulting it directly from portal. | |
|
AI Search UX PRB1998976 |
Search event records don't indicate the search mode (keyword, hybrid, or semantic) | When a search is executed in an AIS-enabled portal with Hybrid Search enabled on the corresponding search application, the resulting sys_search_event and sys_search_signal_event records don't capture the search mode (keyword, hybrid, or semantic) that was used to execute the query. This makes it impossible to distinguish query types in search analytics and signal data. |
Observe that neither record contains any field or indicator specifying the search mode used (keyword, hybrid, or semantic). |
|
AI Search UX PRB2005193 |
Exact Match, when configured to honor conditions of search sources, should be configurable for a single application and not the entire instance | A system property called glide.search.exact_match _use_search_source_filter enables all applications on the instance with exact match limited to those tables included in a search source and honors the conditions set within them. Users don't expect this feature to be enabled at the instance level, but require it to be enabled at the application level. |
Set the system property glide.search.exact_match_use_search_source_filter to true. Notice how setting this property to true applies to all search applications. Instead, it should be enabled/inactive for a single application. |
|
AI Search UX PRB2011697 |
RAG popular search suggestion reader doesn't consider sys_rag_search _suggestion.active | The sys_rag_search_suggestion records with active=false are still returned. |
Observe that the sys_rag_search_suggestion records with active=false are still returned. |
|
AI Search UX PRB2014138 |
$sp-search-result-title- highlight--background-color in sp-variables.scss | There is no default assigned for variabl '$sp-search-result-title- highlight--background-color'. |
Notice that the variable '--search-result-title- highlight--background-color: $sp-search-result-title- highlight--background-color;' is not resolved. |
|
AI Search UX PRB2016024 |
Synthesized responses on a mobile sized screen don't show 'Show full answer' after truncation in Zurich on Safari | The answer is truncated without the option to expand: 'Show full answer'. |
Observe that the answer is truncated without the option to expand: 'Show full answer'. |
|
AI Search UX PRB2021873 |
Facets aren't rendered as the sensitivity filter fails quietly | Facets aren't returned because of a failure to fetch hasMatch. |
Observe that facets aren't returned as a result of before line failing to fetch hasMatch. |
|
AI Search UX PRB2024551 |
New/different experience in the search when AI Search is turned on in the portal level |
Observe that there's no follow up and articles displayed are shown previously in the enhanced chat. |
|
|
AI Search UX PRB2024704 |
RAG search signals aren't getting logged | After certain searches, the sys_search_event and sys_search_signal_event records should be created. The response from the REST API call should have a signalsCorrelationData object on it. Instead, no records get created and no signalsCorrelationData is returned. | |
|
AI Search UX PRB2026614 |
Auto-Enable Hybrid Search on Now Assist for Search Installation | When a new users installs the 'Now Assist for Search' plugin, the system should automatically enable Hybrid Search for all search applications configured in the instance. This ensures new users benefit from Hybrid Search by default without requiring manual configuration. The behavior applies to all new user installations going forward and shouldn't retroactively affect existing users who have already installed Now Assist for Search. | |
|
AI Search UX PRB2031624 |
Enhanced Chat's search bar appears on portals with NextWave | Note that the NextWave omni-bar displays on the homepage as expected. However, the search bar from Enhanced Chat is also appearing on other pages unexpectedly. | |
|
Analytics Data API PRB1844011 |
Using 'Trend by week' leads to an incorrect record count when the new year starts | When using 'Trend by' with the options 'Opened', 'Calendar', 'Standard Calendar' and 'per-week' and running the report, the record count is 3 but the List view record count is 5. | |
|
Analytics Data API PRB1919741 |
Calendar API doesn't accept requests from external users | The following message appears: 'message': 'External User Not Authorized'. |
Expected behavior: The user is able to make the request. Actual behavior: The following message appears: 'message': 'External User Not Authorized'. |
|
Analytics Data API PRB1928857 |
The maximum number of groups on the heat map visualization in Platform Analytics resets to 10 when filtering | After saving and refreshing, the column count resets to 10. Instead, all selected groups should remain visible. |
Expected behavior: All selected groups remain visible after saving or refreshing. Actual behavior: The column count resets to 10 every time. |
|
Analytics Data API PRB2003111 |
Pivot table using multiple data sources shows 'No data' on the widget when one of the data sources returns no data | Even though data is available, the chart shows 'No data available'. |
Expected behavior: The chart is rendered and shows the expected data with zeros. Actual behavior: The chart shows 'No data available', despite data being available. |
|
Analytics Data API PRB2005078 |
When using dynamic date ranges, appliedFilters returns incorrect dates |
Notice that the data for March is now visible. |
|
|
Analytics Data API PRB2006926 |
Geomap doesn't fetch locationData correctly when the incorrect query gets applied | Locations which have valid data in cmn_location table aren't getting plotted. Every valid location should get plotted correctly. |
Observe that the created Geomap widget doesn't render all the data points and shows an error: 'Some of the data you selected can't be visualized on the map due to latitude/longitude mapping errors'. |
|
Analytics Export API PRB2007025 |
Dashboard PDF export doesn't apply dashboard filters on the list | Dashboard filters aren't applied to the list in the dashboard PDF exports. Only the filters configured in the list are honored. |
Observe that the filters are applied correctly on the dashboard to the list, but they aren't applied in the exported PDF. |
|
Analytics Export API PRB2019202 |
Show the total row count in the analytics list | The list-simple property 'hideTitleRowCount' should migrate to showRecordCount in the new analytics list. |
Observe that it doesn't migrate to the new list visualization and have the corresponding property set for showing count. |
|
Analytics Export API PRB2023200 |
Hide the export option when it's inactive or the roles list is empty | The system provides export on demand functionality at dashboard and data visualization level (server-side) for the Next Experience. There is a need to control the availability of the export option based on system properties and user roles. |
Observe the system checks if the user's role is included in the configured list of roles (if the list is not empty). If the second system property (roles list) is empty, the export feature is available to all users when enabled. If the second system property (roles list) is populated, only users with roles in the list can access the export feature. |
|
Application Manager PRB1995859 |
KMF key isn't copied to the target instance during the clone, causing encrypted app attachment decryption failure and store re-download fallback | After cloning an instance, the target instance fails to decrypt the encrypted app ZIP attachments. This happens because the KMF key used on the source instance isn't copied to the target during the clone. The target instance falls back to re-downloading and re-encrypting every installed app from the ServiceNow App Store, causing extended startup times, node timeouts, and degraded instance availability. |
Observe that there are repeated re-download attempts for apps already installed on the source. Also, the decryption of app ZIP attachments fails on the target (KMF key from source is not present on target). Finally, enroll_module_for _resource_exchange is false on the com_glide_snc_app_client KMF crypto spec. |
|
Application Rationalization PRB1993865 |
Base instance business rule fails to exclude the current record during duplicate name validation due to incorrect property reference | The business rule on the cmdb_ci_business_app table incorrectly blocks updates when changing the case of a Business Application name (for example, 'abc' to 'ABC'). This happens because it uses current.sysId instead of current.sys_id, resulting in an undefined sys_id comparison. |
Expected behavior: The save is allowed because it's the same record, just with a different case. Actual behavior: The save is blocked with the error: 'A Business Application exists with the same name. Please verify.' |
|
Appointment Booking PRB1961234 |
Future maximum bookable days are inconsistent when the time is 8:58AM in JST and 9:00AM in JST | The issue is caused by the internal time zone conversion logic. JST 19th Aug 08:58 a.m. converts to GMT 18th Aug 11:58 p.m.. Since GMT is behind JST, slots for September 18th aren't shown (the future maximum only reaches September 17th). However, JST 19th Aug 08:00 a.m. converts to GMT 19th Aug 12:00 a.m.. Future maximum days are added on GMT, and slots for September 18th appear. | |
|
Asset Management PRB2018791 |
The navigation filter isn't applied correctly | The relevant filter should be automatically applied after navigation. |
Expected behavior: The relevant filter is automatically applied after navigation. Actual behavior: The filter isn't applied. |
|
Authentication Factors PRB2026011 |
Introduce a new MFA factor, Email OTP | This is a product update. | |
|
Authentication Factors PRB2026012 |
KBA improvements of Platform capabilities | This is a product update. | |
|
Authentication Factors PRB2026014 |
KBA session context persistence | This is a product update. | |
|
Authentication Factors PRB2026015 |
NextWave AI authentication migration to a new authentication service | This is a product update. | |
|
Authentication Factors PRB2026060 |
The kba_session_context value is not in JSON format | The kba_session_context value is logged in this format: '{q1_keyword=q1_user_input, q2_keyword=q2_user_input}'. |
Observe that the kba_session_context value for the third question is logged in this format: '{q1_keyword=q1_user_input, q2_keyword=q2_user_input}'. It should be logged in a standard json format. |
|
Authentication Factors PRB2030597 |
Fall back to secondary identification when the primary resolves a non-sys_user | In cases when the identification questions are configured to a non-sys user, then it should ask fallback questions. This isn't happening in v2 and the call is ended since the userID isn't resolved. It should fallback to the secondary identification to get the userID. In cases where both the questions lead to a non-sys_user, then it should fail. | |
|
Authentication PRB2033124 |
Case-sensitive comparison is applied during knowledge-based authentication (KBA) answer matching | Case sensitiveness of KBA answer matching is controlled by the system property 'glide.auth_factors. kba.case_insensitive _validation'. It is by default case insensitive in previous patches, but seems to have the incorrect default value in recent tracks. |
Expected behavior: The user-given input should be matched case insensitively. Actual behavior: Answers are matched case sensitively. |
|
Automated Test Framework (ATF) PRB2022891 |
MVP - UI test script (Testing Library) test step in ATF for UI testing | This is a product update. | |
|
Case and Knowledge Management for HR Service Delivery PRB1983139 |
Approval records aren't created when creating a HR case |
Observe that the approval record isn't created. |
|
|
Change Management PRB1994240 |
Translation issues in the Conflict Checker Progress modal window | Translation issues were observed after upgrading from Yokohama to Zurich. The 'conflict_detection' header appears to be missing the message completely when it previously read 'Conflict Detection'. The message 'The conflict check is complete' is translated into Finnish, even when the user's language is in English. This issue also occurs when the instance language is set to French, and the label is translated in English. |
Notice that the progress bar title displays as 'conflict_detection' and the value is shown rather than the label, 'The conflict check is complete'. The label is translated in Finnish even though the user's instance language is set to English. |
|
Code Signing PRB2014768 |
Increase the code signing validity window maximum from 60 minutes to 4 hours | In the 'Scan Signatures' module, the Data source field is incorrectly set to false for records that have valid, successfully created signatures. These signatures return true when validated via a background script. The issue occurs because the effective maximum of com.snc.kmf.signature .validity_window is 60 minutes, which prevents users from configuring longer validity windows, especially when the consecutive signature generation takes time. |
Observe that the signature state for the Data source field still reflects as false. |
|
Code Signing PRB2014831 |
Scheduled scripts incorrectly appear in 'Update Set Signature States' | Currently, users are required to hold the security_admin role to perform code signing operations on update sets. This creates several operational and security challenges. Instead, there should be a separate role that grants the ability to perform code signing operations on update sets and related artifacts within the Code Signing framework. It shouldn't grant access to security policies, ACLs, encryption contexts, or other security administration functions. |
Observe that there's no option to run signing jobs unless elevated to the 'security_admin' role. |
|
Code Signing PRB2014833 |
Enable digest creation for users with the code signing role | For users with the code_signing_user role, the 'Create Digest' functionality should be enabled for Flow Designer flows and actions. The current dependency on the security_admin role should be removed. |
Observe that the user can't generate digest for flows unless they have the 'security_admin' role. |
|
Condition Builder in Workspace PRB2001225 |
The messaging for deleting saved filters is misleading | The confirmation dialog says 'Active will no longer be available in your saved filters. This action can't be undone.' Instead, it should be more explicit that the filter may be deleted for everyone. |
Expected behavior: The confirmation explicitly says that when a filter is deleted—especially one that has been shared to a group or globally—it is deleted for everyone. Actual behavior: The confirmation dialog opens and shows: 'Active will no longer be available in your saved filters. This action can't be undone'. |
|
Configuration Management Database (CMDB) PRB1923632 |
CMDB Health Correctness group score doesn't consider inclusion rules when computing health score | The CMDB Health correctness group score is incorrect because the parent metric doesn't consider the inclusion rules. The code in the correctness manager that would return the health inclusion rule for the class is missing. It works correctly for other metrics (for example, completeness and conformance). | |
|
Connections and Credentials PRB2007222 |
AuthMetadataProvider .getAliasInfoList() performs unfiltered full-table scan on sys_alias (29,000+ rows) | This causes QueryWarning and excessive DB load. The same behavior occurs via any code path that calls PersonalAuthClient .getAuthCredentialInfo (credentialId). |
Observe that the following warning appears in the system logs: 'QueryWarning *** WARNING *** Large Table: Table handling an extremely large result set: 29180'. Additionally, observe that the info-level log for orphaned credential aliases contains 'can't find a credential with the given alias sys_id...' |
|
Connections and Credentials PRB2015199 |
An initiator URL isn't returned when the AT has expired and the record is present in oauth_credential_list | ||
|
Content Library Portal PRB2005753 |
Content lookup historical data triggers unintended deduplication for pa_manual_breakdowns records | The fix script runs with the 'isHistorical' parameter set to true, then it calls the deduplicateByValueField function. The duplication logic doesn't query for the breakdown; it only looks for duplicated value to identify duplicate records. In theory, there could be duplicated value across different breakdowns, causing unwanted data loss. | |
|
Content Library Portal PRB2010143 |
Multiple ais_index events are triggered for sam_sw_product_lifecycle during content updates | During content updates in the ITAM Content Library, many ais_index events are generated for the sam_sw_product_lifecycle (SAM software lifecycle) and sn_hamp_lifecycle_definition (HAM hardware lifecycle) tables. These events appear in the event log. The excessive events are triggered because system metadata columns on the AI Search datasources for these two tables are missing the no_text_index field attribute. Without this attribute, the AI Search indexing engine includes these columns in the vector index. | |
|
Database Persistence - Data Access PRB1919872 |
There's duplicate edges in the output of jsFunction_getEdgeList for custom created graphs and when includeEdgesForTables OutsideGraph is true | ||
|
Database Persistence - Data Access PRB1930279 |
Users can create a cyclic relation through graph hierarchy |
Notice that it creates a cyclic relation in graphs test2-parent-test1 and test1-parent-test2. |
|
|
Database Persistence - Data Access PRB1946286 |
Workflow Data Fabric (WDF) queries fail when trying to execute on connection for trino_primary | When trying to get a specific column instead of the entire record, the error occurs in the response: 'FAILED TRYING TO EXECUTE ON CONNECTION trino_primary'. | |
|
Database Persistence - Data Access PRB1962536 |
The prefix is missing in some places for the Knowledge Graph UI |
Note that the prefix is missing for all the nodes, columns, and relations. |
|
|
Database Persistence - Data Access PRB1969193 |
SELECT isn't generated correctly for a script when a business rule is active with ORDER BY for Postgres | There's an error message: 'FAILED TRYING TO EXECUTE ON CONNECTION glide.1 (connpid=3758451): SELECT...' | |
|
Database Persistence - Data Access PRB1984070 |
Trend reports and dashboard show inaccurate data by week across the end of a year | On instances using a PostgreSQL database, an incorrect year reference (yearref) is returned for the non-ISO week functions sunday_week and monday_week. As a result, the column data displays trends for future dates where no actual record data exists. This issue affects reports and dashboards that group or summarize data by week across the end of a year. Reports may display an unexplained empty week in one year, a duplicated week in another, or records appearing in the incorrect annual bucket. |
Refer to the listed KB article for details. |
|
Database Persistence - Graph PRB1923336 |
The isTableExcluded API should exclude text search tables | ||
|
Database Persistence - Graph PRB1938573 |
A 'WHERE' clause appends all query node conditions with an 'AND' operator, even when there are 'OPTIONAL MATCH 'statements | When trying to a build cypher query for the following use case, 'Identify all CIs which are connected to Database catalog or Application', in the final built cypher query the 'WHERE' clause is using all 'AND' conditions to append all node filters to the query. When using 'OPTIONAL MATCH' statements, an 'OR' logic is expected. | |
|
Database Persistence - Graph PRB1944327 |
Global graph should be the default and all other graphs should be non-default when the instance is upgraded from Yokohama to Zurich | Default graphs and Global graphs are all set to non-default. |
Expected behavior: Global graph should have default = true and the other two graphs that were created in step one should have default = false. Actual behavior: Both of the created default graphs and the Global graph are default = false. |
|
Database Persistence - Graph PRB1967193 |
CMDB Query Builder doesn't work when multiple OR conditions are used on location attribute | When multiple OR conditions are used on the location filter, the CMDB query builder doesn't return any results. |
Scenario 1:
Observe that once a second condition is added, the query builder fails. Scenario 2:
Observe that results are now returned. |
|
Database Persistence - Graph PRB1975732 |
There's a repeated query execution in GraphUtils #getGraphByQualifiedName for a metadata child table [sys_meta_graph] for every iteration/execution | ||
|
Database Persistence - Graph PRB1988516 |
Weeks, milliseconds, and microseconds aren't supported in a DURATION map | There's an error: 'com.glide.db. DBGraphApiException: Error executing cypher: FAILED TRYING TO EXECUTE ON CONNECTION...Syntax Error or Access Rule Violation detected by database (ERROR: function duration_between(date, date) does not exist tooltip: No function matches the given name and argument types. You might need to add explicit type casts. Position: 294)'. | |
|
Database Persistence - Graph PRB1988520 |
TimeKeyExpression isn't supported as a DURATION function parameter in DBSqlParser | There's an error: 'Error: com.glide.db. DBGraphApiException: Error executing cypher: FAILED TRYING TO EXECUTE ON CONNECTION...Syntax Error or Access Rule Violation detected by database (ERROR: function duration_between(timestamp with time zone, date) does not exist Hint: No function matches the given name and argument types. You might need to add explicit type casts. Position: 307)'. | |
|
Database Persistence - Graph PRB1990632 |
Node/edge types should allow special characters for GraphMetadataAPI | Predefined filters fail in the Graph API version of the CMDB query builder. After a platform upgrade, CMDB query builder throws the 'Problem Running Query' error. | |
|
Database Persistence - Graph PRB1995712 |
Weeks, milliseconds, and microseconds aren't supported in the Duration map | ||
|
Database Persistence - Graph PRB1996879 |
Guardrail for maximum number of edges returned from getForTables | The number of nodes returned from getForTables is capped to 1000, but there's no such limitation for the number of edges. When inbound edges are specified and the number of nodes is at maximum, the number of edges can be quite large. |
Run getForTables for sys_user with inbound edge flag = true. |
|
Database Persistence - Graph PRB1997409 |
L2 query displays non-empty edge values |
Expected behavior: With the data, there should be two L1 relationships and three L2 relationships with the edge shown as '(empty)'. Actual behavior: The three L2 relationships have unexpected edge values. |
|
|
Database Persistence - Graph PRB2007566 |
com.glide.db. DBGraphApiException has an error executing cypher | There's an error: 'This user (admin) is not allowed access to table: sys_user_has_role'. | |
|
Database Persistence - Graph PRB2008809 |
Rename the ScopedGraphQueryBuilder .createNode method | To avoid potential confusion with createNode as a write operation, rename the 'createNode()' method to 'node()'. | |
|
Database Persistence - Graph PRB2020140 |
Union queries aren't supported | ||
|
Database Persistence - Graph PRB2021889 |
GlideRecord.setCategory() is used in a way that prevents routing to read-replica databases | The query is categorized as 'graphqueryexecutor' instead of 'cmdb_queries', and therefore doesn't get routed to the read replica because the category isn't a second database category. |
Expected behavior: The query is categorized as 'cmdb_queries' and is routed to the read replica. Actual behavior: The query is categorized as 'graphqueryexecutor', and since that category isn't a secondary database category, is not routed to the read replica. |
|
Database Persistence PRB1866305 |
DictionaryXMLParser rejects large table alters for Postgresql db based on MariaDB logic |
Observe that the alter is rejected. |
|
|
Data Management Console PRB1974031 |
A repeated query with the hash -423529530 comes up when running stats gatherer | ||
|
Data Snapshots PRB1999238 |
There's a node outage due to an out-of-memory error as a result of a memory bloat in ScriptableCDCDataCollector .jsFunction_mineAllChanges() | During the investigation, it was noticed via heapdumps that the com.snc.db.cdc. implementation. ReplicationTableReader object held an array list of size 500. Each entry in this array list held up to a max of 800 Glide record objects. The size of each of these 500 entries was ~21 MB. The Glide record objects were from the cmdb_ci_vm_instance table. These were particularly heavy in terms of row size (reaching ~400 KB). The existing sizing must be revisited to take into account this outlier. In particular, in addition to a limit on number of rows to be polled from cdc_queue_par, it should also include a limit to cap the memory size. |
Notice the memory bloat in the worker thread running for the 'All changes' job. |
|
Developer Sandboxes PRB1995018 |
NowMQ messages can be claimed by an unexpected recipient | If the user sets the App Operation Queue Health Monitor job to inactive, it should prevent the sandbox from claiming any application operation queue messages in sys_nowmq_message. On an instance without sandboxes, any messages that were left unclaimed or any newly added messages should still be claimable when the job is re-enabled. |
Observe that the corresponding message from step 3 is unexpectedly gone. It should still be present but unclaimed as a result of step 2. |
|
Developer Sandboxes PRB2011753 |
Sys_flow_trigger_plan_chunk is currently shared and causing updated flows to error out | If the user updates the base flow, the sandbox flow errors out with 'Compiled flow not found for snapshotId'. |
Observe that, under 'Today's execution', the flow starts erroring out with 'Compiled flow not found for snapshotId'. |
|
Developer Sandboxes PRB2015080 |
The scheduled flow inherited from the main instance does not run automatically on the sandbox instance | The flow runs in main instance at the scheduled interval, but the flow doesn't run in the sandbox instance even though it exists. |
Notice that the flow is not running. |
|
Developer Sandboxes PRB2017438 |
DSB update sets aren't exported before clone | Because sandboxes are retired, update sets from a sandbox should be saved as remote update sets on the base instance on upgrade. However, due to this problem, they may not be saved correctly. |
Expected behavior: There is a way to recover the work. Actual behavior. The work is gone. Logs show jsFunction_exportUpdateSets is called. |
|
Developer Sandboxes PRB2018545 |
BA conversations are shared between sandboxes/base instance | The base instance conversation contains messages from the sandbox, and vice versa. |
Expected behavior: The conversation doesn't contain what was typed in the sandbox. Actual behavior: The conversation contains messages from the sandbox. |
|
Discovery PRB1986211 |
Discovery.complete and discovery.canceled are triggered incorrectly | Discovery may trigger both discovery.complete and discovery.canceled events for the same status, and it may trigger discovery.canceled twice. |
Observe that discovery.canceled fires twice for the same status record. The StartDiscovery error log for 'Discovery canceled on previously started schedule ... due to mid not available' appears twice. Instead, there should be a single discovery.canceled event and a single error log entry per cancelled run. |
|
Document Intelligence Unified Backend PRB2018937 |
Local naively checks for empty text rather than 'empty' when classifying PDF pages for DocReader | The PDF page is classified as 'digital' instead of 'scanned' because it checks for empty text instead of a empty PDF page. |
Call DocReader Local with a scanned PDF containing empty text, for example, '\n\n\n'. Notice that the page is classified as 'digital' rather than 'scanned'. |
|
Document Intelligence Unified Backend PRB2029867 |
Users can configure more than 50 fields per use case, which does not match the product and pricing based limitations | ||
|
Edge Encryption PRB1945424 |
There's high memory utilization on proxy servers after the Yokohama upgrade | After upgrading and running Yokohama, the memory consumption is over the limit set in wrapper.conf. The user set the memory limit for 10G in the wrapper.conf, but the edge proxy doesn't respect this setting in the build. The memory goes to the physical limit and causes the proxy server to restart. | |
|
Email Accounts PRB2022999 |
Add the capability to capture mailbox as part of headers | This is a product update. | |
|
Email Notifications PRB2006670 |
Push Notifications aren't sending the badge count | This issue occurs on mobile instances. |
Observe that the badge count isn't sent in the push payload. |
|
Email Notifications PRB2022602 |
Client script include should be created to make client scripts modular and reusable | In Zurich, the wiring's not implemented for mini composer in CSM when activity stream compose isn't present. |
Expected behavior: The pop-up is displayed based on the configuration. Actual behavior: The pop-up isn't displayed when the user selects the Send button. |
|
Event Management PRB1980951 |
When text-based grouping is turned on, tag-based grouping doesn't work consistently | When text-based grouping is turned on, the related tag-based alerts aren't always grouped. This behavior isn't consistently reproducible and occurs at random. If text-based grouping is turned off, the related alerts are grouped by tags. |
Refer to the listed KB article for details. |
|
Event Management PRB1982324 |
Group type appears automated, but the group was created according to the tag-based definition | The issue occurs when there is a pattern (same metric, different node), and tag-based is enabled but with the wrong one turned on (same metric, same node). The user gets an automated group, but worknotes are received from tag-based. |
Observe that an automated group with two alerts is created in the next cycle of the grouping job. The group alert should have the proper worknotes. |
|
Event Management PRB1999707 |
An app node crash occurs due to OutOfMemory (OOM), and GroupingDebugLogger accumulates log messages even if logging is disabled | After stimulating alerts for Metric rule/Event rule and checking the tables for node restarts and active transactions, the queue in the sys_trigger table is huge. |
Notice that there is a huge queue found in the sys_trigger table. |
|
Explicit Roles PRB2011506 |
The NullPointerException in ExplicitRoleCollisions .handleSysUserGrmember invalidates ATF rollback context during CreateUserStepRunner execution | During the scheduled nightly ATF test execution, a null pointer exception occurs in the explicit roles collision check logic, which propagates up and invalidates the ATF rollback context. This prevents automatic rollback of test-created records (for example, Incidents, Users, Business Services), leaving orphaned data in the environment. |
Expected behavior: There is no null pointer exception in the node log. Actual behavior: There is the following null pointer exception in the node log: 'Error: java.lang.NullPointerException: can't invoke 'com.glide.explicit_roles. MutuallyExclusiveRoleCheckResult $MutualExclusionResultType .ordinal()' because the return value of 'com.glide.explicit_roles. MutuallyExclusiveRoleCheckResult .getResultType()' is null'. |
|
Field Service Capacity and Reservations Management (Glide Family Channel) PRB2017642 |
The hours/tasks capacity definition doesn't consider the assignment time zone when computing demand metrics and calculating capacity usage | The metrics table records (from_date, to_date) are based on the system time zone, not the assignment time zone. |
Observe that the metrics table records (from_date, to_date) are based on the system time zone, not the assignment time zone. |
|
Field Service Capacity and Reservations Management (Glide Family Channel) PRB2020554 |
All capacity console event values should be displayed based on the capacity assignment time zone | The events should be displayed according to the assignment time zone, not the system time zone. |
Observe that the events aren't displayed according to the assignment time zone. |
|
Flow Engine PRB1992819 |
Impact handling of Scripting Governance disable switch | A disable switch for the Scripting Governance feature is being added. Any ACL or Java code dependent on the scripting role/group will break if a user flips the disable switch. |
|
|
Flow Engine PRB2014479 |
Add the roles 'taas writer' and 'taas reader' with API access only, and not with table ownership | Adding the role trigger_designer directly to policy_manager was evaluated and ruled out, as the 'policy manager' role should not have access to trigger the 'designer' role. | |
|
Form Templates PRB1963747 |
A template sometimes can't populate both the 'Assigned to' and 'Assignment' group | Following the upgrade to Zurich, the user can't update 'Assigned to' through templates, but they can perform the update manually. In workspace, if a template sets both 'Assigned To' and 'Assignment Group', the template application may fail. Assignment group validation determines if the 'Assigned To' user belongs to the assignment group when a template is applied. However, there's an issue where the validation only uses the record value's assignment group and the assignment group in the template is ignored. This behavior doesn't occur when templates are applied using UI16. |
Refer to the listed KB article for details. |
|
Generative AI Controller PRB2026284 |
Agents aren't working in Zurich nightly with the latest snapshot |
See that the agent is stuck in starting and no context is passed to it. |
|
|
GlideAggregate API PRB1951351 |
GlideAggregate returns incorrect results for the business calendar with a condition on Date field | The issue occurs on both MariaDB and RaptorDB. | |
|
GlideRecord PRB1922298 |
Assessment Metrics (asmt_metric) in a question bank disappear after they're used in a published survey | On an instance running on RaptorDB (postresql), the assessment metric in the question bank can disappear. The issue can't be reproduced on MariaDB. | |
|
GlideRecord PRB1958518 |
A Null Pointer Exception is thrown if a table has a GlideElement WikiText type field and queries at start up before extension points are loaded | Adding a GlideElement Wikitext type field to the user table can cause an outage. The page is empty and errors are seen. On a local instance, the instance throws servlet exceptions and doesn't start. |
Refer to the listed KB article for details. |
|
Hardware Asset Management PRB2023284 |
The stockrooms missing distribution channel yields empty records in list view |
Observe that no records are visible. |
|
|
Horizon Avatar Component PRB2010763 |
The gradient border is missing for AI Specialist avatars in the activity stream for Seismic interfaces | ||
|
Horizon Component Library PRB1910095 |
The VA Chat icon disappears in responsive view |
Observe that the VA Chat icon disappears. |
|
|
Horizontal Portal Capabilities for Customer Service PRB2010425 |
Additional comments added via the CSM Portal are duplicated | This happens if the state is set to Awaiting Info. |
Observe that the second comment is not duplicated. |
|
HR Service Delivery PRB2016516 |
RCA is generated for 'Populate Manager Reportee Count Using Eligible Users' and 'EmployeeHubOrgChart ReporteeUtilSNC' | The following two RCA's are generated for the new scripts, causing test failures: sys_script_include_ a302f8807873f250f877079523d275e1 and sysauto_script_ 33a5e72453f7b210f2ebffc230e5e69d. | |
|
Instance Clone (Family) PRB2023467 |
Incorrect values are shown on the clone summary page | ||
|
Interactive Filters PRB2007031 |
Applying the filter in the Dashboard shows 'Some applied options are currently unavailable' when the filter options have a comma ',' in the value | While trying to apply an indicator filter with the 'Filter' option in the breakdown, the messages 'Some applied options are currently unavailable' and 'Unavailable option' appear. |
Notice the message, 'Some applied options are currently unavailable.' |
|
Internationalization Features PRB1892286 |
A non-admin user can't change a dashboard name by specific steps when the system language is set to Japanese | The dashboard name should be updated correctly and reflected in both the primary record and its translated fields, as it is in the Washington and Xanadu versions. In the Yokohama version, the update to the dashboard name fails silently when the Japanese language is enabled and the sys_translated record exists. |
Refer to the listed KB article for details. |
|
Key Management Framework (KMF) PRB1964424 |
WebServices Mutual Auth connections fail if the instances are in FIPS mode | If an instance is using FIPS mode, REST Web Services connections fail if the authentication type is 'Mutual Auth'. The following error is thrown: 'org.bouncycastle.tls.TlsFatalAlert: unsupported_extension(110)'. |
See that it fails with an error: 'org.bouncycastle.tls.TlsFatalAlert: unsupported_extension(110)'. |
|
Knowledge Graph (Family) PRB2021133 |
Knowledge Graph (KG) description deactivator triggers long-running queries, causing HLL spikes | Post Version Upgrade Job : KG Description Deactivator triggers Long running queries and causes HLL spike | |
|
Knowledge Management PRB2000521 |
Support for Knowledge blocks in ECE | Knowledge blocks aren't supported in ECE. Ideally, blocks should be supported in ECE. | |
|
Knowledge Management PRB2005195 |
KM Import Article conversion utility should be exposed as a callable API for external consumption by the GRC/IRM policy flow | The KM Import Article feature uses Apache Tika and Apache POI libraries for DOCX-to-HTML conversion and produces flexible, translation-safe HTML output. On the other hand, the GRC policy flow's current GroupDocs-based conversion applies static absolute positioning. To resolve the translation formatting issue in GRC's policy flow, the KM conversion utility needs to be exposed as a standalone API that GRC/IRM can consume directly—without requiring an existing Knowledge Article upfront and without deleting the source attachment document during processing. |
Observe that the output contains flexible/relative styling and there's no static absolute positioning. Compare against a Knowledge Article created via the GRC/IRM policy flow and note the static positioning difference. |
|
Knowledge Management PRB2010029 |
Knowledge blocks aren't honoring KC redirection properties |
Expected behavior: Knowledge blocks should honor KC redirection properties. Actual behavior: Creating or editing a from UI16 doesn't redirect to KC. |
|
|
Knowledge Management PRB2014078 |
Turn on the Apriel 2.0 model and set the new 3P model as the default | This is a product update. | |
|
Knowledge Management PRB2027236 |
True-up for KC and NAKM, ECE, and KC in UI Builder | This is a product update. | |
|
List Administration PRB1933683 |
List column widths aren't persistent when columns are personalized | The user can adjust the list column width. However, when the list columns are personalized (either by adding or removing columns), the adjusted width doesn't persist and resets to the default width. |
Notice that the adjusted width is reset to some default width. |
|
List Administration PRB1970036 |
List type data visualization doesn't show new lines (multi-lines) | The data visualization doesn't add new lines (multi-lines) in Zurich, but it does in Yokohama. |
Observe that the data visualization doesn't add new lines (multi-lines). |
|
List Administration PRB2012758 |
List fails to load due to a DataFetchingException from NowAssistSkillConfig | The list page in Service Operations Workspace doesn't load; it looks like the page is processing. NAA code is called and throws an exception, which results in list load error. | |
|
List Administration PRB2015114 |
The user is unable to load the results table frame on the same page | This issue was found in Query Builder for Yokohama and Zurich. |
Expected behavior: Even when there are no results for this query, the result table frame is shown with headers and columns. Actual behavior: The result table frame does not show up, and only a blank popover appears. |
|
List Administration PRB2023617 |
Grouping and summarization for telemetry for Multi-Record Actions (MRA) - List AI | This is a product update. | |
|
List Administration PRB2023634 |
Implement add/remove an AI indicator for the rows created/modified by an AI agent and clear an AI indicator when inline edits are made | This is a product update. | |
|
List Controller PRB1773052 |
The check box in presentational list can't be both inactive and selected | When the user sets the row as selected and inactive, the check box is only inactive. |
Expected behavior: The check box in presentational list is both inactive and selected. Actual behavior: The check box in presentational list is inactive, but not selected. |
|
MetricBase PRB2008126 |
The rollup scheduling script has a race condition that allows duplicate event queuing in MetricRaptor | When no classic shards are configured and the mb_shard_mapping table is either empty or has no rows with stores_classic_data = true, there is excessive logging for ClothoClientManager and ClothoRrdWriter. The error '*** ERROR *** No endpoints available' occurs for ClothoClientManager, and '*** WARNING *** No Classic Clotho Shard Configured' occurs for ClothoRrdWriter. |
Observe that a duplicate mb_rollup event is queued because the state = 'ready' check misses the processing event. |
|
Mobile Platform PRB1999865 |
Support onSubmit UI Rule | Configure and execute UI Rules at the time when the input form screen is submitted both online and offline. | |
|
Multimodal Service (Family Channel) PRB2022350 |
Vision Agent MMS Glide changes | This is a product update | |
|
Multimodal Service (Family Channel) PRB2022351 |
Implement improvements to the MMService plugin | This is a product update. | |
|
Multimodal Service (Family Channel) PRB2029156 |
Move MMS to GA | The MMS plugin name displays 'MAINT ONLY', and should be updated. | |
|
Next Experience Unified Navigation PRB2003211 |
/api/now/ui/polaris/menu is slow to build the cache on login | 1000s of each of these queries are run to retrieve user preferences and screen accessibilities. It should be able to retrieve all of most of these items in 1 query. | |
|
Next Experience Unified Navigation PRB2022500 |
If a work item is assigned to the same agent repeatedly, the Desktop Notification stops appearing entirely | A new desktop notification should appear on every work item assignment. | |
|
Now Assist in Document Intelligence PRB2030125 |
Support attachments where the file names doesn't contain '.type' at the end | There's an error: '{'attachment':{}, 'task':{'708a54b23b810f50141 a0e0f23e45a0b': {'error_msg':'Prediction server is not able to process the attachments: begin 0, end -1, length 9'}}}'. |
Observe an error. |
|
Now Assist Nextwave Experience PRB2010718 |
Portal URL resolver mapping is broken in NextWave conversations | ||
|
Now Assist Panel PRB2009288 |
Feedback isn't updated in the Gen AI log table |
Expected behavior: Feedback should be updated in the Gen AI log table. Actual behavior: Feedback isn't updated in Gen AI log table. |
|
|
Now Assist Panel PRB2025041 |
A mic enabled for NAVA Premium Chat is incorrectly surfaced on Enhanced Chat |
Expected behavior: The Send button appears in the input bar. Actual behavior: On-Glide mic appears in the input bar. |
|
|
OneExtend PRB2001785 |
Accuracy choice should be added for the Group field in the eval suggestion table |
Observe that accuracy choice isn't present. |
|
|
OneExtend PRB2013928 |
JSON Web Token (JWT) and metadata are missing domain visibility information | The JWT API only contains a claim for the domain, and is missing the list of domains visible to the user. | |
|
OneExtend PRB2017386 |
Now Assist jobs are running for extended periods and slowing processing | ||
|
OneExtend PRB2025105 |
Responses fix for Java flow | Validate all the Java flow from NAVA, NAP and Skill Kit. | |
|
OneExtend PRB2025250 |
Correlation Insights skill is stuck on the progress bar when off-Glide is enabled | Insights should be generated and displayed. Instead, the progress bar spins indefinitely and no generative AI logs are produced. The issue occurs because the app prepares a bulk request with three payloads and invokes it in async mode with a callback handler. When off-Glide is enabled for the capability, the async callback flow ('NowAssistforSIR CorrelationInsightsCallback') appears to break silently. No generative AI logs are generated, indicating the LLM call never completes or the response isn't handled correctly. | |
|
OneExtend PRB2025268 |
Refactor the logic to update the URL and status in GeoRoutingDaoImpl | On repairing the GAIC plugin, if the Geo-Licensed record is not available, the http_connection records are randomly updating. |
Observe that it's randomly updating any of the http_connection. |
|
OneExtend PRB2025367 |
A cloning instance should preserve mosaic functionality in the target instance | ||
|
OneExtend PRB2025540 |
Off-glide Mosaic pipeline ignores the per-request timeout and every call falls back to the platform default, regardless of caller intent or service-plan configuration | All Mosaic calls fall back to the platform default; caller / control-setting / service-plan values are ignored. There's no phase-boundary timeout enforcement and requests run well past their stated SLA. DT translation always uses 0L. |
Expected behavior: The caller-supplied timeout is the strongest signal and is honored by every Mosaic HTTP call in the pipeline (preprocess gate, primary execute, postprocess DT translation). In its absence, the control-setting, service-plan, and 60 second default apply (in that order). Exhausting the budget at any phase returns a timeout response (status=error, errorCode=400001). Override values are persisted to one_api_service_plan.timeout_ms and cascade. Actual behavior: All Mosaic calls fall back to the platform default; caller / control-setting / service-plan values are ignored. There's no phase-boundary timeout enforcement and requests run well past their stated SLA. DT translation always uses 0L. |
|
OneExtend PRB2025975 |
Do not log prompts or responses to Splunk for in-country routing users | Prompt and response information is removed from logs for users with in-country routing SKU. | |
|
OneExtend PRB2026081 |
There's a 100501 error with an async call | ||
|
OneExtend PRB2026173 |
Glide-cs unit test fails in Zurich mainline | ||
|
OneExtend PRB2027496 |
The metric batch_result.status is stuck at in_progress and isSkillEvaluationRun() doesn't recognize the conversational_ai evaluation type | For conversational_ai evaluation runs, metric-level batch_result records are never updated to status=completed. This causes the evaluation dashboard to display zero scores for all the metrics, even though valid evaluation data exists in the sys_one_extend _eval_metric_result and sys_generative_ai_metric tables. |
Observe that all the metric scores show as 0 because the Java API getCustomMetric ScoresPerPrompt filters batch_result.status! =in_progress. |
|
OneExtend PRB2028533 |
Java scriptable methods aren't working in some instance nodes | ||
|
Performance Analytics Dashboards PRB1993682 |
'This report has been migrated to a visualization' banner is shown when the unified property is false | The banner message appears: 'This report has been migrated to a visualization. Migrated visualization is here.' The link redirects to a random visualization. |
Expected behavior: The banner isn't shown, as no report was migrated. Actual behavior: The banner message appears: 'This report has been migrated to a visualization. Migrated visualization is here.' The link redirects to a random visualization. |
|
Performance Analytics Dashboards PRB2005720 |
The CoreUI dashboard selector triggers excessive ACL checks | The ACL is evaluated with a different access path and context for each check, so it is re‑executed repeatedly. When there are thousands of dashboards, this results in excessive ACL evaluations and causes the instance to hang. |
Expected behavior: The dashboard selector avoids excessive ACL checks and runs one check per dashboard. Actual behavior: It triggers permission evaluation for every dashboard the user has access to, including an ACL check per dashboard and multiple field‑level ACL checks. |
|
Performance Analytics PRB1990900 |
The system property com.snc.pa.dm.enable.mlb is set to true on non-Raptor DB Pro instances | Users can install a plugin with Raptor DB (pro or standard). With a schedule job, they can disable the feature by disabling the global property com.snc.pa.dm.enable.mlb. |
Expected behavior: The property is set to false. The user shouldn't be able to control it and set its values. Actual behavior: The property is set to true. The user can control it and set its values. |
|
Performance Analytics PRB1995131 |
There are Query Builder (QB) and Workspace UI error pop-up clips in the surrounding UI if a query fails for CMDB NLQ | Turning off the NLQ Prediction server results in an error message in both QB and in the CMDB Workspace, and the UI doesn't render as expected in CMDB Workspace. |
Notice that this results in the 'Oops...' error, and the UI is incorrect. |
|
Performance Analytics PRB1999245 |
Discrepancies with Core UI on change and change percentage | The change and change percentage may be displayed on the widget but not on the data visualization. |
Notice that the widget displays the change (100) and change percentage (100%). |
|
Platform Analytics Dashboard API PRB1988004 |
Platform analytics displays an incorrect view for the most recently viewed dashboards | The Recent Dashboards list includes dashboards that were not previously accessed. While actively using the instance, the list appears to update as the user opens certain dashboards. However, after logging out and logging back in, the Recent Dashboards list resets and once again displays dashboards that haven't been used. |
Observe that the Recent Dashboards list resets and displays a different, seemingly random list of dashboards instead of the ones previously accessed. |
|
Platform Analytics Dashboard API PRB1992984 |
Can't share a dashboard to all internal users (users with at least one role) | When the itil user opens the dashboard, the dashboard isn't found. |
Expected behavior: The dashboard is visible to the itil user. Actual behavior: The dashboard isn't found. |
|
Platform Analytics Dashboard API PRB1998865 |
Sys ID is automatically populated for the value in sys_translated | This happens when the user changes the value of a tab when using a non-English language. |
Notice that the value in sys_translated contains sys ID. |
|
Platform Analytics Dashboard API PRB2002552 |
Due to VCS update set collision, a dashboard save fails with a generic error: 'Your dashboard could not be saved' | This problem only happens in scopes with VCS-controlled apps, no matter where users create the dashboard. The important factor is whether the scope has a repo configuration set. | |
|
Platform Analytics Dashboard API PRB2007784 |
DomainService uses DomainSupport.hasAccess instead of DomainHierarchy for validation | When the user tries to access the dashboard, an error appears: 'Error while getting domain for dashboard'. | |
|
Platform Analytics Dashboard API PRB2025067 |
The sys_translated record for par_dashboard_tab is overwritten | This can cause translations to be lost. |
Observe that the translation is lost because the sys_translated record is overwritten. |
|
Platform Analytics Filters PRB2013316 |
Additional controls for single and multi select | For both radio buttons and check boxes, there should be a way to clear the selection instead of using the 'Clear all filters' capability on the dashboard level. | |
|
Platform Analytics Filters PRB2014365 |
JavaScript-based sys_choice labels are rendered as raw text in dashboard filters | A sys_choice record uses JavaScript to dynamically populate the country label when the value is null. However, when this field is used in Platform Analytics dashboards (via indicator breakdown with sys_choice as the facts table), the JavaScript isn't evaluated and is instead displayed as raw text in the filter. | |
|
Platform Analytics Migration API PRB1998821 |
The Platform Analytics Migration Center summary window isn't counting all domain dashboards when doing migration in the global domain | ||
|
Platform Analytics PRB1933496 |
The main Refresh icon in the dashboard doesn't work with the list component added to the dashboard | In Zurich, the main Refresh icon in dashboards doesn't refresh list components when they are added to a dashboard. While other widgets (such as single score visualizations) refresh correctly, the list component remains static. This issue occurs because the dashboard refresh event isn't mapped to the list component. |
Refer to the listed KB article for details. |
|
Platform Runtime PRB2014434 |
The Granular Delegation API isn't returning any results | ||
|
Playbooks (Family Channel) PRB2009677 |
The complex object's format is different for playbook output/input | The flow gives an 'com.snc.process_ flow.exception. ProcessAutomationException: Could not serialize value' error when running playbook. | |
|
Playbooks (Family Channel) PRB2023731 |
Child agent changes in playbook snapshot for hybrid agent configuration | This is a product update. | |
|
Process Mining Workspace PRB1980574 |
The Process Mining app should be free on the store | Process Mining is shown as a licensed app on the store. However, it's auto-installed on many instances, which causes confusion when users aren't able to upgrade. |
Scenario 1:
Scenario 2:
Expected behavior: Users can update the app to the latest version. Actual behavior: Users get a license error, so they can't proceed with the app update. |
|
Process Mining Workspace PRB2011383 |
Update the Appsee event | ||
|
Project Management PRB1908085 |
Error on 'Manage View' | ||
|
Project Management PRB2009176 |
Opening the Project Status Report in the Project Workspace triggers an update to the Overall Health field on the corresponding project record | Opening the Project Status Report within the Project Workspace updates the Overall Health field on the corresponding project record to match the value from the status report. |
Notice that the Status field is automatically reverted to match the Overall Health value from the status report. |
|
Project Management PRB2021806 |
Add a 'No status' option to the Project Status field | The Project Status field (pm_project.status) currently doesn't include a 'No status' option, which prevents projects from having an unset/neutral status state. This causes ambiguity in reporting and makes it difficult to distinguish between projects that have not yet been assigned a status vs. those intentionally marked as 'On Track' or 'At Risk'. A 'No status' option should be added to the Status field list. This verifies that status transitions — including from an unset state to a defined status — can be accurately captured and reflected in usage analytics. |
Observe that a 'No status' option isn't available. |
|
Record Hierarchy PRB2013585 |
Reconciliation of record hierarchy with missing path field skipped | If the user deletes the rh.hierarchy.create event, there is no 'Reconcile Hierarchy' link under Related Links. If the user executes SNC.RecordHierarchyAPI.get ().reconcilePaths(sysId), no event is posted to resume creation of the hierarchy. |
Observe that nothing happens. No event is posted to resume creation of the hierarchy. |
|
Record Hierarchy PRB2014979 |
Allow RecordHierarchies to always be usable optionally unless it is inactive |
The current behavior shows that after a record hierarchy is defined, any query operations that use the hierarchy will explicitly return 'false' until every record in the hierarchy has been assigned a path. After paths have been assigned, the hierarchy is said to be 'usable' as its fully initialized and ready for queries. A GP was added to optionally allow the hierarchy to be usable while records are being assigned paths. The results for queries may be incomplete or partially stale depending on how long the initialization takes place, but should otherwise be accurate. Users are beginning to use IN_HIERARCHY conditions for all sorts of features ranging in criticality, up to and including ACLs. If the record hierarchy runs into some sort of issue, such as it can render the record hierarchy unusable and all queries would begin to fail. However, the paths assigned to all records are still valid as long as changes are minimal, and can continue to return mostly accurate results while any issues with the record hierarchy feature are addressed. This fix is to address usability; as long as the record hierarchy isn't explicitly deactivated, it can be made 'usable' and queries will return results based on whatever paths may be assigned at the time. |
|
|
Related Lists PRB2000158 |
Related lists don't show row data | Related lists don't show row data in list cells [Core UI]. |
Refer to the listed KB article for details. |
|
ReleaseOps - Family PRB2009639 |
Instance scan failure doesn't return the correct message | The scan failure doesn't mention a reason for the failure in the work notes. |
Expected behavior: The scan failure shows the reason for the failure in the work notes. Actual behavior: The scan failure doesn't mention a reason in the work notes. |
|
Resource Management PRB2003945 |
Cost plan breakdowns are duplicated |
When the user changes the start date and end date from a resource plan, the business rule (BR) UpdateCostPlan AssociatedToResourcePlan launches an event. The BR 'Recreate Requested Allocations' is also launched, updating the resource plan again and changing the planned cost. In summary, when the user updates the dates, the system updates the resource plan twice, one time for the dates and another for the planned cost, practically at the same time. Both changes trigger the BR UpdateCostPlan AssociatedToResourcePlan and two events are created. Since there are two events in the system, they will try to perform the same action, and this could lead to problem concurrency. The two events are processed at the same time and the cost plan breakdowns are created twice. |
|
|
Resource Management PRB2020809 |
Updating dates in the assignment should update the resource availability | Dependent choice config should also be supported in the project workspace bottom grid. |
Observe that the dependent config isn't supported in bottom grid choices. It should be supported. |
|
Resource Management PRB2024520 |
Fetching choices with their dependent field values to prepare criteria | The field doesn't show the choices according to the dependent config defined. |
Observe that the field doesn't show the choices according to the dependent config defined. |
|
Server-side scripts PRB1994381 |
Discovery has issues on some node after upgrading in Australia |
After upgrading to Australia, JavaScript running in app nodes fails to call Java functions. The following warning appears: '*** WARNING *** Evaluator: com.glide.script.RhinoEcmaError: undefined is not a function.' This impacts various features, including Discovery and Event Management. |
|
|
Server-side scripts PRB2022176 |
The script name should be logged when a page title is unavailable in the 'Guarded Scripts' list entry | The page title can be empty in some cases, such as a scheduled job and probably more. It should become the script name if there isn't a page name that makes sense. | |
|
Server-side scripts PRB2022324 |
Logging for all sandbox scripts is broken |
Execute a script in the sandbox. Observe that it should be logged, but isn't. |
|
|
Service Catalog PRB1976031 |
Lookup select box variables with 'Choices depend on' store a choice value instead of a label | When a lookup select box variable on a record producer is configured to depend on another variable, the system saves the underlying choice value rather than the human‑readable label in the created record. This behavior occurs only for lookup select box variables with the 'Choices depend on' setting; standard select box variables work correctly. As a result, the Subcategory field of the incident shows the internal value (for example, '1023') instead of the expected label (for example, 'Internal Application'), which can cause confusion for users reviewing incident data. This is observed in portal pages like the ESC standard ticket page, where the value is shown in the variable summarizer. | |
|
Service Catalog PRB2014228 |
Update the copy in the alert banner | Catalog item forms should be automatically pre-filled using the context from the conversation. The user shouldn't have to re-enter information they've already shared in the chat. | |
|
Service Catalog PRB2020118 |
Ensure that a search term is a minimum of 3 words before triggering the slot fill | . | |
|
ServiceNow SDK (Glide) PRB2016794 |
Skip delete issue for 'Coalsce' tables | When a Fluent app defines a role, the SDK generates a new sys_id. The existing ScopeConflictDetector keys off sys_update_name (which encodes the sys_id), and finds nothing in sys_metadata, so no conflict is flagged. The installer then coalesces onto the real global admin role by matching the Name field and silently overwrites its sys_scope, stealing a system-owned record into the app's scope. |
Expected behavior: The Global role shouldn't be overridden. Actual behavior: The Global role is overridden. |
|
ServiceNow SDK (Glide) PRB2021468 |
Dictionary updates aren't propagated when installed via FluentXMLUploader | When the user deploys changes, the dictionary updates get skipped. |
Expected behavior: The maxLength of the column is updated. Actual behavior: The dictionary updates get skipped. |
|
Service Portal PRB2014571 |
Alignment of the Now Assist search results gets overflow | This happens on the portal while loading on browser resolution size 360 x 640. |
Observe that the filter text 'Am relevantesten' gets overflow. |
|
Session Management PRB2024286 |
Make application nodes more resilient to DDoS attacks from unauthenticated traffic | This is a product update. | |
|
Sidebar (Family Release) PRB2019090 |
The cached RecordCard is returned without checking if the user has access to record | This is a caching issue, and occurs for both with incident and HR records. When the code checks if the Record Card is in the cache, it does not re-check if the user can access the record or not. When clearing the cache, the record access check is calculated correctly. |
Notice that it renders a record card, and the user Abraham Lincoln can't access INC2 in the sidebar chat. The INC2 record card is not in the cache. |
|
Software Asset Management PRB1959756 |
The 'Connection Setup' section is missing on the Custom Integration view for the Workday Integration Profile after upgrading sn_sam_saas_int | When trying to integrate with Workday (SaaS License Management), some tabs are missing (for example, the 'Connection Setup' section and related list). This makes the user unable to validate the connection and publish the profile. The 'Connection Setup' section should be visible and accessible on the custom integration view after the upgrade. | |
|
Software Asset Management PRB2018383 |
A Microsoft per‑core license metric isn't visible after a Zurich or Australia upgrade | The MS per core metric was moved from the apply_once folder to the update folder. The fix script to set the metric group was overwritten, since the update folder file insert ran after. Thus, the MS per core uploaded with no metric group. |
Refer to the listed KB article for details. |
|
Software Asset Management PRB2021450 |
The Add Lifecycle Data table UI action for lifecycle playbook is incorrectly available in Zurich | The Add Lifecycle Data button is available for Zurich users, despite it being an Australia feature. When the user selects the button, nothing happens. |
Observe that nothing happens. |
|
Software Asset Reclamation PRB2008233 |
Potential savings on reclamation candidates should be set regardless of licensing status | It should be set for both licensed and unlicensed subscriptions/installs. | |
|
Software Asset Reconciliation PRB2021614 |
Potential savings on reclamation candidates should be set regardless of licensing status | It should be set for both licensed and unlicensed subscriptions/installs. A software's license status doesn't impact the potential savings for removing that software. The reclamation candidate should reflect the cost of having that software installed. | |
|
Software Entitlements PRB2023511 |
Add an asset tag, agreement number, and location to entitlement duplicate check attributes | This is a product update. | |
|
Standard Ticket Page PRB2023619 |
Family changes to fetch Summary fields from the m2m table | This is a product update. | |
|
Suite Engine PRB1966133 |
Assigned software should handle suite of suite | The reconciliation logic for licensing subscriptions should license corresponding installations for the same user. | |
|
System Archiving PRB1938103 |
Reparenting of sys_attachment doesn't work when the table name is longer than 37 characters | . | |
|
System Archiving PRB1988156 |
Archive reparenting doesn't work with peripherals and large table names | The records for sys_audit and sys_journal_field don't reparent, and an error is found in the logs. |
Notice that the sys_audit and sys_journal_field records don't reparent. Instead, the log shows this error, 'Found in current data management track'. |
|
System Events PRB1939688 |
Inputs aren't getting processed for subflows with inputs | Implement thread pool with the configurations/design. The scope excludes any changes related to autoscaling or processing framework (which means it co-exists with the jobs that are already there for flow_engine). |
Expected behavior: All flows are completed without any errors. Actual behavior: A couple flows move to the completed state with an error log for not processing inputs. |
|
Table Administration and Data Management PRB2025009 |
Ordering a query by a Function field that wraps a translated_text column returns empty values for that list |
Expected behavior: The 'Name Function' column shows Älice_sv and Bob_sv (or the English fallback). Actual behavior: The 'Name Function' column is empty for both rows. |
|
|
Territory Planning PRB2016459 |
Unused form field mappings in the 'Suggested Agents' and 'Relocate Agents' pages cause performance issues | This happens in the CSM/FSM Configurable Workspace. There are two UX screen conditions where not all form field mappings are used. | |
|
Trace Collector - Family Release PRB2023730 |
Trace collector Epic | This is a product update. | |
|
Trace Collector - Family Release PRB2030648 |
The Azure Application Insight throws an error | During testing of the Application Insight feature, users are intermittently seeing an error: 'Unable to find app_insights_config.json'. | |
|
UI Builder (Family Channel) PRB2023628 |
Configuration table, APIs and ACLs | This is a product update. | |
|
UI Field Administration PRB1917016 |
TinyMCE Editor is not dark theme compatible in the builder screen | The Description field and the 'Preview' and 'Default Value' sections don't honor the dark theme. |
Observe that the Description field doesn't honor the dark theme. The same issue is also seen in the 'Preview' and 'Default Value' sections. |
|
UI Field Administration PRB1919959 |
An exception displays in a syslog when adding/removing a property in full-screen | TableName is returned as an empty string in a function, which causes tabledescriptor to throw an error in the log during initialization. |
Notice the following exception: 'Table name can't be null: java.lang.IllegalStateException: Table name can't be null: com.glide.db.TableDescriptor.init(TableDescriptor.java:98)...' |
|
UI Field Administration PRB1969665 |
Currency values change automatically in workspaces | The currency value changes automatically when selecting in and out of the Currency field, without actually changing the value. |
Observe that the value changes. |
|
UI Field Administration PRB1982868 |
The pop-up related to the Comment/Work Note web link only displays in the boundary of the 'Compose' tab | The message, 'The URL you entered seems to be an external link. Do you want to add the required http:// prefix' is confined to the 'Compose' section and not overlaying the page. This occurs in the CSM workspace, Service Operations Worspace (SOW), and the HR workspace. This issue occurs in Safari browsers, but has been resolved in Chrome browsers. |
Observe the message, 'The URL you entered seems to be an external link. Do you want to add the required http:// prefix'. The message is confined to the 'Compose' section, and not overlaying the entire page. |
|
UI Field Administration PRB1985085 |
Quick action visibility script is executed in global scope, preventing access to scoped script includes | The quick action runs into an error: 'Evaluator.evaluateString() problem: java.lang.SecurityException: Illegal access to package_private script include...' |
Notice the quick action runs into an error: 'Evaluator.evaluateString() problem: java.lang.SecurityException: Illegal access to package_private script include CMDBGenAICIFormContextualHelp: caller not in scope sn_cmdb_gen_ai: com.glide.script. RhinoEnvironment. checkScriptableAccess (RhinoEnvironment.java:723) com.glide.script. ARhinoScope. checkScriptableAccess (ARhinoScope.java:134)'. This happens because the visibility script is evaluated in the global scope. |
|
UI Field Administration PRB1998819 |
WWNAglobal utils should be removed | ||
|
UI Field Administration PRB2025633 |
AI Agent modified fields API returns aiCreated instead of isAiCreated in JSON response | The Boolean field is named incorrectly. |
Expected behavior: The Boolean field is named 'isAiCreated'. Actual behavior: The Boolean field is named 'aiCreated'. |
|
UI Form Administration PRB1999196 |
The citation URL is retained and fields are highlighted when the user logs in to an instance again | The highlight should happen only if the user selects links in a summary or the email outputs. | |
|
UI Form Administration PRB2006958 |
Introduce system property to hide form level TI banner | The alert appears when the form is loaded. There's no way to avoid seeing the alert if not required. |
Observe that the alert appears again. |
|
Upgrade Center PRB1889947 |
Instance nodes don't appear and an error appears: 'javax.crypto.AEADBadTagException: Error finalizing cipher data: mac check in GCM failed'. | Instance JVMs won't start after the error, 'java.io.IOException: javax.crypto.AEADBadTagException: Error finalizing cipher data: mac check in GCM failed'. | |
|
Upgrade Center PRB1992027 |
'Add node' automation times out too quickly | The 'Add node' automation times out before the node is online. PluginManager takes a long time to complete initialization. | |
|
Upgrade Center PRB2023239 |
There is a mismatch in the Glide version between the app node and the database following an upgrade | A new code path introduced the MariaDBI18NSQLFormatter class. When the sys_properties record of the 'com.glide.db.session _language_collation_feature' property is set to true, it takes a code path on upgrade or restart where an instance will not come up. When 'com.glide.db.session _language_collation_feature' is false, the code path exits early and doesn't cause this issue. |
Refer to the listed KB article for details. |
|
Usage Analytics PRB2021289 |
Long session durations are observed for few Usage Insights Sessions, causing inaccurate session duration metrics | A fix for long session duration in some Usage Insights sessions. | |
|
UX Framework PRB1969085 |
GraphQL schema changes for client-interaction.graphl in ux-metrics | The user sees error logs from the ClientMetricsRestService.java file. The error logs are logged to the syslog table. |
Refer to the listed KB article for details. |
|
UX Framework PRB1986291 |
List dynamic routing shouldn't be applied when creating a record from a related list | Dynamic routing is handled within the recordRoutesMapping Client Script Include. Kb_knowledge mapping uses source_component: 'list' to route article clicks to kb_view. When the New button is selected on a related list, the kb_view route is incorrectly applied. Since kb_view can't handle new records, the page breaks. | |
|
UX Framework PRB1987200 |
GLOBAL_NAVIGATION_REQUESTED isn't routing to the feature on select after a hard refresh of the page | When the user selects the desktop notification, it doesn't navigate back to the workspace. |
Observe that it doesn't navigate back to the workspace. |
|
UX Framework PRB2002772 |
Preset for the presentational list (nested inside the record list bundle) wasn't discovered during pre-population | The list is completely broken. |
Observe that the SOW list page is also broken and empty. |
|
UX Framework PRB2018001 |
An blank page issue on some nodes during upgrade | This issue occurs in Australia instances. |
Observe that an empty page is displayed with a spinning wheel. |
|
UX Framework PRB2023614 |
In-product surveys MVP | This is a product update. | |
|
UX Framework PRB2030213 |
When a user navigates between two pages that both have IPS surveys configured, the survey triggered on the first page isn't dismissed on navigation | ||
|
Virtual Agent Designer Legacy PRB1752802 |
The virtual agent designer page isn't accessible on Safari | All seismic and Core UI pages should work on Safari 17.1+ for Washington and 17.3+ for Xanadu. |
Observe the following error: 'Safari and older versions of internet Explorer are unsupported browsers, please switch to a different or newer browser.' |
|
Virtual Agent PRB1977665 |
The 'Pagination' API doesn't reset totalSearchResultsCount if a search term is removed |
Note that totalSearchResultsCount still has the same value from step three in the response for /options and isn't reset to 0. |
|
|
Virtual Agent PRB1985280 |
Duplicate attachment is displayed in Virtual Agent after portal refresh |
Expected behavior: Nothing happens. Actual behavior: The duplicate attachment/image is displayed only in Virtual Agent. |
|
|
Virtual Agent PRB1999511 |
Message preview and unread badge count don't work on page refresh | When the user refreshes the page, the message preview doesn't show up. On standard chat, there's also no unread badge count. |
Expected behavior: There is still an unread badge count and the message preview shows up. Actual behavior: The message preview doesn't show up. On standard chat, there's also no unread badge count. |
|
Virtual Agent PRB2003424 |
External users are unable to delete closed chats from the Virtual Agent chat history | External users are unable to delete closed chats from the Virtual Agent chat history and encounter the error message: 'Failed to delete conversation. Please try again'. |
Notice that the error message appears: 'Failed to delete conversation. Please try again'. |
|
Virtual Agent PRB2004944 |
Teams conversations can pull in context from NAP if not using a NAP channel | When the user executes a skill, it should prompt for more context if needed instead of using NAP context. |
Expected behavior: The skill prompts for the record to summarize. Actual behavior: The skill uses the incident from NAP context. |
|
Virtual Agent PRB2006240 |
The Virtual Agent server doesn't process pre-chat surveys for bot 2 bot | Users aren't routed to a live agent in bot to bot conversations. This was due to a misconfiguration where pre-chat survey was enabled and the user wasn't able to provide a response. Interactions aren't assigned to the queue or an agent in Agent Workspace. It was working when the user first upgraded, but recently has stopped. |
Notice that the conversation doesn't get routed to the live agent. |
|
Virtual Agent PRB2012889 |
vaSystem.getSearchText isn't working with off-Glide | ||
|
Virtual Agent PRB2013847 |
Create a scriptable API for endChatSummarization | ||
|
Virtual Agent PRB2013993 |
The deployment channel for a conversation isn't populated in context variables | ||
|
Virtual Agent PRB2015140 |
Multiple interactions are created during live agent execution | This only happens when a conversation is reset or abandoned. | |
|
Virtual Agent PRB2015460 |
Now Assist Portal's unread conversation count disappears after the execution is started via AI Agent triggers or Runtime APIs | ||
|
Virtual Agent PRB2015866 |
Handshake fails when it fails to load an in-progress conversation | The same error impacts async tool execution intermittently. |
Expected behavior: It should load the chat client successfully with a new or older conversation. Actual behavior: It keeps loading and throws an error. |
|
Virtual Agent PRB2017392 |
Add topic, agent execution to the sys_cs_now_ assist_execution table for NextWave | When a topic/agent is run, the sys_cs_now_assist_execution doesn't populate. | |
|
Virtual Agent PRB2018098 |
AI agents are incorrectly displayed on the Virtual Agent's topics list | On Virtual Agent, users see AI agents in the 'View All Topics' section under the 'Others' category. But none of those agents are marked to be visible on that section. |
Observe that multiple AI Agents are visible there. |
|
Virtual Agent PRB2018878 |
Employeeslate gets a 404 error for promoted-skills |
Navigate to Employeeslate's home. Observe the 404 error. |
|
|
Virtual Agent PRB2021412 |
Send flag to AIEL to identify new vs. existing catalog pages | When a catalog item is opened in the NextWave interactive view, AIEL needs to be able to distinguish whether the catalog page being rendered is a new (modern/interactive) catalog page or an existing (legacy) catalog page. Currently, no flag is sent to AIEL to make this distinction, which can cause incorrect rendering behavior or routing decisions. A flag should be passed to AIEL at the time of catalog page load so it can apply the appropriate logic based on the page type. |
Observe that AIEL doesn't receive any flag to differentiate between a new catalog page and an existing/legacy catalog page. This can result in incorrect behavior when AIEL applies logic without awareness of the page type. |
|
Virtual Agent PRB2022716 |
NextWave Premium Chat doesn't work for external users (snc_external) on CSM portal | The console error '403 FORBIDDEN' appears on ais_auth_token_refresh API. The external user can't use the chat experience. | |
|
Virtual Agent PRB2024076 |
Pickers aren't honoring pre-selected options | This works in the web version and is considered a feature gap. |
Expected behavior: The pre-selected options defined in the topic should be presented to the user as selected. Actual behavior: An empty picker is presented with nothing selected. |
|
Virtual Agent PRB2024849 |
Simplified handshake for NextWave needs fixes for session creation, channels, and context | The existing session needs to be looked up by conversation before creating a new one. Also, if the consumer account context name is provided, it needs to be stamped and associated with the consumer account when created. Finally, the channel user profile needs to be properly resolved for channels. | |
|
Virtual Agent PRB2025027 |
Create a custom fallback message for AI Control Tower (AICT) Assistant | ||
|
Virtual Agent PRB2025311 |
Add an ai_greeting type mapping in getContextProfile MessagesNoDomain to support a Premium Chat greeting message feature | The Now Assist Virtual Agent (VA) admin UI saves static AI greeting messages as sys_cs_context _profile_message records with type=ai_greeting. For these to load correctly, getContextProfile MessagesNoDomain in NowAssistIn VAadmin ConsoleUtil needs an explicit branch mapping ai_greeting → aiGreetingMessage. Without this Glide-services change, the greeting message isn't populated for multi-domain instances when the feature ships. |
Observe that the custom greeting message isn't populated even though the message was saved earlier. |
|
Virtual Agent PRB2025956 |
Resolved issues after introducing four tables for Virtual Agent (VA) analytics | The search-related analytics can be written to the four tables instead of sys_ci_analytics as event entries. |
Observe that all the expected entries are in the new tables and view. |
|
Virtual Agent PRB2026053 |
sys_cs_context_profile_topics should be sent to the off-Glide cache for Authorizing Official (AO) to read | ||
|
Virtual Agent PRB2026723 |
In OGChannels, there should be a picker search update | ||
|
Virtual Agent PRB2026804 |
getBrandingConfig() doesn't provide the correct response in NextWave | api/sn_nowassist_va/ og_branding_configs/ {deploymentId} doesn't provide the correct response for branding configuration. It's missing a Value field and the type is null for the first item. | |
|
Virtual Agent PRB2028137 |
Glide-cs-test failures in Australia | ||
|
Virtual Agent PRB2029447 |
Knowledge article links are broken in the sources citation when the article has an attachment | There is an issue with the link formation in the source citations for the KB article if there is an attachment. The link generated by Now Assist uses the sys_id of the PDF attachment instead of the KB article sys_id in the URL. | |
|
Virtual Agent PRB2030245 |
External users can't upload files | There's an HTTP 422 error and the file fails to upload. | |
|
Virtual Agent PRB2031950 |
AI-user fetch issue | The conversation user for the ZTSD flow is AI L1 Service Desk Specialist, which is the identity type ai_agent. The cache configuration get_user|table:{table} |field:{field}|value:{value} explicitly ignores users of type 'ai_agent'. |
Perform a cache fetch call for the cache key 'get_user|table:{table} |field:{field}|value:{value}' for any user of the identity type 'ai_agent'. See that it doesn't return the User field value. |
|
Virtual Agent PRB2032108 |
Glide-side changes for the NextWave release | This is a product update. | |
|
Virtual Agent Web Client PRB1993741 |
When live_agent_only is set to true, the agent chat triggers the greetings topic instead of going to the live agent | The /esc portal agent chat is configured to only trigger the live agent. However, when the user selects the Virtual Agent icon, it triggers the greetings topic and doesn't go to the live agent. When the user ends the first conversation and creates another conversation, it then goes straight to the live agent. The issue only occurs the first time the user selects the Virtual Agent icon in the session. It also only happens for Now Assist virtual agent sessions. |
Expected behavior: It triggers the live agent support topic. Actual behavior: It triggers the greetings topic. However, if the user ends the conversation and creates a new conversation, it goes straight to the live agent. |
|
Virtual Agent Web Client PRB2030686 |
The Stop Flow button is incorrectly displayed in the Virtual Agent input field during file upload | The Stop Flow button should only be visible when a dynamic loader control is active, and it should not appear for normal file upload controls. |
Observe the Stop Flow button in the bottom text input field when the file upload control appears. |
|
Virtual Agent Web Client PRB2033755 |
SEARCH_FALLBACK_EVENT is missing in sys_ci_analytics | SEARCH_FALLBACK_EVENT records are no longer created in sys_ci_analytics in Australia. |
|
|
Word Document APIs PRB1973625 |
Support unzipped font size up to 20 MB in Word Doc API | The property com.snc.word_doc_api .unzip_word_size_limit_mb supports only up to 10 MB file size. This is an enhancement request to support up to 20 MB. |
Fixes included
Unless any exceptions are noted, you can safely upgrade to this release version from any of the versions listed below. These prior versions contain PRB fixes that are also included with this release. Be sure to upgrade to the latest listed patch that includes all of the PRB fixes you are interested in.
- Zurich Patch 9 Hotfix 2
- Zurich Patch 9 Hotfix 1
- Zurich Patch 9
- Zurich Patch 8 Hotifx 3
- Zurich Patch 8 Hotfix 2
- Zurich Patch 8
- Zurich Patch 7b Hotfix 1
- Zurich Patch 7b
- Zurich Patch 7a Hotfix 1
- Zurich Patch 7
- Zurich Patch 6
- Zurich Patch 5
- Zurich Patch 4
- Zurich Patch 3
- Zurich Patch 2
- Zurich Patch 1
- Zurich security and notable fixes
- All other Zurich fixes