Skip to content

docs: sync docs with rust/rayon migration, fill api.md gaps, add docs-audit gate#264

Merged
d-laub merged 4 commits into
mainfrom
docs/consistency-audit
Jul 1, 2026
Merged

docs: sync docs with rust/rayon migration, fill api.md gaps, add docs-audit gate#264
d-laub merged 4 commits into
mainfrom
docs/consistency-audit

Conversation

@d-laub

@d-laub d-laub commented Jul 1, 2026

Copy link
Copy Markdown
Collaborator

Summary

Audits and syncs user-facing docs against recent gvl changes (Phase 5: numba read-path deleted → Rust-only, awkward → _core migration, new rayon threading env vars), fills a large api.md gap, adds a docs-audit gate to CLAUDE.md, and removes an obsolete docs task.

Changes

Docs consistency

  • faq.md: rewrote the "Ragged objects" answer — dropped the false "subclass of Awkward Arrays / numba JIT'd functions" claim; describes the seqpro.rag.Ragged (_core.Ragged, Rust) backend and notes awkward is no longer a dependency.
  • faq.md: new entry documenting the threading env vars (GVL_NUM_THREADS, GVL_FORCE_PARALLEL, RAYON_NUM_THREADS override) — previously undocumented.
  • README.md: replaced the stale tbb/pyomp-for-numba install note with "parallelism is built-in Rust/rayon, tune via GVL_NUM_THREADS".
  • SKILL.md: _core.Ragged "Rust+numba backend" → "Rust backend" (rag layer is numba-free).

api.md__all__ drift (18 missing public symbols)

  • Insertion fill: InsertionFill, Constant, FlankSample, Interpolate, Repeat5p, Repeat5pNormalized
  • Flat containers: FlatRagged, FlatAnnotatedHaps, FlatIntervals, FlatVariants, FlatAlleles, FlatVariantWindows
  • Variant windows: VarWindowOpt, DummyVariant
  • Dataset maintenance: migrate, migrate_svar_link
  • Writing: update; PyTorch interop: to_nested_tensor
  • Verified: 39/39 __all__ symbols now present in api.md.

Process

  • CLAUDE.md: new "Docs audit before feature/breaking-change PRs" gate, including an explicit api.md__all__ sync check with a one-liner.

Cleanup

  • pixi.toml: removed the obsolete install-e docs task. It editable-installed sibling seqpro/genoray from hardcoded absolute cluster paths but was never required — they are transitive deps and the locked seqpro 0.20.0 already provides every symbol gvl imports. The docs build only broke when an env drifted stale from the lock (fixed by pixi install -e docs).

Verification

  • Docs build cleanly on darwin (osx-arm64) with the plain PyPI wheels after reconciling the env; api.html renders and the new autodoc entries produce no new warnings/errors.
  • Programmatic __all__api.md diff reports no missing symbols.
  • docs/source/changelog.md intentionally untouched (auto-generated from commits).

🤖 Generated with Claude Code

@d-laub d-laub force-pushed the docs/consistency-audit branch from e04f6ea to eab9623 Compare July 1, 2026 06:25
@d-laub

d-laub commented Jul 1, 2026

Copy link
Copy Markdown
Collaborator Author

Rebased onto origin/main: this PR now contains only its 4 docs commits (the rayon thread-cap commits it had picked up belong to #265). ⚠️ Merge #265 first — the new threading FAQ entry documents GVL_FORCE_PARALLEL and the RAYON_NUM_THREADS override, which land in #265; merging this before #265 would briefly document unshipped env vars.

d-laub and others added 4 commits June 30, 2026 23:33
Recent Phase 5 work (numba read-path deleted → Rust-only, awkward → _core
migration, new rayon threading env vars) left user-facing docs stale.

- faq: rewrite Ragged answer (seqpro _core.Ragged Rust backend, not
  Awkward/numba); document GVL_NUM_THREADS / GVL_FORCE_PARALLEL /
  RAYON_NUM_THREADS override
- README: drop tbb/pyomp-for-numba note; parallelism is built-in Rust/rayon
- SKILL: _core.Ragged is a Rust backend (rag layer is numba-free)
- CLAUDE.md: require a docs audit before feature/breaking-change PRs

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
api.md drifted from __init__.__all__. Adds autodoc entries for every
undocumented public symbol (verified: 39/39 __all__ names now present):

- Insertion fill: InsertionFill + Constant/FlankSample/Interpolate/
  Repeat5p/Repeat5pNormalized (new section)
- Flat containers: FlatRagged/FlatAnnotatedHaps/FlatIntervals/
  FlatVariants/FlatAlleles/FlatVariantWindows (new subsection)
- Variant windows: VarWindowOpt, DummyVariant
- Dataset maintenance: migrate, migrate_svar_link (new section)
- Writing: update (sibling of write)
- PyTorch interop: to_nested_tensor

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The api.md drift (18 missing symbols) motivates an explicit gate check:
list api.md alongside the audited docs and add a one-liner that flags any
__all__ export missing from the API reference.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The install-e task editable-installed sibling seqpro/genoray from hardcoded
absolute cluster paths. It was never required: seqpro/genoray are transitive
deps via pyproject.toml, and the locked seqpro 0.20.0 already provides every
symbol gvl imports (e.g. seqpro.rag.reverse_complement). The docs build only
failed on machines whose docs env had drifted stale from the lock (an ancient
seqpro 0.11.0); `pixi install -e docs` reconciles it, no editable install
needed. Verified: docs build cleanly on darwin (osx-arm64) with the plain
PyPI wheels after reconciling the env.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@d-laub d-laub force-pushed the docs/consistency-audit branch from eab9623 to e8ea5dd Compare July 1, 2026 06:33
@d-laub d-laub merged commit 5258f78 into main Jul 1, 2026
8 checks passed
@d-laub d-laub deleted the docs/consistency-audit branch July 1, 2026 06:34
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