Developer Notes¶
Maintainer notes for docs maintenance, GitHub Pages hosting, and manual validation runbooks that do not belong in the new-user path.
Docs maintenance¶
Repo-internal standard env is the repo-local .venv, built with uv and
Python 3.12:
Register the notebook kernel from the same env when needed:
The docs site uses:
docs/for source pages,zensical.toml(repo root) for site configuration,.github/workflows/docs.ymlfor build and deployment.
Hosting model¶
The site is published from the main repository with GitHub Pages and GitHub Actions. This keeps the docs close to the code, avoids a second hosting platform, and preserves edit links and repository context in the generated site.
Deployment behavior:
- pull requests build the site but do not deploy it,
- pushes to the default branch build and deploy the static output,
- the canonical site URL is
https://raphschlatt.github.io/ads-bib/.
Testing¶
CI mirrors the local developer loop through the ads-bib check helper:
Explicit equivalents:
Two pytest markers live in pyproject.toml:
slow— integration or dependency-heavy testsrequires_topic_stack— needs the UMAP/HDBSCAN/datamapplot extras and runs in the heavy CI job
Use pytest -m "not slow" for the fast inner loop and
pytest -m "requires_topic_stack" before touching topic-model code.
Release & versioning¶
- The package version is tracked in
pyproject.tomlunder[project].version. - The release runbook lives in Release.
- Docs deploy automatically from
mainvia.github/workflows/docs.yml.
Architecture compass¶
For a structural map of the package, the most useful anchors are:
src/ads_bib/pipeline.py— the stage runner, stage ordering, andPipelineConfig/run_pipeline(what users call from Python and YAML).src/ads_bib/runner.py— the high-levelads_bib.runentry point plus preflight wiring.src/ads_bib/cli.py— thecheck,bootstrap,run,doctor, andpresetsubcommands.src/ads_bib/topic_model/— embeddings, reduction, clustering, and labeling primitives (wraps BERTopic + Toponymy).src/ads_bib/_utils/llama_server.py— managedllama-serverruntime resolution, including the Windows CUDA / Linux Vulkan asset split.src/ads_bib/_presets/*.yaml— the four packaged starter presets.
The user docs under docs/ describe the CLI, YAML, and high-level behavior;
this compass lists the source files that implement that behavior and where
to change it.
Validation runbooks¶
These notes may still mention repo-local workflows, manual validation steps, and legacy env names. That is intentional here and should not leak back into the public user docs.