Product: Jira Service Management Cloud, new help center (/helpcenter/<slug>/user/requests)
Steps to reproduce:
- Open the help center "My requests" list (/helpcenter/<slug>/user/requests) with at least two requests that use the same request form fields.
- Open request A - its Request details are correct.
- Go back to the list, open request B - its Request details are correct.
- Go back to the list, open request A again (client-side navigation, no page reload).
Expected: request A shows its own Request details.
Actual: the header (title, key, status) and the conversation history belong to request A, but the Request details card (Description, Summary and the custom fields) shows the values of request B. A full page reload (F5) shows the correct values.
Analysis: the csmRequestDetailsQuery GraphQL query returns
customerService.requestByIssueKey.formData.edges[].node
with id equal to the field id ("description", "summary", "customfield_XXXXX", ...). These ids are not globally unique, so the client-side normalized cache merges the form entries of all requests that share the same fields - the last fetched request overwrites the others. On step 4 no new csmRequestDetailsQuery is sent, so the overwritten entries are rendered under request A.
Suggested fix: make the form entry node ids unique per request (e.g. include the issue ARI), or refetch the query on navigation.
Impact: a customer may see field values of another request (including requests shared with their organization) on the wrong request page.
Workaround: reload the request page (F5).
Is this a known issue? Is there a JSDCLOUD ticket to watch?