TOF-439: Backfill description frontmatter on every docs page - #172
TOF-439: Backfill description frontmatter on every docs page#172tylergoerzen-mxp with Copilot wants to merge 7 commits into
Conversation
Co-authored-by: tylergoerzen-mxp <259741734+tylergoerzen-mxp@users.noreply.github.com>
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
Co-authored-by: tylergoerzen-mxp <259741734+tylergoerzen-mxp@users.noreply.github.com>
Confidence Score: 5/5The PR appears safe to merge. No blocking failure remains from the previously reported findings.
|
| Filename | Overview |
|---|---|
| guides/guides-by-use-case/empower-your-team/mcp.mdx | The description now uses valid single-quoted YAML around its internal double quotes. |
| docs/tracking-methods/sdks/nodejs.mdx | The previously truncated metadata is now a complete, page-relevant description. |
| docs/tracking-methods/sdks/python.mdx | The server SDK description was rewritten as a complete summary. |
Reviews (3): Last reviewed commit: "TOF-439: rewrite the last 6 truncated SD..." | Re-trigger Greptile
92 of the 380 backfilled descriptions were first-sentence extractions that
failed as descriptions: 17 data-pipelines pages shared one sentence, 6 SDK
pages said only 'Please refer to our Quickstart Guide', several captured JSX
fragments (ProductCollectiveLogo) or truncated mid-sentence, and 15 opened
with 'This page/guide'. Rewrote each from the page's actual content
(80-155 chars, answer-first, unique repo-wide). Also fixed 6 pre-existing
duplicate descriptions on the MCP industry pages ('Use Cases and Sample
Prompts' x6). 59 short-but-accurate API reference stubs left for the
OpenAPI enrichment issue (TOF-447 scope).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
tylergoerzen-mxp
left a comment
There was a problem hiding this comment.
Reviewed all 380 added descriptions and pushed fixes directly to this branch (commit f463107).
What was solid: full coverage (443/443 pages now have a description, zero missing on this branch), clean diff shape (one frontmatter line per file, nothing else touched), and roughly three-quarters of the descriptions were usable.
What I fixed (98 files):
- 17 data-pipelines pages shared one identical generic sentence; each now names its own destination and pipeline type.
- 6 SDK pages said only "Please refer to our Quickstart Guide"; each now describes its platform and setup path.
- JSX fragments captured as descriptions ("ProductCollectiveLogo,", "AndreessenHorowitzLogo,"), a "Last updated January 21st, 2026" description on the Session Replay privacy page, and blockquote markers on 6 legacy API pages.
- 13 truncated mid-sentence, 15 opening with "This page/guide", 3 SSO pages describing the generic SSO doc instead of their own provider, and assorted duplicates (quickstart x3, autocapture x2, agent x2).
- Also fixed 6 pre-existing duplicates outside the PR's additions: the MCP industry pages all read "Use Cases and Sample Prompts".
Deliberately left: 59 short-but-accurate API reference stubs ("Delete an experiment by ID") — the OpenAPI enrichment issue covers those properly at the spec level. Also left the funnels hub/overview duplicate pair; that's the thin-hub consolidation issue's scope.
Every rewrite is 80-155 chars, unique repo-wide, derived from the page's actual content, and YAML-validated. Spot-checked factual claims (Android .aar/Maven, Snowflake storage integration + IP allowlist, GTM custom template) against page content.
Ready for your final look and merge, @tylergoerzen.
|
@greptile-apps review |
Addresses the two Greptile P1 review comments on #172 that were resolved without a code change, plus the truncated descriptions its second comment referred to generically. Malformed frontmatter (both failed yaml.safe_load, so Mintlify would drop the description or fail the build): - guides/.../empower-your-team/mcp.mdx: unescaped internal double quotes terminated the scalar early; switched to a single-quoted scalar. - reference/profile-set-property-once.mdx: `\$` is not a valid escape in a double-quoted YAML scalar; rewrote as a plain action phrase. Truncated mid-clause descriptions rewritten as complete summaries: - docs/features/saved-metrics-and-behaviors.mdx - docs/tracking-best-practices/hot-shard-limits.mdx - guides/guides-by-workflow/data-privacy.mdx - reference/ingestion-api-authentication.mdx - reference/rate-limits.mdx - troubleshooting/faqs.mdx Verified: all 386 changed files now parse as YAML and every one has a description. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
@copilot resolve the merge conflicts in this pull request |
…ill-description-frontmatter # Conflicts: # docs/slack-bot.mdx Co-authored-by: tylergoerzen-mxp <259741734+tylergoerzen-mxp@users.noreply.github.com>
Greptile's second P1 comment was right about python.mdx: the earlier fix pass caught nodejs.mdx but left its siblings, and a repo-wide re-scan of all 385 changed pages turned up six descriptions still cut off mid-clause by the backfill script's character limit. Rewritten as complete summaries: - sdks/python.mdx, sdks/ruby.mdx, sdks/go.mdx, sdks/php.mdx — all four ended on "isn't directly" or "won't run"; now follow the same "Install and configure the Mixpanel X SDK to..." shape as the client SDK pages. - cohort-sync/integrations/marketo.mdx — ended on "export cohorts into". - migration.mdx — ended on a stray "Our" after an emoji. Also rewrote sdks/ios.mdx, which parsed fine but described only its own deprecation and never said what the SDK does. Verified: all 385 changed pages parse as YAML, every one has a description, and none exceeds 170 characters. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
@greptileai review Pushed The malformed YAML in Re-scan of all 385 changed pages: 0 YAML parse failures, 0 missing descriptions, 0 truncated, none over 170 characters. |
|
Too many files changed for review (385 files, 100 file limit). Bypass the limit by tagging |
Completes rec #20 Part B's gate list. - New check_openapi.py: parses all 14 specs, requires openapi/info/paths, and resolves every local $ref. Uses openapi-spec-validator for full schema validation when installed, and still runs structurally without it. Passes on all 14 specs today; rejects a spec with a dangling $ref. - check_frontmatter.py now requires a non-empty description and fails on duplicate rendered titles, which rec #11 asked for. - Pin actions/checkout and actions/setup-python to commit SHAs, matching stale.yml. Collapse four near-identical jobs into one with ordered steps, and add a concurrency group. MERGE ORDER: the frontmatter gate is red until #172 (description backfill) and #178 (title dedupe) land. Verified against the #172 tree: all description errors clear, leaving only the duplicate titles that #178 resolves. Merge this last, as the plan intends. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Rec #11 asks for a CI uniqueness test on rendered titles, which only passes at zero duplicates. Three pairs survived the first pass: - Data Pipeline Integrations: the old-pipelines copy is now marked (Legacy), keeping "Integrations" as its sidebar label - Lookup Tables: the reference page is the API, so it becomes Lookup Tables API - Mixpanel Headless: the guide gets the benefit-style title, leaving the bare product name to the docs page Verified zero duplicate titles across the tree, so the frontmatter gate in #180 can enforce uniqueness once this and #172 land. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Adds
descriptionfrontmatter to all 380 MDX pages that were missing it, enabling AEO/SEO meta descriptions across the entire docs site.What changed
docs/,guides/,reference/,links/,troubleshooting/, andchangelogs.mdxnow have adescriptionfield"Query a saved Insights report","Delete a warehouse pipeline by ID")importstatements or JSX comments instead of prose were corrected manuallyExample
The only file intentionally left without a description is
snippets/utils/constants.mdx, which is a bare JS module with no frontmatter.Fixes https://linear.app/mixpanel/issue/TOF-439/aeo-qw2-backfill-description-frontmatter-on-every-docs-page