diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 73dc1ee..f43d836 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -72,12 +72,21 @@ jobs: # that is how v0.2.0 shipped with the umbrella still resolving 0.1.0, # and the only symptom was mkdocstrings failing to collect a class that # the API page documents. Say so here instead. + # sweep-tasks is not on PyPI and depends on companions that are not + # public yet (sweep-io, sweep-nn), so install it from git WITHOUT deps + # plus the few its API pages import. mkdocstrings only renders + # runner / yaml_io / schemas, which import none of the companions. + # sweep-loss has no API page, so it is not installed at all. + pip install pydantic PyYAML scipy matplotlib + pip install --no-deps "sweep-tasks @ git+https://github.com/DeepWave-KAUST/sweep-tasks@main" python - <<'PY' import importlib, sys from importlib.metadata import version - print("sweep-solver", version("sweep-solver"), "| sweep-agent", version("sweep-agent")) + print("sweep-solver", version("sweep-solver"), "| sweep-agent", version("sweep-agent"), + "| sweep-tasks", version("sweep-tasks")) print("sweep imported from", importlib.import_module("sweep").__file__) - for mod in ("sweep", "sweep.parallel", "sweep_agent"): + for mod in ("sweep", "sweep.parallel", "sweep_agent", + "sweep_tasks.runner", "sweep_tasks.yaml_io", "sweep_tasks.schemas"): try: importlib.import_module(mod) except Exception as exc: @@ -85,12 +94,6 @@ jobs: f"reference it, so a resolver downgrade would fail later " f"with an unreadable mkdocstrings error") PY - # NOTE: sweep-tasks is still a PRIVATE repo, so neither pip nor - # multirepo can reach it from CI. Its Tasks tab is commented out in - # mkdocs.yml — re-enable both (here and there) once sweep-tasks is - # public or on PyPI. Until then: - # pip install sweep-tasks # when on PyPI, or - # pip install "git+https://x-access-token:${GH_TOKEN}@github.com/DeepWave-KAUST/sweep-tasks@main" - name: Build site (multirepo pulls the package docs) run: mkdocs build diff --git a/docs/getting-started.md b/docs/getting-started.md index 9c56d9f..6979c54 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -79,6 +79,18 @@ sweep-agent chat Equations, propagators, backends, boundary-saving — and 26 runnable notebooks under [Examples](../solver/examples/). +- :material-cog-play-outline: __[Tasks](tasks/index.md)__ + + --- + + Production FWI / LSRTM from one YAML file: specs, CLI, multi-GPU, data IO. + +- :material-chart-bell-curve: __[Loss](loss/index.md)__ + + --- + + Misfit functions for inversion — L2 to envelope, phase and optimal transport. + - :material-message-processing-outline: __[Agent](agent/index.md)__ --- diff --git a/docs/index.md b/docs/index.md index bfdc27e..62d8646 100644 --- a/docs/index.md +++ b/docs/index.md @@ -30,9 +30,9 @@ hide:
- sweep-tasks (production FWI/LSRTM runner), sweep-loss,
- sweep-nn, sweep-tomo — each an independent package,
- added to sweepx as it ships.
+ sweep-tasks (production FWI/LSRTM runner) and
+ sweep-loss are documented here; sweep-nn
+ and sweep-tomo follow — each an independent package.
The latest user-visible additions across the stack. The badge says where each one lives: a released version you get from pip install, or dev for what is merged but not yet on PyPI — these docs are built from the development branch.
sweep-tasks, the YAML-driven production FWI/LSRTM runner, and sweep-loss, two dozen FWI misfits from L2 to optimal transport, are public and documented on this site.pip install: forward modelling (acoustic and elastic) plus benchmark models, no sweep-tasks needed.