Overview The Dependency Firewall dashboard "double-counts" blocked violations for the same package version within a single execution. This is particularly prevalent when using virtual registries (e.g., npm_local_account_level) configured with an upstream proxy (e.g., npm-upstream-proxy). The dashboard logs separate events for the fetch attempt at the proxy level and the subsequent CLI dependency graph evaluation. The Problem The duplication is triggered by the multi-phase evaluation flow in the Harness CLI: The Registry Context: The package is requested through a virtual registry (npm_local_account_level) that proxies to an upstream source. Native Fetch Pass: When npm install requests the tarball directly from the upstream proxy, the firewall returns a 403 Forbidden. This is logged as a violation. CLI Fallback Pass: If a lockfile is missing, the CLI resolves the full tree and bulk-submits the package (e.g., registry-url@7.2.0) for evaluation again. This is logged as a second violation. Because the dashboard does not deduplicate by registry or execution ID, one actual policy hit appears as two separate security events. Customer Impact Metric Inflation: Customers see inflated violation counts, making it difficult to assess the true volume of blocked packages. Registry Ambiguity: Without deduplication, it isn't always clear that multiple dashboard entries refer to the same package being pulled through the same virtual registry endpoint. Operational Noise: Security teams spend unnecessary time triaging "duplicate" hits that stem from the same single user action. Proposed Solution Update the Dependency Firewall reporting logic to deduplicate entries. The dashboard should group violations by: Package Name & Version Target Registry (to ensure legitimate violations across different registries are still caught) Execution/Pipeline ID If a package is blocked multiple times while being pulled from the same registry during the same pipeline run, it should render as a single dashboard entry.