Skip to content

fix(import): keep Fern/Mintlify/Archbee nav when llms.txt is larger - #45

Draft
cursor[bot] wants to merge 3 commits into
mainfrom
erunion/critical-bug-resolution-008e
Draft

fix(import): keep Fern/Mintlify/Archbee nav when llms.txt is larger#45
cursor[bot] wants to merge 3 commits into
mainfrom
erunion/critical-bug-resolution-008e

Conversation

@cursor

@cursor cursor Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Problem

The 75% coverage gate in produceOrganizedForSource was written for thin HTML scrapes (one tab of a multi-tab site). After #41 it also ran against canonical sidebars, so a curated Fern, Mintlify, or Archbee tree that listed a subset of llms.txt was discarded and the importer fell back to invented llms.txt clusters — the failure mode those probes exist to prevent.

Concrete trigger: import a Fern docs site that publishes llms.txt with hidden, legacy, or extra pages beyond the authored sidebar. tryFernNav recovers the real tree, coverage is ~3/8 (<75%), and that tree is thrown away.

Fix

Skip the thin-scrape coverage discard when the nav came from Mintlify, Fern, or Archbee. HTML scrapes still use the 75% gate. Orphans continue to slot by path afterwards, so llms.txt pages that are not in the authored sidebar are still imported.

Verification

  • Added regression tests for the coverage helper (thin scrape, passing scrape, api-reference exclusion, Fern-vs-llms shape that sits below the HTML cutoff).
  • Full suite: 135/135 passing.
Open in Web View Automation 

The 75% coverage gate was written for thin HTML scrapes (one tab of a
multi-tab site). After #41 it also ran against canonical sidebars, so a
curated Fern/Mintlify/Archbee tree that listed a subset of llms.txt was
discarded and the importer fell back to invented llms.txt clusters.

Skip that gate for those probes. Orphans still slot by path afterwards.

Co-authored-by: Jon Ursenbach <erunion@users.noreply.github.com>
@erunion erunion added the bug Something isn't working label Aug 27, 2026 — with Cursor
@greptile-apps

greptile-apps Bot commented Aug 27, 2026

Copy link
Copy Markdown

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains.

Reviews (3): Last reviewed commit: "Merge branch 'main' into erunion/critica..." | Re-trigger Greptile

Comment thread src/commands/import.js
cursoragent and others added 2 commits August 27, 2026 17:07
The 75% coverage exemption still handed Fern/Mintlify/Archbee trees to
the existing 2x-orphan gate, which replaced the authored sidebar with
URL-derived categories whenever llms.txt listed enough extra pages.

Skip that recluster for canonical navs too. Leftover llms.txt rows still
slot by path or bucket into extra categories; the authored spine stays.

Co-authored-by: Jon Ursenbach <erunion@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants