Skip to content

fix: repository audit remediation (CI, bugs, docs, packaging)#56

Merged
isayev merged 1 commit intomainfrom
fix/audit-remediation
Apr 9, 2026
Merged

fix: repository audit remediation (CI, bugs, docs, packaging)#56
isayev merged 1 commit intomainfrom
fix/audit-remediation

Conversation

@isayev
Copy link
Copy Markdown
Contributor

@isayev isayev commented Apr 9, 2026

Summary

Addresses all findings from the 2026-04-08 repository audit across CI/CD, codebase bugs, tests, docs, and packaging.

CI/CD

  • Remove broken cursor-code-review workflow (missing CURSOR_API_KEY secret)
  • Add missing tests-hf CI job; add tests-hf to deploy-docs gate
  • Add timeout-minutes: 20 to all jobs; fetch-depth: 0 to tests-core
  • Remove silently-ignored branches filter from release event in on-release-main.yml
  • Add concurrency group to GPU tests workflow to prevent runner queue buildup

Bug fixes

  • Fix AIMNet2Calculator routing bug: relative two-segment paths (e.g. subdir/model.pt) matched the HF regex but had no fallthrough, leaving self.model unassigned
  • Fix load_model_registry() ignoring its registry_file parameter (hardcoded path in open())
  • Fix AIMNet2ASE species validation: implemented_species is stored in model._metadata, not as a direct attribute on the calculator
  • Fix hf_hub.py: needs_coulomb, needs_dispersion, coulomb_mode now use _cfg() so GCS fallback is consulted when fields are missing from config.json
  • Fix deprecated logging.warnlogging.warning

Codebase

  • Add has_embedded_lr: NotRequired[bool] to ModelMetadata TypedDict
  • Delete aimnet/base.py (dead code, superseded by aimnet/models/base.py)

Tests

  • Add regression test for relative-path routing bug
  • Add test_model_registry.py covering registry_file param
  • Add AIMNet2ASE species validation tests
  • Add session-scoped aimnet2_calc fixture to conftest.py

Docs

  • Document ensemble_member, revision, token constructor params in calculator.md
  • Add HF repo ID and local HF dir rows to the model parameter table

Packaging

  • Add warp-lang<2 upper bound to prevent silent breakage on next major version
  • Add Python 3.13 classifier

Test plan

  • All CI jobs pass (quality, tests-core 3.11+3.12, tests-ase, tests-train, tests-pysis, tests-hf, check-docs)
  • New tests-hf job runs and passes
  • deploy-docs only triggers after all jobs green

CI/CD:
- Remove broken cursor-code-review workflow (missing CURSOR_API_KEY)
- Add tests-hf job; add to deploy-docs gate
- Add timeout-minutes: 20 to all jobs; fetch-depth: 0 to tests-core
- Remove silently-ignored branches filter from release event trigger
- Add concurrency group to GPU tests workflow

Bug fixes:
- AIMNet2Calculator: relative two-segment paths (e.g. subdir/model.pt)
  matched HF regex but had no fallthrough, leaving self.model unassigned
- load_model_registry(): registry_file param was ignored (hardcoded open())
- AIMNet2ASE: implemented_species stored in model._metadata, not on calc
- hf_hub: needs_coulomb, needs_dispersion, coulomb_mode, implemented_species
  now use _cfg() so GCS fallback is consulted for family-level config.json
- np.in1d removed in NumPy 2.0; replace with np.isin
- logging.warn deprecated; replace with logging.warning

Codebase:
- Add has_embedded_lr: NotRequired[bool] to ModelMetadata TypedDict
- Delete aimnet/base.py (dead code, superseded by aimnet/models/base.py)

Tests:
- Regression test for relative-path routing bug (monkeypatch.chdir)
- test_model_registry.py: registry_file param and default path coverage
- AIMNet2ASE species validation tests
- Session-scoped aimnet2_calc fixture in conftest.py

Docs:
- calculator.md: document ensemble_member, revision, token params
- calculator.md: add HF repo ID and local HF dir rows to model param table

Packaging:
- warp-lang>=1.11,<2 upper bound
- Python 3.13 classifier
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