Add structured event tracking to navigation items pinning and unpinning

What does this MR do and why?

Add structured event tracking to navigation items for pinning and unpinning. The aim is to understand engagement and functionality toward activation.

References

Screenshots or screen recordings

No visual changes.

How to set up and validate locally

  1. Start up GDK with snowplow micro enabled https://gitlab.com/gitlab-org/gitlab-development-kit/-/blob/main/doc/howto/snowplow_micro.md
    1. gdk config set snowplow_micro.enabled true
    2. reconfigure / restart if needed
  2. Log in as any user
  3. In the navigation sidebar, click the pin icon next to any navigation item
  4. Open separate tab for snowplow: http://localhost:9091/micro/good
  5. Verify that structured event was logged
"se_category": "Users::PinsController",
"se_action": "pin_nav_item_on_sidebar",   // or "unpin_nav_item_from_sidebar"
"se_label": "project",                    // or "group"
"se_property": "project_issue_list",      // nav item name

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #557728

Edited by Kiesha Herman

Merge request reports

Loading