restructured repository - #127
Conversation
There was a problem hiding this comment.
Pull request overview
Restructures the repository into separately owned runtime, model, GauXC, and documentation components while limiting published artifacts to the Skala runtime.
Changes:
- Separates development tooling into
skala_model,skala_gauxc, andskala_benchmark. - Updates packaging, release validation, CI, native examples, and documentation paths.
- Adds runtime, model, integration, and benchmark tests and utilities.
Reviewed changes
Copilot reviewed 83 out of 333 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
tools/check_release_artifacts.py |
Validates release contents. |
tools/build_release.py |
Builds component-aware releases. |
src/skala/gauxc/__init__.py |
Removes old GauXC namespace. |
skala/tests/test_xc_integrator.py |
Tests XC integration. |
skala/tests/test_traditional.py |
Tests traditional functionals. |
skala/tests/test_scf_retry.py |
Tests SCF retries. |
skala/tests/test_model_chunking.py |
Tests model chunking. |
skala/tests/test_memory_estimators.py |
Tests memory estimates. |
skala/tests/test_hash_pinning.py |
Tests checkpoint hashes. |
skala/tests/test_evaluation.py |
Tests evaluation policy. |
skala/tests/test_enhancement_factor.py |
Tests spin symmetry. |
skala/tests/test_download_model.py |
Updates example path. |
skala/tests/test_backend.py |
Tests NumPy conversion. |
skala/tests/test_ase.py |
Tests ASE integration. |
skala/tests/ridders.py |
Adds finite-difference helpers. |
skala/tests/__init__.py |
Defines test package. |
skala/src/skala/utils/torch_allocator.py |
Integrates PyTorch/CuPy allocation. |
skala/src/skala/utils/__init__.py |
Defines utility package. |
skala/src/skala/typing.py |
Adds shared type aliases. |
skala/src/skala/pyscf/utils.py |
Adds PySCF version check. |
skala/src/skala/pyscf/grids.py |
Adds cached Skala grids. |
skala/src/skala/pyscf/features.py |
Adds runtime feature generation. |
skala/src/skala/pyscf/evaluation.py |
Defines evaluation requirements. |
skala/src/skala/pyscf/backend.py |
Normalizes CPU/GPU backends. |
skala/src/skala/py.typed |
Marks typed runtime package. |
skala/src/skala/gpu4pyscf/grids.py |
Adds GPU grid caching. |
skala/src/skala/functional/base.py |
Defines runtime functional base. |
skala/src/skala/functional/_hashes.py |
Pins checkpoint hashes. |
skala/src/skala/functional/__init__.py |
Removes trainable-model export. |
skala/src/skala/features.py |
Defines runtime features. |
skala/src/skala/dispersion.py |
Normalizes D3 backends. |
skala/src/skala/ase/__init__.py |
Exposes ASE calculator. |
skala/src/skala/__init__.py |
Defines runtime package metadata. |
skala/pyproject.toml |
Configures runtime distribution. |
skala/pixi.toml |
Configures runtime Pixi package. |
skala/LICENSE.txt |
Adds runtime license. |
skala/conftest.py |
Updates collection paths. |
README.md |
Documents four components. |
pyproject.toml |
Centralizes lint/type configuration. |
model/tests/test_utils.py |
Updates model utility imports. |
model/tests/test_traced_model_comparison.py |
Uses model namespace. |
model/tests/test_model.py |
Uses model namespace. |
model/src/skala_model/utils/symmetric_contraction.py |
Updates utility import. |
model/src/skala_model/utils/pad_ragged.py |
Adds ragged tensor utilities. |
model/src/skala_model/utils/irreps.py |
Updates namespace documentation. |
model/src/skala_model/utils/cg.py |
Adds coefficient utilities. |
model/src/skala_model/utils/__init__.py |
Defines utility package. |
model/src/skala_model/model.py |
Moves trainable model. |
model/src/skala_model/layers.py |
Moves neural layers. |
model/src/skala_model/__init__.py |
Exposes trainable model. |
model/examples/fortran/ftorch_integration/CMakeLists.txt |
Adds FTorch build. |
model/examples/fortran/ftorch_integration/cmake/skala-ftorch.cmake |
Fetches FTorch. |
model/examples/fortran/ftorch_integration/cmake/skala-dep-versions.cmake |
Pins FTorch. |
model/examples/fortran/ftorch_integration/.gitignore |
Ignores generated assets. |
model/examples/cpp/cpp_integration/README.md |
Updates build path. |
model/examples/cpp/cpp_integration/prepare_inputs.py |
Uses model namespace. |
model/examples/cpp/cpp_integration/download_model.py |
Downloads example models. |
model/examples/cpp/cpp_integration/CMakeLists.txt |
Adds C++ build. |
model/examples/cpp/cpp_integration/.gitignore |
Ignores generated assets. |
model/conftest.py |
Adds model fixtures. |
gauxc/UPSTREAM.md |
Documents upstream location. |
gauxc/tests/test_gauxc_export.py |
Uses GauXC namespace. |
gauxc/src/skala_gauxc/__init__.py |
Exposes exporter API. |
gauxc/examples/fortran/gauxc_integration/CMakeLists.txt |
Adds Fortran example build. |
gauxc/examples/fortran/gauxc_integration/cmake/skala-hdf5.cmake |
Finds Fortran HDF5. |
gauxc/examples/fortran/gauxc_integration/cmake/skala-gauxc.cmake |
Configures GauXC. |
gauxc/examples/fortran/gauxc_integration/cmake/skala-flap.cmake |
Configures FLAP. |
gauxc/examples/fortran/gauxc_integration/cmake/skala-dep-versions.cmake |
Pins native dependencies. |
gauxc/examples/fortran/gauxc_integration/.gitignore |
Ignores build outputs. |
gauxc/examples/cpp/gauxc_integration/CMakeLists.txt |
Adds C++ GauXC build. |
gauxc/examples/cpp/gauxc_integration/cmake/skala-sdftd3.cmake |
Configures s-dftd3. |
gauxc/examples/cpp/gauxc_integration/cmake/skala-hdf5.cmake |
Configures HDF5. |
gauxc/examples/cpp/gauxc_integration/cmake/skala-gauxc.cmake |
Configures GauXC. |
gauxc/examples/cpp/gauxc_integration/cmake/skala-eigen3.cmake |
Configures Eigen. |
gauxc/examples/cpp/gauxc_integration/cmake/skala-dep-versions.cmake |
Pins C++ dependencies. |
gauxc/examples/cpp/gauxc_integration/cmake/skala-cli11.cmake |
Configures CLI11. |
gauxc/examples/cpp/gauxc_integration/.gitignore |
Ignores build outputs. |
gauxc/examples/c/gauxc_integration/CMakeLists.txt |
Adds C GauXC build. |
gauxc/examples/c/gauxc_integration/cmake/skala-hdf5.cmake |
Configures C HDF5. |
gauxc/examples/c/gauxc_integration/cmake/skala-gauxc.cmake |
Configures GauXC. |
gauxc/examples/c/gauxc_integration/cmake/skala-dep-versions.cmake |
Pins C dependencies. |
gauxc/examples/c/gauxc_integration/cmake/skala-argtable3.cmake |
Configures Argtable3. |
gauxc/examples/c/gauxc_integration/.gitignore |
Ignores build outputs. |
gauxc/docs/scripts/export-h5.py |
Uses exporter namespace. |
gauxc/docs/index.rst |
Adds GauXC documentation index. |
gauxc/docs/gauxc.bib |
Adds GauXC references. |
gauxc/docs/conf.py |
Configures GauXC Sphinx site. |
gauxc/docs/api/macros.rst |
Documents GauXC macros. |
gauxc/docs/api/index.rst |
Adds API index. |
gauxc/docs/api/exceptions.rst |
Documents error APIs. |
gauxc/docs/api/cmake.rst |
Updates example includes. |
gauxc/conftest.py |
Adds GauXC test fixture. |
docs/site/pyscf/singlepoint.ipynb |
Adds PySCF tutorial. |
docs/site/pyscf/scf_settings.ipynb |
Adds SCF settings tutorial. |
docs/site/pyscf/gpu4pyscf.rst |
Documents GPU usage. |
docs/site/model-card/skala-1.1.rst |
Updates license path. |
docs/site/model-card/skala-1.0.rst |
Updates license path. |
docs/site/model-card/index.rst |
Adds older-model index. |
docs/site/installation.rst |
Adds installation guide. |
docs/site/index.rst |
Links GauXC site. |
docs/site/conf.py |
Updates documentation paths. |
docs/site/benchmarks.rst |
Updates benchmark commands. |
docs/site/_ext/benchmark_report.py |
Uses benchmark namespace. |
docs/benchmark/tests/utils.py |
Adds benchmark test helpers. |
docs/benchmark/tests/test_workflow.py |
Updates workflow imports. |
docs/benchmark/tests/test_runner.py |
Updates runner imports. |
docs/benchmark/tests/test_report.py |
Updates report paths. |
docs/benchmark/tests/test_orchestrator.py |
Updates orchestrator imports. |
docs/benchmark/tests/test_metrics.py |
Updates metric imports. |
docs/benchmark/tests/test_docs.py |
Updates extension path. |
docs/benchmark/tests/test_dataset.py |
Updates dataset namespace. |
docs/benchmark/tests/test_cli.py |
Updates CLI namespace. |
docs/benchmark/tests/test_ao_screening_benchmark.py |
Uses local helpers. |
docs/benchmark/tests/__init__.py |
Defines benchmark tests. |
docs/benchmark/src/skala_benchmark/timing.py |
Updates references. |
docs/benchmark/src/skala_benchmark/schema/measurements.py |
Updates schema references. |
docs/benchmark/src/skala_benchmark/schema/environment.py |
Defines environment schema. |
docs/benchmark/src/skala_benchmark/schema/__init__.py |
Defines schema package. |
docs/benchmark/src/skala_benchmark/runner.py |
Moves benchmark runner. |
docs/benchmark/src/skala_benchmark/report/prose.py |
Adds report prose rendering. |
docs/benchmark/src/skala_benchmark/report/data.py |
Updates report imports. |
docs/benchmark/src/skala_benchmark/report/_normalize.py |
Adds report normalization. |
docs/benchmark/src/skala_benchmark/report/__init__.py |
Exposes report generation. |
docs/benchmark/src/skala_benchmark/README.md |
Updates documentation link. |
docs/benchmark/src/skala_benchmark/protocol.py |
Defines benchmark protocol. |
docs/benchmark/src/skala_benchmark/orchestrator.py |
Moves benchmark orchestration. |
docs/benchmark/src/skala_benchmark/node_info.py |
Updates schema import. |
docs/benchmark/src/skala_benchmark/models.py |
Defines benchmark records. |
docs/benchmark/src/skala_benchmark/metrics.py |
Updates metric references. |
docs/benchmark/src/skala_benchmark/fetch.py |
Updates dataset references. |
docs/benchmark/src/skala_benchmark/dataset.py |
Updates dataset namespace. |
docs/benchmark/src/skala_benchmark/collect_results.py |
Updates collection imports. |
docs/benchmark/src/skala_benchmark/__main__.py |
Updates benchmark CLI. |
docs/benchmark/src/skala_benchmark/__init__.py |
Defines benchmark package. |
docs/benchmark/run_pyscf_vxc_precision_benchmark.py |
Adds precision benchmark. |
docs/benchmark/results/rotation_comparison/tables/validation-failures.csv |
Adds validation results. |
docs/benchmark/results/rotation_comparison/tables/status-summary.csv |
Adds status results. |
docs/benchmark/results/rotation_comparison/tables/runtime-statistics.csv |
Adds runtime results. |
docs/benchmark/results/rotation_comparison/tables/route-summary.csv |
Adds route results. |
docs/benchmark/results/rotation_comparison/tables/orientation-sensitivity-fits.csv |
Adds orientation fits. |
docs/benchmark/results/rotation_comparison/tables/memory-statistics.csv |
Adds memory results. |
docs/benchmark/results/rotation_comparison/tables/gradient-diagnostics.csv |
Adds gradient results. |
docs/benchmark/results/rotation_comparison/tables/environment-and-source-metadata.csv |
Adds benchmark metadata. |
docs/benchmark/reference/README.md |
Documents reference data. |
docs/benchmark/reference/prose.yaml |
Adds report prose. |
docs/benchmark/reference/measurements.json |
Adds LFS measurements. |
docs/benchmark/reference/environments.json |
Adds environment metadata. |
docs/benchmark/pyproject.toml |
Packages benchmark tooling. |
docs/benchmark/conftest.py |
Adds benchmark fixtures. |
CONTRIBUTING.md |
Updates contributor commands. |
AGENTS.md |
Documents new architecture. |
.pre-commit-config.yaml |
Updates mypy source paths. |
.gitignore |
Updates generated-file exclusions. |
.github/workflows/test.yml |
Adds component tests. |
.github/workflows/model-examples.yml |
Updates model example paths. |
.github/workflows/model-benchmark.yml |
Updates benchmark paths. |
.github/workflows/examples.yml |
Updates GauXC paths. |
.github/workflows/docs.yml |
Updates documentation artifact path. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
575e08d to
05aeb5d
Compare
c980319 to
e089605
Compare
1d4a094 to
0a53701
Compare
| h5py = "*" | ||
|
|
||
| [feature.component-sources.activation.env] | ||
| PYTHONPATH = "$PIXI_PROJECT_ROOT/model/src:$PIXI_PROJECT_ROOT/gauxc/src:$PIXI_PROJECT_ROOT/docs/benchmark/src" |
There was a problem hiding this comment.
this looks.. hacky
There was a problem hiding this comment.
made those folders packages, it is nearly not hacky anymore, only gauxc left, which will be removed soon #129
Stephanie Lanius (steph409)
left a comment
There was a problem hiding this comment.
a little bit hard to review because many things happen at once, the moving of files + the fixing to make the typechecker happy instead of ignoring the changes. tried to review, looks good!
0a53701 to
c56d10c
Compare
Jan Hermann (jhrmnn)
left a comment
There was a problem hiding this comment.
Looks good. Two questions:
- Thinking about a small CI test ensuring the versions are the same across all packages?
- Thinking about
docs/site->site?
|
Restructure the repository around four clearly owned components while limiting published artifacts to the Skala runtime package:
also a few typing fixes, dispersion handling and usage of small gpu runners as enabled in #125