docs(gtm): refresh the nav cta_id register and make it self-checking - #1093
Merged
Conversation
The taxonomy's Nav section documented `nav_get_started`, `nav_docs`, `nav_pricing`, `nav_github`, `nav_npm` and `nav_cockpit`. Three of those were already not emitted before the navbar rebuild, so this register had drifted silently — and the rebuild replaced almost all of the rest. Records the real set (twenty panel ids plus the bar's own), notes that every one also exists with a `mobile_nav_` prefix because `trackNavItem` applies the surface, and lists what retired: `nav_demo_langgraph` / `nav_demo_ag_ui` are now `nav_docs_demo_*` since the Demo dropdown was absorbed into the Docs panel. More usefully, `nav-config.spec.ts` now asserts the doc mentions every id the nav emits. The ids are data, so the register can be checked rather than trusted. Removing one from the doc fails the test naming it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
blove
enabled auto-merge (squash)
September 10, 2026 04:59
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to the navbar rebuild (#1083). The nav's analytics ids changed; the register that documents them did not.
What was wrong
docs/gtm/taxonomy.mdis the register analytics work reads to know whichcta_ids exist. Its Nav section said:Three of those —
nav_get_started,nav_npm,nav_cockpit— were already not emitted before the rebuild. This section had drifted silently some time ago. The rebuild then replaced almost all of the rest.What it says now
The real set: twenty panel destinations plus the bar's own ids, grouped by panel, with a note that every one also exists with a
mobile_nav_prefix —trackNavItemapplies the surface, so the mobile drill-in emits the same list rather than a parallel one that could drift.Retirements recorded following the file's existing convention:
nav_demo_langgraph/nav_demo_ag_ui→nav_docs_demo_langgraph/nav_docs_demo_ag_ui. The hand-rolledDemo ▾dropdown was absorbed into the Docs panel.nav_docs→nav_docs_documentationnav_pilot_to_prod→nav_solutions_pilot_to_prodnav_get_started,nav_npm,nav_cockpit— noted as retired at an unknown earlier date rather than quietly deleted, in case a dashboard still filters them.The part that matters
The register is now checked, not trusted.
nav-config.spec.tsasserts the taxonomy mentions every id the nav emits. The ids are data innav-config.ts, so this is verifiable — and adding a nav destination without documenting it now fails a test instead of drifting for months.Proven non-vacuous — removing one id from the doc:
Only the
nav_surface is asserted;mobile_nav_is the same list with a different prefix, and the doc says so once rather than duplicating twenty entries.Scope
No dashboards-as-code needed changing —
tools/posthog/dashboardsandtools/posthog/insightscontain nonav_ids at all, and nothing in the repo referenced the retired ones. Any consumer is a PostHog-UI dashboard or saved query, which is outside version control; the retirement list above is what someone auditing those needs.nx buildexit 0 · 1457 unit tests pass ·nx lint0 errors.🤖 Generated with Claude Code