Skip to content

lockdocs 0.2.0

Choose a tag to compare

@github-actions github-actions released this 25 Sep 11:02
d662db9
  • Hybrid retrieval. BM25 is fused with dense similarity from a small local embedding model (model2vec potion-retrieval-32M, distilled from bge-base-en-v1.5, MIT). It is downloaded once (129 MB, SHA-256 verified, stored int8-quantized at 32 MB) on first use; LOCKDOCS_EMBED=0 or --offline keeps lockdocs keyword-only, and any failure falls back to BM25.
  • API redirects. Deprecation notes ("use model_validate instead", "Consider z.strictObject") lift the API they point to; doc-comment summaries weigh like headings; name matches count only for words that are rare in the package.
  • Upstream docs at the exact tag. lockdocs fetch downloads, once, the docs folders of each dependency's GitHub repository at the git tag of the pinned version (repository from the package metadata; MDX front matter and includes handled; docs example files inlined), plus missing packages and the embedding model. With --fetch / LOCKDOCS_FETCH=1 / setup --fetch this happens automatically on first query. Answers from packages that ship few docs suggest it.
  • Yarn Plug'n'Play zip caches (project .yarn/cache and the global Berry cache) and Cargo git dependencies (~/.cargo/git/checkouts).
  • Default answer budget 1,200 tokens (was 2,000), with a relevance floor that stops at weak matches.
  • Benchmark: 70 questions over 14 libraries (added Tailwind, ESLint, Prisma, React, Vite, Express, SQLAlchemy, Django, FastAPI, Next.js 16), three lockdocs configurations against Context7.