Skip to content

feat: pattern tools pack 1 (redirect mapping, llms.txt, dead pages) - #428

Open
pm-rahulsengupta wants to merge 5 commits into
every-app:mainfrom
pm-rahulsengupta:feat/pattern-tools-audit-pack
Open

pm-rahulsengupta wants to merge 5 commits into
every-app:mainfrom
pm-rahulsengupta:feat/pattern-tools-audit-pack

Conversation

@pm-rahulsengupta

Copy link
Copy Markdown

Pattern tools, pack 1 — audit utilities

Ports three deterministic tools from the Pattern toolset:

  • redirect-mapping (map_redirects): retirement/migration modes, weighted signal ranking (inlinks, path ancestry, title/h1/h2 similarity, breadcrumbs)
  • llms-txt (generate_llms_txt): builds llms.txt from supplied page data — no fetching
  • dead-page-checker (check_dead_pages): dead/thin classification with guarded fetch

Plus output-contract fixes (worker lazy boundary, tool output shapes) and type-safety fixes in the ranking code.

Verification (local, Windows, pnpm 10.30.1)

Check Command Result
Types pnpm types:check exit 0
Lint pnpm lint 0 warnings, 0 errors
Build pnpm build exit 0
Tests pnpm test see PR comment — only pre-existing Windows EBUSY flake

@pm-rahulsengupta

Copy link
Copy Markdown
Author

Full local test run (2026-10-11, Windows, pnpm 10.30.1)

pnpm test at the pushed head: 1548 passed, 1 skipped, 1 failed (pack 1) / 1550 passed, 1 skipped, 1 failed (pack 2).

The single failing test (googleOAuthMigration.test.ts) is the same on every branch and on origin/main in a clean baseline worktree: EBUSY: resource busy or locked unlinking its temp SQLite DB — a Windows-only close/unlink race, not a regression. All tool tests for this PR (redirect-mapping / llms-txt / dead-pages / log-auditor / striking-distance) pass.

Repo-wide prettier --check . also cannot pass on this Windows checkout (CRLF vs prettier LF; fails identically on origin/main baseline). Content-level prettier on this PR's changed files is clean; pnpm build and pnpm lint exit 0 at the pushed head.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant